glitch-javascript-sdk 0.3.9 → 0.4.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/dist/cjs/index.js +117 -86
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/config/Config.d.ts +9 -0
- package/dist/esm/index.js +281 -268
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/util/Storage.d.ts +10 -1
- package/dist/index.d.ts +19 -1
- package/package.json +1 -1
- package/src/config/Config.ts +34 -5
- package/src/util/Storage.ts +79 -85
package/dist/cjs/index.js
CHANGED
|
@@ -15855,6 +15855,104 @@ var Requests = /** @class */ (function () {
|
|
|
15855
15855
|
return Requests;
|
|
15856
15856
|
}());
|
|
15857
15857
|
|
|
15858
|
+
var Storage = /** @class */ (function () {
|
|
15859
|
+
function Storage() {
|
|
15860
|
+
}
|
|
15861
|
+
/**
|
|
15862
|
+
* Sets a root level domain so the data can persist across
|
|
15863
|
+
* subdomains
|
|
15864
|
+
*
|
|
15865
|
+
* @param rootDomain
|
|
15866
|
+
*/
|
|
15867
|
+
Storage.setRootDomain = function (rootDomain) {
|
|
15868
|
+
Storage.rootDomain = rootDomain;
|
|
15869
|
+
};
|
|
15870
|
+
Storage.getStorageKey = function (key) {
|
|
15871
|
+
return Storage.rootDomain ? "".concat(Storage.rootDomain, ":").concat(key) : key;
|
|
15872
|
+
};
|
|
15873
|
+
Storage.set = function (key, value) {
|
|
15874
|
+
try {
|
|
15875
|
+
var serializedValue = JSON.stringify(value);
|
|
15876
|
+
window.localStorage.setItem(Storage.getStorageKey(key), serializedValue);
|
|
15877
|
+
}
|
|
15878
|
+
catch (e) {
|
|
15879
|
+
try {
|
|
15880
|
+
var serializedValue = JSON.stringify(value);
|
|
15881
|
+
window.sessionStorage.setItem(Storage.getStorageKey(key), serializedValue);
|
|
15882
|
+
}
|
|
15883
|
+
catch (e) {
|
|
15884
|
+
this.setCookie(key, value, 31);
|
|
15885
|
+
Storage.data[key] = value;
|
|
15886
|
+
}
|
|
15887
|
+
}
|
|
15888
|
+
};
|
|
15889
|
+
Storage.get = function (key) {
|
|
15890
|
+
try {
|
|
15891
|
+
var serializedValue = window.localStorage.getItem(Storage.getStorageKey(key));
|
|
15892
|
+
if (serializedValue !== null) {
|
|
15893
|
+
return JSON.parse(serializedValue);
|
|
15894
|
+
}
|
|
15895
|
+
}
|
|
15896
|
+
catch (e) {
|
|
15897
|
+
try {
|
|
15898
|
+
var serializedValue = window.sessionStorage.getItem(Storage.getStorageKey(key));
|
|
15899
|
+
if (serializedValue !== null) {
|
|
15900
|
+
return JSON.parse(serializedValue);
|
|
15901
|
+
}
|
|
15902
|
+
}
|
|
15903
|
+
catch (e) {
|
|
15904
|
+
var value = Storage.getCookie(key);
|
|
15905
|
+
if (!value) {
|
|
15906
|
+
value = Storage.data[key];
|
|
15907
|
+
}
|
|
15908
|
+
return value;
|
|
15909
|
+
}
|
|
15910
|
+
}
|
|
15911
|
+
};
|
|
15912
|
+
Storage.setAuthToken = function (token) {
|
|
15913
|
+
Storage.set('glitch_auth_token', token);
|
|
15914
|
+
};
|
|
15915
|
+
Storage.getAuthToken = function () {
|
|
15916
|
+
return Storage.get('glitch_auth_token');
|
|
15917
|
+
};
|
|
15918
|
+
Storage.eraseCookie = function (name) {
|
|
15919
|
+
document.cookie =
|
|
15920
|
+
name +
|
|
15921
|
+
'=; Secure; HttpOnly=false; SameSite=none; Path=/; Expires=Thu, 01 Jan 1970 00:00:01 GMT;';
|
|
15922
|
+
};
|
|
15923
|
+
Storage.setCookie = function (name, value, days) {
|
|
15924
|
+
var expires = '';
|
|
15925
|
+
if (days) {
|
|
15926
|
+
var date = new Date();
|
|
15927
|
+
date.setTime(date.getTime() + days * 24 * 60 * 60 * 1000);
|
|
15928
|
+
expires = '; expires=' + date.toUTCString();
|
|
15929
|
+
}
|
|
15930
|
+
document.cookie =
|
|
15931
|
+
name +
|
|
15932
|
+
'=' +
|
|
15933
|
+
(value || '') +
|
|
15934
|
+
expires +
|
|
15935
|
+
'; path=/; domain=' +
|
|
15936
|
+
Storage.rootDomain +
|
|
15937
|
+
'; HttpOnly=false; SameSite=none; Secure';
|
|
15938
|
+
};
|
|
15939
|
+
Storage.getCookie = function (name) {
|
|
15940
|
+
var nameEQ = name + '=';
|
|
15941
|
+
var ca = document.cookie.split(';');
|
|
15942
|
+
for (var i = 0; i < ca.length; i++) {
|
|
15943
|
+
var c = ca[i];
|
|
15944
|
+
while (c.charAt(0) == ' ')
|
|
15945
|
+
c = c.substring(1, c.length);
|
|
15946
|
+
if (c.indexOf(nameEQ) == 0)
|
|
15947
|
+
return c.substring(nameEQ.length, c.length);
|
|
15948
|
+
}
|
|
15949
|
+
return null;
|
|
15950
|
+
};
|
|
15951
|
+
Storage.rootDomain = '';
|
|
15952
|
+
Storage.data = {};
|
|
15953
|
+
return Storage;
|
|
15954
|
+
}());
|
|
15955
|
+
|
|
15858
15956
|
/**
|
|
15859
15957
|
* Config
|
|
15860
15958
|
*
|
|
@@ -15910,6 +16008,25 @@ var Config = /** @class */ (function () {
|
|
|
15910
16008
|
Requests.setCommunityID(community.id);
|
|
15911
16009
|
LabelManager.initialize(community);
|
|
15912
16010
|
};
|
|
16011
|
+
/**
|
|
16012
|
+
* Sets the root level domain so data can accessed across
|
|
16013
|
+
* multiple subdomains
|
|
16014
|
+
*
|
|
16015
|
+
* @param domain The domain ie: example.com
|
|
16016
|
+
*/
|
|
16017
|
+
Config.setRootDomain = function (domain) {
|
|
16018
|
+
var parts = domain.split('.');
|
|
16019
|
+
if (parts.length > 2) {
|
|
16020
|
+
parts.shift();
|
|
16021
|
+
}
|
|
16022
|
+
var formattedDomain = parts.join('.');
|
|
16023
|
+
formattedDomain = formattedDomain.replace(/^\./, '');
|
|
16024
|
+
this._rootDomain = formattedDomain;
|
|
16025
|
+
Storage.setRootDomain(formattedDomain);
|
|
16026
|
+
};
|
|
16027
|
+
Config.getRootDomain = function () {
|
|
16028
|
+
return this._rootDomain;
|
|
16029
|
+
};
|
|
15913
16030
|
Object.defineProperty(Config, "baseUrl", {
|
|
15914
16031
|
/**
|
|
15915
16032
|
* Gets base url
|
|
@@ -18157,92 +18274,6 @@ var Parser = /** @class */ (function () {
|
|
|
18157
18274
|
return Parser;
|
|
18158
18275
|
}());
|
|
18159
18276
|
|
|
18160
|
-
var Storage = /** @class */ (function () {
|
|
18161
|
-
function Storage() {
|
|
18162
|
-
}
|
|
18163
|
-
Storage.set = function (key, value) {
|
|
18164
|
-
try {
|
|
18165
|
-
var serializedValue = JSON.stringify(value);
|
|
18166
|
-
window.localStorage.setItem(key, serializedValue);
|
|
18167
|
-
}
|
|
18168
|
-
catch (e) {
|
|
18169
|
-
try {
|
|
18170
|
-
var serializedValue = JSON.stringify(value);
|
|
18171
|
-
window.sessionStorage.setItem(key, serializedValue);
|
|
18172
|
-
}
|
|
18173
|
-
catch (e) {
|
|
18174
|
-
//fallback
|
|
18175
|
-
this.setCookie(key, value, 31);
|
|
18176
|
-
Storage.data[key] = value;
|
|
18177
|
-
}
|
|
18178
|
-
}
|
|
18179
|
-
};
|
|
18180
|
-
Storage.get = function (key) {
|
|
18181
|
-
try {
|
|
18182
|
-
var serializedValue = window.localStorage.getItem(key);
|
|
18183
|
-
if (serializedValue !== null) {
|
|
18184
|
-
return JSON.parse(serializedValue);
|
|
18185
|
-
}
|
|
18186
|
-
}
|
|
18187
|
-
catch (e) {
|
|
18188
|
-
try {
|
|
18189
|
-
var serializedValue = window.sessionStorage.getItem(key);
|
|
18190
|
-
if (serializedValue !== null) {
|
|
18191
|
-
return JSON.parse(serializedValue);
|
|
18192
|
-
}
|
|
18193
|
-
}
|
|
18194
|
-
catch (e) {
|
|
18195
|
-
var value = Storage.getCookie(key);
|
|
18196
|
-
if (!value) {
|
|
18197
|
-
value = Storage.data[key];
|
|
18198
|
-
}
|
|
18199
|
-
return value;
|
|
18200
|
-
}
|
|
18201
|
-
}
|
|
18202
|
-
};
|
|
18203
|
-
Storage.setAuthToken = function (token) {
|
|
18204
|
-
Storage.set('glitch_auth_token', token);
|
|
18205
|
-
};
|
|
18206
|
-
Storage.getAuthToken = function () {
|
|
18207
|
-
return Storage.get('glitch_auth_token');
|
|
18208
|
-
};
|
|
18209
|
-
Storage.setCookie = function (name, value, days) {
|
|
18210
|
-
var expires = '';
|
|
18211
|
-
if (days) {
|
|
18212
|
-
var date = new Date();
|
|
18213
|
-
date.setTime(date.getTime() + days * 24 * 60 * 60 * 1000);
|
|
18214
|
-
expires = '; expires=' + date.toUTCString();
|
|
18215
|
-
}
|
|
18216
|
-
//IFrames require HttpyOnly to be false, Chrome require SameSite to be none, and must be secure
|
|
18217
|
-
document.cookie =
|
|
18218
|
-
name +
|
|
18219
|
-
'=' +
|
|
18220
|
-
(value || '') +
|
|
18221
|
-
expires +
|
|
18222
|
-
'; path=/; HttpOnly=false; SameSite=none; Secure';
|
|
18223
|
-
};
|
|
18224
|
-
Storage.getCookie = function (name) {
|
|
18225
|
-
var nameEQ = name + '=';
|
|
18226
|
-
var ca = document.cookie.split(';');
|
|
18227
|
-
for (var i = 0; i < ca.length; i++) {
|
|
18228
|
-
var c = ca[i];
|
|
18229
|
-
while (c.charAt(0) == ' ')
|
|
18230
|
-
c = c.substring(1, c.length);
|
|
18231
|
-
if (c.indexOf(nameEQ) == 0)
|
|
18232
|
-
return c.substring(nameEQ.length, c.length);
|
|
18233
|
-
}
|
|
18234
|
-
return null;
|
|
18235
|
-
};
|
|
18236
|
-
Storage.eraseCookie = function (name) {
|
|
18237
|
-
document.cookie =
|
|
18238
|
-
name +
|
|
18239
|
-
'=; Secure; HttpOnly=false; SameSite=none; Path=/; Expires=Thu, 01 Jan 1970 00:00:01 GMT;';
|
|
18240
|
-
};
|
|
18241
|
-
//Back up data type if no storage is working.
|
|
18242
|
-
Storage.data = {};
|
|
18243
|
-
return Storage;
|
|
18244
|
-
}());
|
|
18245
|
-
|
|
18246
18277
|
var Session = /** @class */ (function () {
|
|
18247
18278
|
function Session() {
|
|
18248
18279
|
}
|