UNPKG

@eotl/core

Version:

Assortment of data structures, Vue.js components, and utilities across EOTL apps and sites.

1 lines 13.8 kB
{"version":3,"file":"store.cjs","sources":["../../src/store/eotlStore.js"],"sourcesContent":["import { defineStore } from 'pinia'\nimport { ref } from 'vue'\n\nexport const useEotlCore = defineStore('eotlCore', {\n state: () => ({\n config: {\n mapboxToken: '',\n url_sextant: '',\n url_api: '',\n api_ending: ''\n },\n alert: {\n show: false,\n style: 'primary',\n title: 'Hello',\n message: 'This is just a default status message. Nothing to see here',\n },\n activeMapItemByAddress: null,\n }),\n actions: {\n init(data) {\n this.config.mapboxToken = data?.mapboxToken || ''\n this.config.url_sextant = data?.url_sextant || ''\n this.config.url_api = data?.url_api || ''\n this.config.api_ending = data?.api_ending || ''\n },\n\n // ALERT\n alertMsg(alert) {\n this.alert.message = alert?.message || ''\n this.alert.show = alert?.show || false\n this.alert.style = alert?.style || ''\n this.alert.title = alert?.title || ''\n },\n alertReset() {\n this.alert.message = ''\n this.alert.show = false\n this.alert.style = ''\n this.alert.title = ''\n },\n alertPrimary: function (message, title) {\n this.alertMsg({\n show: true,\n style: 'primary',\n title: title || 'Notification',\n message: message\n })\n },\n alertSuccess: function (message, title) {\n this.alertMsg({\n show: true,\n style: 'success',\n title: title || 'Success',\n message: message\n })\n },\n alertInfo: function (message, title) {\n this.alertMsg({\n show: true,\n style: 'info',\n title: title || 'Info',\n message: message\n })\n },\n alertWarning: function (message, title) {\n this.alertMsg({\n show: true,\n style: 'warning',\n title: title || 'Warning',\n message: message\n })\n },\n alertDanger: function (message, title) {\n this.alertMsg({\n show: true,\n style: 'danger',\n title: title || 'Error',\n message: message\n })\n },\n // API\n async fetchGet(endpoint, queryString = '') {\n let data = null\n let pending = true\n let errorMessage = null\n let status = 'pending'\n const api_request = this.config.url_api + endpoint + this.config.api_ending + queryString\n\n try {\n const response = await fetch(api_request, {\n method: 'GET',\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json',\n },\n })\n\n if (!response.ok) {\n const resError = await response.text()\n const errorMessage = JSON.parse(resError)\n this.alertDanger(errorMessage.detail)\n throw new Error(errorMessage.detail)\n }\n\n const text = await response.text()\n data = JSON.parse(text)\n status = 'success'\n\n } catch (error) {\n this.alertWarning(error)\n errorMessage = error\n status = 'error'\n\n return {\n status: status,\n error: errorMessage,\n pending,\n data\n }\n\n } finally {\n pending = false\n status = 'success'\n }\n\n return {\n status: status,\n pending: pending,\n data,\n error: errorMessage\n }\n },\n async fetchPost(endpoint, record) {\n let data = null\n let pending = true\n let errorMessage = null\n let status ='pending'\n const api_request = this.config.url_api + endpoint + this.config.api_ending\n\n try {\n const response = await fetch(api_request, {\n method: 'POST',\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(record),\n })\n\n if (!response.ok) {\n const resError = await response.text()\n const errorMessage = JSON.parse(resError)\n this.alertDanger(errorMessage.detail)\n throw new Error(errorMessage.detail)\n }\n\n const text = await response.text()\n data = JSON.parse(text)\n status = 'success'\n } catch (error) {\n this.alertWarning(error)\n errorMessage = error\n status = 'error'\n\n return {\n status: status,\n error: errorMessage,\n pending,\n data\n }\n } finally {\n pending = false\n status = 'success'\n }\n\n return {\n status: status,\n pending: pending,\n data,\n error: errorMessage\n }\n },\n async fetchPatch(endpoint, record) {\n let data = null\n let pending = true\n let errorMessage = null\n let status = 'pending'\n const api_request = this.config.url_api + endpoint + this.config.api_ending\n\n try {\n const response = await fetch(api_request, {\n method: 'PATCH',\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(record),\n })\n\n if (!response.ok) {\n const resError = await response.text()\n const errorMessage = JSON.parse(resError)\n this.alertDanger(errorMessage.detail)\n throw new Error(errorMessage.detail)\n }\n\n const text = await response.text()\n data = JSON.parse(text)\n status = 'success'\n } catch (error) {\n this.alertWarning(error)\n errorMessage = error\n status = 'error'\n\n return {\n status: status,\n error: errorMessage,\n pending,\n data\n }\n } finally {\n pending = false\n status = 'success'\n }\n\n return {\n status: status,\n pending: pending,\n data,\n error: errorMessage\n }\n },\n async fetchDelete(endpoint) {\n let data = null\n let pending = true\n let errorMessage = null\n let status = 'pending'\n const api_request = this.config.url_api + endpoint + this.config.api_ending\n\n try {\n const response = await fetch(api_request, {\n method: 'DELETE',\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json',\n },\n })\n\n if (!response.ok) {\n const resError = await response.text()\n const errorMessage = JSON.parse(resError)\n this.alertDanger(errorMessage.detail)\n throw new Error(errorMessage.detail)\n }\n\n const text = await response.text()\n data = JSON.parse(text)\n status = 'success'\n } catch (error) {\n this.alertWarning(error)\n errorMessage = error\n status = 'error'\n\n return {\n status: status,\n error: errorMessage,\n pending,\n data\n }\n } finally {\n pending = false\n status = 'success'\n }\n\n return {\n status: status,\n pending: pending,\n data,\n error: errorMessage\n }\n },\n },\n})\n"],"names":["defineStore","errorMessage"],"mappings":"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"}