miolo-cli 3.0.0-beta.11 → 3.0.0-beta.110
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/miolo-cli.mjs +1 -23
- package/dist/miolo-cli.mjs.map +1 -1
- package/dist/miolo-cli.umd.js +8 -32
- package/dist/miolo-cli.umd.js.map +1 -1
- package/package.json +5 -8
- package/src/catcher/index.mjs +75 -0
- package/src/fetcher/fetcher.mjs +207 -0
- package/src/fetcher/index.mjs +7 -0
- package/src/fetcher/utils.mjs +41 -0
- package/src/index.mjs +30 -0
- package/src/socket/index.mjs +6 -0
package/dist/miolo-cli.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* miolo-cli v3.0.0-beta.
|
|
2
|
+
* miolo-cli v3.0.0-beta.110
|
|
3
3
|
*
|
|
4
4
|
* https://www.afialapis.com/os/miolo
|
|
5
5
|
*
|
|
@@ -187,22 +187,6 @@ function omit_nil(obj) {
|
|
|
187
187
|
return acc;
|
|
188
188
|
}, {});
|
|
189
189
|
}
|
|
190
|
-
function parse_login_cookie(response) {
|
|
191
|
-
if (typeof window !== 'object') {
|
|
192
|
-
return undefined;
|
|
193
|
-
}
|
|
194
|
-
try {
|
|
195
|
-
var raw = response.headers.raw()['set-cookie'];
|
|
196
|
-
return raw.map(entry => {
|
|
197
|
-
var parts = entry.split(';');
|
|
198
|
-
var cookiePart = parts[0];
|
|
199
|
-
return cookiePart;
|
|
200
|
-
}).join(';');
|
|
201
|
-
} catch (e) {
|
|
202
|
-
console.log('[miolo-cli] Could not get the set-cookie after login');
|
|
203
|
-
return undefined;
|
|
204
|
-
}
|
|
205
|
-
}
|
|
206
190
|
|
|
207
191
|
class Fetcher {
|
|
208
192
|
/**
|
|
@@ -211,7 +195,6 @@ class Fetcher {
|
|
|
211
195
|
constructor(config) {
|
|
212
196
|
this.config = config;
|
|
213
197
|
this.auth = undefined;
|
|
214
|
-
this.cookie = undefined;
|
|
215
198
|
}
|
|
216
199
|
set_auth(auth) {
|
|
217
200
|
if (auth) {
|
|
@@ -242,9 +225,6 @@ class Fetcher {
|
|
|
242
225
|
}
|
|
243
226
|
headers['Authorization'] = sauth;
|
|
244
227
|
}
|
|
245
|
-
if (this.cookie) {
|
|
246
|
-
headers['Cookie'] = this.cookie;
|
|
247
|
-
}
|
|
248
228
|
return headers;
|
|
249
229
|
}
|
|
250
230
|
_prepare_url(url) {
|
|
@@ -365,14 +345,12 @@ class Fetcher {
|
|
|
365
345
|
username,
|
|
366
346
|
password
|
|
367
347
|
});
|
|
368
|
-
_this4.cookie = parse_login_cookie(res.response);
|
|
369
348
|
return res;
|
|
370
349
|
})();
|
|
371
350
|
}
|
|
372
351
|
logout(url) {
|
|
373
352
|
var _this5 = this;
|
|
374
353
|
return _asyncToGenerator(function* () {
|
|
375
|
-
_this5.cookie = undefined;
|
|
376
354
|
var res = yield _this5._fetch('POST', url || '/logout', {});
|
|
377
355
|
return res;
|
|
378
356
|
})();
|
package/dist/miolo-cli.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"miolo-cli.mjs","sources":["../src/catcher/index.mjs","../src/fetcher/utils.mjs","../src/fetcher/fetcher.mjs","../src/fetcher/index.mjs","../src/index.mjs"],"sourcesContent":["function init_catcher (catcher_url, fetcher) {\n if (typeof window == \"undefined\") {\n return\n } \n\n if (window.miolo_listeners===true) {\n return\n }\n\n // window.onerror = function(msg, file, line, col, error) {\n // try {\n // const params= {\n // 'error': {\n // msg, file, line, col, error\n // },\n // 'path' : window.location.pathname,\n // 'agent': 'UserAgent' + navigator.userAgent\n // }\n //\n // fetcher.post(catcher_url, params)\n // } catch(e) {\n // console.error(e)\n // }\n // }\n\n\n window.addEventListener(\"error\", (event) => {\n // https://developer.mozilla.org/en-US/docs/Web/API/ErrorEvent\n\n try {\n const params= {\n 'error': {\n msg: event?.message || 'Client error',\n file: event?.filename,\n line: event?.lineno,\n col: event?.colno,\n error: event?.error\n },\n 'path' : window.location.pathname,\n 'agent': 'UserAgent' + navigator.userAgent\n }\n\n fetcher.post(catcher_url, params)\n } catch(e) {\n console.error(e)\n }\n }) \n\n window.addEventListener(\"unhandledrejection\", (event) => {\n // https://developer.mozilla.org/en-US/docs/Web/API/PromiseRejectionEvent\n\n try {\n const params= {\n 'warning': {\n msg: event?.reason || 'Client Unhandled rejection',\n file: undefined,\n line: undefined,\n col: undefined,\n error: event?.reason\n },\n 'path' : window.location.pathname,\n 'agent': 'UserAgent' + navigator.userAgent\n }\n\n fetcher.post(catcher_url, params)\n } catch(e) {\n console.error(e)\n }\n }) \n\n window.miolo_listeners = true\n\n}\n\nexport {init_catcher}","/**\n * Transform an JSON object to a query string\n */\nconst _parse_value= (value) => {\n try {\n return value.replace(/\\+/g, '%2B')\n } catch(e) {\n return value\n }\n}\n\nexport function json_to_query_string(obj) {\n if (obj && (Object.keys(obj).length>0)) {\n const uparams = new URLSearchParams()\n for (const key in obj) {\n if (Object.hasOwn(obj, key)) {\n const value = obj[key];\n if (Array.isArray(value)) {\n value.forEach(item => uparams.append(key, _parse_value(item)))\n } else if (value !== undefined && value !== null) {\n uparams.append(key, _parse_value(value))\n }\n }\n }\n return `?${uparams.toString()}`\n }\n return ''\n}\n\nexport function trim_left(str, what) {\n return str.replace(new RegExp(`^${what || '\\\\s'}+`), '')\n}\n\n\nexport function omit_nil(obj) {\n if (typeof obj !== 'object') return obj\n return Object.keys(obj).reduce((acc, v) => {\n if (obj[v] !== undefined) acc[v] = obj[v]\n return acc\n }, {})\n}\n\n\nexport function parse_login_cookie(response) {\n if (typeof window !== 'object') {\n return undefined\n }\n try {\n const raw = response.headers.raw()['set-cookie'];\n return raw.map((entry) => {\n const parts = entry.split(';');\n const cookiePart = parts[0];\n return cookiePart;\n }).join(';');\n } catch(e) {\n console.log('[miolo-cli] Could not get the set-cookie after login')\n return undefined\n }\n}","import {omit_nil, trim_left, json_to_query_string, parse_login_cookie} from './utils.mjs'\n\nclass Fetcher {\n /**\n * @param {*} config {hostname, port, force_hostname, silent_fail: false}\n */\n constructor(config) {\n this.config= config\n this.auth = undefined\n this.cookie = undefined\n }\n\n set_auth(auth) {\n if (auth) {\n const {username, password}= auth\n this.auth= {username, password}\n }\n }\n\n get_headers() {\n let headers = {}\n\n if (this.auth) {\n let {username, password}= this.auth\n username= username || ''\n password= password || ''\n\n let sauth\n try {\n sauth= 'Basic ' + Buffer.from(username + \":\" + password).toString('base64')\n } catch(_) {\n sauth= 'Basic ' + btoa(username + \":\" + password)\n }\n\n headers['Authorization']= sauth\n }\n\n if (this.cookie) {\n headers['Cookie']= this.cookie\n }\n\n return headers\n }\n\n _prepare_url (url) {\n const endpoint = '/' + trim_left(url, '/')\n \n const {hostname, port, force_hostname} = this.config || {}\n if (hostname && force_hostname) {\n return `http://${hostname}:${port}${endpoint}`\n }\n \n return endpoint\n }\n\n async _fetch (method, url, params, auth= undefined) {\n this.set_auth(auth)\n\n let request = {\n method,\n mode: 'cors',\n credentials: 'include',\n headers: {\n 'content-type': 'application/json',\n ...this.get_headers() || {}\n }\n }\n\n let wurl = this._prepare_url(url)\n \n if (method === 'POST') {\n request.body = JSON.stringify(params || {}, (k, v) => v === undefined ? null : v)\n } else if (method === 'GET') {\n if (params) {\n wurl+= json_to_query_string(params)\n }\n }\n \n const response = await fetch(wurl, request)\n \n if (response.redirected) {\n const isBrowser = typeof window == 'object'\n if (isBrowser) {\n // JSDOM does not support navigation, so lets skip it for tests\n const isTest = typeof navigator !== \"undefined\" &&\n navigator.userAgent.includes(\"Node.js\");\n if (!isTest) {\n window.location.replace(response.url)\n return Promise.resolve(response)\n } else {\n console.error(`Response for ${wurl} is a redirect to ${response.url}. But you are in a test environment, where redirects cannot be done. Unexpected results are coming...`)\n }\n }\n }\n \n if (response.headers.get('content-type').indexOf('json') >= 0) {\n const data= await response.json()\n \n return {\n data,\n status: response.status,\n response\n }\n }\n \n const data= await response.text()\n return {\n data,\n status: response.status,\n response\n }\n\n }\n \n async get(url, params, auth= undefined) {\n /* eslint no-unused-vars:0 */\n try {\n const resp = await this._fetch('GET', url, omit_nil(params), auth)\n return resp\n } catch(e) {\n if (this.config?.silent_fail !== true) {\n console.error(`Error on GET ${url}`)\n console.error(e)\n }\n\n return {\n data: e,\n status: -1,\n }\n }\n }\n\n async post(url, data, auth= undefined) {\n try {\n const resp = await this._fetch('POST', url, data, auth)\n return resp\n } catch(e) {\n if (this.config?.silent_fail !== true) {\n console.error(`Error on POST ${url}`)\n console.error(e)\n }\n\n return {\n data: e,\n status: -1\n }\n }\n } \n\n async login(url, {username, password}) {\n const res= await this._fetch('POST', url || '/login', {username, password})\n this.cookie= parse_login_cookie(res.response)\n return res\n }\n\n async logout(url) {\n this.cookie= undefined\n const res= await this._fetch('POST', url || '/logout', {})\n return res \n }\n\n async read(url, params, auth= undefined) {\n const result = await this.get(`${url}/read`, params, auth)\n return result.data\n }\n\n async key_list(url, params, auth= undefined) {\n const result = await this.get(`${url}/key_list`, params, auth)\n return result.data\n } \n\n async name_list(url, params, auth= undefined) {\n const result = await this.key_list(url, params, auth)\n return Object.values(result)\n }\n\n async find(url, id, auth= undefined) {\n const result = await this.get(`${url}/find`, { id: id }, auth)\n return result.data\n }\n\n async distinct(url, field, params, auth= undefined) {\n const nparams= {\n ...params,\n distinct_field: field\n }\n const result = await this.get(`${url}/distinct`, nparams, auth)\n return result.data \n }\n\n async upsave(url, data, auth= undefined) {\n let result\n if (data.id == undefined) {\n delete data.id\n result= await this.post(`${url}/save`, data, auth)\n } else {\n result= await this.post(`${url}/update`, data, auth)\n }\n \n return result.data\n } \n\n async remove(url, id, auth= undefined) {\n const data = { id: id }\n const result = await this.post(`${url}/delete`, data, auth)\n return result.data\n }\n}\n\nFetcher.keyList= Fetcher.key_list\nFetcher.nameList= Fetcher.name_list\n\nexport { Fetcher }\n\n","import {Fetcher} from './fetcher.mjs'\n\n\nexport function init_fetcher(config) {\n const fetcher= new Fetcher(config)\n return fetcher\n}\n","import {init_catcher} from './catcher/index.mjs'\nimport {init_fetcher} from './fetcher/index.mjs'\n// import {init_socket} from './socket/index.mjs'\n\nfunction miolo_client(context) {\n\n const {config} = context\n\n const fetcher = init_fetcher(config)\n\n if (config?.catcher_url) {\n init_catcher(config?.catcher_url, fetcher) \n }\n\n// let socket\n// if (config?.socket?.enabled===true) {\n// const domain = config?.socket?.domain\n// const options = config?.socket?.options\n// socket = init_socket(domain, options) \n// }\n\n const miolo_obj= {\n fetcher,\n //socket\n }\n\n return miolo_obj\n}\n\nexport {miolo_client}"],"names":["init_catcher","catcher_url","fetcher","window","miolo_listeners","addEventListener","event","params","msg","message","file","filename","line","lineno","col","colno","error","location","pathname","navigator","userAgent","post","e","console","reason","undefined","_parse_value","value","replace","json_to_query_string","obj","Object","keys","length","uparams","URLSearchParams","_loop","key","hasOwn","Array","isArray","forEach","item","append","concat","toString","trim_left","str","what","RegExp","omit_nil","reduce","acc","v","parse_login_cookie","response","raw","headers","map","entry","parts","split","cookiePart","join","log","Fetcher","constructor","config","auth","cookie","set_auth","username","password","get_headers","sauth","Buffer","from","_","btoa","_prepare_url","url","endpoint","hostname","port","force_hostname","_fetch","method","_arguments","arguments","_this","_asyncToGenerator","request","mode","credentials","_objectSpread","wurl","body","JSON","stringify","k","fetch","redirected","isBrowser","isTest","includes","Promise","resolve","get","indexOf","data","json","status","text","_arguments2","_this2","resp","_this2$config","silent_fail","_arguments3","_this3","_this3$config","login","_ref","_this4","res","logout","_this5","read","_arguments4","_this6","result","key_list","_arguments5","_this7","name_list","_arguments6","_this8","values","find","id","_arguments7","_this9","distinct","field","_arguments8","_this0","nparams","distinct_field","upsave","_arguments9","_this1","remove","_arguments0","_this10","keyList","nameList","init_fetcher","miolo_client","context","miolo_obj"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"miolo-cli.mjs","sources":["../src/catcher/index.mjs","../src/fetcher/utils.mjs","../src/fetcher/fetcher.mjs","../src/fetcher/index.mjs","../src/index.mjs"],"sourcesContent":["function init_catcher (catcher_url, fetcher) {\n if (typeof window == \"undefined\") {\n return\n } \n\n if (window.miolo_listeners===true) {\n return\n }\n\n // window.onerror = function(msg, file, line, col, error) {\n // try {\n // const params= {\n // 'error': {\n // msg, file, line, col, error\n // },\n // 'path' : window.location.pathname,\n // 'agent': 'UserAgent' + navigator.userAgent\n // }\n //\n // fetcher.post(catcher_url, params)\n // } catch(e) {\n // console.error(e)\n // }\n // }\n\n\n window.addEventListener(\"error\", (event) => {\n // https://developer.mozilla.org/en-US/docs/Web/API/ErrorEvent\n\n try {\n const params= {\n 'error': {\n msg: event?.message || 'Client error',\n file: event?.filename,\n line: event?.lineno,\n col: event?.colno,\n error: event?.error\n },\n 'path' : window.location.pathname,\n 'agent': 'UserAgent' + navigator.userAgent\n }\n\n fetcher.post(catcher_url, params)\n } catch(e) {\n console.error(e)\n }\n }) \n\n window.addEventListener(\"unhandledrejection\", (event) => {\n // https://developer.mozilla.org/en-US/docs/Web/API/PromiseRejectionEvent\n\n try {\n const params= {\n 'warning': {\n msg: event?.reason || 'Client Unhandled rejection',\n file: undefined,\n line: undefined,\n col: undefined,\n error: event?.reason\n },\n 'path' : window.location.pathname,\n 'agent': 'UserAgent' + navigator.userAgent\n }\n\n fetcher.post(catcher_url, params)\n } catch(e) {\n console.error(e)\n }\n }) \n\n window.miolo_listeners = true\n\n}\n\nexport {init_catcher}","/**\n * Transform an JSON object to a query string\n */\nconst _parse_value= (value) => {\n try {\n return value.replace(/\\+/g, '%2B')\n } catch(e) {\n return value\n }\n}\n\nexport function json_to_query_string(obj) {\n if (obj && (Object.keys(obj).length>0)) {\n const uparams = new URLSearchParams()\n for (const key in obj) {\n if (Object.hasOwn(obj, key)) {\n const value = obj[key];\n if (Array.isArray(value)) {\n value.forEach(item => uparams.append(key, _parse_value(item)))\n } else if (value !== undefined && value !== null) {\n uparams.append(key, _parse_value(value))\n }\n }\n }\n return `?${uparams.toString()}`\n }\n return ''\n}\n\nexport function trim_left(str, what) {\n return str.replace(new RegExp(`^${what || '\\\\s'}+`), '')\n}\n\n\nexport function omit_nil(obj) {\n if (typeof obj !== 'object') return obj\n return Object.keys(obj).reduce((acc, v) => {\n if (obj[v] !== undefined) acc[v] = obj[v]\n return acc\n }, {})\n}\n","import {omit_nil, trim_left, json_to_query_string} from './utils.mjs'\n\nclass Fetcher {\n /**\n * @param {*} config {hostname, port, force_hostname, silent_fail: false}\n */\n constructor(config) {\n this.config= config\n this.auth = undefined\n }\n\n set_auth(auth) {\n if (auth) {\n const {username, password}= auth\n this.auth= {username, password}\n }\n }\n\n get_headers() {\n let headers = {}\n\n if (this.auth) {\n let {username, password}= this.auth\n username= username || ''\n password= password || ''\n\n let sauth\n try {\n sauth= 'Basic ' + Buffer.from(username + \":\" + password).toString('base64')\n } catch(_) {\n sauth= 'Basic ' + btoa(username + \":\" + password)\n }\n\n headers['Authorization']= sauth\n }\n\n return headers\n }\n\n _prepare_url (url) {\n const endpoint = '/' + trim_left(url, '/')\n \n const {hostname, port, force_hostname} = this.config || {}\n if (hostname && force_hostname) {\n return `http://${hostname}:${port}${endpoint}`\n }\n \n return endpoint\n }\n\n async _fetch (method, url, params, auth= undefined) {\n this.set_auth(auth)\n\n let request = {\n method,\n mode: 'cors',\n credentials: 'include',\n headers: {\n 'content-type': 'application/json',\n ...this.get_headers() || {}\n }\n }\n\n let wurl = this._prepare_url(url)\n \n if (method === 'POST') {\n request.body = JSON.stringify(params || {}, (k, v) => v === undefined ? null : v)\n } else if (method === 'GET') {\n if (params) {\n wurl+= json_to_query_string(params)\n }\n }\n \n const response = await fetch(wurl, request)\n \n if (response.redirected) {\n const isBrowser = typeof window == 'object'\n if (isBrowser) {\n // JSDOM does not support navigation, so lets skip it for tests\n const isTest = typeof navigator !== \"undefined\" &&\n navigator.userAgent.includes(\"Node.js\");\n if (!isTest) {\n window.location.replace(response.url)\n return Promise.resolve(response)\n } else {\n console.error(`Response for ${wurl} is a redirect to ${response.url}. But you are in a test environment, where redirects cannot be done. Unexpected results are coming...`)\n }\n }\n }\n \n if (response.headers.get('content-type').indexOf('json') >= 0) {\n const data= await response.json()\n \n return {\n data,\n status: response.status,\n response\n }\n }\n \n const data= await response.text()\n return {\n data,\n status: response.status,\n response\n }\n\n }\n \n async get(url, params, auth= undefined) {\n /* eslint no-unused-vars:0 */\n try {\n const resp = await this._fetch('GET', url, omit_nil(params), auth)\n return resp\n } catch(e) {\n if (this.config?.silent_fail !== true) {\n console.error(`Error on GET ${url}`)\n console.error(e)\n }\n\n return {\n data: e,\n status: -1,\n }\n }\n }\n\n async post(url, data, auth= undefined) {\n try {\n const resp = await this._fetch('POST', url, data, auth)\n return resp\n } catch(e) {\n if (this.config?.silent_fail !== true) {\n console.error(`Error on POST ${url}`)\n console.error(e)\n }\n\n return {\n data: e,\n status: -1\n }\n }\n } \n\n async login(url, {username, password}) {\n const res= await this._fetch('POST', url || '/login', {username, password})\n return res\n }\n\n async logout(url) {\n const res= await this._fetch('POST', url || '/logout', {})\n return res \n }\n\n async read(url, params, auth= undefined) {\n const result = await this.get(`${url}/read`, params, auth)\n return result.data\n }\n\n async key_list(url, params, auth= undefined) {\n const result = await this.get(`${url}/key_list`, params, auth)\n return result.data\n } \n\n async name_list(url, params, auth= undefined) {\n const result = await this.key_list(url, params, auth)\n return Object.values(result)\n }\n\n async find(url, id, auth= undefined) {\n const result = await this.get(`${url}/find`, { id: id }, auth)\n return result.data\n }\n\n async distinct(url, field, params, auth= undefined) {\n const nparams= {\n ...params,\n distinct_field: field\n }\n const result = await this.get(`${url}/distinct`, nparams, auth)\n return result.data \n }\n\n async upsave(url, data, auth= undefined) {\n let result\n if (data.id == undefined) {\n delete data.id\n result= await this.post(`${url}/save`, data, auth)\n } else {\n result= await this.post(`${url}/update`, data, auth)\n }\n \n return result.data\n } \n\n async remove(url, id, auth= undefined) {\n const data = { id: id }\n const result = await this.post(`${url}/delete`, data, auth)\n return result.data\n }\n}\n\nFetcher.keyList= Fetcher.key_list\nFetcher.nameList= Fetcher.name_list\n\nexport { Fetcher }\n\n","import {Fetcher} from './fetcher.mjs'\n\n\nexport function init_fetcher(config) {\n const fetcher= new Fetcher(config)\n return fetcher\n}\n","import {init_catcher} from './catcher/index.mjs'\nimport {init_fetcher} from './fetcher/index.mjs'\n// import {init_socket} from './socket/index.mjs'\n\nfunction miolo_client(context) {\n\n const {config} = context\n\n const fetcher = init_fetcher(config)\n\n if (config?.catcher_url) {\n init_catcher(config?.catcher_url, fetcher) \n }\n\n// let socket\n// if (config?.socket?.enabled===true) {\n// const domain = config?.socket?.domain\n// const options = config?.socket?.options\n// socket = init_socket(domain, options) \n// }\n\n const miolo_obj= {\n fetcher,\n //socket\n }\n\n return miolo_obj\n}\n\nexport {miolo_client}"],"names":["init_catcher","catcher_url","fetcher","window","miolo_listeners","addEventListener","event","params","msg","message","file","filename","line","lineno","col","colno","error","location","pathname","navigator","userAgent","post","e","console","reason","undefined","_parse_value","value","replace","json_to_query_string","obj","Object","keys","length","uparams","URLSearchParams","_loop","key","hasOwn","Array","isArray","forEach","item","append","concat","toString","trim_left","str","what","RegExp","omit_nil","reduce","acc","v","Fetcher","constructor","config","auth","set_auth","username","password","get_headers","headers","sauth","Buffer","from","_","btoa","_prepare_url","url","endpoint","hostname","port","force_hostname","_fetch","method","_arguments","arguments","_this","_asyncToGenerator","request","mode","credentials","_objectSpread","wurl","body","JSON","stringify","k","response","fetch","redirected","isBrowser","isTest","includes","Promise","resolve","get","indexOf","data","json","status","text","_arguments2","_this2","resp","_this2$config","silent_fail","_arguments3","_this3","_this3$config","login","_ref","_this4","res","logout","_this5","read","_arguments4","_this6","result","key_list","_arguments5","_this7","name_list","_arguments6","_this8","values","find","id","_arguments7","_this9","distinct","field","_arguments8","_this0","nparams","distinct_field","upsave","_arguments9","_this1","remove","_arguments0","_this10","keyList","nameList","init_fetcher","miolo_client","context","miolo_obj"],"mappings":"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"}
|
package/dist/miolo-cli.umd.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* miolo-cli v3.0.0-beta.
|
|
2
|
+
* miolo-cli v3.0.0-beta.110
|
|
3
3
|
*
|
|
4
4
|
* https://www.afialapis.com/os/miolo
|
|
5
5
|
*
|
|
@@ -213,19 +213,17 @@
|
|
|
213
213
|
i = 0;
|
|
214
214
|
}
|
|
215
215
|
_regeneratorDefine = function (e, r, n, t) {
|
|
216
|
-
|
|
216
|
+
function o(r, n) {
|
|
217
|
+
_regeneratorDefine(e, r, function (e) {
|
|
218
|
+
return this._invoke(r, n, e);
|
|
219
|
+
});
|
|
220
|
+
}
|
|
221
|
+
r ? i ? i(e, r, {
|
|
217
222
|
value: n,
|
|
218
223
|
enumerable: !t,
|
|
219
224
|
configurable: !t,
|
|
220
225
|
writable: !t
|
|
221
|
-
}) : e[r] = n;
|
|
222
|
-
function o(r, n) {
|
|
223
|
-
_regeneratorDefine(e, r, function (e) {
|
|
224
|
-
return this._invoke(r, n, e);
|
|
225
|
-
});
|
|
226
|
-
}
|
|
227
|
-
o("next", 0), o("throw", 1), o("return", 2);
|
|
228
|
-
}
|
|
226
|
+
}) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2));
|
|
229
227
|
}, _regeneratorDefine(e, r, n, t);
|
|
230
228
|
}
|
|
231
229
|
|
|
@@ -271,22 +269,6 @@
|
|
|
271
269
|
return acc;
|
|
272
270
|
}, {});
|
|
273
271
|
}
|
|
274
|
-
function parse_login_cookie(response) {
|
|
275
|
-
if (typeof window !== 'object') {
|
|
276
|
-
return undefined;
|
|
277
|
-
}
|
|
278
|
-
try {
|
|
279
|
-
var raw = response.headers.raw()['set-cookie'];
|
|
280
|
-
return raw.map(function (entry) {
|
|
281
|
-
var parts = entry.split(';');
|
|
282
|
-
var cookiePart = parts[0];
|
|
283
|
-
return cookiePart;
|
|
284
|
-
}).join(';');
|
|
285
|
-
} catch (e) {
|
|
286
|
-
console.log('[miolo-cli] Could not get the set-cookie after login');
|
|
287
|
-
return undefined;
|
|
288
|
-
}
|
|
289
|
-
}
|
|
290
272
|
|
|
291
273
|
var Fetcher = /*#__PURE__*/function () {
|
|
292
274
|
/**
|
|
@@ -295,7 +277,6 @@
|
|
|
295
277
|
function Fetcher(config) {
|
|
296
278
|
this.config = config;
|
|
297
279
|
this.auth = undefined;
|
|
298
|
-
this.cookie = undefined;
|
|
299
280
|
}
|
|
300
281
|
var _proto = Fetcher.prototype;
|
|
301
282
|
_proto.set_auth = function set_auth(auth) {
|
|
@@ -324,9 +305,6 @@
|
|
|
324
305
|
}
|
|
325
306
|
headers['Authorization'] = sauth;
|
|
326
307
|
}
|
|
327
|
-
if (this.cookie) {
|
|
328
|
-
headers['Cookie'] = this.cookie;
|
|
329
|
-
}
|
|
330
308
|
return headers;
|
|
331
309
|
};
|
|
332
310
|
_proto._prepare_url = function _prepare_url(url) {
|
|
@@ -505,7 +483,6 @@
|
|
|
505
483
|
});
|
|
506
484
|
case 1:
|
|
507
485
|
res = _context4.v;
|
|
508
|
-
this.cookie = parse_login_cookie(res.response);
|
|
509
486
|
return _context4.a(2, res);
|
|
510
487
|
}
|
|
511
488
|
}, _callee4, this);
|
|
@@ -521,7 +498,6 @@
|
|
|
521
498
|
return _regenerator().w(function (_context5) {
|
|
522
499
|
while (1) switch (_context5.n) {
|
|
523
500
|
case 0:
|
|
524
|
-
this.cookie = undefined;
|
|
525
501
|
_context5.n = 1;
|
|
526
502
|
return this._fetch('POST', url || '/logout', {});
|
|
527
503
|
case 1:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"miolo-cli.umd.js","sources":["../src/catcher/index.mjs","../src/fetcher/utils.mjs","../src/fetcher/fetcher.mjs","../src/fetcher/index.mjs","../src/index.mjs"],"sourcesContent":["function init_catcher (catcher_url, fetcher) {\n if (typeof window == \"undefined\") {\n return\n } \n\n if (window.miolo_listeners===true) {\n return\n }\n\n // window.onerror = function(msg, file, line, col, error) {\n // try {\n // const params= {\n // 'error': {\n // msg, file, line, col, error\n // },\n // 'path' : window.location.pathname,\n // 'agent': 'UserAgent' + navigator.userAgent\n // }\n //\n // fetcher.post(catcher_url, params)\n // } catch(e) {\n // console.error(e)\n // }\n // }\n\n\n window.addEventListener(\"error\", (event) => {\n // https://developer.mozilla.org/en-US/docs/Web/API/ErrorEvent\n\n try {\n const params= {\n 'error': {\n msg: event?.message || 'Client error',\n file: event?.filename,\n line: event?.lineno,\n col: event?.colno,\n error: event?.error\n },\n 'path' : window.location.pathname,\n 'agent': 'UserAgent' + navigator.userAgent\n }\n\n fetcher.post(catcher_url, params)\n } catch(e) {\n console.error(e)\n }\n }) \n\n window.addEventListener(\"unhandledrejection\", (event) => {\n // https://developer.mozilla.org/en-US/docs/Web/API/PromiseRejectionEvent\n\n try {\n const params= {\n 'warning': {\n msg: event?.reason || 'Client Unhandled rejection',\n file: undefined,\n line: undefined,\n col: undefined,\n error: event?.reason\n },\n 'path' : window.location.pathname,\n 'agent': 'UserAgent' + navigator.userAgent\n }\n\n fetcher.post(catcher_url, params)\n } catch(e) {\n console.error(e)\n }\n }) \n\n window.miolo_listeners = true\n\n}\n\nexport {init_catcher}","/**\n * Transform an JSON object to a query string\n */\nconst _parse_value= (value) => {\n try {\n return value.replace(/\\+/g, '%2B')\n } catch(e) {\n return value\n }\n}\n\nexport function json_to_query_string(obj) {\n if (obj && (Object.keys(obj).length>0)) {\n const uparams = new URLSearchParams()\n for (const key in obj) {\n if (Object.hasOwn(obj, key)) {\n const value = obj[key];\n if (Array.isArray(value)) {\n value.forEach(item => uparams.append(key, _parse_value(item)))\n } else if (value !== undefined && value !== null) {\n uparams.append(key, _parse_value(value))\n }\n }\n }\n return `?${uparams.toString()}`\n }\n return ''\n}\n\nexport function trim_left(str, what) {\n return str.replace(new RegExp(`^${what || '\\\\s'}+`), '')\n}\n\n\nexport function omit_nil(obj) {\n if (typeof obj !== 'object') return obj\n return Object.keys(obj).reduce((acc, v) => {\n if (obj[v] !== undefined) acc[v] = obj[v]\n return acc\n }, {})\n}\n\n\nexport function parse_login_cookie(response) {\n if (typeof window !== 'object') {\n return undefined\n }\n try {\n const raw = response.headers.raw()['set-cookie'];\n return raw.map((entry) => {\n const parts = entry.split(';');\n const cookiePart = parts[0];\n return cookiePart;\n }).join(';');\n } catch(e) {\n console.log('[miolo-cli] Could not get the set-cookie after login')\n return undefined\n }\n}","import {omit_nil, trim_left, json_to_query_string, parse_login_cookie} from './utils.mjs'\n\nclass Fetcher {\n /**\n * @param {*} config {hostname, port, force_hostname, silent_fail: false}\n */\n constructor(config) {\n this.config= config\n this.auth = undefined\n this.cookie = undefined\n }\n\n set_auth(auth) {\n if (auth) {\n const {username, password}= auth\n this.auth= {username, password}\n }\n }\n\n get_headers() {\n let headers = {}\n\n if (this.auth) {\n let {username, password}= this.auth\n username= username || ''\n password= password || ''\n\n let sauth\n try {\n sauth= 'Basic ' + Buffer.from(username + \":\" + password).toString('base64')\n } catch(_) {\n sauth= 'Basic ' + btoa(username + \":\" + password)\n }\n\n headers['Authorization']= sauth\n }\n\n if (this.cookie) {\n headers['Cookie']= this.cookie\n }\n\n return headers\n }\n\n _prepare_url (url) {\n const endpoint = '/' + trim_left(url, '/')\n \n const {hostname, port, force_hostname} = this.config || {}\n if (hostname && force_hostname) {\n return `http://${hostname}:${port}${endpoint}`\n }\n \n return endpoint\n }\n\n async _fetch (method, url, params, auth= undefined) {\n this.set_auth(auth)\n\n let request = {\n method,\n mode: 'cors',\n credentials: 'include',\n headers: {\n 'content-type': 'application/json',\n ...this.get_headers() || {}\n }\n }\n\n let wurl = this._prepare_url(url)\n \n if (method === 'POST') {\n request.body = JSON.stringify(params || {}, (k, v) => v === undefined ? null : v)\n } else if (method === 'GET') {\n if (params) {\n wurl+= json_to_query_string(params)\n }\n }\n \n const response = await fetch(wurl, request)\n \n if (response.redirected) {\n const isBrowser = typeof window == 'object'\n if (isBrowser) {\n // JSDOM does not support navigation, so lets skip it for tests\n const isTest = typeof navigator !== \"undefined\" &&\n navigator.userAgent.includes(\"Node.js\");\n if (!isTest) {\n window.location.replace(response.url)\n return Promise.resolve(response)\n } else {\n console.error(`Response for ${wurl} is a redirect to ${response.url}. But you are in a test environment, where redirects cannot be done. Unexpected results are coming...`)\n }\n }\n }\n \n if (response.headers.get('content-type').indexOf('json') >= 0) {\n const data= await response.json()\n \n return {\n data,\n status: response.status,\n response\n }\n }\n \n const data= await response.text()\n return {\n data,\n status: response.status,\n response\n }\n\n }\n \n async get(url, params, auth= undefined) {\n /* eslint no-unused-vars:0 */\n try {\n const resp = await this._fetch('GET', url, omit_nil(params), auth)\n return resp\n } catch(e) {\n if (this.config?.silent_fail !== true) {\n console.error(`Error on GET ${url}`)\n console.error(e)\n }\n\n return {\n data: e,\n status: -1,\n }\n }\n }\n\n async post(url, data, auth= undefined) {\n try {\n const resp = await this._fetch('POST', url, data, auth)\n return resp\n } catch(e) {\n if (this.config?.silent_fail !== true) {\n console.error(`Error on POST ${url}`)\n console.error(e)\n }\n\n return {\n data: e,\n status: -1\n }\n }\n } \n\n async login(url, {username, password}) {\n const res= await this._fetch('POST', url || '/login', {username, password})\n this.cookie= parse_login_cookie(res.response)\n return res\n }\n\n async logout(url) {\n this.cookie= undefined\n const res= await this._fetch('POST', url || '/logout', {})\n return res \n }\n\n async read(url, params, auth= undefined) {\n const result = await this.get(`${url}/read`, params, auth)\n return result.data\n }\n\n async key_list(url, params, auth= undefined) {\n const result = await this.get(`${url}/key_list`, params, auth)\n return result.data\n } \n\n async name_list(url, params, auth= undefined) {\n const result = await this.key_list(url, params, auth)\n return Object.values(result)\n }\n\n async find(url, id, auth= undefined) {\n const result = await this.get(`${url}/find`, { id: id }, auth)\n return result.data\n }\n\n async distinct(url, field, params, auth= undefined) {\n const nparams= {\n ...params,\n distinct_field: field\n }\n const result = await this.get(`${url}/distinct`, nparams, auth)\n return result.data \n }\n\n async upsave(url, data, auth= undefined) {\n let result\n if (data.id == undefined) {\n delete data.id\n result= await this.post(`${url}/save`, data, auth)\n } else {\n result= await this.post(`${url}/update`, data, auth)\n }\n \n return result.data\n } \n\n async remove(url, id, auth= undefined) {\n const data = { id: id }\n const result = await this.post(`${url}/delete`, data, auth)\n return result.data\n }\n}\n\nFetcher.keyList= Fetcher.key_list\nFetcher.nameList= Fetcher.name_list\n\nexport { Fetcher }\n\n","import {Fetcher} from './fetcher.mjs'\n\n\nexport function init_fetcher(config) {\n const fetcher= new Fetcher(config)\n return fetcher\n}\n","import {init_catcher} from './catcher/index.mjs'\nimport {init_fetcher} from './fetcher/index.mjs'\n// import {init_socket} from './socket/index.mjs'\n\nfunction miolo_client(context) {\n\n const {config} = context\n\n const fetcher = init_fetcher(config)\n\n if (config?.catcher_url) {\n init_catcher(config?.catcher_url, fetcher) \n }\n\n// let socket\n// if (config?.socket?.enabled===true) {\n// const domain = config?.socket?.domain\n// const options = config?.socket?.options\n// socket = init_socket(domain, options) \n// }\n\n const miolo_obj= {\n fetcher,\n //socket\n }\n\n return miolo_obj\n}\n\nexport {miolo_client}"],"names":["init_catcher","catcher_url","fetcher","window","miolo_listeners","addEventListener","event","params","msg","message","file","filename","line","lineno","col","colno","error","location","pathname","navigator","userAgent","post","e","console","reason","undefined","_parse_value","value","replace","json_to_query_string","obj","Object","keys","length","uparams","URLSearchParams","_loop","key","hasOwn","Array","isArray","forEach","item","append","toString","trim_left","str","what","RegExp","omit_nil","reduce","acc","v","parse_login_cookie","response","raw","headers","map","entry","parts","split","cookiePart","join","log","Fetcher","config","auth","cookie","_proto","prototype","set_auth","username","password","get_headers","_this$auth","sauth","Buffer","from","_","btoa","_prepare_url","url","endpoint","_ref","hostname","port","force_hostname","_fetch","_fetch2","_asyncToGenerator","_regenerator","m","_callee","method","request","wurl","isBrowser","isTest","_data","data","w","_context","n","mode","credentials","_extends","body","JSON","stringify","k","fetch","redirected","includes","a","Promise","resolve","get","indexOf","json","status","text","_x","_x2","_x3","_x4","apply","arguments","_get","_callee2","resp","_this$config","_t","_context2","p","silent_fail","_x5","_x6","_x7","_post","_callee3","_this$config2","_t2","_context3","_x8","_x9","_x0","login","_login","_callee4","_ref2","res","_context4","_x1","_x10","logout","_logout","_callee5","_context5","_x11","read","_read","_callee6","result","_context6","_x12","_x13","_x14","key_list","_key_list","_callee7","_context7","_x15","_x16","_x17","name_list","_name_list","_callee8","_context8","values","_x18","_x19","_x20","find","_find","_callee9","id","_context9","_x21","_x22","_x23","distinct","_distinct","_callee0","field","nparams","_context0","distinct_field","_x24","_x25","_x26","_x27","upsave","_upsave","_callee1","_context1","_x28","_x29","_x30","remove","_remove","_callee10","_context10","_x31","_x32","_x33","keyList","nameList","init_fetcher","miolo_client","context","miolo_obj"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"miolo-cli.umd.js","sources":["../src/catcher/index.mjs","../src/fetcher/utils.mjs","../src/fetcher/fetcher.mjs","../src/fetcher/index.mjs","../src/index.mjs"],"sourcesContent":["function init_catcher (catcher_url, fetcher) {\n if (typeof window == \"undefined\") {\n return\n } \n\n if (window.miolo_listeners===true) {\n return\n }\n\n // window.onerror = function(msg, file, line, col, error) {\n // try {\n // const params= {\n // 'error': {\n // msg, file, line, col, error\n // },\n // 'path' : window.location.pathname,\n // 'agent': 'UserAgent' + navigator.userAgent\n // }\n //\n // fetcher.post(catcher_url, params)\n // } catch(e) {\n // console.error(e)\n // }\n // }\n\n\n window.addEventListener(\"error\", (event) => {\n // https://developer.mozilla.org/en-US/docs/Web/API/ErrorEvent\n\n try {\n const params= {\n 'error': {\n msg: event?.message || 'Client error',\n file: event?.filename,\n line: event?.lineno,\n col: event?.colno,\n error: event?.error\n },\n 'path' : window.location.pathname,\n 'agent': 'UserAgent' + navigator.userAgent\n }\n\n fetcher.post(catcher_url, params)\n } catch(e) {\n console.error(e)\n }\n }) \n\n window.addEventListener(\"unhandledrejection\", (event) => {\n // https://developer.mozilla.org/en-US/docs/Web/API/PromiseRejectionEvent\n\n try {\n const params= {\n 'warning': {\n msg: event?.reason || 'Client Unhandled rejection',\n file: undefined,\n line: undefined,\n col: undefined,\n error: event?.reason\n },\n 'path' : window.location.pathname,\n 'agent': 'UserAgent' + navigator.userAgent\n }\n\n fetcher.post(catcher_url, params)\n } catch(e) {\n console.error(e)\n }\n }) \n\n window.miolo_listeners = true\n\n}\n\nexport {init_catcher}","/**\n * Transform an JSON object to a query string\n */\nconst _parse_value= (value) => {\n try {\n return value.replace(/\\+/g, '%2B')\n } catch(e) {\n return value\n }\n}\n\nexport function json_to_query_string(obj) {\n if (obj && (Object.keys(obj).length>0)) {\n const uparams = new URLSearchParams()\n for (const key in obj) {\n if (Object.hasOwn(obj, key)) {\n const value = obj[key];\n if (Array.isArray(value)) {\n value.forEach(item => uparams.append(key, _parse_value(item)))\n } else if (value !== undefined && value !== null) {\n uparams.append(key, _parse_value(value))\n }\n }\n }\n return `?${uparams.toString()}`\n }\n return ''\n}\n\nexport function trim_left(str, what) {\n return str.replace(new RegExp(`^${what || '\\\\s'}+`), '')\n}\n\n\nexport function omit_nil(obj) {\n if (typeof obj !== 'object') return obj\n return Object.keys(obj).reduce((acc, v) => {\n if (obj[v] !== undefined) acc[v] = obj[v]\n return acc\n }, {})\n}\n","import {omit_nil, trim_left, json_to_query_string} from './utils.mjs'\n\nclass Fetcher {\n /**\n * @param {*} config {hostname, port, force_hostname, silent_fail: false}\n */\n constructor(config) {\n this.config= config\n this.auth = undefined\n }\n\n set_auth(auth) {\n if (auth) {\n const {username, password}= auth\n this.auth= {username, password}\n }\n }\n\n get_headers() {\n let headers = {}\n\n if (this.auth) {\n let {username, password}= this.auth\n username= username || ''\n password= password || ''\n\n let sauth\n try {\n sauth= 'Basic ' + Buffer.from(username + \":\" + password).toString('base64')\n } catch(_) {\n sauth= 'Basic ' + btoa(username + \":\" + password)\n }\n\n headers['Authorization']= sauth\n }\n\n return headers\n }\n\n _prepare_url (url) {\n const endpoint = '/' + trim_left(url, '/')\n \n const {hostname, port, force_hostname} = this.config || {}\n if (hostname && force_hostname) {\n return `http://${hostname}:${port}${endpoint}`\n }\n \n return endpoint\n }\n\n async _fetch (method, url, params, auth= undefined) {\n this.set_auth(auth)\n\n let request = {\n method,\n mode: 'cors',\n credentials: 'include',\n headers: {\n 'content-type': 'application/json',\n ...this.get_headers() || {}\n }\n }\n\n let wurl = this._prepare_url(url)\n \n if (method === 'POST') {\n request.body = JSON.stringify(params || {}, (k, v) => v === undefined ? null : v)\n } else if (method === 'GET') {\n if (params) {\n wurl+= json_to_query_string(params)\n }\n }\n \n const response = await fetch(wurl, request)\n \n if (response.redirected) {\n const isBrowser = typeof window == 'object'\n if (isBrowser) {\n // JSDOM does not support navigation, so lets skip it for tests\n const isTest = typeof navigator !== \"undefined\" &&\n navigator.userAgent.includes(\"Node.js\");\n if (!isTest) {\n window.location.replace(response.url)\n return Promise.resolve(response)\n } else {\n console.error(`Response for ${wurl} is a redirect to ${response.url}. But you are in a test environment, where redirects cannot be done. Unexpected results are coming...`)\n }\n }\n }\n \n if (response.headers.get('content-type').indexOf('json') >= 0) {\n const data= await response.json()\n \n return {\n data,\n status: response.status,\n response\n }\n }\n \n const data= await response.text()\n return {\n data,\n status: response.status,\n response\n }\n\n }\n \n async get(url, params, auth= undefined) {\n /* eslint no-unused-vars:0 */\n try {\n const resp = await this._fetch('GET', url, omit_nil(params), auth)\n return resp\n } catch(e) {\n if (this.config?.silent_fail !== true) {\n console.error(`Error on GET ${url}`)\n console.error(e)\n }\n\n return {\n data: e,\n status: -1,\n }\n }\n }\n\n async post(url, data, auth= undefined) {\n try {\n const resp = await this._fetch('POST', url, data, auth)\n return resp\n } catch(e) {\n if (this.config?.silent_fail !== true) {\n console.error(`Error on POST ${url}`)\n console.error(e)\n }\n\n return {\n data: e,\n status: -1\n }\n }\n } \n\n async login(url, {username, password}) {\n const res= await this._fetch('POST', url || '/login', {username, password})\n return res\n }\n\n async logout(url) {\n const res= await this._fetch('POST', url || '/logout', {})\n return res \n }\n\n async read(url, params, auth= undefined) {\n const result = await this.get(`${url}/read`, params, auth)\n return result.data\n }\n\n async key_list(url, params, auth= undefined) {\n const result = await this.get(`${url}/key_list`, params, auth)\n return result.data\n } \n\n async name_list(url, params, auth= undefined) {\n const result = await this.key_list(url, params, auth)\n return Object.values(result)\n }\n\n async find(url, id, auth= undefined) {\n const result = await this.get(`${url}/find`, { id: id }, auth)\n return result.data\n }\n\n async distinct(url, field, params, auth= undefined) {\n const nparams= {\n ...params,\n distinct_field: field\n }\n const result = await this.get(`${url}/distinct`, nparams, auth)\n return result.data \n }\n\n async upsave(url, data, auth= undefined) {\n let result\n if (data.id == undefined) {\n delete data.id\n result= await this.post(`${url}/save`, data, auth)\n } else {\n result= await this.post(`${url}/update`, data, auth)\n }\n \n return result.data\n } \n\n async remove(url, id, auth= undefined) {\n const data = { id: id }\n const result = await this.post(`${url}/delete`, data, auth)\n return result.data\n }\n}\n\nFetcher.keyList= Fetcher.key_list\nFetcher.nameList= Fetcher.name_list\n\nexport { Fetcher }\n\n","import {Fetcher} from './fetcher.mjs'\n\n\nexport function init_fetcher(config) {\n const fetcher= new Fetcher(config)\n return fetcher\n}\n","import {init_catcher} from './catcher/index.mjs'\nimport {init_fetcher} from './fetcher/index.mjs'\n// import {init_socket} from './socket/index.mjs'\n\nfunction miolo_client(context) {\n\n const {config} = context\n\n const fetcher = init_fetcher(config)\n\n if (config?.catcher_url) {\n init_catcher(config?.catcher_url, fetcher) \n }\n\n// let socket\n// if (config?.socket?.enabled===true) {\n// const domain = config?.socket?.domain\n// const options = config?.socket?.options\n// socket = init_socket(domain, options) \n// }\n\n const miolo_obj= {\n fetcher,\n //socket\n }\n\n return miolo_obj\n}\n\nexport {miolo_client}"],"names":["init_catcher","catcher_url","fetcher","window","miolo_listeners","addEventListener","event","params","msg","message","file","filename","line","lineno","col","colno","error","location","pathname","navigator","userAgent","post","e","console","reason","undefined","_parse_value","value","replace","json_to_query_string","obj","Object","keys","length","uparams","URLSearchParams","_loop","key","hasOwn","Array","isArray","forEach","item","append","toString","trim_left","str","what","RegExp","omit_nil","reduce","acc","v","Fetcher","config","auth","_proto","prototype","set_auth","username","password","get_headers","headers","_this$auth","sauth","Buffer","from","_","btoa","_prepare_url","url","endpoint","_ref","hostname","port","force_hostname","_fetch","_fetch2","_asyncToGenerator","_regenerator","m","_callee","method","request","wurl","response","isBrowser","isTest","_data","data","w","_context","n","mode","credentials","_extends","body","JSON","stringify","k","fetch","redirected","includes","a","Promise","resolve","get","indexOf","json","status","text","_x","_x2","_x3","_x4","apply","arguments","_get","_callee2","resp","_this$config","_t","_context2","p","silent_fail","_x5","_x6","_x7","_post","_callee3","_this$config2","_t2","_context3","_x8","_x9","_x0","login","_login","_callee4","_ref2","res","_context4","_x1","_x10","logout","_logout","_callee5","_context5","_x11","read","_read","_callee6","result","_context6","_x12","_x13","_x14","key_list","_key_list","_callee7","_context7","_x15","_x16","_x17","name_list","_name_list","_callee8","_context8","values","_x18","_x19","_x20","find","_find","_callee9","id","_context9","_x21","_x22","_x23","distinct","_distinct","_callee0","field","nparams","_context0","distinct_field","_x24","_x25","_x26","_x27","upsave","_upsave","_callee1","_context1","_x28","_x29","_x30","remove","_remove","_callee10","_context10","_x31","_x32","_x33","keyList","nameList","init_fetcher","miolo_client","context","miolo_obj"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "miolo-cli",
|
|
3
|
-
"version": "3.0.0-beta.
|
|
3
|
+
"version": "3.0.0-beta.110",
|
|
4
4
|
"description": "cli utils for miolo",
|
|
5
5
|
"author": "Donato Lorenzo <donato@afialapis.com>",
|
|
6
6
|
"contributors": [
|
|
@@ -24,9 +24,11 @@
|
|
|
24
24
|
}
|
|
25
25
|
},
|
|
26
26
|
"files": [
|
|
27
|
-
"dist"
|
|
27
|
+
"dist",
|
|
28
|
+
"src"
|
|
28
29
|
],
|
|
29
30
|
"scripts": {
|
|
31
|
+
"lint": "npx xeira lint ./src",
|
|
30
32
|
"reset": "rm -fr package-lock.json npm-lock.yaml dist/* && npm i",
|
|
31
33
|
"clean": "rm -fr ./dist/*",
|
|
32
34
|
"bundle": "npx xeira bundle --target=browser --source_index=./src/index.mjs --bundle_folder=./dist --bundle_name=miolo-cli --bundle_extension=umd,mjs",
|
|
@@ -37,11 +39,6 @@
|
|
|
37
39
|
},
|
|
38
40
|
"devDependencies": {
|
|
39
41
|
"node-fetch": "^3.3.2",
|
|
40
|
-
"xeira": "^
|
|
41
|
-
},
|
|
42
|
-
"eslintConfig": {
|
|
43
|
-
"extends": [
|
|
44
|
-
"../../node_modules/xeira/configs/eslint.cjs"
|
|
45
|
-
]
|
|
42
|
+
"xeira": "^2.0.0-beta.7"
|
|
46
43
|
}
|
|
47
44
|
}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
function init_catcher (catcher_url, fetcher) {
|
|
2
|
+
if (typeof window == "undefined") {
|
|
3
|
+
return
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
if (window.miolo_listeners===true) {
|
|
7
|
+
return
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
// window.onerror = function(msg, file, line, col, error) {
|
|
11
|
+
// try {
|
|
12
|
+
// const params= {
|
|
13
|
+
// 'error': {
|
|
14
|
+
// msg, file, line, col, error
|
|
15
|
+
// },
|
|
16
|
+
// 'path' : window.location.pathname,
|
|
17
|
+
// 'agent': 'UserAgent' + navigator.userAgent
|
|
18
|
+
// }
|
|
19
|
+
//
|
|
20
|
+
// fetcher.post(catcher_url, params)
|
|
21
|
+
// } catch(e) {
|
|
22
|
+
// console.error(e)
|
|
23
|
+
// }
|
|
24
|
+
// }
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
window.addEventListener("error", (event) => {
|
|
28
|
+
// https://developer.mozilla.org/en-US/docs/Web/API/ErrorEvent
|
|
29
|
+
|
|
30
|
+
try {
|
|
31
|
+
const params= {
|
|
32
|
+
'error': {
|
|
33
|
+
msg: event?.message || 'Client error',
|
|
34
|
+
file: event?.filename,
|
|
35
|
+
line: event?.lineno,
|
|
36
|
+
col: event?.colno,
|
|
37
|
+
error: event?.error
|
|
38
|
+
},
|
|
39
|
+
'path' : window.location.pathname,
|
|
40
|
+
'agent': 'UserAgent' + navigator.userAgent
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
fetcher.post(catcher_url, params)
|
|
44
|
+
} catch(e) {
|
|
45
|
+
console.error(e)
|
|
46
|
+
}
|
|
47
|
+
})
|
|
48
|
+
|
|
49
|
+
window.addEventListener("unhandledrejection", (event) => {
|
|
50
|
+
// https://developer.mozilla.org/en-US/docs/Web/API/PromiseRejectionEvent
|
|
51
|
+
|
|
52
|
+
try {
|
|
53
|
+
const params= {
|
|
54
|
+
'warning': {
|
|
55
|
+
msg: event?.reason || 'Client Unhandled rejection',
|
|
56
|
+
file: undefined,
|
|
57
|
+
line: undefined,
|
|
58
|
+
col: undefined,
|
|
59
|
+
error: event?.reason
|
|
60
|
+
},
|
|
61
|
+
'path' : window.location.pathname,
|
|
62
|
+
'agent': 'UserAgent' + navigator.userAgent
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
fetcher.post(catcher_url, params)
|
|
66
|
+
} catch(e) {
|
|
67
|
+
console.error(e)
|
|
68
|
+
}
|
|
69
|
+
})
|
|
70
|
+
|
|
71
|
+
window.miolo_listeners = true
|
|
72
|
+
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
export {init_catcher}
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
import {omit_nil, trim_left, json_to_query_string} from './utils.mjs'
|
|
2
|
+
|
|
3
|
+
class Fetcher {
|
|
4
|
+
/**
|
|
5
|
+
* @param {*} config {hostname, port, force_hostname, silent_fail: false}
|
|
6
|
+
*/
|
|
7
|
+
constructor(config) {
|
|
8
|
+
this.config= config
|
|
9
|
+
this.auth = undefined
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
set_auth(auth) {
|
|
13
|
+
if (auth) {
|
|
14
|
+
const {username, password}= auth
|
|
15
|
+
this.auth= {username, password}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
get_headers() {
|
|
20
|
+
let headers = {}
|
|
21
|
+
|
|
22
|
+
if (this.auth) {
|
|
23
|
+
let {username, password}= this.auth
|
|
24
|
+
username= username || ''
|
|
25
|
+
password= password || ''
|
|
26
|
+
|
|
27
|
+
let sauth
|
|
28
|
+
try {
|
|
29
|
+
sauth= 'Basic ' + Buffer.from(username + ":" + password).toString('base64')
|
|
30
|
+
} catch(_) {
|
|
31
|
+
sauth= 'Basic ' + btoa(username + ":" + password)
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
headers['Authorization']= sauth
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
return headers
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
_prepare_url (url) {
|
|
41
|
+
const endpoint = '/' + trim_left(url, '/')
|
|
42
|
+
|
|
43
|
+
const {hostname, port, force_hostname} = this.config || {}
|
|
44
|
+
if (hostname && force_hostname) {
|
|
45
|
+
return `http://${hostname}:${port}${endpoint}`
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
return endpoint
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
async _fetch (method, url, params, auth= undefined) {
|
|
52
|
+
this.set_auth(auth)
|
|
53
|
+
|
|
54
|
+
let request = {
|
|
55
|
+
method,
|
|
56
|
+
mode: 'cors',
|
|
57
|
+
credentials: 'include',
|
|
58
|
+
headers: {
|
|
59
|
+
'content-type': 'application/json',
|
|
60
|
+
...this.get_headers() || {}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
let wurl = this._prepare_url(url)
|
|
65
|
+
|
|
66
|
+
if (method === 'POST') {
|
|
67
|
+
request.body = JSON.stringify(params || {}, (k, v) => v === undefined ? null : v)
|
|
68
|
+
} else if (method === 'GET') {
|
|
69
|
+
if (params) {
|
|
70
|
+
wurl+= json_to_query_string(params)
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
const response = await fetch(wurl, request)
|
|
75
|
+
|
|
76
|
+
if (response.redirected) {
|
|
77
|
+
const isBrowser = typeof window == 'object'
|
|
78
|
+
if (isBrowser) {
|
|
79
|
+
// JSDOM does not support navigation, so lets skip it for tests
|
|
80
|
+
const isTest = typeof navigator !== "undefined" &&
|
|
81
|
+
navigator.userAgent.includes("Node.js");
|
|
82
|
+
if (!isTest) {
|
|
83
|
+
window.location.replace(response.url)
|
|
84
|
+
return Promise.resolve(response)
|
|
85
|
+
} else {
|
|
86
|
+
console.error(`Response for ${wurl} is a redirect to ${response.url}. But you are in a test environment, where redirects cannot be done. Unexpected results are coming...`)
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
if (response.headers.get('content-type').indexOf('json') >= 0) {
|
|
92
|
+
const data= await response.json()
|
|
93
|
+
|
|
94
|
+
return {
|
|
95
|
+
data,
|
|
96
|
+
status: response.status,
|
|
97
|
+
response
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
const data= await response.text()
|
|
102
|
+
return {
|
|
103
|
+
data,
|
|
104
|
+
status: response.status,
|
|
105
|
+
response
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
async get(url, params, auth= undefined) {
|
|
111
|
+
/* eslint no-unused-vars:0 */
|
|
112
|
+
try {
|
|
113
|
+
const resp = await this._fetch('GET', url, omit_nil(params), auth)
|
|
114
|
+
return resp
|
|
115
|
+
} catch(e) {
|
|
116
|
+
if (this.config?.silent_fail !== true) {
|
|
117
|
+
console.error(`Error on GET ${url}`)
|
|
118
|
+
console.error(e)
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
return {
|
|
122
|
+
data: e,
|
|
123
|
+
status: -1,
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
async post(url, data, auth= undefined) {
|
|
129
|
+
try {
|
|
130
|
+
const resp = await this._fetch('POST', url, data, auth)
|
|
131
|
+
return resp
|
|
132
|
+
} catch(e) {
|
|
133
|
+
if (this.config?.silent_fail !== true) {
|
|
134
|
+
console.error(`Error on POST ${url}`)
|
|
135
|
+
console.error(e)
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
return {
|
|
139
|
+
data: e,
|
|
140
|
+
status: -1
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
async login(url, {username, password}) {
|
|
146
|
+
const res= await this._fetch('POST', url || '/login', {username, password})
|
|
147
|
+
return res
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
async logout(url) {
|
|
151
|
+
const res= await this._fetch('POST', url || '/logout', {})
|
|
152
|
+
return res
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
async read(url, params, auth= undefined) {
|
|
156
|
+
const result = await this.get(`${url}/read`, params, auth)
|
|
157
|
+
return result.data
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
async key_list(url, params, auth= undefined) {
|
|
161
|
+
const result = await this.get(`${url}/key_list`, params, auth)
|
|
162
|
+
return result.data
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
async name_list(url, params, auth= undefined) {
|
|
166
|
+
const result = await this.key_list(url, params, auth)
|
|
167
|
+
return Object.values(result)
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
async find(url, id, auth= undefined) {
|
|
171
|
+
const result = await this.get(`${url}/find`, { id: id }, auth)
|
|
172
|
+
return result.data
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
async distinct(url, field, params, auth= undefined) {
|
|
176
|
+
const nparams= {
|
|
177
|
+
...params,
|
|
178
|
+
distinct_field: field
|
|
179
|
+
}
|
|
180
|
+
const result = await this.get(`${url}/distinct`, nparams, auth)
|
|
181
|
+
return result.data
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
async upsave(url, data, auth= undefined) {
|
|
185
|
+
let result
|
|
186
|
+
if (data.id == undefined) {
|
|
187
|
+
delete data.id
|
|
188
|
+
result= await this.post(`${url}/save`, data, auth)
|
|
189
|
+
} else {
|
|
190
|
+
result= await this.post(`${url}/update`, data, auth)
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
return result.data
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
async remove(url, id, auth= undefined) {
|
|
197
|
+
const data = { id: id }
|
|
198
|
+
const result = await this.post(`${url}/delete`, data, auth)
|
|
199
|
+
return result.data
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
Fetcher.keyList= Fetcher.key_list
|
|
204
|
+
Fetcher.nameList= Fetcher.name_list
|
|
205
|
+
|
|
206
|
+
export { Fetcher }
|
|
207
|
+
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Transform an JSON object to a query string
|
|
3
|
+
*/
|
|
4
|
+
const _parse_value= (value) => {
|
|
5
|
+
try {
|
|
6
|
+
return value.replace(/\+/g, '%2B')
|
|
7
|
+
} catch(e) {
|
|
8
|
+
return value
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export function json_to_query_string(obj) {
|
|
13
|
+
if (obj && (Object.keys(obj).length>0)) {
|
|
14
|
+
const uparams = new URLSearchParams()
|
|
15
|
+
for (const key in obj) {
|
|
16
|
+
if (Object.hasOwn(obj, key)) {
|
|
17
|
+
const value = obj[key];
|
|
18
|
+
if (Array.isArray(value)) {
|
|
19
|
+
value.forEach(item => uparams.append(key, _parse_value(item)))
|
|
20
|
+
} else if (value !== undefined && value !== null) {
|
|
21
|
+
uparams.append(key, _parse_value(value))
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
return `?${uparams.toString()}`
|
|
26
|
+
}
|
|
27
|
+
return ''
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export function trim_left(str, what) {
|
|
31
|
+
return str.replace(new RegExp(`^${what || '\\s'}+`), '')
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
export function omit_nil(obj) {
|
|
36
|
+
if (typeof obj !== 'object') return obj
|
|
37
|
+
return Object.keys(obj).reduce((acc, v) => {
|
|
38
|
+
if (obj[v] !== undefined) acc[v] = obj[v]
|
|
39
|
+
return acc
|
|
40
|
+
}, {})
|
|
41
|
+
}
|
package/src/index.mjs
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {init_catcher} from './catcher/index.mjs'
|
|
2
|
+
import {init_fetcher} from './fetcher/index.mjs'
|
|
3
|
+
// import {init_socket} from './socket/index.mjs'
|
|
4
|
+
|
|
5
|
+
function miolo_client(context) {
|
|
6
|
+
|
|
7
|
+
const {config} = context
|
|
8
|
+
|
|
9
|
+
const fetcher = init_fetcher(config)
|
|
10
|
+
|
|
11
|
+
if (config?.catcher_url) {
|
|
12
|
+
init_catcher(config?.catcher_url, fetcher)
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
// let socket
|
|
16
|
+
// if (config?.socket?.enabled===true) {
|
|
17
|
+
// const domain = config?.socket?.domain
|
|
18
|
+
// const options = config?.socket?.options
|
|
19
|
+
// socket = init_socket(domain, options)
|
|
20
|
+
// }
|
|
21
|
+
|
|
22
|
+
const miolo_obj= {
|
|
23
|
+
fetcher,
|
|
24
|
+
//socket
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
return miolo_obj
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export {miolo_client}
|