@binamik/js-providers 1.0.5 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist/binamik-js-providers.es.js +3 -3
  2. package/dist/binamik-js-providers.es10.js +11 -0
  3. package/dist/binamik-js-providers.es10.js.map +1 -0
  4. package/dist/{SafeDate/binamik-js-providers.es.js → binamik-js-providers.es2.js} +4 -4
  5. package/dist/binamik-js-providers.es2.js.map +1 -0
  6. package/dist/binamik-js-providers.es3.js +15 -0
  7. package/dist/binamik-js-providers.es3.js.map +1 -0
  8. package/dist/{IoProvider/binamik-js-providers.es.js → binamik-js-providers.es4.js} +4 -4
  9. package/dist/binamik-js-providers.es4.js.map +1 -0
  10. package/dist/binamik-js-providers.es5.js +5 -0
  11. package/dist/binamik-js-providers.es5.js.map +1 -0
  12. package/dist/{SafeDate/i18n/binamik-js-providers.es2.js → binamik-js-providers.es6.js} +1 -1
  13. package/dist/binamik-js-providers.es6.js.map +1 -0
  14. package/dist/binamik-js-providers.es7.js +15 -0
  15. package/dist/binamik-js-providers.es7.js.map +1 -0
  16. package/dist/{utils/binamik-js-providers.es.js → binamik-js-providers.es8.js} +1 -1
  17. package/dist/binamik-js-providers.es8.js.map +1 -0
  18. package/dist/{utils/binamik-js-providers.es2.js → binamik-js-providers.es9.js} +1 -1
  19. package/dist/binamik-js-providers.es9.js.map +1 -0
  20. package/dist/binamik-js-providers.umd.js +1 -1
  21. package/dist/binamik-js-providers.umd.js.map +1 -1
  22. package/package.json +5 -5
  23. package/dist/AppStorageProvider/binamik-js-providers.es.js +0 -15
  24. package/dist/AppStorageProvider/binamik-js-providers.es.js.map +0 -1
  25. package/dist/IoProvider/binamik-js-providers.es.js.map +0 -1
  26. package/dist/IoProvider/binamik-js-providers.es2.js +0 -15
  27. package/dist/IoProvider/binamik-js-providers.es2.js.map +0 -1
  28. package/dist/SafeDate/binamik-js-providers.es.js.map +0 -1
  29. package/dist/SafeDate/i18n/binamik-js-providers.es.js +0 -5
  30. package/dist/SafeDate/i18n/binamik-js-providers.es.js.map +0 -1
  31. package/dist/SafeDate/i18n/binamik-js-providers.es2.js.map +0 -1
  32. package/dist/utils/binamik-js-providers.es.js.map +0 -1
  33. package/dist/utils/binamik-js-providers.es2.js.map +0 -1
  34. package/dist/utils/yup/binamik-js-providers.es.js +0 -11
  35. package/dist/utils/yup/binamik-js-providers.es.js.map +0 -1
