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.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * miolo-cli v3.0.0-beta.11
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
  })();
@@ -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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"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * miolo-cli v3.0.0-beta.11
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
- if (r) i ? i(e, r, {
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;else {
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.11",
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": "^1.2.3"
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,7 @@
1
+ import {Fetcher} from './fetcher.mjs'
2
+
3
+
4
+ export function init_fetcher(config) {
5
+ const fetcher= new Fetcher(config)
6
+ return fetcher
7
+ }
@@ -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}
@@ -0,0 +1,6 @@
1
+ import { io } from "socket.io-client";
2
+
3
+ export function init_socket(domain, options) {
4
+ const socket = io(domain, options)
5
+ return socket
6
+ }