gj-boomlings-api 1.2.3 → 1.3.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/functions/blockUser.js +5 -32
- package/functions/deleteAccountPost.js +3 -19
- package/functions/deleteComment.js +3 -22
- package/functions/dlLevel.js +2 -4
- package/functions/dlMessage.js +32 -0
- package/functions/getAccountPosts.js +3 -18
- package/functions/getCommentHistory.js +1 -18
- package/functions/getCreatorScores.js +2 -2
- package/functions/getMapPacks.js +6 -20
- package/functions/getMessages.js +37 -0
- package/functions/getProfile.js +5 -20
- package/functions/getTop100.js +2 -2
- package/functions/getUserLevels.js +0 -16
- package/functions/searchUsers.js +22 -0
- package/functions/unblockUser.js +5 -32
- package/functions/updateLevelDesc.js +5 -19
- package/functions/uploadAccountPost.js +5 -20
- package/functions/uploadComment.js +7 -23
- package/functions/uploadMessage.js +39 -0
- package/index.js +9 -5
- package/misc/decB64.js +7 -0
- package/misc/decCommentFromHistory.js +2 -2
- package/misc/decMessage.js +34 -0
- package/misc/decMsg.js +30 -0
- package/misc/decScoresUser.js +45 -0
- package/misc/decodeAccountPost.js +2 -2
- package/misc/decodeGJComment.js +2 -2
- package/misc/decodeLevel.js +4 -4
- package/misc/decodeMapPack.js +0 -1
- package/misc/decodeUserResult.js +1 -5
- package/{functions/encURLSafeBase64.js → misc/encB64.js} +2 -3
- package/package.json +2 -3
- package/docs/blockUser.md +0 -21
- package/docs/deleteAccountPost.md +0 -23
- package/docs/dlLevel.md +0 -52
- package/docs/getAccountPosts.md +0 -71
- package/docs/getCommentHistory.md +0 -123
- package/docs/getComments.md +0 -113
- package/docs/getCreatorScores.md +0 -60
- package/docs/getDailyLevel.md +0 -17
- package/docs/getGauntlets.md +0 -81
- package/docs/getLevelByID.md +0 -51
- package/docs/getMapPacks.md +0 -88
- package/docs/getOfficialSongInfo.md +0 -25
- package/docs/getProfile.md +0 -36
- package/docs/getSongInfo.md +0 -26
- package/docs/getTop100.md +0 -56
- package/docs/getUserLevels.md +0 -84
- package/docs/getWeeklyDemon.md +0 -17
- package/docs/objects/acc_comment.md +0 -19
- package/docs/objects/comment.md +0 -34
- package/docs/objects/level.md +0 -95
- package/docs/objects/song.md +0 -28
- package/docs/objects/user.md +0 -61
- package/docs/reportLevel.md +0 -19
- package/docs/searchLevels.md +0 -113
- package/docs/updateLevelDesc.md +0 -23
- package/docs/uploadAccountPost.md +0 -27
- package/docs/uploadComment.md +0 -28
- package/functions/decURLSafeBase64.js +0 -10
package/docs/objects/comment.md
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
# Comment object
|
|
2
|
-
|
|
3
|
-
Used by `getComments()` and `getCommentHistory()`.
|
|
4
|
-
|
|
5
|
-
## Example
|
|
6
|
-
```
|
|
7
|
-
{
|
|
8
|
-
username: 'RobTop',
|
|
9
|
-
content: ':)',
|
|
10
|
-
levelID: 10565740,
|
|
11
|
-
playerID: 16,
|
|
12
|
-
likes: 57919,
|
|
13
|
-
percent: 0,
|
|
14
|
-
id: 53363972,
|
|
15
|
-
age: '5 years'
|
|
16
|
-
}
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
## Properties
|
|
20
|
-
```username``` - the comment author's username.
|
|
21
|
-
|
|
22
|
-
```content``` - the actual content of a comment.
|
|
23
|
-
|
|
24
|
-
```levelID``` - the ID of a level, on which the comment was sent.
|
|
25
|
-
|
|
26
|
-
```playerID``` - the comment author's player ID.
|
|
27
|
-
|
|
28
|
-
```likes``` - the amount of likes on a comment.
|
|
29
|
-
|
|
30
|
-
```percent``` - the percentage that has been put on this comment. Returns `0` if the percentage checkbox hadn't been checked.
|
|
31
|
-
|
|
32
|
-
```id``` - the ID of a comment.
|
|
33
|
-
|
|
34
|
-
```age``` - the age of a comment.
|
package/docs/objects/level.md
DELETED
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
# Level object
|
|
2
|
-
|
|
3
|
-
Used by `dlLevel()`, `getLevelByID()` and `getUserLevels()`.
|
|
4
|
-
|
|
5
|
-
## Example
|
|
6
|
-
```
|
|
7
|
-
{
|
|
8
|
-
id: 58825144,
|
|
9
|
-
name: 'xo',
|
|
10
|
-
description: 'stream vertigo',
|
|
11
|
-
creator: 'KrmaL',
|
|
12
|
-
level_version: 2,
|
|
13
|
-
difficulty: 'Extreme Demon',
|
|
14
|
-
stars: 10,
|
|
15
|
-
downloads: 2640560,
|
|
16
|
-
likes: 107918,
|
|
17
|
-
disliked: false,
|
|
18
|
-
length: 'XL',
|
|
19
|
-
password: '000007',
|
|
20
|
-
demon: true,
|
|
21
|
-
featured: false,
|
|
22
|
-
epic: false,
|
|
23
|
-
objects: 37838,
|
|
24
|
-
uploaded: '3 years',
|
|
25
|
-
updated: '3 years',
|
|
26
|
-
stars_requested: 10,
|
|
27
|
-
game_version: '2.1',
|
|
28
|
-
ldm: false,
|
|
29
|
-
copied: 0,
|
|
30
|
-
two_p: false,
|
|
31
|
-
coins: 0,
|
|
32
|
-
verified_coins: false,
|
|
33
|
-
song: {
|
|
34
|
-
name: 'XO (Eden Cover & Remake)',
|
|
35
|
-
id: 766165,
|
|
36
|
-
artist: 'aaronmusslewhite',
|
|
37
|
-
artistId: 2130,
|
|
38
|
-
fileSize: '6.1 MB',
|
|
39
|
-
link: 'http://audio.ngfiles.com/766000/766165_XO-Eden-Cover-amp-Remake.mp3'
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
## Properties
|
|
45
|
-
```id``` - the level ID.
|
|
46
|
-
|
|
47
|
-
```name``` - the level name.
|
|
48
|
-
|
|
49
|
-
```description``` - the level description.
|
|
50
|
-
|
|
51
|
-
```creator``` - the level creator.
|
|
52
|
-
|
|
53
|
-
```level_version``` - the version of a level.
|
|
54
|
-
|
|
55
|
-
```difficulty``` - the level difficulty.
|
|
56
|
-
|
|
57
|
-
```stars``` - the amount of stars you get from beating the level.
|
|
58
|
-
|
|
59
|
-
```downloads``` - the amount of level downloads.
|
|
60
|
-
|
|
61
|
-
```likes``` - the amount of level likes.
|
|
62
|
-
|
|
63
|
-
```disliked``` - a boolean that shows if the level is disliked. Returns `true` if the like amount is negative, otherwise it's `false`.
|
|
64
|
-
|
|
65
|
-
```length``` - the level length.
|
|
66
|
-
|
|
67
|
-
```password``` - the level password. It may return `''` (an empty string) if the level is not copyable, or `'1'` if the level is free to copy.
|
|
68
|
-
|
|
69
|
-
```demon``` - a boolean that shows if the level is demon.
|
|
70
|
-
|
|
71
|
-
```featured``` - a boolean that shows if the level has been featured.
|
|
72
|
-
|
|
73
|
-
```epic``` - a boolean that shows if the level is epic-rated.
|
|
74
|
-
|
|
75
|
-
```objects``` - the amount of level objects. However, this property has a cap of 65535 objects (it's RobTop's problem).
|
|
76
|
-
|
|
77
|
-
```uploaded``` - when the level has been uploaded.
|
|
78
|
-
|
|
79
|
-
```updated``` - when the level has been last updated.
|
|
80
|
-
|
|
81
|
-
```stars_requested``` - basically how many stars the creator has requested. Returns`0` if no stars have been requested.
|
|
82
|
-
|
|
83
|
-
```game_version``` - the version required to play the level. Returns `Pre-1.7` if the level has been uploaded or last updated earlier, than 1.7 came out.
|
|
84
|
-
|
|
85
|
-
```ldm``` - a boolean that shows if the level has a "Low Detail Mode" checkbox.
|
|
86
|
-
|
|
87
|
-
```copied``` - the original level ID, that got copied. Returns `0` if the level is already original.
|
|
88
|
-
|
|
89
|
-
```two_p``` - a boolean that shows if the level is in the 2-player mode.
|
|
90
|
-
|
|
91
|
-
```coins``` - the amount of coins in the level.
|
|
92
|
-
|
|
93
|
-
```verified_coins``` - a boolean that shows if the coins are verified (silver coins).
|
|
94
|
-
|
|
95
|
-
```song``` - a [song object](./song.md).
|
package/docs/objects/song.md
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
# Song object
|
|
2
|
-
|
|
3
|
-
Used by `getOfficialSongInfo()` and `getSongInfo()`.
|
|
4
|
-
|
|
5
|
-
## Example
|
|
6
|
-
```
|
|
7
|
-
{
|
|
8
|
-
name: 'Dynamics',
|
|
9
|
-
id: 1099128,
|
|
10
|
-
artist: 'shikoshib',
|
|
11
|
-
artistId: 10001037,
|
|
12
|
-
fileSize: '5.74 MB',
|
|
13
|
-
link: 'https://audio.ngfiles.com/1099000/1099128_Dynamics.mp3?f1640426773'
|
|
14
|
-
}
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
## Properties
|
|
18
|
-
```name``` - the song name.
|
|
19
|
-
|
|
20
|
-
```id``` - the song ID.
|
|
21
|
-
|
|
22
|
-
```artist``` - the song artist.
|
|
23
|
-
|
|
24
|
-
```artistId``` - the artist's Newgrounds ID.
|
|
25
|
-
|
|
26
|
-
```fileSize``` - the size of the song in megabytes, rounded to two decimals.
|
|
27
|
-
|
|
28
|
-
```link``` - the link to a file of the song.
|
package/docs/objects/user.md
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
# Level object
|
|
2
|
-
|
|
3
|
-
Used by ```getProfile()```.
|
|
4
|
-
|
|
5
|
-
## Example
|
|
6
|
-
```
|
|
7
|
-
{
|
|
8
|
-
username: 'RobTop',
|
|
9
|
-
playerID: 16,
|
|
10
|
-
accountID: 71,
|
|
11
|
-
rank: 219796,
|
|
12
|
-
stars: 2375,
|
|
13
|
-
diamonds: 2170,
|
|
14
|
-
secretCoins: 3,
|
|
15
|
-
userCoins: 140,
|
|
16
|
-
demons: 5,
|
|
17
|
-
creatorPoints: 0,
|
|
18
|
-
messages: 'none',
|
|
19
|
-
friendRequests: 'none',
|
|
20
|
-
commentHistory: 'all',
|
|
21
|
-
mod: 'elder',
|
|
22
|
-
youtube: 'https://youtube.com/channel/UCz_yk8mDSAnxJq0ar66L4sw',
|
|
23
|
-
twitter: 'https://twitter.com/RobTopGames',
|
|
24
|
-
twitch: 'https://twitch.tv/robtopgames'
|
|
25
|
-
}
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
## Properties
|
|
29
|
-
```username``` - the player's username.
|
|
30
|
-
|
|
31
|
-
```playerID``` - the player ID.
|
|
32
|
-
|
|
33
|
-
```accountID``` - the account ID.
|
|
34
|
-
|
|
35
|
-
```rank``` - the user's position in the global leaderboard. Returns `0` if the player hasn't received it yet or if the player is banned on the leaderboard.
|
|
36
|
-
|
|
37
|
-
```stars``` - the amount of stars the player has.
|
|
38
|
-
|
|
39
|
-
```diamonds``` - the amount of diamonds the player has.
|
|
40
|
-
|
|
41
|
-
```secretCoins``` - the amount of secret (gold) coins the player has collected.
|
|
42
|
-
|
|
43
|
-
```userCoins``` - the amount of user (white) coins the player has collected.
|
|
44
|
-
|
|
45
|
-
```demons``` - the amount of demons the player has beaten.
|
|
46
|
-
|
|
47
|
-
```creatorPoints``` - the amount of creator points the player has.
|
|
48
|
-
|
|
49
|
-
```messages``` - a property that shows if you can send messages to the player. Returns `"none"` if the DMs are closed, `"friends"` if sending DMs is available to only friends, and `"all"` if everyone can send messages to the specified player.
|
|
50
|
-
|
|
51
|
-
```friendRequests``` - a property that shows if you can send friend requests to the player. Returns `"none"` if you can't or `"all"` if everyone can send friend requests to the specified player.
|
|
52
|
-
|
|
53
|
-
```commentHistory``` - a property that shows if you can view the player's comment history. Returns `"none"` if you can't, `"friends"` if viewing the comment history is available to only friends, and `"all"` if everyone can view the comment history.
|
|
54
|
-
|
|
55
|
-
```mod``` - a property that shows if the player is an in-game moderator. Returns `"none"` if not, `"mod"` if the player is a regular Mod (yellow badge), and `"elder"` if the player is an Elder Mod (orange badge).
|
|
56
|
-
|
|
57
|
-
```youtube``` - the link to the player's YouTube channel.
|
|
58
|
-
|
|
59
|
-
```twitter``` - the link to the player's Twitter account.
|
|
60
|
-
|
|
61
|
-
```twitch``` - the link to the player's Twitch channel.
|
package/docs/reportLevel.md
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
# reportLevel()
|
|
2
|
-
|
|
3
|
-
Reports the level.
|
|
4
|
-
|
|
5
|
-
## Parameters
|
|
6
|
-
`level` - the level id.
|
|
7
|
-
|
|
8
|
-
## Example
|
|
9
|
-
```js
|
|
10
|
-
const gd = require("gj-boomlings-api");
|
|
11
|
-
gd.reportLevel(54953085).then(console.log);
|
|
12
|
-
```
|
|
13
|
-
|
|
14
|
-
## Response
|
|
15
|
-
```js
|
|
16
|
-
1
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
For some reason, the API always returns 1, even if you'll provide an invalid ID.
|
package/docs/searchLevels.md
DELETED
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
# searchLevels()
|
|
2
|
-
|
|
3
|
-
Searches the levels by a specified query.
|
|
4
|
-
|
|
5
|
-
## Parameters
|
|
6
|
-
`query` - the search string, for example, the level name. If you'll leave it empty, you'll just get the list of most liked levels.
|
|
7
|
-
|
|
8
|
-
`page` (optional) - the page. Defaults to 1.
|
|
9
|
-
|
|
10
|
-
## Example
|
|
11
|
-
```js
|
|
12
|
-
const gd = require("gj-boomlings-api");
|
|
13
|
-
gd.searchLevels("", 2).then(console.log);
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
## Response
|
|
17
|
-
```
|
|
18
|
-
[
|
|
19
|
-
{
|
|
20
|
-
id: 27319926,
|
|
21
|
-
name: 'through time',
|
|
22
|
-
description: 'Run... run through time. For you all! Follow me on twitter: @ItsBerkoo',
|
|
23
|
-
creator: 'Berkoo',
|
|
24
|
-
level_version: 2,
|
|
25
|
-
difficulty: 'Normal',
|
|
26
|
-
stars: 3,
|
|
27
|
-
downloads: 28632458,
|
|
28
|
-
likes: 2503368,
|
|
29
|
-
disliked: false,
|
|
30
|
-
length: 'Long',
|
|
31
|
-
demon: false,
|
|
32
|
-
featured: true,
|
|
33
|
-
epic: false,
|
|
34
|
-
objects: 0,
|
|
35
|
-
stars_requested: 2,
|
|
36
|
-
game_version: '2.0',
|
|
37
|
-
copied: 0,
|
|
38
|
-
two_p: false,
|
|
39
|
-
coins: 1,
|
|
40
|
-
verified_coins: true,
|
|
41
|
-
song: {
|
|
42
|
-
name: 'Promises',
|
|
43
|
-
id: 678497,
|
|
44
|
-
artist: 'KabukiTunes',
|
|
45
|
-
artistId: 47258,
|
|
46
|
-
fileSize: '8.23 MB',
|
|
47
|
-
link: 'http://audio.ngfiles.com/678000/678497_Promises.mp3'
|
|
48
|
-
}
|
|
49
|
-
},
|
|
50
|
-
{
|
|
51
|
-
id: 28179535,
|
|
52
|
-
name: 'Acid Factory',
|
|
53
|
-
description: 'Geometry dash - Poison Gauntlet - Thanks for play! [Acid Factory] 11,000,000 Downloads! <3 ',
|
|
54
|
-
creator: 'TrinckyFinki',
|
|
55
|
-
level_version: 3,
|
|
56
|
-
difficulty: 'Hard',
|
|
57
|
-
stars: 4,
|
|
58
|
-
downloads: 51023385,
|
|
59
|
-
likes: 2446217,
|
|
60
|
-
disliked: false,
|
|
61
|
-
length: 'Long',
|
|
62
|
-
demon: false,
|
|
63
|
-
featured: true,
|
|
64
|
-
epic: false,
|
|
65
|
-
objects: 14193,
|
|
66
|
-
stars_requested: 3,
|
|
67
|
-
game_version: '2.1',
|
|
68
|
-
copied: 28178503,
|
|
69
|
-
two_p: false,
|
|
70
|
-
coins: 3,
|
|
71
|
-
verified_coins: true,
|
|
72
|
-
song: {
|
|
73
|
-
name: 'VGMusicRox - Frantic Factory (',
|
|
74
|
-
id: 550260,
|
|
75
|
-
artist: 'Viproxi',
|
|
76
|
-
artistId: 4107,
|
|
77
|
-
fileSize: '5.94 MB',
|
|
78
|
-
link: 'http://audio.ngfiles.com/550000/550260_VGMusicRox---Frantic-Facto.mp3'
|
|
79
|
-
}
|
|
80
|
-
},
|
|
81
|
-
{
|
|
82
|
-
id: 55520,
|
|
83
|
-
name: 'THE LIGHTNING ROAD',
|
|
84
|
-
description: 'Removed Coins, ~ Timeless Real / Reduloc',
|
|
85
|
-
creator: 'timeless real',
|
|
86
|
-
level_version: 3,
|
|
87
|
-
difficulty: 'Easy Demon',
|
|
88
|
-
stars: 10,
|
|
89
|
-
downloads: 44657564,
|
|
90
|
-
likes: 2440721,
|
|
91
|
-
disliked: false,
|
|
92
|
-
length: 'Long',
|
|
93
|
-
demon: true,
|
|
94
|
-
featured: true,
|
|
95
|
-
epic: false,
|
|
96
|
-
objects: 3527,
|
|
97
|
-
stars_requested: 10,
|
|
98
|
-
game_version: '2.1',
|
|
99
|
-
copied: 55520,
|
|
100
|
-
two_p: false,
|
|
101
|
-
coins: 0,
|
|
102
|
-
verified_coins: false,
|
|
103
|
-
song: {
|
|
104
|
-
name: 'Dry Out',
|
|
105
|
-
id: 'Level 4',
|
|
106
|
-
artist: 'DJVI',
|
|
107
|
-
link: 'https://www.youtube.com/watch?v=FnXabH2q2A0'
|
|
108
|
-
}
|
|
109
|
-
},
|
|
110
|
-
...and so on
|
|
111
|
-
```
|
|
112
|
-
|
|
113
|
-
Returns an array of [level objects](./objects/level.md), sorted by the amount of likes.
|
package/docs/updateLevelDesc.md
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
# updateLevelDesc()
|
|
2
|
-
|
|
3
|
-
Updates the description of a level.
|
|
4
|
-
|
|
5
|
-
## Parameters
|
|
6
|
-
`level` - the level ID.
|
|
7
|
-
|
|
8
|
-
`description` - the new description of a level.
|
|
9
|
-
|
|
10
|
-
`user` - the username or player ID.
|
|
11
|
-
|
|
12
|
-
`gjp` - the user's password.
|
|
13
|
-
|
|
14
|
-
## Example
|
|
15
|
-
```js
|
|
16
|
-
const gd = require("gj-boomlings-api");
|
|
17
|
-
gd.updateLevelDesc("83430836", "I love gj-boomlings-api!", "gmdshxdow", "*********").then(console.log);
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
## Response
|
|
21
|
-
```js
|
|
22
|
-
1
|
|
23
|
-
```
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
# uploadAccountPost()
|
|
2
|
-
|
|
3
|
-
Posts a comment to a profile.
|
|
4
|
-
|
|
5
|
-
## Parameters
|
|
6
|
-
`content` - the actual comment content.
|
|
7
|
-
|
|
8
|
-
`user` - the username or player ID.
|
|
9
|
-
|
|
10
|
-
`gjp` - the user's password.
|
|
11
|
-
|
|
12
|
-
## Example
|
|
13
|
-
```js
|
|
14
|
-
const gd = require("gj-boomlings-api");
|
|
15
|
-
gd.uploadAccountPost("I love gj-boomlings-api!", "gmdshxdow", "*********").then(console.log);
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
## Response
|
|
19
|
-
```js
|
|
20
|
-
1
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
Returns `1` if the comment was successfully posted.
|
|
24
|
-
|
|
25
|
-
---
|
|
26
|
-
|
|
27
|
-
Fun fact: you can actually post comments with non-Latin characters (Cyrillic letters, Arabic letters, etc.), but I don't recommend you to use them, cuz they are often really buggy.
|
package/docs/uploadComment.md
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
# uploadComment()
|
|
2
|
-
|
|
3
|
-
Posts a comment to a profile.
|
|
4
|
-
|
|
5
|
-
## Parameters
|
|
6
|
-
|
|
7
|
-
`content` - the actual comment content.
|
|
8
|
-
|
|
9
|
-
`id` - the level ID.
|
|
10
|
-
|
|
11
|
-
`user` - the username or player ID.
|
|
12
|
-
|
|
13
|
-
`gjp` - the user's password
|
|
14
|
-
|
|
15
|
-
`percent` (optional) - the comment percentage. Defaults to 0.
|
|
16
|
-
|
|
17
|
-
## Example
|
|
18
|
-
```js
|
|
19
|
-
const gd = require("gj-boomlings-api");
|
|
20
|
-
gd.uploadComment("I love gj-boomlings-api!", 83925274, "gmdshxdow", "*********", 99).then(console.log);
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
## Response
|
|
24
|
-
```js
|
|
25
|
-
1
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
Returns `1` if the comment was successfully posted.
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
module.exports = {
|
|
2
|
-
decURLSafeBase64:
|
|
3
|
-
function(string) {
|
|
4
|
-
const bs = require("js-base64");
|
|
5
|
-
if(!string || string == "") throw new Error("No string provided!")
|
|
6
|
-
let str = bs.decode(string.replaceAll("_", '/').replaceAll("-", '+'));
|
|
7
|
-
if(!bs.isValid(str)) throw new Error("The provided string is not encoded in Base64!")
|
|
8
|
-
return str;
|
|
9
|
-
}
|
|
10
|
-
}
|