@@ -1,6 +1,6 @@
1
- import { SafeDate as o } from "./SafeDate/binamik-js-providers.es.js";
2
- import { AppStorageProvider as a } from "./AppStorageProvider/binamik-js-providers.es.js";
3
- import { createIoInstance as f } from "./IoProvider/binamik-js-providers.es.js";
1
+ import { SafeDate as o } from "./binamik-js-providers.es2.js";
2
+ import { AppStorageProvider as a } from "./binamik-js-providers.es3.js";
3
+ import { createIoInstance as f } from "./binamik-js-providers.es4.js";
4
4
  export {
5
5
  a as AppStorageProvider,
6
6
  o as SafeDate,
@@ -0,0 +1,11 @@
1
+ const s = (r) => {
2
+ var a;
3
+ const t = {};
4
+ return (a = r == null ? void 0 : r.inner) != null && a.length ? r.inner.forEach((n) => {
5
+ t[(n == null ? void 0 : n.path) || "unknown"] = n.message;
6
+ }) : r != null && r.path && (r != null && r.message) ? t[r.path] = r.message : r != null && r.path || (r == null ? void 0 : r.type) !== "typeError" || (t.body = r.errors[0]), t;
7
+ };
8
+ export {
9
+ s as getYupValidationErrors
10
+ };
11
+ //# sourceMappingURL=binamik-js-providers.es10.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binamik-js-providers.es10.js","sources":["../src/utils/yup/getYupValidationErrors.ts"],"sourcesContent":["import { ValidationError } from 'yup'\n\nexport const getYupValidationErrors = (\n err: ValidationError\n): Record<string, string> => {\n const validationErrors = {} as Record<string, string>\n\n if (err?.inner?.length) {\n err.inner.forEach(error => {\n validationErrors[error?.path || 'unknown'] = error.message\n })\n } else if (err?.path && err?.message) {\n validationErrors[err.path] = err.message\n } else if (!err?.path && err?.type === 'typeError') {\n validationErrors.body = err.errors[0]\n }\n\n return validationErrors\n}\n"],"names":["getYupValidationErrors","err","_a","validationErrors","inner","length","forEach","error","path","message","type","body","errors"],"mappings":"AAEa,MAAAA,IACXC,CAAAA,MAEA;AAHW,MAAAC;AAGX,QAAMC,IAAmB,CAAC;AAYnB,UAVHF,IAAAA,KAAAA,gBAAAA,EAAKG,UAALH,QAAAA,EAAYI,SACVJ,EAAAG,MAAME,QAAiBC,CAAAA,MAAAA;AACzBJ,IAAAA,GAAiBI,KAAAA,gBAAAA,EAAOC,SAAQ,aAAaD,EAAME;AAAAA,EAAA,CAE5CR,IAAAA,KAAAA,QAAAA,EAAKO,SAAQP,KAAAA,QAAAA,EAAKQ,WACVN,EAAAF,EAAIO,IAAAA,IAAQP,EAAIQ,UACvBR,KAAAA,QAAAA,EAAKO,SAAQP,KAAAA,gBAAAA,EAAKS,UAAS,gBACpBP,EAAAQ,OAAOV,EAAIW,OAAO,CAAA,IAG9BT;AAAA;"}
@@ -1,13 +1,13 @@
1
1
  var H = Object.defineProperty;
2
2
  var f = (n, t, e) => t in n ? H(n, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : n[t] = e;
3
- var o = (n, t, e) => (f(n, typeof t != "symbol" ? t + "" : t, e), e);
3
+ var o = (n, t, e) => f(n, typeof t != "symbol" ? t + "" : t, e);
4
4
  import u from "dayjs";
5
5
  import "dayjs/locale/pt-br";
6
6
  import "dayjs/locale/es";
7
7
  import "dayjs/locale/en";
8
8
  import b from "dayjs/plugin/localizedFormat";
9
- import { localizedFormatString as h } from "./i18n/binamik-js-providers.es.js";
10
- import { getSafeLangCode as y } from "./i18n/binamik-js-providers.es2.js";
9
+ import { localizedFormatString as h } from "./binamik-js-providers.es5.js";
10
+ import { getSafeLangCode as y } from "./binamik-js-providers.es6.js";
11
11
  u.extend(b);
12
12
  class m {
13
13
  constructor(t, e = "pt-br") {
@@ -106,4 +106,4 @@ class m {
106
106
  export {
107
107
  m as SafeDate
108
108
  };
109
- //# sourceMappingURL=binamik-js-providers.es.js.map
109
+ //# sourceMappingURL=binamik-js-providers.es2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binamik-js-providers.es2.js","sources":["../src/SafeDate/SafeDate.ts"],"sourcesContent":["import dayjs, { Dayjs } from 'dayjs'\n\nimport 'dayjs/locale/pt-br'\nimport 'dayjs/locale/es'\nimport 'dayjs/locale/en'\n\nimport localizedFormat from 'dayjs/plugin/localizedFormat'\nimport {\n localizedFormatString,\n LangFormatProps\n} from './i18n/localizedFormatString'\nimport { getSafeLangCode } from './i18n/safeLangCode'\n\ndayjs.extend(localizedFormat)\n\ntype DateTimeUnits =\n | 'year'\n | 'month'\n | 'week'\n | 'day'\n | 'hour'\n | 'minute'\n | 'second'\n\ninterface DateTimeOptions {\n years?: number\n months?: number\n weeks?: number\n days?: number\n hours?: number\n minutes?: number\n seconds?: number\n}\n\ninterface DateObjProps {\n year: number\n month: number\n date: number\n weekday: number\n hour: number\n minute: number\n second: number\n millisecond: number\n}\n\ntype ToOptions = Partial<Omit<DateObjProps, 'weekday'>>\n\nexport class SafeDate {\n private value: Dayjs = dayjs()\n private isDateValid = true\n private locale = 'pt-br'\n\n public static isValid(value?: Date | string | Dayjs) {\n return dayjs(value || '').isValid()\n }\n\n private validationHandler<T>(value: T, onInvalid: T): T {\n return this.isDateValid ? value : onInvalid\n }\n\n private imutableHandler(value: Dayjs, locale?: string) {\n return new SafeDate(value, locale || this.locale)\n }\n\n private i18nFormat(key: keyof LangFormatProps) {\n return (\n localizedFormatString[this.locale]?.[key] ||\n localizedFormatString.default[key] ||\n ''\n )\n }\n\n private getI18nCode(locale: string) {\n return getSafeLangCode(locale)\n }\n\n public get isValid(): boolean {\n return this.isDateValid\n }\n\n public get lang() {\n return this.locale\n }\n\n public get jsDate() {\n return this.value.toDate()\n }\n\n public get timestamp() {\n return this.validationHandler(this.jsDate.getTime(), NaN)\n }\n\n public get isoDate() {\n return this.validationHandler(this.value.format('YYYY-MM-DD'), '')\n }\n\n public get isoString() {\n return this.validationHandler(this.value.format('YYYY-MM-DDTHH:mm:ss'), '')\n }\n\n public get daysInMonth() {\n return this.validationHandler(this.value.daysInMonth(), 0)\n }\n\n public get dateObj(): DateObjProps {\n return this.validationHandler(\n {\n year: this.value.year(),\n month: this.value.month(),\n date: this.value.date(),\n weekday: this.value.day(),\n hour: this.value.hour(),\n minute: this.value.minute(),\n second: this.value.second(),\n millisecond: this.value.millisecond()\n },\n {\n year: 0,\n month: 0,\n date: 0,\n weekday: 0,\n hour: 0,\n minute: 0,\n second: 0,\n millisecond: 0\n }\n )\n }\n\n public toStartOf(unit: DateTimeUnits) {\n const newValue = this.validationHandler(\n this.value.startOf(unit),\n this.value\n )\n return this.imutableHandler(newValue)\n }\n\n public add({\n years = 0,\n months = 0,\n weeks = 0,\n days = 0,\n hours = 0,\n minutes = 0,\n seconds = 0\n }: DateTimeOptions) {\n const newValue = this.validationHandler(\n this.value\n .add(years, 'year')\n .add(months, 'month')\n .add(weeks, 'week')\n .add(days, 'day')\n .add(hours, 'hour')\n .add(minutes, 'minute')\n .add(seconds, 'second'),\n this.value\n )\n return this.imutableHandler(newValue)\n }\n\n public subtract({\n years = 0,\n months = 0,\n weeks = 0,\n days = 0,\n hours = 0,\n minutes = 0,\n seconds = 0\n }: DateTimeOptions) {\n const newValue = this.validationHandler(\n this.value\n .subtract(years, 'year')\n .subtract(months, 'month')\n .subtract(weeks, 'week')\n .subtract(days, 'day')\n .subtract(hours, 'hour')\n .subtract(minutes, 'minute')\n .subtract(seconds, 'second'),\n this.value\n )\n return this.imutableHandler(newValue)\n }\n\n public to(newValues: ToOptions) {\n const currentValues: Required<ToOptions> = this.dateObj\n\n const {\n year = currentValues.year,\n month = currentValues.month,\n date = currentValues.date,\n hour = currentValues.hour,\n minute = currentValues.minute,\n second = currentValues.second,\n millisecond = currentValues.millisecond\n } = newValues\n\n const newValue = this.validationHandler(\n this.value\n .year(year)\n .month(month)\n .date(date)\n .hour(hour)\n .minute(minute)\n .second(second)\n .millisecond(millisecond),\n this.value\n )\n\n return this.imutableHandler(newValue)\n }\n\n public isBefore(date: Date | string, unit?: DateTimeUnits) {\n return this.validationHandler(this.value.isBefore(date, unit), false)\n }\n\n public isAfter(date: Date | string, unit?: DateTimeUnits) {\n return this.validationHandler(this.value.isAfter(date, unit), false)\n }\n\n public isSame(date: Date | string, unit?: DateTimeUnits) {\n return this.validationHandler(this.value.isSame(date, unit), false)\n }\n\n public isBetween(\n startingDate: Date | string,\n endingDate: Date | string,\n unit?: DateTimeUnits\n ) {\n const isAfterStartingDate = this.validationHandler(\n this.value.isAfter(startingDate, unit),\n false\n )\n const isBeforeEndingDate = this.validationHandler(\n this.value.isBefore(endingDate, unit),\n false\n )\n\n const isBetweenDates =\n (isAfterStartingDate && isBeforeEndingDate) ||\n (!isAfterStartingDate && !isBeforeEndingDate)\n\n return this.validationHandler(isBetweenDates, false)\n }\n\n public getDiff(date: Date | string, unit: DateTimeUnits) {\n return this.validationHandler(this.value.diff(date, unit), 0)\n }\n\n public clone() {\n return this.imutableHandler(this.value)\n }\n\n public format(format: string) {\n return this.validationHandler(this.value.format(format), '')\n }\n\n public formatIntl(formatTo: keyof LangFormatProps) {\n const formatStr = this.i18nFormat(formatTo)\n return this.format(formatStr)\n }\n\n public setLocale(locale: string) {\n const safeLocale = this.getI18nCode(locale)\n return this.imutableHandler(this.value, safeLocale)\n }\n\n constructor(pValue?: Date | string | Dayjs, locale = 'pt-br') {\n this.locale = this.getI18nCode(locale)\n this.value = dayjs(pValue).locale(this.locale)\n this.isDateValid = this.value.isValid()\n\n if (!this.isDateValid) {\n console.error('Invalid date:', pValue)\n }\n }\n}\n"],"names":["dayjs","extend","localizedFormat","SafeDate","value","constructor","pValue","locale","isDateValid","this","getI18nCode","isValid","console","error","static","validationHandler","onInvalid","imutableHandler","i18nFormat","key","localizedFormatString","default","getSafeLangCode","lang","jsDate","toDate","timestamp","getTime","NaN","isoDate","format","isoString","daysInMonth","dateObj","year","month","date","weekday","day","hour","minute","second","millisecond","toStartOf","unit","newValue","startOf","add","years","months","weeks","days","hours","minutes","seconds","subtract","to","newValues","currentValues","isBefore","isAfter","isSame","isBetween","startingDate","endingDate","isAfterStartingDate","isBeforeEndingDate","isBetweenDates","getDiff","diff","clone","formatIntl","formatTo","formatStr","setLocale","safeLocale"],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { destroyCookie as i, setCookie as m, parseCookies as n } from "nookies";
2
+ const p = (r, e) => (o, t, a) => {
3
+ m(null, `${e}-${o}`, t, { maxAge: (a == null ? void 0 : a.maxAge) || 7776e3, path: "/", domain: r, secure: !0, httpOnly: !0 });
4
+ }, s = (r, e) => (o, t) => {
5
+ i(null, `${e}-${o}`, t);
6
+ }, c = (r, e) => (o) => {
7
+ s(0, e)("auth-key", o), s(0, e)("user", o), s(0, e)("company", o), s(0, e)("orb-selected", o);
8
+ }, u = ({ cookieDomain: r, cookiePrefix: e }) => {
9
+ return { get: (o = e, (t) => n()[`${o}-${t}`]), set: p(r, e), remove: s(0, e), cleanAuth: c(0, e) };
10
+ var o;
11
+ };
12
+ export {
13
+ u as AppStorageProvider
14
+ };
15
+ //# sourceMappingURL=binamik-js-providers.es3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binamik-js-providers.es3.js","sources":["../src/AppStorageProvider/AppStorageProvider.ts"],"sourcesContent":["import { parseCookies, setCookie, destroyCookie } from 'nookies'\n\ninterface CookieOptionsType {\n expires?: number\n path?: string\n domain?: string\n secure?: boolean\n httpOnly?: boolean\n maxAge?: number\n sameSite?: 'Strict' | 'Lax' | 'None'\n}\n\nconst get =\n (_domain: string, prefix: string) =>\n (key: string): string => {\n const cookies = parseCookies()\n return cookies[`${prefix}-${key}`]\n }\n\nconst set =\n (domain: string, prefix: string) =>\n (key: string, value: string, options?: CookieOptionsType) => {\n setCookie(null, `${prefix}-${key}`, value, {\n maxAge: options?.maxAge || 60 * 60 * 24 * 90, // 90 days\n path: '/',\n domain,\n secure: true,\n httpOnly: true\n })\n }\n\nconst remove =\n (_domain: string, prefix: string) =>\n (key: string, options?: CookieOptionsType) => {\n destroyCookie(null, `${prefix}-${key}`, options)\n }\n\nconst cleanAuth =\n (domain: string, prefix: string) => (options?: CookieOptionsType) => {\n remove(domain, prefix)('auth-key', options)\n remove(domain, prefix)('user', options)\n remove(domain, prefix)('company', options)\n remove(domain, prefix)('orb-selected', options)\n }\n\ninterface AppStorageProviderProps {\n cookieDomain: string\n cookiePrefix: string\n}\n\nexport const AppStorageProvider = ({\n cookieDomain,\n cookiePrefix\n}: AppStorageProviderProps) => ({\n get: get(cookieDomain, cookiePrefix),\n set: set(cookieDomain, cookiePrefix),\n remove: remove(cookieDomain, cookiePrefix),\n cleanAuth: cleanAuth(cookieDomain, cookiePrefix)\n})\n"],"names":["set","domain","prefix","key","value","options","setCookie","maxAge","path","secure","httpOnly","remove","_domain","destroyCookie","cleanAuth","AppStorageProvider","cookieDomain","cookiePrefix","o","get","parseCookies"],"mappings":";AAYA,MAOMA,IACJ,CAACC,GAAgBC,MACjB,CAACC,GAAaC,GAAeC;AAC3BC,EAAAA,EAAU,MAAM,GAAGJ,CAAUC,IAAAA,CAAAA,IAAOC,GAAO,EACzCG,SAAQF,uBAASE,WAAU,QAC3BC,MAAM,KACNP,QACAQ,GAAAA,QAAAA,IACAC,UAAU,GAAA,CAAA;AACX,GAGCC,IACJ,CAACC,GAAiBV,MAClB,CAACC,GAAaE;AACZQ,EAAAA,EAAc,MAAM,GAAGX,CAAAA,IAAUC,CAAOE,IAAAA,CAAAA;AAAO,GAG7CS,IACJ,CAACb,GAAgBC,MAAoBG,CAAAA,MACnCM;AAAAA,EAAAA,EAAOV,GAAQC,CAAfS,EAAuB,YAAYN,CACnCM,GAAAA,EAAOV,GAAQC,CAAfS,EAAuB,QAAQN,CAAAA,GAC/BM,EAAOV,GAAQC,GAAQ,WAAWG,IAClCM,EAAOV,GAAQC,GAAQ,gBAAgBG,CAAO;AAAA,GAQrCU,IAAqB,CAAA,EAChCC,iBACAC,cAC8BC,EAAA,MAAA;AAAA,SAAA,EAC9BC,MAzCkBjB,IAyCKe,GAxCtBd,CAAAA,MACiBiB,EACD,EAAA,GAAGlB,CAAUC,IAAAA,CAAAA,EAAAA,IAuC9BH,KAAKA,EAAIgB,GAAcC,CACvBN,GAAAA,QAAQA,EAAOK,GAAcC,CAC7BH,GAAAA,WAAWA,EAAUE,GAAcC,CAAAA,EAAAA;AA5CnC,MAAkBf;AA6CpB;"}
@@ -1,5 +1,5 @@
1
1
  import g from "axios";
2
- import { checkIoIntegrity as y } from "./binamik-js-providers.es2.js";
2
+ import { checkIoIntegrity as y } from "./binamik-js-providers.es7.js";
3
3
  const i = (n) => (t) => {
4
4
  var e, u;
5
5
  return n && n.name && n.schema && y({ name: n.name, schema: n.schema, req: { body: ((e = t == null ? void 0 : t.config) == null ? void 0 : e.data) || null, query: (u = t == null ? void 0 : t.config) == null ? void 0 : u.params }, res: t == null ? void 0 : t.data, url: t == null ? void 0 : t.request.url }), [t.data, null, { status: t.status }];
@@ -8,8 +8,8 @@ const i = (n) => (t) => {
8
8
  const e = (s = t == null ? void 0 : t.response) == null ? void 0 : s.data, u = n ? n(e || null) : void 0;
9
9
  return [null, { status: ((h = t == null ? void 0 : t.response) == null ? void 0 : h.status) || 599, message: (e == null ? void 0 : e.message) || (e == null ? void 0 : e.msg) || "Unknown IO Error", errorData: e || null, errors: u }, { status: ((c = t == null ? void 0 : t.response) == null ? void 0 : c.status) || 599 }];
10
10
  }, k = (n, t) => {
11
- const { withAuth: e = !1, authKey: u = "", ioIntegrityCheck: s, onStatusCode: h, errorParser: c } = t || {}, p = g.create({ baseURL: n, headers: e ? { "Content-Type": "application/json", Authorization: u || "no_auth_key" } : { "Content-Type": "application/json" } }), m = ((a) => (r) => {
12
- if (a && (r == null ? void 0 : r.status)) {
11
+ const { withAuth: e = !1, authKey: u = "", ioIntegrityCheck: s, onStatusCode: h, errorParser: c } = t || {}, p = g.create({ baseURL: n, headers: e ? { "Content-Type": "application/json", Authorization: u || "no_auth_key" } : { "Content-Type": "application/json" } }), m = /* @__PURE__ */ ((a) => (r) => {
12
+ if (a && (r != null && r.status)) {
13
13
  const o = r.status, d = a[o];
14
14
  d && d(r);
15
15
  }
@@ -21,4 +21,4 @@ const i = (n) => (t) => {
21
21
  export {
22
22
  k as createIoInstance
23
23
  };
24
- //# sourceMappingURL=binamik-js-providers.es.js.map
24
+ //# sourceMappingURL=binamik-js-providers.es4.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binamik-js-providers.es4.js","sources":["../src/IoProvider/IoProvider.ts"],"sourcesContent":["import axios, { AxiosError, AxiosRequestConfig, AxiosResponse } from 'axios'\nimport { AnyObjectSchema } from 'yup'\n\nimport { checkIoIntegrity } from './checkIoIntegrity'\n\nexport interface IOIntegrityCheckProps {\n name: string\n schema: AnyObjectSchema\n}\n\nexport type ApiErrorParserType = (\n err?: Record<string, unknown> | null\n) => string[]\n\ninterface IoInstanceOptions {\n withAuth: boolean\n authKey?: string\n ioIntegrityCheck?: IOIntegrityCheckProps\n onStatusCode?: Record<number, (res: AxiosResponse) => void>\n errorParser?: ApiErrorParserType\n}\n\nexport interface IoErrorProps {\n status: number\n message: string\n errorData: Record<string, unknown> | null\n errors?: string[]\n}\n\nexport interface IoResponseMetaProps {\n status: number\n}\n\ntype IOResponseType<T> = [T, null, IoResponseMetaProps?]\ntype IOResponseErrorType = [null, IoErrorProps, IoResponseMetaProps?]\n\nexport type ApiResponseDTO<T> = IOResponseType<T> | IOResponseErrorType\n\ntype IoFn = <T>(\n url: string,\n payload?: Record<string, unknown>,\n config?: AxiosRequestConfig\n) => Promise<ApiResponseDTO<T>>\n\ninterface IoInstanceProps {\n get: IoFn\n post: IoFn\n patch: IoFn\n delete: IoFn\n}\n\nconst createCheckStatusCodeFn =\n (onStatusCode?: { [code: number]: (res: AxiosResponse) => void }) =>\n (res: AxiosResponse) => {\n if (onStatusCode && res?.status) {\n const statusCode = res.status\n const handler = onStatusCode[statusCode]\n if (handler) handler(res)\n }\n }\n\nconst handleIOSuccess =\n <T>(integrityCheck?: IOIntegrityCheckProps) =>\n (res: AxiosResponse<T>): IOResponseType<T> => {\n if (integrityCheck && integrityCheck.name && integrityCheck.schema) {\n checkIoIntegrity({\n name: integrityCheck.name,\n schema: integrityCheck.schema,\n req: { body: res?.config?.data || null, query: res?.config?.params },\n res: res?.data,\n url: res?.request.url\n })\n }\n\n return [res.data, null, { status: res.status }]\n }\n\nconst handleIOError =\n (errorParser?: ApiErrorParserType) =>\n (err: AxiosError): IOResponseErrorType => {\n const resData = err?.response?.data as Record<string, unknown>\n\n const errors = errorParser ? errorParser(resData || null) : undefined\n\n return [\n null,\n {\n status: err?.response?.status || 599,\n message:\n (resData?.message as string) ||\n (resData?.msg as string) ||\n 'Unknown IO Error',\n errorData: resData || null,\n errors\n },\n {\n status: err?.response?.status || 599\n }\n ]\n }\n\nexport const createIoInstance = (\n baseUrl: string,\n options?: IoInstanceOptions\n): IoInstanceProps => {\n const {\n withAuth = false,\n authKey = '',\n ioIntegrityCheck,\n onStatusCode,\n errorParser\n } = options || {}\n\n const instance = axios.create({\n baseURL: baseUrl,\n headers: withAuth\n ? {\n 'Content-Type': 'application/json',\n Authorization: authKey || 'no_auth_key'\n }\n : { 'Content-Type': 'application/json' }\n })\n\n const checkStatusCode = createCheckStatusCodeFn(onStatusCode)\n\n instance.interceptors.response.use(\n res => {\n checkStatusCode(res)\n return res\n },\n error => {\n if (error?.response) checkStatusCode(error.response)\n throw error\n }\n )\n\n return {\n get: <T>(url: string, params?: Record<string, unknown>, config = {}) =>\n instance\n .get<T>(url, { params, ...config })\n .then(handleIOSuccess<T>(ioIntegrityCheck))\n .catch(handleIOError(errorParser)),\n\n post: <T>(\n url: string,\n data?: Record<string, unknown>,\n config?: AxiosRequestConfig\n ) =>\n instance\n .post<T>(url, data, config)\n .then(handleIOSuccess<T>(ioIntegrityCheck))\n .catch(handleIOError(errorParser)),\n\n patch: <T>(\n url: string,\n data?: Record<string, unknown>,\n config?: AxiosRequestConfig\n ) =>\n instance\n .patch<T>(url, data, config)\n .then(handleIOSuccess<T>(ioIntegrityCheck))\n .catch(handleIOError(errorParser)),\n\n delete: <T>(url: string, params?: Record<string, unknown>, config = {}) =>\n instance\n .delete<T>(url, { params, ...config })\n .then(handleIOSuccess<T>(ioIntegrityCheck))\n .catch(handleIOError(errorParser))\n }\n}\n"],"names":["handleIOSuccess","integrityCheck","res","name","schema","checkIoIntegrity","req","body","config","data","query","params","url","request","status","handleIOError","errorParser","err","resData","response","errors","message","msg","errorData","createIoInstance","baseUrl","options","withAuth","authKey","ioIntegrityCheck","onStatusCode","instance","axios","create","baseURL","headers","Authorization","checkStatusCode","statusCode","handler","createCheckStatusCodeFn","interceptors","use","error","get","then","catch","post","patch","delete"],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ const M = { default: { "DD MMM": "DD MMM", "DD [de] MMMM": "DD [de] MMMM", "DD MMM, YYYY": "DD MMM, YYYY", "DD/MM/YY": "DD/MM/YY", "DD/MM/YYYY": "L", "DD/MM/YYYY HH:mm": "L LT", "HH:mm": "LT", "HH:mm:ss": "LTS", "D [de] MMMM [de] YYYY": "LL", "D [de] MMMM [de] YYYY [às] HH:mm": "LLL" }, en: { "DD/MM/YY": "MM/DD/YY", "DD MMM": "MMM DD", "DD MMM, YYYY": "ll", "DD [de] MMMM": "MMMM DD" }, es: { "DD/MM/YY": "DD/MM/YY", "DD MMM": "DD MMM", "DD MMM, YYYY": "DD MMM, YYYY", "DD [de] MMMM": "DD [de] MMMM" }, "pt-br": { "DD/MM/YY": "DD/MM/YY", "DD MMM": "DD MMM", "DD MMM, YYYY": "DD MMM, YYYY", "DD [de] MMMM": "DD [de] MMMM" } };
2
+ export {
3
+ M as localizedFormatString
4
+ };
5
+ //# sourceMappingURL=binamik-js-providers.es5.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binamik-js-providers.es5.js","sources":["../src/SafeDate/i18n/localizedFormatString.ts"],"sourcesContent":["export interface LangFormatProps {\n 'DD MMM': string\n 'DD [de] MMMM': string\n 'DD MMM, YYYY': string\n 'DD/MM/YY': string\n 'DD/MM/YYYY'?: string\n 'DD/MM/YYYY HH:mm'?: string\n 'HH:mm'?: string\n 'HH:mm:ss'?: string\n 'D [de] MMMM [de] YYYY'?: string\n 'D [de] MMMM [de] YYYY [às] HH:mm'?: string\n}\n\nconst defaultValues: Required<LangFormatProps> = {\n 'DD MMM': 'DD MMM',\n 'DD [de] MMMM': 'DD [de] MMMM',\n 'DD MMM, YYYY': 'DD MMM, YYYY',\n 'DD/MM/YY': 'DD/MM/YY',\n 'DD/MM/YYYY': 'L',\n 'DD/MM/YYYY HH:mm': 'L LT',\n 'HH:mm': 'LT',\n 'HH:mm:ss': 'LTS',\n 'D [de] MMMM [de] YYYY': 'LL',\n 'D [de] MMMM [de] YYYY [às] HH:mm': 'LLL'\n}\n\nconst enValues: LangFormatProps = {\n 'DD/MM/YY': 'MM/DD/YY',\n 'DD MMM': 'MMM DD',\n 'DD MMM, YYYY': 'll',\n 'DD [de] MMMM': 'MMMM DD'\n}\n\nconst ptValues: LangFormatProps = {\n 'DD/MM/YY': 'DD/MM/YY',\n 'DD MMM': 'DD MMM',\n 'DD MMM, YYYY': 'DD MMM, YYYY',\n 'DD [de] MMMM': 'DD [de] MMMM'\n}\n\nconst esValues: LangFormatProps = {\n 'DD/MM/YY': 'DD/MM/YY',\n 'DD MMM': 'DD MMM',\n 'DD MMM, YYYY': 'DD MMM, YYYY',\n 'DD [de] MMMM': 'DD [de] MMMM'\n}\n\ninterface LocalizedFormatStringProps extends Record<string, LangFormatProps> {\n default: Required<LangFormatProps>\n en: LangFormatProps\n 'pt-br': LangFormatProps\n es: LangFormatProps\n}\n\nexport const localizedFormatString: LocalizedFormatStringProps = {\n default: defaultValues,\n en: enValues,\n es: esValues,\n 'pt-br': ptValues\n}\n"],"names":["localizedFormatString","default","en","es"],"mappings":"AAaA,MAyCaA,IAAoD,EAC/DC,SA1C+C,EAC/C,UAAU,UACV,gBAAgB,gBAChB,gBAAgB,gBAChB,YAAY,YACZ,cAAc,KACd,oBAAoB,QACpB,SAAS,MACT,YAAY,OACZ,yBAAyB,MACzB,oCAAoC,MAAA,GAiCpCC,IA9BgC,EAChC,YAAY,YACZ,UAAU,UACV,gBAAgB,MAChB,gBAAgB,aA2BhBC,IAjBgC,EAChC,YAAY,YACZ,UAAU,UACV,gBAAgB,gBAChB,gBAAgB,eAchB,GAAA,SAzBgC,EAChC,YAAY,YACZ,UAAU,UACV,gBAAgB,gBAChB,gBAAgB;"}
@@ -2,4 +2,4 @@ const e = { pt: "pt-br", pt_br: "pt-br", "pt-br": "pt-br", en: "en", en_us: "en"
2
2
  export {
3
3
  n as getSafeLangCode
4
4
  };
5
- //# sourceMappingURL=binamik-js-providers.es2.js.map
5
+ //# sourceMappingURL=binamik-js-providers.es6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binamik-js-providers.es6.js","sources":["../src/SafeDate/i18n/safeLangCode.ts"],"sourcesContent":["const safeLangCodes: Record<string, string> = {\n pt: 'pt-br',\n pt_br: 'pt-br',\n 'pt-br': 'pt-br',\n\n en: 'en',\n en_us: 'en',\n 'en-us': 'en',\n en_gb: 'en',\n 'en-gb': 'en',\n\n es: 'es',\n es_es: 'es',\n 'es-es': 'es'\n}\n\nexport const getSafeLangCode = (langCode: string) => {\n const code = safeLangCodes[langCode.toLowerCase()]\n return code || safeLangCodes.pt\n}\n"],"names":["safeLangCodes","pt","pt_br","en","en_us","en_gb","es","es_es","getSafeLangCode","langCode","toLowerCase"],"mappings":"AAAA,MAAMA,IAAwC,EAC5CC,IAAI,SACJC,OAAO,SACP,SAAS,SAETC,IAAI,MACJC,OAAO,MACP,SAAS,MACTC,OAAO,MACP,SAAS,MAETC,IAAI,MACJC,OAAO,MACP,SAAS,KAGEC,GAAAA,IAAmBC,OACjBT,EAAcS,EAASC,YAAAA,CAAAA,KACrBV,EAAcC;"}
@@ -0,0 +1,15 @@
1
+ import { object as i } from "yup";
2
+ import { isServer as m } from "./binamik-js-providers.es8.js";
3
+ import { isLocalhost as p } from "./binamik-js-providers.es9.js";
4
+ import { getYupValidationErrors as d } from "./binamik-js-providers.es10.js";
5
+ const E = async ({ name: e = "", url: s = "", req: a = {}, res: o = {}, schema: t = i() }) => {
6
+ var r;
7
+ m || p((r = window == null ? void 0 : window.location) == null ? void 0 : r.hostname) && t.validate(o, { abortEarly: !1 }).catch((n) => {
8
+ const c = d(n);
9
+ console.warn(`PLEASE check the backend IO for >> ${e} <<, some discrepancies were found in the expected response`, { functionName: e, endPoint: s, request: a, response: o, validationErrors: c });
10
+ });
11
+ };
12
+ export {
13
+ E as checkIoIntegrity
14
+ };
15
+ //# sourceMappingURL=binamik-js-providers.es7.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binamik-js-providers.es7.js","sources":["../src/IoProvider/checkIoIntegrity.ts"],"sourcesContent":["import { AnyObjectSchema, object as yupObject } from 'yup'\n\nimport { isServer, isLocalhost, getYupValidationErrors } from '@/utils'\n\ninterface CheckIoIntegrityProps {\n name: string\n url: string\n req: unknown\n res: unknown\n schema: AnyObjectSchema\n}\n\nexport const checkIoIntegrity = async ({\n name = '',\n url = '',\n req = {},\n res = {},\n schema = yupObject()\n}: CheckIoIntegrityProps): Promise<void> => {\n if (isServer) return\n if (!isLocalhost(window?.location?.hostname)) return\n\n schema.validate(res, { abortEarly: false }).catch(err => {\n const validationErrors = getYupValidationErrors(err)\n\n console.warn(\n `PLEASE check the backend IO for >> ${name} <<, some discrepancies were found in the expected response`,\n {\n functionName: name,\n endPoint: url,\n request: req,\n response: res,\n validationErrors\n }\n )\n })\n}\n"],"names":["checkIoIntegrity","async","name","i","url","req","res","t","schema","yupObject","isServer","isLocalhost","window","location","hostname","validate","abortEarly","catch","err","validationErrors","getYupValidationErrors","console","warn","functionName","endPoint","request","response","o"],"mappings":";;;;AAYO,MAAMA,IAAmBC,OAAAA,EAC9BC,MAAOC,IAAA,IACPC,SAAM,IACNC,KAAAA,IAAM,CAAC,GACPC,KAAMC,IAAA,CAAC,GACPC,QAAAA,IAASC,EAELC,EAAAA,MAAAA;;AAAAA,EAAAA,KACCC,GAAYC,IAAAA,iCAAQC,aAARD,gBAAAA,EAAkBE,QAAAA,KAE5BN,EAAAO,SAAST,GAAK,EAAEU,YAAAA,GAAqBC,CAAAA,EAAAA,MAAaC,CAAAA;AACjD,UAAAC,IAAmBC,EAAuBF,CAAAA;AAExCG,YAAAC,KACN,sCAAsCpB,CACtC,+DAAA,EACEqB,cAAcrB,GACdsB,UAAUpB,GACVqB,SAASpB,GACTqB,UAAUpB,GACVa,kBAEJQ,EAAA,CAAA;AAAA,EAAA,CAAA;AACD;"}
@@ -2,4 +2,4 @@ const e = typeof window > "u";
2
2
  export {
3
3
  e as isServer
4
4
  };
5
- //# sourceMappingURL=binamik-js-providers.es.js.map
5
+ //# sourceMappingURL=binamik-js-providers.es8.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binamik-js-providers.es8.js","sources":["../src/utils/isServer.ts"],"sourcesContent":["export const isServer = typeof window === 'undefined'\n"],"names":["isServer","window"],"mappings":"AAAa,MAAAA,WAAkBC,SAAW;"}
@@ -2,4 +2,4 @@ const e = (s) => (process.env.NEXT_PUBLIC_APP_ENV || process.env.REACT_APP_ENVIR
2
2
  export {
3
3
  e as isLocalhost
4
4
  };
5
- //# sourceMappingURL=binamik-js-providers.es2.js.map
5
+ //# sourceMappingURL=binamik-js-providers.es9.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binamik-js-providers.es9.js","sources":["../src/utils/isLocalhost.ts"],"sourcesContent":["const isIpv4 = (str: string): boolean =>\n /(^(\\d{1,3}\\.){3}(\\d{1,3})(:\\d{1,5})?$)/.test(str)\n\nexport const isLocalhost = (host: string): boolean => {\n const APP_ENVIRONMENT =\n process.env.NEXT_PUBLIC_APP_ENV ||\n process.env.REACT_APP_ENVIRONMENT ||\n process.env.REACT_APP_ENV ||\n process.env.NODE_ENV\n return (\n APP_ENVIRONMENT === 'local' && (host.includes('localhost') || isIpv4(host))\n )\n}\n"],"names":["isLocalhost","host","process","env","NEXT_PUBLIC_APP_ENV","REACT_APP_ENVIRONMENT","REACT_APP_ENV","NODE_ENV","includes","test"],"mappings":"AAAA,MAGaA,IAAeC,QAExBC,QAAQC,IAAIC,uBACZF,QAAQC,IAAIE,yBACZH,QAAQC,IAAIG,iBACZJ,QAAQC,IAAII,cAEQ,YAAYN,EAAKO,SAAS,WAThD,KAAA,yCAAyCC,KAS8BR;"}
@@ -1,2 +1,2 @@
1
- (function(o,u){typeof exports=="object"&&typeof module<"u"?u(exports,require("dayjs"),require("dayjs/locale/pt-br"),require("dayjs/locale/es"),require("dayjs/locale/en"),require("dayjs/plugin/localizedFormat"),require("nookies"),require("axios"),require("yup")):typeof define=="function"&&define.amd?define(["exports","dayjs","dayjs/locale/pt-br","dayjs/locale/es","dayjs/locale/en","dayjs/plugin/localizedFormat","nookies","axios","yup"],u):u((o=typeof globalThis<"u"?globalThis:o||self).BinamikJSProviders={},o.dayjs,null,null,null,o.localizedFormat,o.nookies,o.axios,o.yup)})(this,function(o,u,D,S,x,w,b,E,A){"use strict";var q=Object.defineProperty;var V=(o,u,D)=>u in o?q(o,u,{enumerable:!0,configurable:!0,writable:!0,value:D}):o[u]=D;var f=(o,u,D)=>(V(o,typeof u!="symbol"?u+"":u,D),D);const g=s=>s&&typeof s=="object"&&"default"in s?s:{default:s},Y=g(u),L=g(w),_=g(E),k={default:{"DD MMM":"DD MMM","DD [de] MMMM":"DD [de] MMMM","DD MMM, YYYY":"DD MMM, YYYY","DD/MM/YY":"DD/MM/YY","DD/MM/YYYY":"L","DD/MM/YYYY HH:mm":"L LT","HH:mm":"LT","HH:mm:ss":"LTS","D [de] MMMM [de] YYYY":"LL","D [de] MMMM [de] YYYY [\xE0s] HH:mm":"LLL"},en:{"DD/MM/YY":"MM/DD/YY","DD MMM":"MMM DD","DD MMM, YYYY":"ll","DD [de] MMMM":"MMMM DD"},es:{"DD/MM/YY":"DD/MM/YY","DD MMM":"DD MMM","DD MMM, YYYY":"DD MMM, YYYY","DD [de] MMMM":"DD [de] MMMM"},"pt-br":{"DD/MM/YY":"DD/MM/YY","DD MMM":"DD MMM","DD MMM, YYYY":"DD MMM, YYYY","DD [de] MMMM":"DD [de] MMMM"}},j={pt:"pt-br",pt_br:"pt-br","pt-br":"pt-br",en:"en",en_us:"en","en-us":"en",en_gb:"en","en-gb":"en",es:"es",es_es:"es","es-es":"es"};Y.default.extend(L.default);class H{constructor(e,t="pt-br"){f(this,"value",Y.default());f(this,"isDateValid",!0);f(this,"locale","pt-br");this.locale=this.getI18nCode(t),this.value=Y.default(e).locale(this.locale),this.isDateValid=this.value.isValid(),this.isDateValid||console.error("Invalid date:",e)}static isValid(e){return Y.default(e||"").isValid()}validationHandler(e,t){return this.isDateValid?e:t}imutableHandler(e,t){return new H(e,t||this.locale)}i18nFormat(e){var t;return((t=k[this.locale])==null?void 0:t[e])||k.default[e]||""}getI18nCode(e){return j[e.toLowerCase()]||j.pt}get isValid(){return this.isDateValid}get lang(){return this.locale}get jsDate(){return this.value.toDate()}get timestamp(){return this.validationHandler(this.jsDate.getTime(),NaN)}get isoDate(){return this.validationHandler(this.value.format("YYYY-MM-DD"),"")}get isoString(){return this.validationHandler(this.value.format("YYYY-MM-DDTHH:mm:ss"),"")}get daysInMonth(){return this.validationHandler(this.value.daysInMonth(),0)}get dateObj(){return this.validationHandler({year:this.value.year(),month:this.value.month(),date:this.value.date(),weekday:this.value.day(),hour:this.value.hour(),minute:this.value.minute(),second:this.value.second(),millisecond:this.value.millisecond()},{year:0,month:0,date:0,weekday:0,hour:0,minute:0,second:0,millisecond:0})}toStartOf(e){const t=this.validationHandler(this.value.startOf(e),this.value);return this.imutableHandler(t)}add({years:e=0,months:t=0,weeks:n=0,days:r=0,hours:d=0,minutes:l=0,seconds:h=0}){const M=this.validationHandler(this.value.add(e,"year").add(t,"month").add(n,"week").add(r,"day").add(d,"hour").add(l,"minute").add(h,"second"),this.value);return this.imutableHandler(M)}subtract({years:e=0,months:t=0,weeks:n=0,days:r=0,hours:d=0,minutes:l=0,seconds:h=0}){const M=this.validationHandler(this.value.subtract(e,"year").subtract(t,"month").subtract(n,"week").subtract(r,"day").subtract(d,"hour").subtract(l,"minute").subtract(h,"second"),this.value);return this.imutableHandler(M)}to(e){const t=this.dateObj,{year:n=t.year,month:r=t.month,date:d=t.date,hour:l=t.hour,minute:h=t.minute,second:M=t.second,millisecond:a=t.millisecond}=e,i=this.validationHandler(this.value.year(n).month(r).date(d).hour(l).minute(h).second(M).millisecond(a),this.value);return this.imutableHandler(i)}isBefore(e,t){return this.validationHandler(this.value.isBefore(e,t),!1)}isAfter(e,t){return this.validationHandler(this.value.isAfter(e,t),!1)}isSame(e,t){return this.validationHandler(this.value.isSame(e,t),!1)}isBetween(e,t,n){const r=this.validationHandler(this.value.isAfter(e,n),!1),d=this.validationHandler(this.value.isBefore(t,n),!1),l=r&&d||!r&&!d;return this.validationHandler(l,!1)}getDiff(e,t){return this.validationHandler(this.value.diff(e,t),0)}clone(){return this.imutableHandler(this.value)}format(e){return this.validationHandler(this.value.format(e),"")}formatIntl(e){const t=this.i18nFormat(e);return this.format(t)}setLocale(e){const t=this.getI18nCode(e);return this.imutableHandler(this.value,t)}}const C=(s,e)=>(t,n,r)=>{b.setCookie(null,`${e}-${t}`,n,{maxAge:(r==null?void 0:r.maxAge)||7776e3,path:"/",domain:s,secure:!0,httpOnly:!0})},p=(s,e)=>(t,n)=>{b.destroyCookie(null,`${e}-${t}`,n)},I=(s,e)=>t=>{p(0,e)("auth-key",t),p(0,e)("user",t),p(0,e)("company",t),p(0,e)("orb-selected",t)},P=typeof window>"u",T=async({name:s="",url:e="",req:t={},res:n={},schema:r=A.object()})=>{var l;var d;P||(d=(l=window==null?void 0:window.location)==null?void 0:l.hostname,(process.env.NEXT_PUBLIC_APP_ENV||process.env.REACT_APP_ENVIRONMENT||process.env.REACT_APP_ENV||process.env.NODE_ENV)==="local"&&(d.includes("localhost")||/(^(\d{1,3}\.){3}(\d{1,3})(:\d{1,5})?$)/.test(d))&&r.validate(n,{abortEarly:!1}).catch(h=>{const M=(a=>{var c;const i={};return(c=a==null?void 0:a.inner)!=null&&c.length?a.inner.forEach(m=>{i[(m==null?void 0:m.path)||"unknown"]=m.message}):(a==null?void 0:a.path)&&(a==null?void 0:a.message)?i[a.path]=a.message:(a==null?void 0:a.path)||(a==null?void 0:a.type)!=="typeError"||(i.body=a.errors[0]),i})(h);console.warn(`PLEASE check the backend IO for >> ${s} <<, some discrepancies were found in the expected response`,{functionName:s,endPoint:e,request:t,response:n,validationErrors:M})}))},v=s=>e=>{var t,n;return s&&s.name&&s.schema&&T({name:s.name,schema:s.schema,req:{body:((t=e==null?void 0:e.config)==null?void 0:t.data)||null,query:(n=e==null?void 0:e.config)==null?void 0:n.params},res:e==null?void 0:e.data,url:e==null?void 0:e.request.url}),[e.data,null,{status:e.status}]},y=s=>e=>{var r,d,l;const t=(r=e==null?void 0:e.response)==null?void 0:r.data,n=s?s(t||null):void 0;return[null,{status:((d=e==null?void 0:e.response)==null?void 0:d.status)||599,message:(t==null?void 0:t.message)||(t==null?void 0:t.msg)||"Unknown IO Error",errorData:t||null,errors:n},{status:((l=e==null?void 0:e.response)==null?void 0:l.status)||599}]};o.AppStorageProvider=({cookieDomain:s,cookiePrefix:e})=>{return{get:(t=e,n=>b.parseCookies()[`${t}-${n}`]),set:C(s,e),remove:p(0,e),cleanAuth:I(0,e)};var t},o.SafeDate=H,o.createIoInstance=(s,e)=>{const{withAuth:t=!1,authKey:n="",ioIntegrityCheck:r,onStatusCode:d,errorParser:l}=e||{},h=_.default.create({baseURL:s,headers:t?{"Content-Type":"application/json",Authorization:n||"no_auth_key"}:{"Content-Type":"application/json"}}),M=(a=>i=>{if(a&&(i==null?void 0:i.status)){const c=i.status,m=a[c];m&&m(i)}})(d);return h.interceptors.response.use(a=>(M(a),a),a=>{throw a!=null&&a.response&&M(a.response),a}),{get:(a,i,c={})=>h.get(a,{params:i,...c}).then(v(r)).catch(y(l)),post:(a,i,c)=>h.post(a,i,c).then(v(r)).catch(y(l)),patch:(a,i,c)=>h.patch(a,i,c).then(v(r)).catch(y(l)),delete:(a,i,c={})=>h.delete(a,{params:i,...c}).then(v(r)).catch(y(l))}},Object.defineProperties(o,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(o,u){typeof exports=="object"&&typeof module<"u"?u(exports,require("dayjs"),require("dayjs/locale/pt-br"),require("dayjs/locale/es"),require("dayjs/locale/en"),require("dayjs/plugin/localizedFormat"),require("nookies"),require("axios"),require("yup")):typeof define=="function"&&define.amd?define(["exports","dayjs","dayjs/locale/pt-br","dayjs/locale/es","dayjs/locale/en","dayjs/plugin/localizedFormat","nookies","axios","yup"],u):u((o=typeof globalThis<"u"?globalThis:o||self).BinamikJSProviders={},o.dayjs,null,null,null,o.localizedFormat,o.nookies,o.axios,o.yup)})(this,function(o,u,D,T,q,k,f,j,w){"use strict";var I=Object.defineProperty;var P=(o,u,D)=>u in o?I(o,u,{enumerable:!0,configurable:!0,writable:!0,value:D}):o[u]=D;var y=(o,u,D)=>P(o,typeof u!="symbol"?u+"":u,D);const g={default:{"DD MMM":"DD MMM","DD [de] MMMM":"DD [de] MMMM","DD MMM, YYYY":"DD MMM, YYYY","DD/MM/YY":"DD/MM/YY","DD/MM/YYYY":"L","DD/MM/YYYY HH:mm":"L LT","HH:mm":"LT","HH:mm:ss":"LTS","D [de] MMMM [de] YYYY":"LL","D [de] MMMM [de] YYYY [às] HH:mm":"LLL"},en:{"DD/MM/YY":"MM/DD/YY","DD MMM":"MMM DD","DD MMM, YYYY":"ll","DD [de] MMMM":"MMMM DD"},es:{"DD/MM/YY":"DD/MM/YY","DD MMM":"DD MMM","DD MMM, YYYY":"DD MMM, YYYY","DD [de] MMMM":"DD [de] MMMM"},"pt-br":{"DD/MM/YY":"DD/MM/YY","DD MMM":"DD MMM","DD MMM, YYYY":"DD MMM, YYYY","DD [de] MMMM":"DD [de] MMMM"}},H={pt:"pt-br",pt_br:"pt-br","pt-br":"pt-br",en:"en",en_us:"en","en-us":"en",en_gb:"en","en-gb":"en",es:"es",es_es:"es","es-es":"es"};u.extend(k);class b{constructor(e,t="pt-br"){y(this,"value",u());y(this,"isDateValid",!0);y(this,"locale","pt-br");this.locale=this.getI18nCode(t),this.value=u(e).locale(this.locale),this.isDateValid=this.value.isValid(),this.isDateValid||console.error("Invalid date:",e)}static isValid(e){return u(e||"").isValid()}validationHandler(e,t){return this.isDateValid?e:t}imutableHandler(e,t){return new b(e,t||this.locale)}i18nFormat(e){var t;return((t=g[this.locale])==null?void 0:t[e])||g.default[e]||""}getI18nCode(e){return H[e.toLowerCase()]||H.pt}get isValid(){return this.isDateValid}get lang(){return this.locale}get jsDate(){return this.value.toDate()}get timestamp(){return this.validationHandler(this.jsDate.getTime(),NaN)}get isoDate(){return this.validationHandler(this.value.format("YYYY-MM-DD"),"")}get isoString(){return this.validationHandler(this.value.format("YYYY-MM-DDTHH:mm:ss"),"")}get daysInMonth(){return this.validationHandler(this.value.daysInMonth(),0)}get dateObj(){return this.validationHandler({year:this.value.year(),month:this.value.month(),date:this.value.date(),weekday:this.value.day(),hour:this.value.hour(),minute:this.value.minute(),second:this.value.second(),millisecond:this.value.millisecond()},{year:0,month:0,date:0,weekday:0,hour:0,minute:0,second:0,millisecond:0})}toStartOf(e){const t=this.validationHandler(this.value.startOf(e),this.value);return this.imutableHandler(t)}add({years:e=0,months:t=0,weeks:s=0,days:n=0,hours:d=0,minutes:l=0,seconds:h=0}){const M=this.validationHandler(this.value.add(e,"year").add(t,"month").add(s,"week").add(n,"day").add(d,"hour").add(l,"minute").add(h,"second"),this.value);return this.imutableHandler(M)}subtract({years:e=0,months:t=0,weeks:s=0,days:n=0,hours:d=0,minutes:l=0,seconds:h=0}){const M=this.validationHandler(this.value.subtract(e,"year").subtract(t,"month").subtract(s,"week").subtract(n,"day").subtract(d,"hour").subtract(l,"minute").subtract(h,"second"),this.value);return this.imutableHandler(M)}to(e){const t=this.dateObj,{year:s=t.year,month:n=t.month,date:d=t.date,hour:l=t.hour,minute:h=t.minute,second:M=t.second,millisecond:a=t.millisecond}=e,r=this.validationHandler(this.value.year(s).month(n).date(d).hour(l).minute(h).second(M).millisecond(a),this.value);return this.imutableHandler(r)}isBefore(e,t){return this.validationHandler(this.value.isBefore(e,t),!1)}isAfter(e,t){return this.validationHandler(this.value.isAfter(e,t),!1)}isSame(e,t){return this.validationHandler(this.value.isSame(e,t),!1)}isBetween(e,t,s){const n=this.validationHandler(this.value.isAfter(e,s),!1),d=this.validationHandler(this.value.isBefore(t,s),!1),l=n&&d||!n&&!d;return this.validationHandler(l,!1)}getDiff(e,t){return this.validationHandler(this.value.diff(e,t),0)}clone(){return this.imutableHandler(this.value)}format(e){return this.validationHandler(this.value.format(e),"")}formatIntl(e){const t=this.i18nFormat(e);return this.format(t)}setLocale(e){const t=this.getI18nCode(e);return this.imutableHandler(this.value,t)}}const E=(i,e)=>(t,s,n)=>{f.setCookie(null,`${e}-${t}`,s,{maxAge:(n==null?void 0:n.maxAge)||7776e3,path:"/",domain:i,secure:!0,httpOnly:!0})},Y=(i,e)=>(t,s)=>{f.destroyCookie(null,`${e}-${t}`,s)},A=(i,e)=>t=>{Y(0,e)("auth-key",t),Y(0,e)("user",t),Y(0,e)("company",t),Y(0,e)("orb-selected",t)},L=typeof window>"u",C=async({name:i="",url:e="",req:t={},res:s={},schema:n=w.object()})=>{var l;var d;L||(d=(l=window==null?void 0:window.location)==null?void 0:l.hostname,(process.env.NEXT_PUBLIC_APP_ENV||process.env.REACT_APP_ENVIRONMENT||process.env.REACT_APP_ENV||process.env.NODE_ENV)==="local"&&(d.includes("localhost")||/(^(\d{1,3}\.){3}(\d{1,3})(:\d{1,5})?$)/.test(d))&&n.validate(s,{abortEarly:!1}).catch(h=>{const M=(a=>{var c;const r={};return(c=a==null?void 0:a.inner)!=null&&c.length?a.inner.forEach(m=>{r[(m==null?void 0:m.path)||"unknown"]=m.message}):a!=null&&a.path&&(a!=null&&a.message)?r[a.path]=a.message:a!=null&&a.path||(a==null?void 0:a.type)!=="typeError"||(r.body=a.errors[0]),r})(h);console.warn(`PLEASE check the backend IO for >> ${i} <<, some discrepancies were found in the expected response`,{functionName:i,endPoint:e,request:t,response:s,validationErrors:M})}))},p=i=>e=>{var t,s;return i&&i.name&&i.schema&&C({name:i.name,schema:i.schema,req:{body:((t=e==null?void 0:e.config)==null?void 0:t.data)||null,query:(s=e==null?void 0:e.config)==null?void 0:s.params},res:e==null?void 0:e.data,url:e==null?void 0:e.request.url}),[e.data,null,{status:e.status}]},v=i=>e=>{var n,d,l;const t=(n=e==null?void 0:e.response)==null?void 0:n.data,s=i?i(t||null):void 0;return[null,{status:((d=e==null?void 0:e.response)==null?void 0:d.status)||599,message:(t==null?void 0:t.message)||(t==null?void 0:t.msg)||"Unknown IO Error",errorData:t||null,errors:s},{status:((l=e==null?void 0:e.response)==null?void 0:l.status)||599}]};o.AppStorageProvider=({cookieDomain:i,cookiePrefix:e})=>{return{get:(t=e,s=>f.parseCookies()[`${t}-${s}`]),set:E(i,e),remove:Y(0,e),cleanAuth:A(0,e)};var t},o.SafeDate=b,o.createIoInstance=(i,e)=>{const{withAuth:t=!1,authKey:s="",ioIntegrityCheck:n,onStatusCode:d,errorParser:l}=e||{},h=j.create({baseURL:i,headers:t?{"Content-Type":"application/json",Authorization:s||"no_auth_key"}:{"Content-Type":"application/json"}}),M=(a=>r=>{if(a&&(r!=null&&r.status)){const c=r.status,m=a[c];m&&m(r)}})(d);return h.interceptors.response.use(a=>(M(a),a),a=>{throw a!=null&&a.response&&M(a.response),a}),{get:(a,r,c={})=>h.get(a,{params:r,...c}).then(p(n)).catch(v(l)),post:(a,r,c)=>h.post(a,r,c).then(p(n)).catch(v(l)),patch:(a,r,c)=>h.patch(a,r,c).then(p(n)).catch(v(l)),delete:(a,r,c={})=>h.delete(a,{params:r,...c}).then(p(n)).catch(v(l))}},Object.defineProperty(o,Symbol.toStringTag,{value:"Module"})});
2
2
  //# sourceMappingURL=binamik-js-providers.umd.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"binamik-js-providers.umd.js","sources":["../src/SafeDate/i18n/localizedFormatString.ts","../src/SafeDate/i18n/safeLangCode.ts","../src/SafeDate/SafeDate.ts","../src/AppStorageProvider/AppStorageProvider.ts","../src/utils/isServer.ts","../src/IoProvider/checkIoIntegrity.ts","../src/utils/isLocalhost.ts","../src/utils/yup/getYupValidationErrors.ts","../src/IoProvider/IoProvider.ts"],"sourcesContent":["export interface LangFormatProps {\n 'DD MMM': string\n 'DD [de] MMMM': string\n 'DD MMM, YYYY': string\n 'DD/MM/YY': string\n 'DD/MM/YYYY'?: string\n 'DD/MM/YYYY HH:mm'?: string\n 'HH:mm'?: string\n 'HH:mm:ss'?: string\n 'D [de] MMMM [de] YYYY'?: string\n 'D [de] MMMM [de] YYYY [às] HH:mm'?: string\n}\n\nconst defaultValues: Required<LangFormatProps> = {\n 'DD MMM': 'DD MMM',\n 'DD [de] MMMM': 'DD [de] MMMM',\n 'DD MMM, YYYY': 'DD MMM, YYYY',\n 'DD/MM/YY': 'DD/MM/YY',\n 'DD/MM/YYYY': 'L',\n 'DD/MM/YYYY HH:mm': 'L LT',\n 'HH:mm': 'LT',\n 'HH:mm:ss': 'LTS',\n 'D [de] MMMM [de] YYYY': 'LL',\n 'D [de] MMMM [de] YYYY [às] HH:mm': 'LLL'\n}\n\nconst enValues: LangFormatProps = {\n 'DD/MM/YY': 'MM/DD/YY',\n 'DD MMM': 'MMM DD',\n 'DD MMM, YYYY': 'll',\n 'DD [de] MMMM': 'MMMM DD'\n}\n\nconst ptValues: LangFormatProps = {\n 'DD/MM/YY': 'DD/MM/YY',\n 'DD MMM': 'DD MMM',\n 'DD MMM, YYYY': 'DD MMM, YYYY',\n 'DD [de] MMMM': 'DD [de] MMMM'\n}\n\nconst esValues: LangFormatProps = {\n 'DD/MM/YY': 'DD/MM/YY',\n 'DD MMM': 'DD MMM',\n 'DD MMM, YYYY': 'DD MMM, YYYY',\n 'DD [de] MMMM': 'DD [de] MMMM'\n}\n\ninterface LocalizedFormatStringProps extends Record<string, LangFormatProps> {\n default: Required<LangFormatProps>\n en: LangFormatProps\n 'pt-br': LangFormatProps\n es: LangFormatProps\n}\n\nexport const localizedFormatString: LocalizedFormatStringProps = {\n default: defaultValues,\n en: enValues,\n es: esValues,\n 'pt-br': ptValues\n}\n","const safeLangCodes: Record<string, string> = {\n pt: 'pt-br',\n pt_br: 'pt-br',\n 'pt-br': 'pt-br',\n\n en: 'en',\n en_us: 'en',\n 'en-us': 'en',\n en_gb: 'en',\n 'en-gb': 'en',\n\n es: 'es',\n es_es: 'es',\n 'es-es': 'es'\n}\n\nexport const getSafeLangCode = (langCode: string) => {\n const code = safeLangCodes[langCode.toLowerCase()]\n return code || safeLangCodes.pt\n}\n","import dayjs, { Dayjs } from 'dayjs'\n\nimport 'dayjs/locale/pt-br'\nimport 'dayjs/locale/es'\nimport 'dayjs/locale/en'\n\nimport localizedFormat from 'dayjs/plugin/localizedFormat'\nimport {\n localizedFormatString,\n LangFormatProps\n} from './i18n/localizedFormatString'\nimport { getSafeLangCode } from './i18n/safeLangCode'\n\ndayjs.extend(localizedFormat)\n\ntype DateTimeUnits =\n | 'year'\n | 'month'\n | 'week'\n | 'day'\n | 'hour'\n | 'minute'\n | 'second'\n\ninterface DateTimeOptions {\n years?: number\n months?: number\n weeks?: number\n days?: number\n hours?: number\n minutes?: number\n seconds?: number\n}\n\ninterface DateObjProps {\n year: number\n month: number\n date: number\n weekday: number\n hour: number\n minute: number\n second: number\n millisecond: number\n}\n\ntype ToOptions = Partial<Omit<DateObjProps, 'weekday'>>\n\nexport class SafeDate {\n private value: Dayjs = dayjs()\n private isDateValid = true\n private locale = 'pt-br'\n\n public static isValid(value?: Date | string | Dayjs) {\n return dayjs(value || '').isValid()\n }\n\n private validationHandler<T>(value: T, onInvalid: T): T {\n return this.isDateValid ? value : onInvalid\n }\n\n private imutableHandler(value: Dayjs, locale?: string) {\n return new SafeDate(value, locale || this.locale)\n }\n\n private i18nFormat(key: keyof LangFormatProps) {\n return (\n localizedFormatString[this.locale]?.[key] ||\n localizedFormatString.default[key] ||\n ''\n )\n }\n\n private getI18nCode(locale: string) {\n return getSafeLangCode(locale)\n }\n\n public get isValid(): boolean {\n return this.isDateValid\n }\n\n public get lang() {\n return this.locale\n }\n\n public get jsDate() {\n return this.value.toDate()\n }\n\n public get timestamp() {\n return this.validationHandler(this.jsDate.getTime(), NaN)\n }\n\n public get isoDate() {\n return this.validationHandler(this.value.format('YYYY-MM-DD'), '')\n }\n\n public get isoString() {\n return this.validationHandler(this.value.format('YYYY-MM-DDTHH:mm:ss'), '')\n }\n\n public get daysInMonth() {\n return this.validationHandler(this.value.daysInMonth(), 0)\n }\n\n public get dateObj(): DateObjProps {\n return this.validationHandler(\n {\n year: this.value.year(),\n month: this.value.month(),\n date: this.value.date(),\n weekday: this.value.day(),\n hour: this.value.hour(),\n minute: this.value.minute(),\n second: this.value.second(),\n millisecond: this.value.millisecond()\n },\n {\n year: 0,\n month: 0,\n date: 0,\n weekday: 0,\n hour: 0,\n minute: 0,\n second: 0,\n millisecond: 0\n }\n )\n }\n\n public toStartOf(unit: DateTimeUnits) {\n const newValue = this.validationHandler(\n this.value.startOf(unit),\n this.value\n )\n return this.imutableHandler(newValue)\n }\n\n public add({\n years = 0,\n months = 0,\n weeks = 0,\n days = 0,\n hours = 0,\n minutes = 0,\n seconds = 0\n }: DateTimeOptions) {\n const newValue = this.validationHandler(\n this.value\n .add(years, 'year')\n .add(months, 'month')\n .add(weeks, 'week')\n .add(days, 'day')\n .add(hours, 'hour')\n .add(minutes, 'minute')\n .add(seconds, 'second'),\n this.value\n )\n return this.imutableHandler(newValue)\n }\n\n public subtract({\n years = 0,\n months = 0,\n weeks = 0,\n days = 0,\n hours = 0,\n minutes = 0,\n seconds = 0\n }: DateTimeOptions) {\n const newValue = this.validationHandler(\n this.value\n .subtract(years, 'year')\n .subtract(months, 'month')\n .subtract(weeks, 'week')\n .subtract(days, 'day')\n .subtract(hours, 'hour')\n .subtract(minutes, 'minute')\n .subtract(seconds, 'second'),\n this.value\n )\n return this.imutableHandler(newValue)\n }\n\n public to(newValues: ToOptions) {\n const currentValues: Required<ToOptions> = this.dateObj\n\n const {\n year = currentValues.year,\n month = currentValues.month,\n date = currentValues.date,\n hour = currentValues.hour,\n minute = currentValues.minute,\n second = currentValues.second,\n millisecond = currentValues.millisecond\n } = newValues\n\n const newValue = this.validationHandler(\n this.value\n .year(year)\n .month(month)\n .date(date)\n .hour(hour)\n .minute(minute)\n .second(second)\n .millisecond(millisecond),\n this.value\n )\n\n return this.imutableHandler(newValue)\n }\n\n public isBefore(date: Date | string, unit?: DateTimeUnits) {\n return this.validationHandler(this.value.isBefore(date, unit), false)\n }\n\n public isAfter(date: Date | string, unit?: DateTimeUnits) {\n return this.validationHandler(this.value.isAfter(date, unit), false)\n }\n\n public isSame(date: Date | string, unit?: DateTimeUnits) {\n return this.validationHandler(this.value.isSame(date, unit), false)\n }\n\n public isBetween(\n startingDate: Date | string,\n endingDate: Date | string,\n unit?: DateTimeUnits\n ) {\n const isAfterStartingDate = this.validationHandler(\n this.value.isAfter(startingDate, unit),\n false\n )\n const isBeforeEndingDate = this.validationHandler(\n this.value.isBefore(endingDate, unit),\n false\n )\n\n const isBetweenDates =\n (isAfterStartingDate && isBeforeEndingDate) ||\n (!isAfterStartingDate && !isBeforeEndingDate)\n\n return this.validationHandler(isBetweenDates, false)\n }\n\n public getDiff(date: Date | string, unit: DateTimeUnits) {\n return this.validationHandler(this.value.diff(date, unit), 0)\n }\n\n public clone() {\n return this.imutableHandler(this.value)\n }\n\n public format(format: string) {\n return this.validationHandler(this.value.format(format), '')\n }\n\n public formatIntl(formatTo: keyof LangFormatProps) {\n const formatStr = this.i18nFormat(formatTo)\n return this.format(formatStr)\n }\n\n public setLocale(locale: string) {\n const safeLocale = this.getI18nCode(locale)\n return this.imutableHandler(this.value, safeLocale)\n }\n\n constructor(pValue?: Date | string | Dayjs, locale = 'pt-br') {\n this.locale = this.getI18nCode(locale)\n this.value = dayjs(pValue).locale(this.locale)\n this.isDateValid = this.value.isValid()\n\n if (!this.isDateValid) {\n console.error('Invalid date:', pValue)\n }\n }\n}\n","import { parseCookies, setCookie, destroyCookie } from 'nookies'\n\ninterface CookieOptionsType {\n expires?: number\n path?: string\n domain?: string\n secure?: boolean\n httpOnly?: boolean\n maxAge?: number\n sameSite?: 'Strict' | 'Lax' | 'None'\n}\n\nconst get =\n (_domain: string, prefix: string) =>\n (key: string): string => {\n const cookies = parseCookies()\n return cookies[`${prefix}-${key}`]\n }\n\nconst set =\n (domain: string, prefix: string) =>\n (key: string, value: string, options?: CookieOptionsType) => {\n setCookie(null, `${prefix}-${key}`, value, {\n maxAge: options?.maxAge || 60 * 60 * 24 * 90, // 90 days\n path: '/',\n domain,\n secure: true,\n httpOnly: true\n })\n }\n\nconst remove =\n (_domain: string, prefix: string) =>\n (key: string, options?: CookieOptionsType) => {\n destroyCookie(null, `${prefix}-${key}`, options)\n }\n\nconst cleanAuth =\n (domain: string, prefix: string) => (options?: CookieOptionsType) => {\n remove(domain, prefix)('auth-key', options)\n remove(domain, prefix)('user', options)\n remove(domain, prefix)('company', options)\n remove(domain, prefix)('orb-selected', options)\n }\n\ninterface AppStorageProviderProps {\n cookieDomain: string\n cookiePrefix: string\n}\n\nexport const AppStorageProvider = ({\n cookieDomain,\n cookiePrefix\n}: AppStorageProviderProps) => ({\n get: get(cookieDomain, cookiePrefix),\n set: set(cookieDomain, cookiePrefix),\n remove: remove(cookieDomain, cookiePrefix),\n cleanAuth: cleanAuth(cookieDomain, cookiePrefix)\n})\n","export const isServer = typeof window === 'undefined'\n","import { AnyObjectSchema, object as yupObject } from 'yup'\n\nimport { isServer, isLocalhost, getYupValidationErrors } from '@/utils'\n\ninterface CheckIoIntegrityProps {\n name: string\n url: string\n req: unknown\n res: unknown\n schema: AnyObjectSchema\n}\n\nexport const checkIoIntegrity = async ({\n name = '',\n url = '',\n req = {},\n res = {},\n schema = yupObject()\n}: CheckIoIntegrityProps): Promise<void> => {\n if (isServer) return\n if (!isLocalhost(window?.location?.hostname)) return\n\n schema.validate(res, { abortEarly: false }).catch(err => {\n const validationErrors = getYupValidationErrors(err)\n\n console.warn(\n `PLEASE check the backend IO for >> ${name} <<, some discrepancies were found in the expected response`,\n {\n functionName: name,\n endPoint: url,\n request: req,\n response: res,\n validationErrors\n }\n )\n })\n}\n","const isIpv4 = (str: string): boolean =>\n /(^(\\d{1,3}\\.){3}(\\d{1,3})(:\\d{1,5})?$)/.test(str)\n\nexport const isLocalhost = (host: string): boolean => {\n const APP_ENVIRONMENT =\n process.env.NEXT_PUBLIC_APP_ENV ||\n process.env.REACT_APP_ENVIRONMENT ||\n process.env.REACT_APP_ENV ||\n process.env.NODE_ENV\n return (\n APP_ENVIRONMENT === 'local' && (host.includes('localhost') || isIpv4(host))\n )\n}\n","import { ValidationError } from 'yup'\n\nexport const getYupValidationErrors = (\n err: ValidationError\n): Record<string, string> => {\n const validationErrors = {} as Record<string, string>\n\n if (err?.inner?.length) {\n err.inner.forEach(error => {\n validationErrors[error?.path || 'unknown'] = error.message\n })\n } else if (err?.path && err?.message) {\n validationErrors[err.path] = err.message\n } else if (!err?.path && err?.type === 'typeError') {\n validationErrors.body = err.errors[0]\n }\n\n return validationErrors\n}\n","import axios, { AxiosError, AxiosRequestConfig, AxiosResponse } from 'axios'\nimport { AnyObjectSchema } from 'yup'\n\nimport { checkIoIntegrity } from './checkIoIntegrity'\n\nexport interface IOIntegrityCheckProps {\n name: string\n schema: AnyObjectSchema\n}\n\nexport type ApiErrorParserType = (\n err?: Record<string, unknown> | null\n) => string[]\n\ninterface IoInstanceOptions {\n withAuth: boolean\n authKey?: string\n ioIntegrityCheck?: IOIntegrityCheckProps\n onStatusCode?: Record<number, (res: AxiosResponse) => void>\n errorParser?: ApiErrorParserType\n}\n\nexport interface IoErrorProps {\n status: number\n message: string\n errorData: Record<string, unknown> | null\n errors?: string[]\n}\n\nexport interface IoResponseMetaProps {\n status: number\n}\n\ntype IOResponseType<T> = [T, null, IoResponseMetaProps?]\ntype IOResponseErrorType = [null, IoErrorProps, IoResponseMetaProps?]\n\nexport type ApiResponseDTO<T> = IOResponseType<T> | IOResponseErrorType\n\ntype IoFn = <T>(\n url: string,\n payload?: Record<string, unknown>,\n config?: AxiosRequestConfig\n) => Promise<ApiResponseDTO<T>>\n\ninterface IoInstanceProps {\n get: IoFn\n post: IoFn\n patch: IoFn\n delete: IoFn\n}\n\nconst createCheckStatusCodeFn =\n (onStatusCode?: { [code: number]: (res: AxiosResponse) => void }) =>\n (res: AxiosResponse) => {\n if (onStatusCode && res?.status) {\n const statusCode = res.status\n const handler = onStatusCode[statusCode]\n if (handler) handler(res)\n }\n }\n\nconst handleIOSuccess =\n <T>(integrityCheck?: IOIntegrityCheckProps) =>\n (res: AxiosResponse<T>): IOResponseType<T> => {\n if (integrityCheck && integrityCheck.name && integrityCheck.schema) {\n checkIoIntegrity({\n name: integrityCheck.name,\n schema: integrityCheck.schema,\n req: { body: res?.config?.data || null, query: res?.config?.params },\n res: res?.data,\n url: res?.request.url\n })\n }\n\n return [res.data, null, { status: res.status }]\n }\n\nconst handleIOError =\n (errorParser?: ApiErrorParserType) =>\n (err: AxiosError): IOResponseErrorType => {\n const resData = err?.response?.data as Record<string, unknown>\n\n const errors = errorParser ? errorParser(resData || null) : undefined\n\n return [\n null,\n {\n status: err?.response?.status || 599,\n message:\n (resData?.message as string) ||\n (resData?.msg as string) ||\n 'Unknown IO Error',\n errorData: resData || null,\n errors\n },\n {\n status: err?.response?.status || 599\n }\n ]\n }\n\nexport const createIoInstance = (\n baseUrl: string,\n options?: IoInstanceOptions\n): IoInstanceProps => {\n const {\n withAuth = false,\n authKey = '',\n ioIntegrityCheck,\n onStatusCode,\n errorParser\n } = options || {}\n\n const instance = axios.create({\n baseURL: baseUrl,\n headers: withAuth\n ? {\n 'Content-Type': 'application/json',\n Authorization: authKey || 'no_auth_key'\n }\n : { 'Content-Type': 'application/json' }\n })\n\n const checkStatusCode = createCheckStatusCodeFn(onStatusCode)\n\n instance.interceptors.response.use(\n res => {\n checkStatusCode(res)\n return res\n },\n error => {\n if (error?.response) checkStatusCode(error.response)\n throw error\n }\n )\n\n return {\n get: <T>(url: string, params?: Record<string, unknown>, config = {}) =>\n instance\n .get<T>(url, { params, ...config })\n .then(handleIOSuccess<T>(ioIntegrityCheck))\n .catch(handleIOError(errorParser)),\n\n post: <T>(\n url: string,\n data?: Record<string, unknown>,\n config?: AxiosRequestConfig\n ) =>\n instance\n .post<T>(url, data, config)\n .then(handleIOSuccess<T>(ioIntegrityCheck))\n .catch(handleIOError(errorParser)),\n\n patch: <T>(\n url: string,\n data?: Record<string, unknown>,\n config?: AxiosRequestConfig\n ) =>\n instance\n .patch<T>(url, data, config)\n .then(handleIOSuccess<T>(ioIntegrityCheck))\n .catch(handleIOError(errorParser)),\n\n delete: <T>(url: string, params?: Record<string, unknown>, config = {}) =>\n instance\n .delete<T>(url, { params, ...config })\n .then(handleIOSuccess<T>(ioIntegrityCheck))\n .catch(handleIOError(errorParser))\n }\n}\n"],"names":["localizedFormatString","default","en","es","safeLangCodes","pt","pt_br","en_us","en_gb","es_es","dayjs","extend","localizedFormat","SafeDate","value","constructor","pValue","locale","isDateValid","this","getI18nCode","isValid","console","error","static","validationHandler","onInvalid","imutableHandler","i18nFormat","key","toLowerCase","lang","jsDate","toDate","timestamp","getTime","NaN","isoDate","format","isoString","daysInMonth","dateObj","year","month","date","weekday","day","hour","minute","second","millisecond","toStartOf","unit","newValue","startOf","add","years","months","weeks","days","hours","minutes","seconds","subtract","to","newValues","currentValues","isBefore","isAfter","isSame","isBetween","startingDate","endingDate","isAfterStartingDate","isBeforeEndingDate","isBetweenDates","getDiff","diff","clone","formatIntl","formatTo","formatStr","setLocale","safeLocale","set","domain","prefix","options","setCookie","maxAge","path","secure","httpOnly","remove","_domain","destroyCookie","cleanAuth","isServer","window","checkIoIntegrity","async","name","e","url","req","res","s","schema","yupObject","host","location","hostname","process","env","NEXT_PUBLIC_APP_ENV","REACT_APP_ENVIRONMENT","REACT_APP_ENV","NODE_ENV","includes","test","validate","abortEarly","catch","err","validationErrors","inner","length","forEach","message","type","body","errors","warn","functionName","endPoint","request","response","r","handleIOSuccess","integrityCheck","config","data","query","params","status","handleIOError","errorParser","resData","msg","errorData","cookieDomain","cookiePrefix","t","get","parseCookies","baseUrl","withAuth","authKey","ioIntegrityCheck","onStatusCode","instance","axios","create","baseURL","headers","Authorization","checkStatusCode","statusCode","handler","interceptors","use","then","post","patch","delete"],"mappings":"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"}
1
+ {"version":3,"file":"binamik-js-providers.umd.js","sources":["../src/SafeDate/i18n/localizedFormatString.ts","../src/SafeDate/i18n/safeLangCode.ts","../src/SafeDate/SafeDate.ts","../src/AppStorageProvider/AppStorageProvider.ts","../src/utils/isServer.ts","../src/IoProvider/checkIoIntegrity.ts","../src/utils/isLocalhost.ts","../src/utils/yup/getYupValidationErrors.ts","../src/IoProvider/IoProvider.ts"],"sourcesContent":["export interface LangFormatProps {\n 'DD MMM': string\n 'DD [de] MMMM': string\n 'DD MMM, YYYY': string\n 'DD/MM/YY': string\n 'DD/MM/YYYY'?: string\n 'DD/MM/YYYY HH:mm'?: string\n 'HH:mm'?: string\n 'HH:mm:ss'?: string\n 'D [de] MMMM [de] YYYY'?: string\n 'D [de] MMMM [de] YYYY [às] HH:mm'?: string\n}\n\nconst defaultValues: Required<LangFormatProps> = {\n 'DD MMM': 'DD MMM',\n 'DD [de] MMMM': 'DD [de] MMMM',\n 'DD MMM, YYYY': 'DD MMM, YYYY',\n 'DD/MM/YY': 'DD/MM/YY',\n 'DD/MM/YYYY': 'L',\n 'DD/MM/YYYY HH:mm': 'L LT',\n 'HH:mm': 'LT',\n 'HH:mm:ss': 'LTS',\n 'D [de] MMMM [de] YYYY': 'LL',\n 'D [de] MMMM [de] YYYY [às] HH:mm': 'LLL'\n}\n\nconst enValues: LangFormatProps = {\n 'DD/MM/YY': 'MM/DD/YY',\n 'DD MMM': 'MMM DD',\n 'DD MMM, YYYY': 'll',\n 'DD [de] MMMM': 'MMMM DD'\n}\n\nconst ptValues: LangFormatProps = {\n 'DD/MM/YY': 'DD/MM/YY',\n 'DD MMM': 'DD MMM',\n 'DD MMM, YYYY': 'DD MMM, YYYY',\n 'DD [de] MMMM': 'DD [de] MMMM'\n}\n\nconst esValues: LangFormatProps = {\n 'DD/MM/YY': 'DD/MM/YY',\n 'DD MMM': 'DD MMM',\n 'DD MMM, YYYY': 'DD MMM, YYYY',\n 'DD [de] MMMM': 'DD [de] MMMM'\n}\n\ninterface LocalizedFormatStringProps extends Record<string, LangFormatProps> {\n default: Required<LangFormatProps>\n en: LangFormatProps\n 'pt-br': LangFormatProps\n es: LangFormatProps\n}\n\nexport const localizedFormatString: LocalizedFormatStringProps = {\n default: defaultValues,\n en: enValues,\n es: esValues,\n 'pt-br': ptValues\n}\n","const safeLangCodes: Record<string, string> = {\n pt: 'pt-br',\n pt_br: 'pt-br',\n 'pt-br': 'pt-br',\n\n en: 'en',\n en_us: 'en',\n 'en-us': 'en',\n en_gb: 'en',\n 'en-gb': 'en',\n\n es: 'es',\n es_es: 'es',\n 'es-es': 'es'\n}\n\nexport const getSafeLangCode = (langCode: string) => {\n const code = safeLangCodes[langCode.toLowerCase()]\n return code || safeLangCodes.pt\n}\n","import dayjs, { Dayjs } from 'dayjs'\n\nimport 'dayjs/locale/pt-br'\nimport 'dayjs/locale/es'\nimport 'dayjs/locale/en'\n\nimport localizedFormat from 'dayjs/plugin/localizedFormat'\nimport {\n localizedFormatString,\n LangFormatProps\n} from './i18n/localizedFormatString'\nimport { getSafeLangCode } from './i18n/safeLangCode'\n\ndayjs.extend(localizedFormat)\n\ntype DateTimeUnits =\n | 'year'\n | 'month'\n | 'week'\n | 'day'\n | 'hour'\n | 'minute'\n | 'second'\n\ninterface DateTimeOptions {\n years?: number\n months?: number\n weeks?: number\n days?: number\n hours?: number\n minutes?: number\n seconds?: number\n}\n\ninterface DateObjProps {\n year: number\n month: number\n date: number\n weekday: number\n hour: number\n minute: number\n second: number\n millisecond: number\n}\n\ntype ToOptions = Partial<Omit<DateObjProps, 'weekday'>>\n\nexport class SafeDate {\n private value: Dayjs = dayjs()\n private isDateValid = true\n private locale = 'pt-br'\n\n public static isValid(value?: Date | string | Dayjs) {\n return dayjs(value || '').isValid()\n }\n\n private validationHandler<T>(value: T, onInvalid: T): T {\n return this.isDateValid ? value : onInvalid\n }\n\n private imutableHandler(value: Dayjs, locale?: string) {\n return new SafeDate(value, locale || this.locale)\n }\n\n private i18nFormat(key: keyof LangFormatProps) {\n return (\n localizedFormatString[this.locale]?.[key] ||\n localizedFormatString.default[key] ||\n ''\n )\n }\n\n private getI18nCode(locale: string) {\n return getSafeLangCode(locale)\n }\n\n public get isValid(): boolean {\n return this.isDateValid\n }\n\n public get lang() {\n return this.locale\n }\n\n public get jsDate() {\n return this.value.toDate()\n }\n\n public get timestamp() {\n return this.validationHandler(this.jsDate.getTime(), NaN)\n }\n\n public get isoDate() {\n return this.validationHandler(this.value.format('YYYY-MM-DD'), '')\n }\n\n public get isoString() {\n return this.validationHandler(this.value.format('YYYY-MM-DDTHH:mm:ss'), '')\n }\n\n public get daysInMonth() {\n return this.validationHandler(this.value.daysInMonth(), 0)\n }\n\n public get dateObj(): DateObjProps {\n return this.validationHandler(\n {\n year: this.value.year(),\n month: this.value.month(),\n date: this.value.date(),\n weekday: this.value.day(),\n hour: this.value.hour(),\n minute: this.value.minute(),\n second: this.value.second(),\n millisecond: this.value.millisecond()\n },\n {\n year: 0,\n month: 0,\n date: 0,\n weekday: 0,\n hour: 0,\n minute: 0,\n second: 0,\n millisecond: 0\n }\n )\n }\n\n public toStartOf(unit: DateTimeUnits) {\n const newValue = this.validationHandler(\n this.value.startOf(unit),\n this.value\n )\n return this.imutableHandler(newValue)\n }\n\n public add({\n years = 0,\n months = 0,\n weeks = 0,\n days = 0,\n hours = 0,\n minutes = 0,\n seconds = 0\n }: DateTimeOptions) {\n const newValue = this.validationHandler(\n this.value\n .add(years, 'year')\n .add(months, 'month')\n .add(weeks, 'week')\n .add(days, 'day')\n .add(hours, 'hour')\n .add(minutes, 'minute')\n .add(seconds, 'second'),\n this.value\n )\n return this.imutableHandler(newValue)\n }\n\n public subtract({\n years = 0,\n months = 0,\n weeks = 0,\n days = 0,\n hours = 0,\n minutes = 0,\n seconds = 0\n }: DateTimeOptions) {\n const newValue = this.validationHandler(\n this.value\n .subtract(years, 'year')\n .subtract(months, 'month')\n .subtract(weeks, 'week')\n .subtract(days, 'day')\n .subtract(hours, 'hour')\n .subtract(minutes, 'minute')\n .subtract(seconds, 'second'),\n this.value\n )\n return this.imutableHandler(newValue)\n }\n\n public to(newValues: ToOptions) {\n const currentValues: Required<ToOptions> = this.dateObj\n\n const {\n year = currentValues.year,\n month = currentValues.month,\n date = currentValues.date,\n hour = currentValues.hour,\n minute = currentValues.minute,\n second = currentValues.second,\n millisecond = currentValues.millisecond\n } = newValues\n\n const newValue = this.validationHandler(\n this.value\n .year(year)\n .month(month)\n .date(date)\n .hour(hour)\n .minute(minute)\n .second(second)\n .millisecond(millisecond),\n this.value\n )\n\n return this.imutableHandler(newValue)\n }\n\n public isBefore(date: Date | string, unit?: DateTimeUnits) {\n return this.validationHandler(this.value.isBefore(date, unit), false)\n }\n\n public isAfter(date: Date | string, unit?: DateTimeUnits) {\n return this.validationHandler(this.value.isAfter(date, unit), false)\n }\n\n public isSame(date: Date | string, unit?: DateTimeUnits) {\n return this.validationHandler(this.value.isSame(date, unit), false)\n }\n\n public isBetween(\n startingDate: Date | string,\n endingDate: Date | string,\n unit?: DateTimeUnits\n ) {\n const isAfterStartingDate = this.validationHandler(\n this.value.isAfter(startingDate, unit),\n false\n )\n const isBeforeEndingDate = this.validationHandler(\n this.value.isBefore(endingDate, unit),\n false\n )\n\n const isBetweenDates =\n (isAfterStartingDate && isBeforeEndingDate) ||\n (!isAfterStartingDate && !isBeforeEndingDate)\n\n return this.validationHandler(isBetweenDates, false)\n }\n\n public getDiff(date: Date | string, unit: DateTimeUnits) {\n return this.validationHandler(this.value.diff(date, unit), 0)\n }\n\n public clone() {\n return this.imutableHandler(this.value)\n }\n\n public format(format: string) {\n return this.validationHandler(this.value.format(format), '')\n }\n\n public formatIntl(formatTo: keyof LangFormatProps) {\n const formatStr = this.i18nFormat(formatTo)\n return this.format(formatStr)\n }\n\n public setLocale(locale: string) {\n const safeLocale = this.getI18nCode(locale)\n return this.imutableHandler(this.value, safeLocale)\n }\n\n constructor(pValue?: Date | string | Dayjs, locale = 'pt-br') {\n this.locale = this.getI18nCode(locale)\n this.value = dayjs(pValue).locale(this.locale)\n this.isDateValid = this.value.isValid()\n\n if (!this.isDateValid) {\n console.error('Invalid date:', pValue)\n }\n }\n}\n","import { parseCookies, setCookie, destroyCookie } from 'nookies'\n\ninterface CookieOptionsType {\n expires?: number\n path?: string\n domain?: string\n secure?: boolean\n httpOnly?: boolean\n maxAge?: number\n sameSite?: 'Strict' | 'Lax' | 'None'\n}\n\nconst get =\n (_domain: string, prefix: string) =>\n (key: string): string => {\n const cookies = parseCookies()\n return cookies[`${prefix}-${key}`]\n }\n\nconst set =\n (domain: string, prefix: string) =>\n (key: string, value: string, options?: CookieOptionsType) => {\n setCookie(null, `${prefix}-${key}`, value, {\n maxAge: options?.maxAge || 60 * 60 * 24 * 90, // 90 days\n path: '/',\n domain,\n secure: true,\n httpOnly: true\n })\n }\n\nconst remove =\n (_domain: string, prefix: string) =>\n (key: string, options?: CookieOptionsType) => {\n destroyCookie(null, `${prefix}-${key}`, options)\n }\n\nconst cleanAuth =\n (domain: string, prefix: string) => (options?: CookieOptionsType) => {\n remove(domain, prefix)('auth-key', options)\n remove(domain, prefix)('user', options)\n remove(domain, prefix)('company', options)\n remove(domain, prefix)('orb-selected', options)\n }\n\ninterface AppStorageProviderProps {\n cookieDomain: string\n cookiePrefix: string\n}\n\nexport const AppStorageProvider = ({\n cookieDomain,\n cookiePrefix\n}: AppStorageProviderProps) => ({\n get: get(cookieDomain, cookiePrefix),\n set: set(cookieDomain, cookiePrefix),\n remove: remove(cookieDomain, cookiePrefix),\n cleanAuth: cleanAuth(cookieDomain, cookiePrefix)\n})\n","export const isServer = typeof window === 'undefined'\n","import { AnyObjectSchema, object as yupObject } from 'yup'\n\nimport { isServer, isLocalhost, getYupValidationErrors } from '@/utils'\n\ninterface CheckIoIntegrityProps {\n name: string\n url: string\n req: unknown\n res: unknown\n schema: AnyObjectSchema\n}\n\nexport const checkIoIntegrity = async ({\n name = '',\n url = '',\n req = {},\n res = {},\n schema = yupObject()\n}: CheckIoIntegrityProps): Promise<void> => {\n if (isServer) return\n if (!isLocalhost(window?.location?.hostname)) return\n\n schema.validate(res, { abortEarly: false }).catch(err => {\n const validationErrors = getYupValidationErrors(err)\n\n console.warn(\n `PLEASE check the backend IO for >> ${name} <<, some discrepancies were found in the expected response`,\n {\n functionName: name,\n endPoint: url,\n request: req,\n response: res,\n validationErrors\n }\n )\n })\n}\n","const isIpv4 = (str: string): boolean =>\n /(^(\\d{1,3}\\.){3}(\\d{1,3})(:\\d{1,5})?$)/.test(str)\n\nexport const isLocalhost = (host: string): boolean => {\n const APP_ENVIRONMENT =\n process.env.NEXT_PUBLIC_APP_ENV ||\n process.env.REACT_APP_ENVIRONMENT ||\n process.env.REACT_APP_ENV ||\n process.env.NODE_ENV\n return (\n APP_ENVIRONMENT === 'local' && (host.includes('localhost') || isIpv4(host))\n )\n}\n","import { ValidationError } from 'yup'\n\nexport const getYupValidationErrors = (\n err: ValidationError\n): Record<string, string> => {\n const validationErrors = {} as Record<string, string>\n\n if (err?.inner?.length) {\n err.inner.forEach(error => {\n validationErrors[error?.path || 'unknown'] = error.message\n })\n } else if (err?.path && err?.message) {\n validationErrors[err.path] = err.message\n } else if (!err?.path && err?.type === 'typeError') {\n validationErrors.body = err.errors[0]\n }\n\n return validationErrors\n}\n","import axios, { AxiosError, AxiosRequestConfig, AxiosResponse } from 'axios'\nimport { AnyObjectSchema } from 'yup'\n\nimport { checkIoIntegrity } from './checkIoIntegrity'\n\nexport interface IOIntegrityCheckProps {\n name: string\n schema: AnyObjectSchema\n}\n\nexport type ApiErrorParserType = (\n err?: Record<string, unknown> | null\n) => string[]\n\ninterface IoInstanceOptions {\n withAuth: boolean\n authKey?: string\n ioIntegrityCheck?: IOIntegrityCheckProps\n onStatusCode?: Record<number, (res: AxiosResponse) => void>\n errorParser?: ApiErrorParserType\n}\n\nexport interface IoErrorProps {\n status: number\n message: string\n errorData: Record<string, unknown> | null\n errors?: string[]\n}\n\nexport interface IoResponseMetaProps {\n status: number\n}\n\ntype IOResponseType<T> = [T, null, IoResponseMetaProps?]\ntype IOResponseErrorType = [null, IoErrorProps, IoResponseMetaProps?]\n\nexport type ApiResponseDTO<T> = IOResponseType<T> | IOResponseErrorType\n\ntype IoFn = <T>(\n url: string,\n payload?: Record<string, unknown>,\n config?: AxiosRequestConfig\n) => Promise<ApiResponseDTO<T>>\n\ninterface IoInstanceProps {\n get: IoFn\n post: IoFn\n patch: IoFn\n delete: IoFn\n}\n\nconst createCheckStatusCodeFn =\n (onStatusCode?: { [code: number]: (res: AxiosResponse) => void }) =>\n (res: AxiosResponse) => {\n if (onStatusCode && res?.status) {\n const statusCode = res.status\n const handler = onStatusCode[statusCode]\n if (handler) handler(res)\n }\n }\n\nconst handleIOSuccess =\n <T>(integrityCheck?: IOIntegrityCheckProps) =>\n (res: AxiosResponse<T>): IOResponseType<T> => {\n if (integrityCheck && integrityCheck.name && integrityCheck.schema) {\n checkIoIntegrity({\n name: integrityCheck.name,\n schema: integrityCheck.schema,\n req: { body: res?.config?.data || null, query: res?.config?.params },\n res: res?.data,\n url: res?.request.url\n })\n }\n\n return [res.data, null, { status: res.status }]\n }\n\nconst handleIOError =\n (errorParser?: ApiErrorParserType) =>\n (err: AxiosError): IOResponseErrorType => {\n const resData = err?.response?.data as Record<string, unknown>\n\n const errors = errorParser ? errorParser(resData || null) : undefined\n\n return [\n null,\n {\n status: err?.response?.status || 599,\n message:\n (resData?.message as string) ||\n (resData?.msg as string) ||\n 'Unknown IO Error',\n errorData: resData || null,\n errors\n },\n {\n status: err?.response?.status || 599\n }\n ]\n }\n\nexport const createIoInstance = (\n baseUrl: string,\n options?: IoInstanceOptions\n): IoInstanceProps => {\n const {\n withAuth = false,\n authKey = '',\n ioIntegrityCheck,\n onStatusCode,\n errorParser\n } = options || {}\n\n const instance = axios.create({\n baseURL: baseUrl,\n headers: withAuth\n ? {\n 'Content-Type': 'application/json',\n Authorization: authKey || 'no_auth_key'\n }\n : { 'Content-Type': 'application/json' }\n })\n\n const checkStatusCode = createCheckStatusCodeFn(onStatusCode)\n\n instance.interceptors.response.use(\n res => {\n checkStatusCode(res)\n return res\n },\n error => {\n if (error?.response) checkStatusCode(error.response)\n throw error\n }\n )\n\n return {\n get: <T>(url: string, params?: Record<string, unknown>, config = {}) =>\n instance\n .get<T>(url, { params, ...config })\n .then(handleIOSuccess<T>(ioIntegrityCheck))\n .catch(handleIOError(errorParser)),\n\n post: <T>(\n url: string,\n data?: Record<string, unknown>,\n config?: AxiosRequestConfig\n ) =>\n instance\n .post<T>(url, data, config)\n .then(handleIOSuccess<T>(ioIntegrityCheck))\n .catch(handleIOError(errorParser)),\n\n patch: <T>(\n url: string,\n data?: Record<string, unknown>,\n config?: AxiosRequestConfig\n ) =>\n instance\n .patch<T>(url, data, config)\n .then(handleIOSuccess<T>(ioIntegrityCheck))\n .catch(handleIOError(errorParser)),\n\n delete: <T>(url: string, params?: Record<string, unknown>, config = {}) =>\n instance\n .delete<T>(url, { params, ...config })\n .then(handleIOSuccess<T>(ioIntegrityCheck))\n .catch(handleIOError(errorParser))\n }\n}\n"],"names":["localizedFormatString","default","en","es","safeLangCodes","pt","pt_br","en_us","en_gb","es_es","dayjs","extend","localizedFormat","SafeDate","constructor","pValue","locale","value","isDateValid","this","getI18nCode","isValid","console","error","static","validationHandler","onInvalid","imutableHandler","i18nFormat","key","toLowerCase","lang","jsDate","toDate","timestamp","getTime","NaN","isoDate","format","isoString","daysInMonth","dateObj","year","month","date","weekday","day","hour","minute","second","millisecond","toStartOf","unit","newValue","startOf","add","years","months","weeks","days","hours","minutes","seconds","subtract","to","newValues","currentValues","isBefore","isAfter","isSame","isBetween","startingDate","endingDate","isAfterStartingDate","isBeforeEndingDate","isBetweenDates","getDiff","diff","clone","formatIntl","formatTo","formatStr","setLocale","safeLocale","set","domain","prefix","options","setCookie","maxAge","path","secure","httpOnly","remove","_domain","destroyCookie","cleanAuth","isServer","window","checkIoIntegrity","async","name","e","url","t","req","a","res","schema","yupObject","object","host","location","hostname","process","env","NEXT_PUBLIC_APP_ENV","REACT_APP_ENVIRONMENT","REACT_APP_ENV","NODE_ENV","includes","test","validate","abortEarly","catch","err","validationErrors","inner","length","forEach","message","type","body","errors","warn","functionName","endPoint","request","response","r","handleIOSuccess","integrityCheck","config","data","query","params","status","handleIOError","errorParser","resData","msg","errorData","cookieDomain","cookiePrefix","get","parseCookies","baseUrl","withAuth","authKey","ioIntegrityCheck","onStatusCode","instance","axios","create","baseURL","headers","Authorization","checkStatusCode","statusCode","handler","interceptors","use","then","post","patch","delete"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@binamik/js-providers",
3
- "version": "1.0.5",
3
+ "version": "1.1.0",
4
4
  "scripts": {
5
5
  "dev": "vite",
6
6
  "build": "tsc && cross-env FORMAT=umd vite build && cross-env FORMAT=es vite build ",
@@ -12,7 +12,7 @@
12
12
  "semver": "^7.6.0"
13
13
  },
14
14
  "dependencies": {
15
- "axios": "^0.28.0",
15
+ "axios": "^1.8.3",
16
16
  "dayjs": "^1.11.0",
17
17
  "nookies": "^2.5.2",
18
18
  "yup": "^0.32.8"
@@ -21,7 +21,7 @@
21
21
  "@types/node": "^17.0.41",
22
22
  "@typescript-eslint/eslint-plugin": "^5.30.0",
23
23
  "@typescript-eslint/parser": "^5.30.0",
24
- "axios": "^0.28.0",
24
+ "axios": "^1.8.3",
25
25
  "cross-env": "^7.0.3",
26
26
  "dayjs": "^1.11.3",
27
27
  "eslint": "^8.0.1",
@@ -36,9 +36,9 @@
36
36
  "prettier": "^2.7.1",
37
37
  "rollup-plugin-terser": "^7.0.2",
38
38
  "typescript": "^4.5.4",
39
- "vite": "^3.2.11",
39
+ "vite": "^6.2.1",
40
40
  "vite-plugin-dts": "^1.2.0",
41
- "vitest": "^1.0.0",
41
+ "vitest": "^3.0.8",
42
42
  "yup": "^0.32.11"
43
43
  },
44
44
  "files": [
@@ -1,15 +0,0 @@
1
- import { parseCookies as i, setCookie as m, destroyCookie as n } from "nookies";
2
- const p = (r, e) => (o, s, a) => {
3
- m(null, `${e}-${o}`, s, { maxAge: (a == null ? void 0 : a.maxAge) || 7776e3, path: "/", domain: r, secure: !0, httpOnly: !0 });
4
- }, t = (r, e) => (o, s) => {
5
- n(null, `${e}-${o}`, s);
6
- }, c = (r, e) => (o) => {
7
- t(0, e)("auth-key", o), t(0, e)("user", o), t(0, e)("company", o), t(0, e)("orb-selected", o);
8
- }, u = ({ cookieDomain: r, cookiePrefix: e }) => {
9
- return { get: (o = e, (s) => i()[`${o}-${s}`]), set: p(r, e), remove: t(0, e), cleanAuth: c(0, e) };
10
- var o;
11
- };
12
- export {
13
- u as AppStorageProvider
14
- };
15
- //# sourceMappingURL=binamik-js-providers.es.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"binamik-js-providers.es.js","sources":["../../src/AppStorageProvider/AppStorageProvider.ts"],"sourcesContent":["import { parseCookies, setCookie, destroyCookie } from 'nookies'\n\ninterface CookieOptionsType {\n expires?: number\n path?: string\n domain?: string\n secure?: boolean\n httpOnly?: boolean\n maxAge?: number\n sameSite?: 'Strict' | 'Lax' | 'None'\n}\n\nconst get =\n (_domain: string, prefix: string) =>\n (key: string): string => {\n const cookies = parseCookies()\n return cookies[`${prefix}-${key}`]\n }\n\nconst set =\n (domain: string, prefix: string) =>\n (key: string, value: string, options?: CookieOptionsType) => {\n setCookie(null, `${prefix}-${key}`, value, {\n maxAge: options?.maxAge || 60 * 60 * 24 * 90, // 90 days\n path: '/',\n domain,\n secure: true,\n httpOnly: true\n })\n }\n\nconst remove =\n (_domain: string, prefix: string) =>\n (key: string, options?: CookieOptionsType) => {\n destroyCookie(null, `${prefix}-${key}`, options)\n }\n\nconst cleanAuth =\n (domain: string, prefix: string) => (options?: CookieOptionsType) => {\n remove(domain, prefix)('auth-key', options)\n remove(domain, prefix)('user', options)\n remove(domain, prefix)('company', options)\n remove(domain, prefix)('orb-selected', options)\n }\n\ninterface AppStorageProviderProps {\n cookieDomain: string\n cookiePrefix: string\n}\n\nexport const AppStorageProvider = ({\n cookieDomain,\n cookiePrefix\n}: AppStorageProviderProps) => ({\n get: get(cookieDomain, cookiePrefix),\n set: set(cookieDomain, cookiePrefix),\n remove: remove(cookieDomain, cookiePrefix),\n cleanAuth: cleanAuth(cookieDomain, cookiePrefix)\n})\n"],"names":["set","domain","prefix","key","value","options","setCookie","maxAge","path","secure","httpOnly","remove","_domain","destroyCookie","cleanAuth","AppStorageProvider","cookieDomain","cookiePrefix","t","get","parseCookies"],"mappings":";AAYA,MAOMA,IACJ,CAACC,GAAgBC,MACjB,CAACC,GAAaC,GAAeC;AAC3BC,EAAAA,EAAU,MAAM,GAAGJ,KAAUC,KAAOC,GAAO,EACzCG,SAAQF,uBAASE,WAAU,QAC3BC,MAAM,KACNP,QACAQ,GAAAA,QAAAA,IACAC,UAAU,GAAA,CAAA;AACX,GAGCC,IACJ,CAACC,GAAiBV,MAClB,CAACC,GAAaE;AACZQ,EAAAA,EAAc,MAAM,GAAGX,KAAUC,KAAOE,CAAAA;AAAO,GAG7CS,IACJ,CAACb,GAAgBC,MAAoBG,CAAAA,MACnCM;AAAAA,EAAAA,EAAOV,GAAQC,CAAfS,EAAuB,YAAYN,CACnCM,GAAAA,EAAOV,GAAQC,CAAfS,EAAuB,QAAQN,CAAAA,GAC/BM,EAAOV,GAAQC,GAAQ,WAAWG,IAClCM,EAAOV,GAAQC,GAAQ,gBAAgBG,CAAO;AAAA,GAQrCU,IAAqB,CAAA,EAChCC,iBACAC,cAC8BC,EAAA,MAAA;AAAA,SAAA,EAC9BC,MAzCkBjB,IAyCKe,GAxCtBd,CAAAA,MACiBiB,EACD,EAAA,GAAGlB,KAAUC,OAuC9BH,KAAKA,EAAIgB,GAAcC,CACvBN,GAAAA,QAAQA,EAAOK,GAAcC,CAC7BH,GAAAA,WAAWA,EAAUE,GAAcC,CAAAA,EAAAA;AA5CnC,MAAkBf;AA6CpB;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"binamik-js-providers.es.js","sources":["../../src/IoProvider/IoProvider.ts"],"sourcesContent":["import axios, { AxiosError, AxiosRequestConfig, AxiosResponse } from 'axios'\nimport { AnyObjectSchema } from 'yup'\n\nimport { checkIoIntegrity } from './checkIoIntegrity'\n\nexport interface IOIntegrityCheckProps {\n name: string\n schema: AnyObjectSchema\n}\n\nexport type ApiErrorParserType = (\n err?: Record<string, unknown> | null\n) => string[]\n\ninterface IoInstanceOptions {\n withAuth: boolean\n authKey?: string\n ioIntegrityCheck?: IOIntegrityCheckProps\n onStatusCode?: Record<number, (res: AxiosResponse) => void>\n errorParser?: ApiErrorParserType\n}\n\nexport interface IoErrorProps {\n status: number\n message: string\n errorData: Record<string, unknown> | null\n errors?: string[]\n}\n\nexport interface IoResponseMetaProps {\n status: number\n}\n\ntype IOResponseType<T> = [T, null, IoResponseMetaProps?]\ntype IOResponseErrorType = [null, IoErrorProps, IoResponseMetaProps?]\n\nexport type ApiResponseDTO<T> = IOResponseType<T> | IOResponseErrorType\n\ntype IoFn = <T>(\n url: string,\n payload?: Record<string, unknown>,\n config?: AxiosRequestConfig\n) => Promise<ApiResponseDTO<T>>\n\ninterface IoInstanceProps {\n get: IoFn\n post: IoFn\n patch: IoFn\n delete: IoFn\n}\n\nconst createCheckStatusCodeFn =\n (onStatusCode?: { [code: number]: (res: AxiosResponse) => void }) =>\n (res: AxiosResponse) => {\n if (onStatusCode && res?.status) {\n const statusCode = res.status\n const handler = onStatusCode[statusCode]\n if (handler) handler(res)\n }\n }\n\nconst handleIOSuccess =\n <T>(integrityCheck?: IOIntegrityCheckProps) =>\n (res: AxiosResponse<T>): IOResponseType<T> => {\n if (integrityCheck && integrityCheck.name && integrityCheck.schema) {\n checkIoIntegrity({\n name: integrityCheck.name,\n schema: integrityCheck.schema,\n req: { body: res?.config?.data || null, query: res?.config?.params },\n res: res?.data,\n url: res?.request.url\n })\n }\n\n return [res.data, null, { status: res.status }]\n }\n\nconst handleIOError =\n (errorParser?: ApiErrorParserType) =>\n (err: AxiosError): IOResponseErrorType => {\n const resData = err?.response?.data as Record<string, unknown>\n\n const errors = errorParser ? errorParser(resData || null) : undefined\n\n return [\n null,\n {\n status: err?.response?.status || 599,\n message:\n (resData?.message as string) ||\n (resData?.msg as string) ||\n 'Unknown IO Error',\n errorData: resData || null,\n errors\n },\n {\n status: err?.response?.status || 599\n }\n ]\n }\n\nexport const createIoInstance = (\n baseUrl: string,\n options?: IoInstanceOptions\n): IoInstanceProps => {\n const {\n withAuth = false,\n authKey = '',\n ioIntegrityCheck,\n onStatusCode,\n errorParser\n } = options || {}\n\n const instance = axios.create({\n baseURL: baseUrl,\n headers: withAuth\n ? {\n 'Content-Type': 'application/json',\n Authorization: authKey || 'no_auth_key'\n }\n : { 'Content-Type': 'application/json' }\n })\n\n const checkStatusCode = createCheckStatusCodeFn(onStatusCode)\n\n instance.interceptors.response.use(\n res => {\n checkStatusCode(res)\n return res\n },\n error => {\n if (error?.response) checkStatusCode(error.response)\n throw error\n }\n )\n\n return {\n get: <T>(url: string, params?: Record<string, unknown>, config = {}) =>\n instance\n .get<T>(url, { params, ...config })\n .then(handleIOSuccess<T>(ioIntegrityCheck))\n .catch(handleIOError(errorParser)),\n\n post: <T>(\n url: string,\n data?: Record<string, unknown>,\n config?: AxiosRequestConfig\n ) =>\n instance\n .post<T>(url, data, config)\n .then(handleIOSuccess<T>(ioIntegrityCheck))\n .catch(handleIOError(errorParser)),\n\n patch: <T>(\n url: string,\n data?: Record<string, unknown>,\n config?: AxiosRequestConfig\n ) =>\n instance\n .patch<T>(url, data, config)\n .then(handleIOSuccess<T>(ioIntegrityCheck))\n .catch(handleIOError(errorParser)),\n\n delete: <T>(url: string, params?: Record<string, unknown>, config = {}) =>\n instance\n .delete<T>(url, { params, ...config })\n .then(handleIOSuccess<T>(ioIntegrityCheck))\n .catch(handleIOError(errorParser))\n }\n}\n"],"names":["handleIOSuccess","integrityCheck","res","name","schema","checkIoIntegrity","req","body","config","data","query","params","url","request","status","handleIOError","errorParser","err","resData","response","errors","message","msg","errorData","createIoInstance","baseUrl","options","withAuth","authKey","ioIntegrityCheck","onStatusCode","instance","axios","create","baseURL","headers","Authorization","checkStatusCode","statusCode","handler","createCheckStatusCodeFn","interceptors","use","error","get","then","catch","post","patch","delete"],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import { object as i } from "yup";
2
- import { isServer as m } from "../utils/binamik-js-providers.es.js";
3
- import { isLocalhost as p } from "../utils/binamik-js-providers.es2.js";
4
- import { getYupValidationErrors as d } from "../utils/yup/binamik-js-providers.es.js";
5
- const E = async ({ name: e = "", url: s = "", req: t = {}, res: o = {}, schema: a = i() }) => {
6
- var r;
7
- m || p((r = window == null ? void 0 : window.location) == null ? void 0 : r.hostname) && a.validate(o, { abortEarly: !1 }).catch((n) => {
8
- const c = d(n);
9
- console.warn(`PLEASE check the backend IO for >> ${e} <<, some discrepancies were found in the expected response`, { functionName: e, endPoint: s, request: t, response: o, validationErrors: c });
10
- });
11
- };
12
- export {
13
- E as checkIoIntegrity
14
- };
15
- //# sourceMappingURL=binamik-js-providers.es2.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"binamik-js-providers.es2.js","sources":["../../src/IoProvider/checkIoIntegrity.ts"],"sourcesContent":["import { AnyObjectSchema, object as yupObject } from 'yup'\n\nimport { isServer, isLocalhost, getYupValidationErrors } from '@/utils'\n\ninterface CheckIoIntegrityProps {\n name: string\n url: string\n req: unknown\n res: unknown\n schema: AnyObjectSchema\n}\n\nexport const checkIoIntegrity = async ({\n name = '',\n url = '',\n req = {},\n res = {},\n schema = yupObject()\n}: CheckIoIntegrityProps): Promise<void> => {\n if (isServer) return\n if (!isLocalhost(window?.location?.hostname)) return\n\n schema.validate(res, { abortEarly: false }).catch(err => {\n const validationErrors = getYupValidationErrors(err)\n\n console.warn(\n `PLEASE check the backend IO for >> ${name} <<, some discrepancies were found in the expected response`,\n {\n functionName: name,\n endPoint: url,\n request: req,\n response: res,\n validationErrors\n }\n )\n })\n}\n"],"names":["checkIoIntegrity","async","name","i","url","req","res","a","schema","yupObject","isServer","isLocalhost","window","location","hostname","validate","abortEarly","catch","err","validationErrors","getYupValidationErrors","console","warn","functionName","endPoint","request","response","s"],"mappings":";;;;AAYO,MAAMA,IAAmBC,OAAAA,EAC9BC,MAAOC,IAAA,IACPC,SAAM,IACNC,KAAAA,IAAM,CAAC,GACPC,KAAMC,IAAA,CAAC,GACPC,QAAAA,IAASC,EAELC,EAAAA,MAAAA;;AAAAA,EAAAA,KACCC,GAAYC,IAAAA,iCAAQC,aAARD,gBAAAA,EAAkBE,QAAAA,KAE5BN,EAAAO,SAAST,GAAK,EAAEU,YAAAA,GAAqBC,CAAAA,EAAAA,MAAaC,CAAAA;AACjD,UAAAC,IAAmBC,EAAuBF,CAAAA;AAExCG,YAAAC,KACN,sCAAsCpB,gEACtC,EACEqB,cAAcrB,GACdsB,UAAUpB,GACVqB,SAASpB,GACTqB,UAAUpB,GACVa,kBAEJQ,EAAA,CAAA;AAAA,EAAA,CAAA;AACD;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"binamik-js-providers.es.js","sources":["../../src/SafeDate/SafeDate.ts"],"sourcesContent":["import dayjs, { Dayjs } from 'dayjs'\n\nimport 'dayjs/locale/pt-br'\nimport 'dayjs/locale/es'\nimport 'dayjs/locale/en'\n\nimport localizedFormat from 'dayjs/plugin/localizedFormat'\nimport {\n localizedFormatString,\n LangFormatProps\n} from './i18n/localizedFormatString'\nimport { getSafeLangCode } from './i18n/safeLangCode'\n\ndayjs.extend(localizedFormat)\n\ntype DateTimeUnits =\n | 'year'\n | 'month'\n | 'week'\n | 'day'\n | 'hour'\n | 'minute'\n | 'second'\n\ninterface DateTimeOptions {\n years?: number\n months?: number\n weeks?: number\n days?: number\n hours?: number\n minutes?: number\n seconds?: number\n}\n\ninterface DateObjProps {\n year: number\n month: number\n date: number\n weekday: number\n hour: number\n minute: number\n second: number\n millisecond: number\n}\n\ntype ToOptions = Partial<Omit<DateObjProps, 'weekday'>>\n\nexport class SafeDate {\n private value: Dayjs = dayjs()\n private isDateValid = true\n private locale = 'pt-br'\n\n public static isValid(value?: Date | string | Dayjs) {\n return dayjs(value || '').isValid()\n }\n\n private validationHandler<T>(value: T, onInvalid: T): T {\n return this.isDateValid ? value : onInvalid\n }\n\n private imutableHandler(value: Dayjs, locale?: string) {\n return new SafeDate(value, locale || this.locale)\n }\n\n private i18nFormat(key: keyof LangFormatProps) {\n return (\n localizedFormatString[this.locale]?.[key] ||\n localizedFormatString.default[key] ||\n ''\n )\n }\n\n private getI18nCode(locale: string) {\n return getSafeLangCode(locale)\n }\n\n public get isValid(): boolean {\n return this.isDateValid\n }\n\n public get lang() {\n return this.locale\n }\n\n public get jsDate() {\n return this.value.toDate()\n }\n\n public get timestamp() {\n return this.validationHandler(this.jsDate.getTime(), NaN)\n }\n\n public get isoDate() {\n return this.validationHandler(this.value.format('YYYY-MM-DD'), '')\n }\n\n public get isoString() {\n return this.validationHandler(this.value.format('YYYY-MM-DDTHH:mm:ss'), '')\n }\n\n public get daysInMonth() {\n return this.validationHandler(this.value.daysInMonth(), 0)\n }\n\n public get dateObj(): DateObjProps {\n return this.validationHandler(\n {\n year: this.value.year(),\n month: this.value.month(),\n date: this.value.date(),\n weekday: this.value.day(),\n hour: this.value.hour(),\n minute: this.value.minute(),\n second: this.value.second(),\n millisecond: this.value.millisecond()\n },\n {\n year: 0,\n month: 0,\n date: 0,\n weekday: 0,\n hour: 0,\n minute: 0,\n second: 0,\n millisecond: 0\n }\n )\n }\n\n public toStartOf(unit: DateTimeUnits) {\n const newValue = this.validationHandler(\n this.value.startOf(unit),\n this.value\n )\n return this.imutableHandler(newValue)\n }\n\n public add({\n years = 0,\n months = 0,\n weeks = 0,\n days = 0,\n hours = 0,\n minutes = 0,\n seconds = 0\n }: DateTimeOptions) {\n const newValue = this.validationHandler(\n this.value\n .add(years, 'year')\n .add(months, 'month')\n .add(weeks, 'week')\n .add(days, 'day')\n .add(hours, 'hour')\n .add(minutes, 'minute')\n .add(seconds, 'second'),\n this.value\n )\n return this.imutableHandler(newValue)\n }\n\n public subtract({\n years = 0,\n months = 0,\n weeks = 0,\n days = 0,\n hours = 0,\n minutes = 0,\n seconds = 0\n }: DateTimeOptions) {\n const newValue = this.validationHandler(\n this.value\n .subtract(years, 'year')\n .subtract(months, 'month')\n .subtract(weeks, 'week')\n .subtract(days, 'day')\n .subtract(hours, 'hour')\n .subtract(minutes, 'minute')\n .subtract(seconds, 'second'),\n this.value\n )\n return this.imutableHandler(newValue)\n }\n\n public to(newValues: ToOptions) {\n const currentValues: Required<ToOptions> = this.dateObj\n\n const {\n year = currentValues.year,\n month = currentValues.month,\n date = currentValues.date,\n hour = currentValues.hour,\n minute = currentValues.minute,\n second = currentValues.second,\n millisecond = currentValues.millisecond\n } = newValues\n\n const newValue = this.validationHandler(\n this.value\n .year(year)\n .month(month)\n .date(date)\n .hour(hour)\n .minute(minute)\n .second(second)\n .millisecond(millisecond),\n this.value\n )\n\n return this.imutableHandler(newValue)\n }\n\n public isBefore(date: Date | string, unit?: DateTimeUnits) {\n return this.validationHandler(this.value.isBefore(date, unit), false)\n }\n\n public isAfter(date: Date | string, unit?: DateTimeUnits) {\n return this.validationHandler(this.value.isAfter(date, unit), false)\n }\n\n public isSame(date: Date | string, unit?: DateTimeUnits) {\n return this.validationHandler(this.value.isSame(date, unit), false)\n }\n\n public isBetween(\n startingDate: Date | string,\n endingDate: Date | string,\n unit?: DateTimeUnits\n ) {\n const isAfterStartingDate = this.validationHandler(\n this.value.isAfter(startingDate, unit),\n false\n )\n const isBeforeEndingDate = this.validationHandler(\n this.value.isBefore(endingDate, unit),\n false\n )\n\n const isBetweenDates =\n (isAfterStartingDate && isBeforeEndingDate) ||\n (!isAfterStartingDate && !isBeforeEndingDate)\n\n return this.validationHandler(isBetweenDates, false)\n }\n\n public getDiff(date: Date | string, unit: DateTimeUnits) {\n return this.validationHandler(this.value.diff(date, unit), 0)\n }\n\n public clone() {\n return this.imutableHandler(this.value)\n }\n\n public format(format: string) {\n return this.validationHandler(this.value.format(format), '')\n }\n\n public formatIntl(formatTo: keyof LangFormatProps) {\n const formatStr = this.i18nFormat(formatTo)\n return this.format(formatStr)\n }\n\n public setLocale(locale: string) {\n const safeLocale = this.getI18nCode(locale)\n return this.imutableHandler(this.value, safeLocale)\n }\n\n constructor(pValue?: Date | string | Dayjs, locale = 'pt-br') {\n this.locale = this.getI18nCode(locale)\n this.value = dayjs(pValue).locale(this.locale)\n this.isDateValid = this.value.isValid()\n\n if (!this.isDateValid) {\n console.error('Invalid date:', pValue)\n }\n }\n}\n"],"names":["dayjs","extend","localizedFormat","SafeDate","value","constructor","pValue","locale","isDateValid","this","getI18nCode","isValid","console","error","static","validationHandler","onInvalid","imutableHandler","i18nFormat","key","localizedFormatString","default","getSafeLangCode","lang","jsDate","toDate","timestamp","getTime","NaN","isoDate","format","isoString","daysInMonth","dateObj","year","month","date","weekday","day","hour","minute","second","millisecond","toStartOf","unit","newValue","startOf","add","years","months","weeks","days","hours","minutes","seconds","subtract","to","newValues","currentValues","isBefore","isAfter","isSame","isBetween","startingDate","endingDate","isAfterStartingDate","isBeforeEndingDate","isBetweenDates","getDiff","diff","clone","formatIntl","formatTo","formatStr","setLocale","safeLocale"],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- const M = { default: { "DD MMM": "DD MMM", "DD [de] MMMM": "DD [de] MMMM", "DD MMM, YYYY": "DD MMM, YYYY", "DD/MM/YY": "DD/MM/YY", "DD/MM/YYYY": "L", "DD/MM/YYYY HH:mm": "L LT", "HH:mm": "LT", "HH:mm:ss": "LTS", "D [de] MMMM [de] YYYY": "LL", "D [de] MMMM [de] YYYY [\xE0s] HH:mm": "LLL" }, en: { "DD/MM/YY": "MM/DD/YY", "DD MMM": "MMM DD", "DD MMM, YYYY": "ll", "DD [de] MMMM": "MMMM DD" }, es: { "DD/MM/YY": "DD/MM/YY", "DD MMM": "DD MMM", "DD MMM, YYYY": "DD MMM, YYYY", "DD [de] MMMM": "DD [de] MMMM" }, "pt-br": { "DD/MM/YY": "DD/MM/YY", "DD MMM": "DD MMM", "DD MMM, YYYY": "DD MMM, YYYY", "DD [de] MMMM": "DD [de] MMMM" } };
2
- export {
3
- M as localizedFormatString
4
- };
5
- //# sourceMappingURL=binamik-js-providers.es.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"binamik-js-providers.es.js","sources":["../../../src/SafeDate/i18n/localizedFormatString.ts"],"sourcesContent":["export interface LangFormatProps {\n 'DD MMM': string\n 'DD [de] MMMM': string\n 'DD MMM, YYYY': string\n 'DD/MM/YY': string\n 'DD/MM/YYYY'?: string\n 'DD/MM/YYYY HH:mm'?: string\n 'HH:mm'?: string\n 'HH:mm:ss'?: string\n 'D [de] MMMM [de] YYYY'?: string\n 'D [de] MMMM [de] YYYY [às] HH:mm'?: string\n}\n\nconst defaultValues: Required<LangFormatProps> = {\n 'DD MMM': 'DD MMM',\n 'DD [de] MMMM': 'DD [de] MMMM',\n 'DD MMM, YYYY': 'DD MMM, YYYY',\n 'DD/MM/YY': 'DD/MM/YY',\n 'DD/MM/YYYY': 'L',\n 'DD/MM/YYYY HH:mm': 'L LT',\n 'HH:mm': 'LT',\n 'HH:mm:ss': 'LTS',\n 'D [de] MMMM [de] YYYY': 'LL',\n 'D [de] MMMM [de] YYYY [às] HH:mm': 'LLL'\n}\n\nconst enValues: LangFormatProps = {\n 'DD/MM/YY': 'MM/DD/YY',\n 'DD MMM': 'MMM DD',\n 'DD MMM, YYYY': 'll',\n 'DD [de] MMMM': 'MMMM DD'\n}\n\nconst ptValues: LangFormatProps = {\n 'DD/MM/YY': 'DD/MM/YY',\n 'DD MMM': 'DD MMM',\n 'DD MMM, YYYY': 'DD MMM, YYYY',\n 'DD [de] MMMM': 'DD [de] MMMM'\n}\n\nconst esValues: LangFormatProps = {\n 'DD/MM/YY': 'DD/MM/YY',\n 'DD MMM': 'DD MMM',\n 'DD MMM, YYYY': 'DD MMM, YYYY',\n 'DD [de] MMMM': 'DD [de] MMMM'\n}\n\ninterface LocalizedFormatStringProps extends Record<string, LangFormatProps> {\n default: Required<LangFormatProps>\n en: LangFormatProps\n 'pt-br': LangFormatProps\n es: LangFormatProps\n}\n\nexport const localizedFormatString: LocalizedFormatStringProps = {\n default: defaultValues,\n en: enValues,\n es: esValues,\n 'pt-br': ptValues\n}\n"],"names":["localizedFormatString","default","en","es"],"mappings":"AAaA,MAyCaA,IAAoD,EAC/DC,SA1C+C,EAC/C,UAAU,UACV,gBAAgB,gBAChB,gBAAgB,gBAChB,YAAY,YACZ,cAAc,KACd,oBAAoB,QACpB,SAAS,MACT,YAAY,OACZ,yBAAyB,MACzB,uCAAoC,MAAA,GAiCpCC,IA9BgC,EAChC,YAAY,YACZ,UAAU,UACV,gBAAgB,MAChB,gBAAgB,aA2BhBC,IAjBgC,EAChC,YAAY,YACZ,UAAU,UACV,gBAAgB,gBAChB,gBAAgB,eAchB,GAAA,SAzBgC,EAChC,YAAY,YACZ,UAAU,UACV,gBAAgB,gBAChB,gBAAgB;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"binamik-js-providers.es2.js","sources":["../../../src/SafeDate/i18n/safeLangCode.ts"],"sourcesContent":["const safeLangCodes: Record<string, string> = {\n pt: 'pt-br',\n pt_br: 'pt-br',\n 'pt-br': 'pt-br',\n\n en: 'en',\n en_us: 'en',\n 'en-us': 'en',\n en_gb: 'en',\n 'en-gb': 'en',\n\n es: 'es',\n es_es: 'es',\n 'es-es': 'es'\n}\n\nexport const getSafeLangCode = (langCode: string) => {\n const code = safeLangCodes[langCode.toLowerCase()]\n return code || safeLangCodes.pt\n}\n"],"names":["safeLangCodes","pt","pt_br","en","en_us","en_gb","es","es_es","getSafeLangCode","langCode","toLowerCase"],"mappings":"AAAA,MAAMA,IAAwC,EAC5CC,IAAI,SACJC,OAAO,SACP,SAAS,SAETC,IAAI,MACJC,OAAO,MACP,SAAS,MACTC,OAAO,MACP,SAAS,MAETC,IAAI,MACJC,OAAO,MACP,SAAS,KAGEC,GAAAA,IAAmBC,OACjBT,EAAcS,EAASC,YAAAA,MACrBV,EAAcC;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"binamik-js-providers.es.js","sources":["../../src/utils/isServer.ts"],"sourcesContent":["export const isServer = typeof window === 'undefined'\n"],"names":["isServer","window"],"mappings":"AAAa,MAAAA,WAAkBC,SAAW;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"binamik-js-providers.es2.js","sources":["../../src/utils/isLocalhost.ts"],"sourcesContent":["const isIpv4 = (str: string): boolean =>\n /(^(\\d{1,3}\\.){3}(\\d{1,3})(:\\d{1,5})?$)/.test(str)\n\nexport const isLocalhost = (host: string): boolean => {\n const APP_ENVIRONMENT =\n process.env.NEXT_PUBLIC_APP_ENV ||\n process.env.REACT_APP_ENVIRONMENT ||\n process.env.REACT_APP_ENV ||\n process.env.NODE_ENV\n return (\n APP_ENVIRONMENT === 'local' && (host.includes('localhost') || isIpv4(host))\n )\n}\n"],"names":["isLocalhost","host","process","env","NEXT_PUBLIC_APP_ENV","REACT_APP_ENVIRONMENT","REACT_APP_ENV","NODE_ENV","includes","test"],"mappings":"AAAA,MAGaA,IAAeC,QAExBC,QAAQC,IAAIC,uBACZF,QAAQC,IAAIE,yBACZH,QAAQC,IAAIG,iBACZJ,QAAQC,IAAII,cAEQ,YAAYN,EAAKO,SAAS,WAThD,KAAA,yCAAyCC,KAS8BR;"}
@@ -1,11 +0,0 @@
1
- const s = (r) => {
2
- var a;
3
- const t = {};
4
- return (a = r == null ? void 0 : r.inner) != null && a.length ? r.inner.forEach((n) => {
5
- t[(n == null ? void 0 : n.path) || "unknown"] = n.message;
6
- }) : (r == null ? void 0 : r.path) && (r == null ? void 0 : r.message) ? t[r.path] = r.message : (r == null ? void 0 : r.path) || (r == null ? void 0 : r.type) !== "typeError" || (t.body = r.errors[0]), t;
7
- };
8
- export {
9
- s as getYupValidationErrors
10
- };
11
- //# sourceMappingURL=binamik-js-providers.es.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"binamik-js-providers.es.js","sources":["../../../src/utils/yup/getYupValidationErrors.ts"],"sourcesContent":["import { ValidationError } from 'yup'\n\nexport const getYupValidationErrors = (\n err: ValidationError\n): Record<string, string> => {\n const validationErrors = {} as Record<string, string>\n\n if (err?.inner?.length) {\n err.inner.forEach(error => {\n validationErrors[error?.path || 'unknown'] = error.message\n })\n } else if (err?.path && err?.message) {\n validationErrors[err.path] = err.message\n } else if (!err?.path && err?.type === 'typeError') {\n validationErrors.body = err.errors[0]\n }\n\n return validationErrors\n}\n"],"names":["getYupValidationErrors","err","_a","validationErrors","inner","length","forEach","error","path","message","type","body","errors"],"mappings":"AAEa,MAAAA,IACXC,CAAAA,MAEA;AAHW,MAAAC;AAGX,QAAMC,IAAmB,CAAA;AAYlB,UAVHF,IAAAA,KAAAA,gBAAAA,EAAKG,UAALH,QAAAA,EAAYI,SACVJ,EAAAG,MAAME,QAAiBC,CAAAA,MAAAA;AACRJ,IAAAA,GAAAI,KAAAA,gBAAAA,EAAOC,SAAQ,aAAaD,EAAME;AAAAA,EAAA,CAE5CR,KAAAA,KAAAA,gBAAAA,EAAKO,UAAQP,KAAAA,gBAAAA,EAAKQ,WACVN,EAAAF,EAAIO,QAAQP,EAAIQ,WACvBR,KAAAA,gBAAAA,EAAKO,UAAQP,KAAAA,gBAAAA,EAAKS,UAAS,gBACpBP,EAAAQ,OAAOV,EAAIW,OAAO,KAG9BT;AAAA;"}