@orangesix/react 1.0.0 → 1.0.6

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.
@@ -0,0 +1,155 @@
1
+ import { SweetAlertOptions } from 'sweetalert2';
2
+
3
+ declare const USER: string | null;
4
+ declare const BASE: string | null;
5
+ declare const TOKEN: string | null;
6
+
7
+ /**
8
+ * Retorna os tipos do arquivo <b>request.ts</b>
9
+ *
10
+ * @module utils
11
+ * @author Luiz Fernando Bernardes de Paula
12
+ */
13
+ interface IUtilsRequestPostOptions {
14
+
15
+ /**
16
+ * Blocks multiple simultaneous requests
17
+ */
18
+ blockedToManyRequest?: boolean
19
+
20
+ /**
21
+ * Blocks the execution of the response method upon return from the post.
22
+ */
23
+ blockedResponse?: boolean
24
+
25
+ /**
26
+ * Replace the BASE url with the absolute url provided
27
+ */
28
+ url?: string
29
+ }
30
+
31
+ /**
32
+ * Retorna os tipos do arquivo <b>helper.ts</b>
33
+ *
34
+ * @module utils
35
+ * @author Luiz Fernando Bernardes de Paula
36
+ */
37
+ interface IUtilsHelperResponse {
38
+ gep_cep: {
39
+ bairro: string
40
+ cep: string
41
+ complemento: string
42
+ localidade: string
43
+ logradouro: string
44
+ uf: string
45
+ }
46
+ }
47
+
48
+ /**
49
+ * Retorna os tipos do arquivo <b>response.ts</b>
50
+ *
51
+ * @module utils
52
+ * @author Luiz Fernando Bernardes de Paula
53
+ */
54
+ interface IUtilsResponseType<T> {
55
+ data?: T
56
+ accept?: any
57
+ redirect?: string
58
+ errors?: IUtilsResponseError
59
+ field?: IUtilsResponseField
60
+ message?: IUtilsResponseMessage
61
+ modal?: IUtilsResponseModal
62
+ }
63
+
64
+ interface IUtilsResponseError {
65
+ [key: string]: string[];
66
+ }
67
+
68
+ interface IUtilsResponseField {
69
+ field: string
70
+ messageType: string
71
+ message: string
72
+ }
73
+
74
+ interface IUtilsResponseModal {
75
+ modal: string,
76
+ action: string
77
+ }
78
+
79
+ interface IUtilsResponseMessage {
80
+ type?: "success" | "warning" | "error" | "info"
81
+ title?: string
82
+ message?: string
83
+ text?: string
84
+ icon?: string
85
+ }
86
+
87
+ /**
88
+ * Retorna os tipos do arquivo <b>message.ts</b>
89
+ *
90
+ * @module utils
91
+ * @author Luiz Fernando Bernardes de Paula
92
+ */
93
+ interface IUtilsMessage<T extends keyof IUtilsMessageOptions> {
94
+ message: IUtilsResponseMessage,
95
+ type?: "toast" | "message",
96
+ options?: IUtilsMessageOptions[T],
97
+ library?: keyof IUtilsMessageOptions
98
+ }
99
+
100
+ interface IUtilsMessageOptions {
101
+ sweetAlert: SweetAlertOptions,
102
+ snackbar: SnackbarOptions
103
+ }
104
+
105
+ /**
106
+ * Realiza a pesquisa do elemento html na DOM<br>
107
+ * <meta id="???" name="???" content="your-url">
108
+ */
109
+ declare function getMetaContent(id: string): string | null;
110
+ /**
111
+ * Realiza a pesquisa do CEP na API pública "https://viacep.com.br/ws/"
112
+ */
113
+ declare function getCep(value: string): Promise<IUtilsHelperResponse["gep_cep"]>;
114
+ /**
115
+ * Realiza a pesquisa do elemento na árvore DOM
116
+ */
117
+ declare function getElementDOM(element?: string, preloadTimeOut?: number): Promise<null | JQuery<HTMLElement>>;
118
+ /**
119
+ * Permite à comunicação de origem cruzada entre objetos do Windows.<br>
120
+ * Exemplo: Comunicação entre iframe e corpo principal
121
+ */
122
+ declare function windowMessageEvent(): void;
123
+
124
+ /**
125
+ * Simplifica a solicitação POST HTTP usando a biblioteca axios
126
+ */
127
+ declare function post<TypeDataResponse = IUtilsResponseType<any>>(route: string, body: any, form?: string, options?: IUtilsRequestPostOptions): Promise<TypeDataResponse>;
128
+
129
+ /**
130
+ * Envia a mensagem para o evento da janela
131
+ */
132
+ declare function sendMessage<T extends keyof IUtilsMessageOptions>(params: IUtilsMessage<T>): void;
133
+ /**
134
+ * Retorna o objeto mensagem de acordo com os parâmetros
135
+ */
136
+ declare function message<T extends keyof IUtilsMessageOptions>(params: IUtilsMessage<T>): void;
137
+
138
+ /**
139
+ * Realizei o gerenciamento do objeto de resposta
140
+ */
141
+ declare function response<Type>(response: IUtilsResponseType<Type>, form?: string): void;
142
+ /**
143
+ * Exibe a mensagem no campo do formulário
144
+ */
145
+ declare function messageField(data: IUtilsResponseError, form?: string, type?: string): void;
146
+ /**
147
+ * Limpar as mensagens de feedback do formulário
148
+ */
149
+ declare function messageFieldClear(form?: string): void;
150
+ /**
151
+ * Ativa o TabView quando o campo apresenta erro
152
+ */
153
+ declare function tabViewActiveError(form: string | undefined, errors: IUtilsResponseError): void;
154
+
155
+ export { BASE, TOKEN, USER, getCep, getElementDOM, getMetaContent, message, messageField, messageFieldClear, post, response, sendMessage, tabViewActiveError, windowMessageEvent };
@@ -0,0 +1,2 @@
1
+ import e from"jquery";import t from"axios";import a from"node-snackbar";import n from"sweetalert2";function s(e){let t=window.self===window.top?window:window.parent;const{message:a,library:n,type:s,options:i}=e;t.postMessage({type:"message",params:{message:a,options:i,type:s??"message",library:n??"snackbar"}},"*")}function i(e){let{message:t,library:s,type:i,options:r}=e;switch(s=s??"snackbar",s){case"sweetAlert":let e={icon:t.type,title:t.title,text:t.text};if("toast"===i){let t=r??{toast:!0,position:"top-end",showConfirmButton:!1,timer:3e3,timerProgressBar:!0,didOpen:e=>{e.onmouseenter=n.stopTimer,e.onmouseleave=n.resumeTimer}};n.mixin(t).fire(e)}else n.fire({...e,...r});break;case"snackbar":let s=r,o=t.message??t.text??t.title??"Não foi possível carregar a mensagem.";a.show(void 0===s?{pos:"top-right",showAction:!1,customClass:t.type,text:"<p class='d-flex m-0 align-items-center'><i class='me-2 "+t.icon+"'></i>"+o+"</p>"}:s)}}function r(e){let t=document.getElementById(e),a=null===t?null:t.content.replace(".br/",".br");return null===a?null:"/"===a.substr(-1)?a.slice(0,a.length-1):a}async function o(e){let a=0===e.length?"00000000":e.replace("-","");return await t.get("https://viacep.com.br/ws/"+a+"/json/").then((e=>e.data))}function l(t,a){return new Promise((n=>{let s=window.self===window.top?e("body"):e(window.frameElement).parents("body");t&&0!==t.length||n(s),"#"!==t&&"."!==t||n(null);let i=s.find(t);i.length>0?n(i):setTimeout((()=>{let e=s.find("iframe").contents();0===e.length&&n(null),i=e.find(t),i.length>0&&n(i),n(null)}),a??300)}))}function d(){window.addEventListener("message",(function(e){if("message"===e.data?.type){i({...e.data.params})}}))}const c=r("auth"),m=r("react-base"),f=r("csrf-token");function p(e,t=""){let a=e;a&&(a.redirect&&(window.location.href=a.redirect),a.errors&&u(a.errors,0===t.length?"":t),a.accept&&u(a.accept,0===t.length?"":t,"is-valid"),a.message&&void 0===a?.errors&&s({message:{...a.message},type:"message",library:"snackbar"}))}function u(t,a="",n="is-invalid"){b(a,t),l("#"+a).then((a=>{if(null===a)return;let s="is-invalid"===n?"invalid-feedback":"valid-feedback",i="is-invalid"===n?"is-valid":"is-invalid";e.each(t,((e,t)=>{let r="";t.forEach((e=>r+=e+"<br>")),a.find("input[name='"+e+"']").addClass(n).parent().find("#j_feedback[data-name='"+e+"']").addClass(s).removeClass(i).html(r),a.find("input[name='"+e+"']").addClass(n).parent().parent().find("#j_feedback[data-name='"+e+"']").addClass(s).removeClass(i).html(r),a.find("input[name='"+e+"']").addClass(n).parent().parent().parent().find("#j_feedback[data-name='"+e+"']").addClass(s).removeClass(i).html(r),a.find("select[name='"+e+"']").addClass(n).parent().find("#j_feedback[data-name='"+e+"']").addClass(s).removeClass(i).html(r),a.find("textarea[name='"+e+"']").addClass(n).parent().find("#j_feedback[data-name='"+e+"']").addClass(s).removeClass(i).html(r),a.find("#j_feedback[data-name='"+e+"']").addClass(n).html(r)}))}))}function h(t=""){l("#"+t).then((t=>{if(null===t)return;let a=["is-invalid","is-valid","p-invalid"],n=["invalid-feedback","valid-feedback"];e.each(t.find("input"),(function(){e(this).removeClass(a).parent().find("#j_feedback").removeClass(n).html(""),e(this).removeClass(a).parent().parent().find("#j_feedback").removeClass(n).html(""),e(this).removeClass(a).parent().parent().parent().find("#j_feedback").removeClass(n).html("")})),e.each(t.find("select"),(function(){e(this).removeClass(a).parent().find("#j_feedback").removeClass(n).html("")})),e.each(t.find("textarea"),(function(){e(this).removeClass(a).parent().find("#j_feedback").removeClass(n).html("")})),e.each(t.find("#j_feedback"),(function(){e(this).removeClass(a).html("")}))}))}function b(t="",a){l("#"+t).then((t=>{if(null===t)return;let n=Object.keys(a)[0],s=t.find("*[id='"+n+"']").closest(".tab-pane"),i=s.attr("id"),r=s.parent().parent().find(".nav");s.parent(".tab-content").children(".tab-pane").each((function(t,a){void 0!==a&&(e(a).attr("id")===i?(e(a).addClass("show active"),r.find("button[data-bs-target='#"+i+"']").addClass("active show")):(e(a).removeClass("show active"),r.find("button[data-bs-target='#"+e(a).attr("id")+"']").removeClass("active")))}))}))}function v(e,a,n,s){return new Promise(((i,r)=>{let o=m+(e.startsWith("/")?"":"/")+e;h(n),function(e,a){let n=0;t.interceptors.request.use((s=>(n+=1,n>1&&t.getUri(s)===e&&a?Promise.reject(new Error("Requisições bloqueadas!")):s))),a||t.interceptors.request.clear();t.interceptors.response.use((e=>(n-=1,e)),(function(e){return n-=1,Promise.reject(e)}))}(s?.url??o,s?.blockedToManyRequest??!1),t({method:"post",url:s?.url??o,headers:{"X-CSRF-TOKEN":f},data:a||{}}).then((e=>{void 0!==e?.data&&i(e.data),"boolean"==typeof s?.blockedResponse&&!1!==s?.blockedResponse||p(e?.data,n)})).catch((e=>{p(e.response?.data,n),r(e)}))}))}export{m as BASE,f as TOKEN,c as USER,o as getCep,l as getElementDOM,r as getMetaContent,i as message,u as messageField,h as messageFieldClear,v as post,p as response,s as sendMessage,b as tabViewActiveError,d as windowMessageEvent};
2
+ //# sourceMappingURL=index.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.esm.js","sources":["../../src/utils/message.ts","../../src/utils/helper.ts","../../src/utils/const.ts","../../src/utils/response.ts","../../src/utils/request.ts"],"sourcesContent":["import Snackbar from \"node-snackbar\";\r\nimport SweetAlert, { SweetAlertOptions } from \"sweetalert2\";\r\nimport { IUtilsMessage, IUtilsMessageOptions } from \"./types\";\r\n\r\n/**\r\n * Envia a mensagem para o evento da janela\r\n */\r\nexport function sendMessage<T extends keyof IUtilsMessageOptions>(params: IUtilsMessage<T>) {\r\n let Window: Window = window.self === window.top ? window : window.parent;\r\n const { message, library, type, options } = params;\r\n Window.postMessage({\r\n type: \"message\",\r\n params: {\r\n message,\r\n options,\r\n type: type ?? \"message\",\r\n library: library ?? \"snackbar\"\r\n }\r\n }, \"*\");\r\n}\r\n\r\n/**\r\n * Retorna o objeto mensagem de acordo com os parâmetros\r\n */\r\nexport function message<T extends keyof IUtilsMessageOptions>(params: IUtilsMessage<T>) {\r\n let { message, library, type, options } = params;\r\n\r\n library = library ?? \"snackbar\";\r\n switch (library) {\r\n case \"sweetAlert\":\r\n let swal: any = {\r\n icon: message.type,\r\n title: message.title,\r\n text: message.text\r\n };\r\n if (type === \"toast\") {\r\n let config: SweetAlertOptions = options as SweetAlertOptions ?? {\r\n toast: true,\r\n position: \"top-end\",\r\n showConfirmButton: false,\r\n timer: 3000,\r\n timerProgressBar: true,\r\n didOpen: (toast) => {\r\n toast.onmouseenter = SweetAlert.stopTimer;\r\n toast.onmouseleave = SweetAlert.resumeTimer;\r\n }\r\n };\r\n const Toast = SweetAlert.mixin(config);\r\n Toast.fire(swal);\r\n } else {\r\n SweetAlert.fire({ ...swal, ...options });\r\n }\r\n break;\r\n case \"snackbar\":\r\n let config: any = options;\r\n let text: string = message.message ?? message.text ?? message.title ?? \"Não foi possível carregar a mensagem.\";\r\n Snackbar.show(config === undefined ? {\r\n pos: \"top-right\",\r\n showAction: false,\r\n customClass: message.type,\r\n text: \"<p class='d-flex m-0 align-items-center'><i class='me-2 \" + message.icon + \"'></i>\" + text + \"</p>\",\r\n } : config);\r\n break;\r\n }\r\n}","import $ from \"jquery\";\r\nimport axios from \"axios\";\r\nimport { message } from \"./message\";\r\nimport { IUtilsHelperResponse } from \"./types\";\r\n\r\n/**\r\n * Realiza a pesquisa do elemento html na DOM<br>\r\n * <meta id=\"???\" name=\"???\" content=\"your-url\">\r\n */\r\nexport function getMetaContent(id: string): string | null {\r\n let element: any = document.getElementById(id);\r\n let url: null | string = element === null ? null : (element.content).replace(\".br/\", \".br\");\r\n return url === null ? null : url.substr(-1) === \"/\" ? url.slice(0, url.length - 1) : url;\r\n}\r\n\r\n/**\r\n * Realiza a pesquisa do CEP na API pública \"https://viacep.com.br/ws/\"\r\n */\r\nexport async function getCep(value: string): Promise<IUtilsHelperResponse[\"gep_cep\"]> {\r\n let cep = value.length === 0 ? \"00000000\" : value.replace(\"-\", \"\");\r\n return await axios.get<IUtilsHelperResponse[\"gep_cep\"]>(\"https://viacep.com.br/ws/\" + cep + \"/json/\")\r\n .then(data => data.data);\r\n}\r\n\r\n/**\r\n * Realiza a pesquisa do elemento na árvore DOM\r\n */\r\nexport function getElementDOM(element?: string, preloadTimeOut?: number): Promise<null | JQuery<HTMLElement>> {\r\n return new Promise((resolve) => {\r\n // @ts-ignore\r\n let body = window.self === window.top ? $(\"body\") : $(window.frameElement).parents(\"body\");\r\n if (!element || element.length === 0) {\r\n resolve(body);\r\n }\r\n\r\n if (element === \"#\" || element === \".\") {\r\n resolve(null);\r\n }\r\n\r\n let elementFound = body.find(element);\r\n if (elementFound.length > 0) {\r\n resolve(elementFound);\r\n } else {\r\n setTimeout(() => {\r\n let iframe = body.find(\"iframe\").contents();\r\n if (iframe.length === 0) {\r\n resolve(null);\r\n }\r\n elementFound = iframe.find(element);\r\n if (elementFound.length > 0) {\r\n resolve(elementFound);\r\n }\r\n resolve(null);\r\n }, preloadTimeOut ?? 300);\r\n }\r\n });\r\n}\r\n\r\n/**\r\n * Permite à comunicação de origem cruzada entre objetos do Windows.<br>\r\n * Exemplo: Comunicação entre iframe e corpo principal\r\n */\r\nexport function windowMessageEvent(): void {\r\n window.addEventListener(\"message\", function (event: MessageEvent) {\r\n if (event.data?.type === \"message\") {\r\n let data = event.data;\r\n message<any>({ ...data.params });\r\n }\r\n });\r\n}","import { getMetaContent } from \"./helper\";\r\n\r\nexport const USER: string | null = getMetaContent(\"auth\");\r\nexport const BASE: string | null = getMetaContent(\"react-base\");\r\nexport const TOKEN: string | null = getMetaContent(\"csrf-token\");\r\n","import $ from \"jquery\";\r\nimport { sendMessage } from \"./message\";\r\nimport { getElementDOM } from \"./helper\";\r\nimport { IUtilsResponseType, IUtilsResponseError } from \"./types\";\r\n\r\n/**\r\n * Realizei o gerenciamento do objeto de resposta\r\n */\r\nexport function response<Type>(\r\n response: IUtilsResponseType<Type>,\r\n form: string = \"\"\r\n): void {\r\n let data: IUtilsResponseType<Type> = response;\r\n if (!data) {\r\n return;\r\n }\r\n\r\n if (data.redirect) {\r\n window.location.href = data.redirect;\r\n }\r\n\r\n if (data.errors) {\r\n messageField(data.errors, form.length === 0 ? \"\" : form);\r\n }\r\n\r\n if (data.accept) {\r\n messageField(data.accept, form.length === 0 ? \"\" : form, \"is-valid\");\r\n }\r\n\r\n if (data.message && data?.errors === undefined) {\r\n sendMessage<\"snackbar\">({\r\n message: { ...data.message },\r\n type: \"message\",\r\n library: \"snackbar\"\r\n });\r\n }\r\n}\r\n\r\n/**\r\n * Exibe a mensagem no campo do formulário\r\n */\r\nexport function messageField(\r\n data: IUtilsResponseError,\r\n form: string = \"\",\r\n type: string = \"is-invalid\"\r\n): void {\r\n tabViewActiveError(form, data);\r\n getElementDOM(\"#\" + form)\r\n .then(formulario => {\r\n if (formulario === null) {\r\n return;\r\n }\r\n\r\n let validationFeedbackClass: string = type === \"is-invalid\" ? \"invalid-feedback\" : \"valid-feedback\";\r\n let removeValidationFeedbackClass: string = type === \"is-invalid\" ? \"is-valid\" : \"is-invalid\";\r\n\r\n $.each(data, (key: string, value) => {\r\n let text = \"\";\r\n value.forEach(value => text += value + \"<br>\");\r\n\r\n formulario.find(\"input[name='\" + key + \"']\")\r\n .addClass(type)\r\n .parent()\r\n .find(\"#j_feedback[data-name='\" + key + \"']\")\r\n .addClass(validationFeedbackClass)\r\n .removeClass(removeValidationFeedbackClass)\r\n .html(text);\r\n\r\n formulario.find(\"input[name='\" + key + \"']\")\r\n .addClass(type)\r\n .parent()\r\n .parent()\r\n .find(\"#j_feedback[data-name='\" + key + \"']\")\r\n .addClass(validationFeedbackClass)\r\n .removeClass(removeValidationFeedbackClass)\r\n .html(text);\r\n\r\n formulario.find(\"input[name='\" + key + \"']\")\r\n .addClass(type)\r\n .parent()\r\n .parent()\r\n .parent()\r\n .find(\"#j_feedback[data-name='\" + key + \"']\")\r\n .addClass(validationFeedbackClass)\r\n .removeClass(removeValidationFeedbackClass)\r\n .html(text);\r\n\r\n formulario.find(\"select[name='\" + key + \"']\")\r\n .addClass(type)\r\n .parent()\r\n .find(\"#j_feedback[data-name='\" + key + \"']\")\r\n .addClass(validationFeedbackClass)\r\n .removeClass(removeValidationFeedbackClass)\r\n .html(text);\r\n\r\n formulario.find(\"textarea[name='\" + key + \"']\")\r\n .addClass(type)\r\n .parent()\r\n .find(\"#j_feedback[data-name='\" + key + \"']\")\r\n .addClass(validationFeedbackClass)\r\n .removeClass(removeValidationFeedbackClass)\r\n .html(text);\r\n\r\n formulario.find(\"#j_feedback[data-name='\" + key + \"']\")\r\n .addClass(type)\r\n .html(text);\r\n });\r\n });\r\n}\r\n\r\n/**\r\n * Limpar as mensagens de feedback do formulário\r\n */\r\nexport function messageFieldClear(\r\n form: string = \"\"\r\n): void {\r\n getElementDOM(\"#\" + form)\r\n .then(formulario => {\r\n if (formulario === null) {\r\n return;\r\n }\r\n\r\n let validationClass: string[] = [\"is-invalid\", \"is-valid\", \"p-invalid\"];\r\n let validationFeedbackClass: string[] = [\"invalid-feedback\", \"valid-feedback\"];\r\n\r\n $.each(formulario.find(\"input\"), function () {\r\n $(this)\r\n .removeClass(validationClass)\r\n .parent()\r\n .find(\"#j_feedback\")\r\n .removeClass(validationFeedbackClass)\r\n .html(\"\");\r\n\r\n $(this)\r\n .removeClass(validationClass)\r\n .parent()\r\n .parent()\r\n .find(\"#j_feedback\")\r\n .removeClass(validationFeedbackClass)\r\n .html(\"\");\r\n\r\n $(this)\r\n .removeClass(validationClass)\r\n .parent()\r\n .parent()\r\n .parent()\r\n .find(\"#j_feedback\")\r\n .removeClass(validationFeedbackClass)\r\n .html(\"\");\r\n });\r\n\r\n $.each(formulario.find(\"select\"), function () {\r\n $(this)\r\n .removeClass(validationClass)\r\n .parent()\r\n .find(\"#j_feedback\")\r\n .removeClass(validationFeedbackClass)\r\n .html(\"\");\r\n });\r\n\r\n $.each(formulario.find(\"textarea\"), function () {\r\n $(this)\r\n .removeClass(validationClass)\r\n .parent()\r\n .find(\"#j_feedback\")\r\n .removeClass(validationFeedbackClass)\r\n .html(\"\");\r\n });\r\n\r\n $.each(formulario.find(\"#j_feedback\"), function () {\r\n $(this).removeClass(validationClass).html(\"\");\r\n });\r\n });\r\n}\r\n\r\n/**\r\n * Ativa o TabView quando o campo apresenta erro\r\n */\r\nexport function tabViewActiveError(\r\n form: string = \"\",\r\n errors: IUtilsResponseError\r\n): void {\r\n getElementDOM(\"#\" + form)\r\n .then(TabView => {\r\n if (TabView === null) {\r\n return;\r\n }\r\n\r\n let fieldError = Object.keys(errors)[0];\r\n\r\n let TabViewSelected = TabView.find(\"*[id='\" + fieldError + \"']\").closest(\".tab-pane\");\r\n let TabViewSelectedId = TabViewSelected.attr(\"id\");\r\n let TabViewNav = TabViewSelected.parent().parent().find(\".nav\");\r\n\r\n TabViewSelected.parent(\".tab-content\").children(\".tab-pane\").each(function (_, value) {\r\n if (typeof value !== \"undefined\") {\r\n if ($(value).attr(\"id\") === TabViewSelectedId) {\r\n $(value).addClass(\"show active\");\r\n TabViewNav.find(\"button[data-bs-target='#\" + TabViewSelectedId + \"']\").addClass(\"active show\");\r\n } else {\r\n $(value).removeClass(\"show active\");\r\n TabViewNav.find(\"button[data-bs-target='#\" + $(value).attr(\"id\") + \"']\").removeClass(\"active\");\r\n }\r\n }\r\n });\r\n });\r\n}","import axios from \"axios\";\r\nimport { BASE, TOKEN } from \"./const\";\r\nimport { messageFieldClear, response } from \"./response\";\r\nimport { IUtilsRequestPostOptions, IUtilsResponseType } from \"./types\";\r\n\r\n/**\r\n * Simplifica a solicitação POST HTTP usando a biblioteca axios\r\n */\r\nexport function post<TypeDataResponse = IUtilsResponseType<any>>(\r\n route: string,\r\n body: any,\r\n form?: string,\r\n options?: IUtilsRequestPostOptions\r\n): Promise<TypeDataResponse> {\r\n return new Promise((resolve, reject) => {\r\n let url = BASE + (route.startsWith(\"/\") ? \"\" : \"/\") + route;\r\n messageFieldClear(form);\r\n handleToManyRequest(options?.url ?? url, options?.blockedToManyRequest ?? false);\r\n axios<TypeDataResponse>({\r\n method: \"post\",\r\n url: options?.url ?? url,\r\n headers: { \"X-CSRF-TOKEN\": TOKEN },\r\n data: !body ? {} : body,\r\n }).then(data => {\r\n if (data?.data !== undefined) {\r\n resolve(data.data);\r\n }\r\n if (typeof options?.blockedResponse !== \"boolean\" || options?.blockedResponse === false) {\r\n response<TypeDataResponse>((data?.data as IUtilsResponseType<TypeDataResponse>), form);\r\n }\r\n }).catch(error => {\r\n response<TypeDataResponse>(error.response?.data, form);\r\n reject(error);\r\n });\r\n });\r\n}\r\n\r\n/**\r\n * Bloqueia várias solicitações simultâneas\r\n */\r\nfunction handleToManyRequest(url: string, blocked: boolean): void {\r\n let requestCount = 0;\r\n axios.interceptors.request.use(config => {\r\n requestCount = requestCount + 1;\r\n if (requestCount > 1 && axios.getUri(config) === url && blocked) {\r\n return Promise.reject(new Error(\"Requisições bloqueadas!\"));\r\n }\r\n return config;\r\n });\r\n if (!blocked) {\r\n axios.interceptors.request.clear();\r\n }\r\n\r\n axios.interceptors.response.use(response => {\r\n requestCount = requestCount - 1;\r\n return response;\r\n }, function (error) {\r\n requestCount = requestCount - 1;\r\n return Promise.reject(error);\r\n });\r\n}"],"names":["sendMessage","params","Window","window","self","top","parent","message","library","type","options","postMessage","swal","icon","title","text","config","toast","position","showConfirmButton","timer","timerProgressBar","didOpen","onmouseenter","SweetAlert","stopTimer","onmouseleave","resumeTimer","mixin","fire","Snackbar","show","undefined","pos","showAction","customClass","getMetaContent","id","element","document","getElementById","url","replace","substr","slice","length","async","getCep","value","cep","axios","get","then","data","getElementDOM","preloadTimeOut","Promise","resolve","body","$","frameElement","parents","elementFound","find","setTimeout","iframe","contents","windowMessageEvent","addEventListener","event","USER","BASE","TOKEN","response","form","redirect","location","href","errors","messageField","accept","tabViewActiveError","formulario","validationFeedbackClass","removeValidationFeedbackClass","each","key","forEach","addClass","removeClass","html","messageFieldClear","validationClass","this","TabView","fieldError","Object","keys","TabViewSelected","closest","TabViewSelectedId","attr","TabViewNav","children","_","post","route","reject","startsWith","blocked","requestCount","interceptors","request","use","getUri","Error","clear","error","handleToManyRequest","blockedToManyRequest","method","headers","blockedResponse","catch"],"mappings":"mGAOM,SAAUA,EAAkDC,GAC9D,IAAIC,EAAiBC,OAAOC,OAASD,OAAOE,IAAMF,OAASA,OAAOG,OAClE,MAAMC,QAAEA,EAAOC,QAAEA,EAAOC,KAAEA,EAAIC,QAAEA,GAAYT,EAC5CC,EAAOS,YAAY,CACfF,KAAM,UACNR,OAAQ,CACJM,UACAG,UACAD,KAAMA,GAAQ,UACdD,QAASA,GAAW,aAEzB,IACP,CAKM,SAAUD,EAA8CN,GAC1D,IAAIM,QAAEA,EAAOC,QAAEA,EAAOC,KAAEA,EAAIC,QAAEA,GAAYT,EAG1C,OADAO,EAAUA,GAAW,WACbA,GACJ,IAAK,aACD,IAAII,EAAY,CACZC,KAAMN,EAAQE,KACdK,MAAOP,EAAQO,MACfC,KAAMR,EAAQQ,MAElB,GAAa,UAATN,EAAkB,CAClB,IAAIO,EAA4BN,GAAgC,CAC5DO,OAAO,EACPC,SAAU,UACVC,mBAAmB,EACnBC,MAAO,IACPC,kBAAkB,EAClBC,QAAUL,IACNA,EAAMM,aAAeC,EAAWC,UAChCR,EAAMS,aAAeF,EAAWG,WAAW,GAGrCH,EAAWI,MAAMZ,GACzBa,KAAKjB,EACd,MACGY,EAAWK,KAAK,IAAKjB,KAASF,IAElC,MACJ,IAAK,WACD,IAAIM,EAAcN,EACdK,EAAeR,EAAQA,SAAWA,EAAQQ,MAAQR,EAAQO,OAAS,wCACvEgB,EAASC,UAAgBC,IAAXhB,EAAuB,CACjCiB,IAAK,YACLC,YAAY,EACZC,YAAa5B,EAAQE,KACrBM,KAAM,2DAA6DR,EAAQM,KAAO,SAAWE,EAAO,QACpGC,GAGhB,CCvDM,SAAUoB,EAAeC,GAC3B,IAAIC,EAAeC,SAASC,eAAeH,GACvCI,EAAiC,OAAZH,EAAmB,KAAQA,EAAe,QAAEI,QAAQ,OAAQ,OACrF,OAAe,OAARD,EAAe,KAA0B,MAAnBA,EAAIE,QAAQ,GAAaF,EAAIG,MAAM,EAAGH,EAAII,OAAS,GAAKJ,CACzF,CAKOK,eAAeC,EAAOC,GACzB,IAAIC,EAAuB,IAAjBD,EAAMH,OAAe,WAAaG,EAAMN,QAAQ,IAAK,IAC/D,aAAaQ,EAAMC,IAAqC,4BAA8BF,EAAM,UACvFG,MAAKC,GAAQA,EAAKA,MAC3B,CAKgB,SAAAC,EAAchB,EAAkBiB,GAC5C,OAAO,IAAIC,SAASC,IAEhB,IAAIC,EAAOvD,OAAOC,OAASD,OAAOE,IAAMsD,EAAE,QAAUA,EAAExD,OAAOyD,cAAcC,QAAQ,QAC9EvB,GAA8B,IAAnBA,EAAQO,QACpBY,EAAQC,GAGI,MAAZpB,GAA+B,MAAZA,GACnBmB,EAAQ,MAGZ,IAAIK,EAAeJ,EAAKK,KAAKzB,GACzBwB,EAAajB,OAAS,EACtBY,EAAQK,GAERE,YAAW,KACP,IAAIC,EAASP,EAAKK,KAAK,UAAUG,WACX,IAAlBD,EAAOpB,QACPY,EAAQ,MAEZK,EAAeG,EAAOF,KAAKzB,GACvBwB,EAAajB,OAAS,GACtBY,EAAQK,GAEZL,EAAQ,KAAK,GACdF,GAAkB,IACxB,GAET,UAMgBY,IACZhE,OAAOiE,iBAAiB,WAAW,SAAUC,GACzC,GAAyB,YAArBA,EAAMhB,MAAM5C,KAAoB,CAEhCF,EAAa,IADF8D,EAAMhB,KACMpD,QAC1B,CACL,GACJ,OCnEaqE,EAAsBlC,EAAe,QACrCmC,EAAsBnC,EAAe,cACrCoC,EAAuBpC,EAAe,uBCInCqC,EACZA,EACAC,EAAe,IAEf,IAAIrB,EAAiCoB,EAChCpB,IAIDA,EAAKsB,WACLxE,OAAOyE,SAASC,KAAOxB,EAAKsB,UAG5BtB,EAAKyB,QACLC,EAAa1B,EAAKyB,OAAwB,IAAhBJ,EAAK7B,OAAe,GAAK6B,GAGnDrB,EAAK2B,QACLD,EAAa1B,EAAK2B,OAAwB,IAAhBN,EAAK7B,OAAe,GAAK6B,EAAM,YAGzDrB,EAAK9C,cAA4ByB,IAAjBqB,GAAMyB,QACtB9E,EAAwB,CACpBO,QAAS,IAAK8C,EAAK9C,SACnBE,KAAM,UACND,QAAS,aAGrB,CAKM,SAAUuE,EACZ1B,EACAqB,EAAe,GACfjE,EAAe,cAEfwE,EAAmBP,EAAMrB,GACzBC,EAAc,IAAMoB,GACftB,MAAK8B,IACF,GAAmB,OAAfA,EACA,OAGJ,IAAIC,EAA2C,eAAT1E,EAAwB,mBAAqB,iBAC/E2E,EAAiD,eAAT3E,EAAwB,WAAa,aAEjFkD,EAAE0B,KAAKhC,GAAM,CAACiC,EAAatC,KACvB,IAAIjC,EAAO,GACXiC,EAAMuC,SAAQvC,GAASjC,GAAQiC,EAAQ,SAEvCkC,EAAWnB,KAAK,eAAiBuB,EAAM,MAClCE,SAAS/E,GACTH,SACAyD,KAAK,0BAA4BuB,EAAM,MACvCE,SAASL,GACTM,YAAYL,GACZM,KAAK3E,GAEVmE,EAAWnB,KAAK,eAAiBuB,EAAM,MAClCE,SAAS/E,GACTH,SACAA,SACAyD,KAAK,0BAA4BuB,EAAM,MACvCE,SAASL,GACTM,YAAYL,GACZM,KAAK3E,GAEVmE,EAAWnB,KAAK,eAAiBuB,EAAM,MAClCE,SAAS/E,GACTH,SACAA,SACAA,SACAyD,KAAK,0BAA4BuB,EAAM,MACvCE,SAASL,GACTM,YAAYL,GACZM,KAAK3E,GAEVmE,EAAWnB,KAAK,gBAAkBuB,EAAM,MACnCE,SAAS/E,GACTH,SACAyD,KAAK,0BAA4BuB,EAAM,MACvCE,SAASL,GACTM,YAAYL,GACZM,KAAK3E,GAEVmE,EAAWnB,KAAK,kBAAoBuB,EAAM,MACrCE,SAAS/E,GACTH,SACAyD,KAAK,0BAA4BuB,EAAM,MACvCE,SAASL,GACTM,YAAYL,GACZM,KAAK3E,GAEVmE,EAAWnB,KAAK,0BAA4BuB,EAAM,MAC7CE,SAAS/E,GACTiF,KAAK3E,EAAK,GACjB,GAEd,CAKgB,SAAA4E,EACZjB,EAAe,IAEfpB,EAAc,IAAMoB,GACftB,MAAK8B,IACF,GAAmB,OAAfA,EACA,OAGJ,IAAIU,EAA4B,CAAC,aAAc,WAAY,aACvDT,EAAoC,CAAC,mBAAoB,kBAE7DxB,EAAE0B,KAAKH,EAAWnB,KAAK,UAAU,WAC7BJ,EAAEkC,MACGJ,YAAYG,GACZtF,SACAyD,KAAK,eACL0B,YAAYN,GACZO,KAAK,IAEV/B,EAAEkC,MACGJ,YAAYG,GACZtF,SACAA,SACAyD,KAAK,eACL0B,YAAYN,GACZO,KAAK,IAEV/B,EAAEkC,MACGJ,YAAYG,GACZtF,SACAA,SACAA,SACAyD,KAAK,eACL0B,YAAYN,GACZO,KAAK,GACd,IAEA/B,EAAE0B,KAAKH,EAAWnB,KAAK,WAAW,WAC9BJ,EAAEkC,MACGJ,YAAYG,GACZtF,SACAyD,KAAK,eACL0B,YAAYN,GACZO,KAAK,GACd,IAEA/B,EAAE0B,KAAKH,EAAWnB,KAAK,aAAa,WAChCJ,EAAEkC,MACGJ,YAAYG,GACZtF,SACAyD,KAAK,eACL0B,YAAYN,GACZO,KAAK,GACd,IAEA/B,EAAE0B,KAAKH,EAAWnB,KAAK,gBAAgB,WACnCJ,EAAEkC,MAAMJ,YAAYG,GAAiBF,KAAK,GAC9C,GAAE,GAEd,UAKgBT,EACZP,EAAe,GACfI,GAEAxB,EAAc,IAAMoB,GACftB,MAAK0C,IACF,GAAgB,OAAZA,EACA,OAGJ,IAAIC,EAAaC,OAAOC,KAAKnB,GAAQ,GAEjCoB,EAAkBJ,EAAQ/B,KAAK,SAAWgC,EAAa,MAAMI,QAAQ,aACrEC,EAAoBF,EAAgBG,KAAK,MACzCC,EAAaJ,EAAgB5F,SAASA,SAASyD,KAAK,QAExDmC,EAAgB5F,OAAO,gBAAgBiG,SAAS,aAAalB,MAAK,SAAUmB,EAAGxD,QACtD,IAAVA,IACHW,EAAEX,GAAOqD,KAAK,QAAUD,GACxBzC,EAAEX,GAAOwC,SAAS,eAClBc,EAAWvC,KAAK,2BAA6BqC,EAAoB,MAAMZ,SAAS,iBAEhF7B,EAAEX,GAAOyC,YAAY,eACrBa,EAAWvC,KAAK,2BAA6BJ,EAAEX,GAAOqD,KAAK,MAAQ,MAAMZ,YAAY,WAGjG,GAAE,GAEd,CCtMM,SAAUgB,EACZC,EACAhD,EACAgB,EACAhE,GAEA,OAAO,IAAI8C,SAAQ,CAACC,EAASkD,KACzB,IAAIlE,EAAM8B,GAAQmC,EAAME,WAAW,KAAO,GAAK,KAAOF,EACtDf,EAAkBjB,GAwB1B,SAA6BjC,EAAaoE,GACtC,IAAIC,EAAe,EACnB5D,EAAM6D,aAAaC,QAAQC,KAAIjG,IAC3B8F,GAA8B,EAC1BA,EAAe,GAAK5D,EAAMgE,OAAOlG,KAAYyB,GAAOoE,EAC7CrD,QAAQmD,OAAO,IAAIQ,MAAM,4BAE7BnG,KAEN6F,GACD3D,EAAM6D,aAAaC,QAAQI,QAG/BlE,EAAM6D,aAAatC,SAASwC,KAAIxC,IAC5BqC,GAA8B,EACvBrC,KACR,SAAU4C,GAET,OADAP,GAA8B,EACvBtD,QAAQmD,OAAOU,EAC1B,GACJ,CA3CQC,CAAoB5G,GAAS+B,KAAOA,EAAK/B,GAAS6G,uBAAwB,GAC1ErE,EAAwB,CACpBsE,OAAQ,OACR/E,IAAK/B,GAAS+B,KAAOA,EACrBgF,QAAS,CAAE,eAAgBjD,GAC3BnB,KAAOK,GAAO,CAAA,IACfN,MAAKC,SACerB,IAAfqB,GAAMA,MACNI,EAAQJ,EAAKA,MAEuB,kBAA7B3C,GAASgH,kBAA8D,IAA7BhH,GAASgH,iBAC1DjD,EAA4BpB,GAAMA,KAA+CqB,EACpF,IACFiD,OAAMN,IACL5C,EAA2B4C,EAAM5C,UAAUpB,KAAMqB,GACjDiC,EAAOU,EAAM,GACf,GAEV"}
@@ -0,0 +1,5 @@
1
+ {
2
+ "main": "./index.cjs.js",
3
+ "module": "./index.esm.js",
4
+ "types": "./index.d.ts"
5
+ }
package/LICENSE DELETED
@@ -1,21 +0,0 @@
1
- The MIT License (MIT)
2
-
3
- Copyright (c) 2023 Luiz Fernando Bernardes de Paula @OrangeCode
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in
13
- all copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
- THE SOFTWARE.
package/README.md DELETED
@@ -1,2 +0,0 @@
1
- <h1 align="center">@Orangecode/React</h1>
2
- <p>🚀 Em construção.</p>