@binamik/js-providers 1.0.0 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AppStorageProvider/binamik-js-providers.es.js +1 -0
- package/dist/AppStorageProvider/binamik-js-providers.es.js.map +1 -0
- package/dist/IoProvider/binamik-js-providers.es.js +1 -0
- package/dist/IoProvider/binamik-js-providers.es.js.map +1 -0
- package/dist/IoProvider/binamik-js-providers.es2.js +1 -0
- package/dist/IoProvider/binamik-js-providers.es2.js.map +1 -0
- package/dist/SafeDate/binamik-js-providers.es.js +1 -0
- package/dist/SafeDate/binamik-js-providers.es.js.map +1 -0
- package/dist/SafeDate/i18n/binamik-js-providers.es.js +1 -0
- package/dist/SafeDate/i18n/binamik-js-providers.es.js.map +1 -0
- package/dist/SafeDate/i18n/binamik-js-providers.es2.js +1 -0
- package/dist/SafeDate/i18n/binamik-js-providers.es2.js.map +1 -0
- package/dist/binamik-js-providers.es.js +1 -0
- package/dist/binamik-js-providers.es.js.map +1 -0
- package/dist/binamik-js-providers.umd.js +2 -0
- package/dist/binamik-js-providers.umd.js.map +1 -0
- package/dist/utils/binamik-js-providers.es.js +1 -0
- package/dist/utils/binamik-js-providers.es.js.map +1 -0
- package/dist/utils/binamik-js-providers.es2.js +1 -0
- package/dist/utils/binamik-js-providers.es2.js.map +1 -0
- package/dist/utils/yup/binamik-js-providers.es.js +1 -0
- package/dist/utils/yup/binamik-js-providers.es.js.map +1 -0
- package/package.json +4 -3
|
@@ -0,0 +1 @@
|
|
|
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","get","parseCookies"],"mappings":";AAYA,MAOMA,IACJ,CAACC,IAAgBC,OACjB,CAACC,IAAaC,IAAeC;AAC3BC,IAAU,MAAM,GAAGJ,MAAUC,MAAOC,IAAO,EACzCG,QAAQF,0BAASE,WAAU,QAC3BC,MAAM,KACNP,QACAQ,IAAAA,QAAAA,MACAC,UAAU,KAAA,CAAA;AACX,GAGCC,IACJ,CAACC,IAAiBV,OAClB,CAACC,IAAaE;AACZQ,IAAc,MAAM,GAAGX,MAAUC,MAAOE,EAAAA;AAAO,GAG7CS,IACJ,CAACb,IAAgBC,OAAoBG,QACnCM;AAAAA,IAAOV,GAAQC,EAAfS,EAAuB,YAAYN,EACnCM,GAAAA,EAAOV,GAAQC,EAAfS,EAAuB,QAAQN,EAAAA,GAC/BM,EAAOV,GAAQC,IAAQ,WAAWG,KAClCM,EAAOV,GAAQC,IAAQ,gBAAgBG,EAAO;AAAA,GAQrCU,IAAqB,CAAA,EAChCC,kBACAC,cAC8B,SAAA;AAAA,SAAA,EAC9BC,KAzCkBhB,MAyCKe,IAxCtBd,QACiBgB,EACD,EAAA,GAAGjB,MAAUC,QAuC9BH,KAAKA,EAAIgB,IAAcC,EACvBN,GAAAA,QAAQA,EAAOK,GAAcC,EAC7BH,GAAAA,WAAWA,EAAUE,GAAcC,EAAAA,EAAAA;AA5CnC,MAAkBf;AA6CpB;;"}
|
|
@@ -35,3 +35,4 @@ const s = (t2) => (s2) => {
|
|
|
35
35
|
}), { get: (t2, e3, r3 = {}) => h.get(t2, __spreadValues({ params: e3 }, r3)).then(s(u)).catch(a(p)), post: (t2, e3, r3) => h.post(t2, e3, r3).then(s(u)).catch(a(p)), patch: (t2, e3, r3) => h.patch(t2, e3, r3).then(s(u)).catch(a(p)), delete: (t2, e3, r3 = {}) => h.delete(t2, __spreadValues({ params: e3 }, r3)).then(s(u)).catch(a(p)) };
|
|
36
36
|
};
|
|
37
37
|
export { r as createIoInstance };
|
|
38
|
+
//# sourceMappingURL=binamik-js-providers.es.js.map
|
|
@@ -0,0 +1 @@
|
|
|
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":";;;;;;;;;;;;;;;;;;AAmDA,MAUMA,IACAC,QACHC,QACKD;;AAAAA,eAAkBA,GAAeE,QAAQF,GAAeG,UACzCC,EAAA,EACfF,MAAMF,GAAeE,MACrBC,QAAQH,GAAeG,QACvBE,KAAK,EAAEC,MAAML,gCAAKM,WAALN,mBAAaO,SAAQ,MAAMC,OAAOR,+BAAKM,WAALN,mBAAaS,OAC5DT,GAAAA,KAAKA,yBAAKO,MACVG,KAAKV,yBAAKW,QAAQD,IAAAA,CAAAA,GAIf,CAACV,GAAIO,MAAM,MAAM,EAAEK,QAAQZ,GAAIY,OAGpCC,CAAAA;AAAAA,GAAAA,IACHC,QACAC,QAAAA;;AACO,QAAAC,KAAUD,+BAAKE,aAALF,mBAAeR,MAEzBW,KAASJ,KAAcA,GAAYE,MAAW,IAAQ,IAAA;AAErD,SAAA,CACL,MACA,EACEJ,QAAQG,gCAAKE,aAALF,mBAAeH,WAAU,KACjCO,SACGH,0BAASG,YACTH,0BAASI,QACV,oBACFC,WAAWL,MAAW,MACtBE,QAAAA,GAAAA,GAEF,EACEN,QAAQG,gCAAKE,aAALF,mBAAeH,WAAU,IAAA,CAAA;AAErC,GAGSU,IAAmB,CAC9BC,IACAC,OAAAA;AAEM,QAAAC,EAAAA,UACJA,IAAW,OAAAC,SACXA,IAAU,IAAAC,kBACVA,GAAAC,cACAA,GAAAd,aACAA,MACEU,MAAW,CAAA,GAETK,IAAWC,EAAMC,OAAO,EAC5BC,SAAST,IACTU,SAASR,IACL,EACE,gBAAgB,oBAChBS,eAAeR,KAAW,cAAA,IAE5B,EAAE,gBAAgB,mBAGlBS,EAAAA,CAAAA,GAAAA,IAvELP,SACA5B,QAAAA;AACK,QAAA4B,MAAgB5B,0BAAKY,SAAQ;AAC/B,YAAMwB,KAAapC,GAAIY,QACjByB,KAAUT,GAAaQ;AACzBC,YAASA,GAAQrC,EAAAA;AAAAA,IACvB;AAAA,EAiEsBsC,GAAwBV,CAazC;AAAA,SAXEC,EAAAU,aAAatB,SAASuB,IACtBxC,QACLmC,GAAgBnC,EAAAA,GACTA,KAEAyC,QAAAA;AAED,UADFA,0BAAOxB,aAAUkB,EAAgBM,GAAMxB,QAAAA,GACrCwB;AAAAA,EAAA,CAIH,GAAA,EACLC,KAAK,CAAIhC,IAAaD,IAAkCH,KAAS,CAAA,MAC/DuB,EACGa,IAAOhC,IAAK,iBAAED,QAAAA,MAAWH,KACzBqC,KAAK7C,EAAmB6B,CACxBiB,CAAAA,EAAAA,MAAM/B,EAAcC,CAAAA,CAAAA,GAEzB+B,MAAM,CACJnC,IACAH,IACAD,OAEAuB,EACGgB,KAAQnC,IAAKH,IAAMD,EACnBqC,EAAAA,KAAK7C,EAAmB6B,CAAAA,CAAAA,EACxBiB,MAAM/B,EAAcC,CAEzBgC,CAAAA,GAAAA,OAAO,CACLpC,IACAH,IACAD,OAEAuB,EACGiB,MAASpC,IAAKH,IAAMD,EAAAA,EACpBqC,KAAK7C,EAAmB6B,CACxBiB,CAAAA,EAAAA,MAAM/B,EAAcC,CAAAA,CAAAA,GAEzBiC,QAAQ,CAAIrC,IAAaD,IAAkCH,KAAS,CAAA,MAClEuB,EACGkB,OAAUrC,IAAK,iBAAED,QAAWH,MAAAA,GAAAA,EAC5BqC,KAAK7C,EAAmB6B,CACxBiB,CAAAA,EAAAA,MAAM/B,EAAcC,CAAAA,CAAAA,EAAAA;AAC3B;;"}
|
|
@@ -0,0 +1 @@
|
|
|
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","url","req","res","schema","yupObject","isServer","isLocalhost","window","location","hostname","validate","abortEarly","catch","err","validationErrors","getYupValidationErrors","console","warn","functionName","endPoint","request","response"],"mappings":";;;;AAYO,MAAMA,IAAmBC,OAAAA,EAC9BC,MAAO,KAAA,IACPC,SAAM,IACNC,KAAAA,IAAM,CAAC,GACPC,KAAM,IAAA,CAAC,GACPC,QAAAA,IAASC,EAELC,QAAAA;;AAAAA,OACCC,EAAYC,uCAAQC,aAARD,mBAAkBE,QAAAA,KAE5BN,EAAAO,SAASR,GAAK,EAAES,YAAAA,MAAqBC,CAAAA,EAAAA,MAAaC;AACjD,UAAAC,KAAmBC,EAAuBF,EAAAA;AAExCG,YAAAC,KACN,sCAAsClB,iEACtC,EACEmB,cAAcnB,IACdoB,UAAUnB,GACVoB,SAASnB,GACToB,UAAUnB,GACVY,kBAEJ,GAAA,CAAA;AAAA,EAAA,CAAA;AACD;;"}
|
|
@@ -0,0 +1 @@
|
|
|
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,2 +1,3 @@
|
|
|
1
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
2
|
export { M as localizedFormatString };
|
|
3
|
+
//# sourceMappingURL=binamik-js-providers.es.js.map
|
|
@@ -0,0 +1 @@
|
|
|
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,2 +1,3 @@
|
|
|
1
1
|
const e = { 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" }, s = (s2) => e[s2.toLowerCase()] || e.pt;
|
|
2
2
|
export { s as getSafeLangCode };
|
|
3
|
+
//# sourceMappingURL=binamik-js-providers.es2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
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,QACjBT,EAAcS,GAASC,YAAAA,MACrBV,EAAcC;;"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
export { SafeDate } from "./SafeDate/binamik-js-providers.es.js";
|
|
2
2
|
export { AppStorageProvider } from "./AppStorageProvider/binamik-js-providers.es.js";
|
|
3
3
|
export { createIoInstance } from "./IoProvider/binamik-js-providers.es.js";
|
|
4
|
+
//# sourceMappingURL=binamik-js-providers.es.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"binamik-js-providers.es.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
(function(n,o){typeof exports=="object"&&typeof module!="undefined"?o(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"],o):o((n=typeof globalThis!="undefined"?globalThis:n||self).BinamikJSProviders={},n.dayjs,null,null,null,n.localizedFormat,n.nookies,n.axios,n.yup)})(this,function(n,o,c,z,R,T,k,_,q){"use strict";var $=Object.defineProperty;var P=Object.getOwnPropertySymbols;var B=Object.prototype.hasOwnProperty,F=Object.prototype.propertyIsEnumerable;var A=(n,o,c)=>o in n?$(n,o,{enumerable:!0,configurable:!0,writable:!0,value:c}):n[o]=c,L=(n,o)=>{for(var c in o||(o={}))B.call(o,c)&&A(n,c,o[c]);if(P)for(var c of P(o))F.call(o,c)&&A(n,c,o[c]);return n};var H=(n,o,c)=>(A(n,typeof o!="symbol"?o+"":o,c),c);function j(r){return r&&typeof r=="object"&&"default"in r?r:{default:r}}var p=j(o),S=j(T),V=j(_);const C={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"}},E={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"};p.default.extend(S.default);class w{constructor(e,t="pt-br"){H(this,"value",p.default());H(this,"isDateValid",!0);H(this,"locale","pt-br");this.locale=this.getI18nCode(t),this.value=p.default(e).locale(this.locale),this.isDateValid=this.value.isValid(),this.isDateValid||console.error("Invalid date:",e)}static isValid(e){return p.default(e||"").isValid()}validationHandler(e,t){return this.isDateValid?e:t}imutableHandler(e,t){return new w(e,t||this.locale)}i18nFormat(e){var t;return((t=C[this.locale])==null?void 0:t[e])||C.default[e]||""}getI18nCode(e){return E[e.toLowerCase()]||E.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:i=0,days:s=0,hours:h=0,minutes:u=0,seconds:M=0}){const D=this.validationHandler(this.value.add(e,"year").add(t,"month").add(i,"week").add(s,"day").add(h,"hour").add(u,"minute").add(M,"second"),this.value);return this.imutableHandler(D)}subtract({years:e=0,months:t=0,weeks:i=0,days:s=0,hours:h=0,minutes:u=0,seconds:M=0}){const D=this.validationHandler(this.value.subtract(e,"year").subtract(t,"month").subtract(i,"week").subtract(s,"day").subtract(h,"hour").subtract(u,"minute").subtract(M,"second"),this.value);return this.imutableHandler(D)}to(e){const t=this.dateObj,{year:i=t.year,month:s=t.month,date:h=t.date,hour:u=t.hour,minute:M=t.minute,second:D=t.second,millisecond:a=t.millisecond}=e,d=this.validationHandler(this.value.year(i).month(s).date(h).hour(u).minute(M).second(D).millisecond(a),this.value);return this.imutableHandler(d)}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,i){const s=this.validationHandler(this.value.isAfter(e,i),!1),h=this.validationHandler(this.value.isBefore(t,i),!1),u=s&&h||!s&&!h;return this.validationHandler(u,!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 x=(r,e)=>(t,i,s)=>{k.setCookie(null,`${e}-${t}`,i,{maxAge:(s==null?void 0:s.maxAge)||7776e3,path:"/",domain:r,secure:!0,httpOnly:!0})},Y=(r,e)=>(t,i)=>{k.destroyCookie(null,`${e}-${t}`,i)},N=(r,e)=>t=>{Y(0,e)("auth-key",t),Y(0,e)("user",t),Y(0,e)("company",t),Y(0,e)("orb-selected",t)},O=typeof window=="undefined",v=r=>e=>{var t,i;return r&&r.name&&r.schema&&(async({name:s="",url:h="",req:u={},res:M={},schema:D=q.object()})=>{var d;var a;O||(a=(d=window==null?void 0:window.location)==null?void 0:d.hostname,({}.NEXT_PUBLIC_APP_ENV||{}.REACT_APP_ENVIRONMENT||{}.REACT_APP_ENV||"production")==="local"&&(a.includes("localhost")||/(^(\d{1,3}\.){3}(\d{1,3})(:\d{1,5})?$)/.test(a))&&D.validate(M,{abortEarly:!1}).catch(m=>{const f=(l=>{var I;const b={};return(I=l==null?void 0:l.inner)!=null&&I.length?l.inner.forEach(g=>{b[(g==null?void 0:g.path)||"unknown"]=g.message}):(l==null?void 0:l.path)&&(l==null?void 0:l.message)?b[l.path]=l.message:(l==null?void 0:l.path)||(l==null?void 0:l.type)!=="typeError"||(b.body=l.errors[0]),b})(m);console.warn(`PLEASE check the backend IO for >> ${s} <<, some discrepancies were found in the expected response`,{functionName:s,endPoint:h,request:u,response:M,validationErrors:f})}))})({name:r.name,schema:r.schema,req:{body:((t=e==null?void 0:e.config)==null?void 0:t.data)||null,query:(i=e==null?void 0:e.config)==null?void 0:i.params},res:e==null?void 0:e.data,url:e==null?void 0:e.request.url}),[e.data,null,{status:e.status}]},y=r=>e=>{var s,h,u;const t=(s=e==null?void 0:e.response)==null?void 0:s.data,i=r?r(t||null):void 0;return[null,{status:((h=e==null?void 0:e.response)==null?void 0:h.status)||599,message:(t==null?void 0:t.message)||(t==null?void 0:t.msg)||"Unknown IO Error",errorData:t||null,errors:i},{status:((u=e==null?void 0:e.response)==null?void 0:u.status)||599}]};n.AppStorageProvider=({cookieDomain:r,cookiePrefix:e})=>{return{get:(t=e,i=>k.parseCookies()[`${t}-${i}`]),set:x(r,e),remove:Y(0,e),cleanAuth:N(0,e)};var t},n.SafeDate=w,n.createIoInstance=(r,e)=>{const{withAuth:t=!1,authKey:i="",ioIntegrityCheck:s,onStatusCode:h,errorParser:u}=e||{},M=V.default.create({baseURL:r,headers:t?{"Content-Type":"application/json",Authorization:i||"no_auth_key"}:{"Content-Type":"application/json"}}),D=(a=>d=>{if(a&&(d==null?void 0:d.status)){const m=d.status,f=a[m];f&&f(d)}})(h);return M.interceptors.response.use(a=>(D(a),a),a=>{throw a!=null&&a.response&&D(a.response),a}),{get:(a,d,m={})=>M.get(a,L({params:d},m)).then(v(s)).catch(y(u)),post:(a,d,m)=>M.post(a,d,m).then(v(s)).catch(y(u)),patch:(a,d,m)=>M.patch(a,d,m).then(v(s)).catch(y(u)),delete:(a,d,m={})=>M.delete(a,L({params:d},m)).then(v(s)).catch(y(u))}},Object.defineProperties(n,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
2
|
+
//# sourceMappingURL=binamik-js-providers.umd.js.map
|
|
@@ -0,0 +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/IoProvider.ts","../src/IoProvider/checkIoIntegrity.ts","../src/utils/isLocalhost.ts","../src/utils/yup/getYupValidationErrors.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 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","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"],"names":["localizedFormatString","default","en","es","safeLangCodes","pt","pt_br","en_us","en_gb","es_es","dayjs","extend","localizedFormat","SafeDate","constructor","pValue","locale","this","value","isDateValid","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","handleIOSuccess","integrityCheck","res","name","schema","url","req","yupObject","host","location","hostname","NEXT_PUBLIC_APP_ENV","REACT_APP_ENVIRONMENT","REACT_APP_ENV","includes","test","validate","abortEarly","catch","err","validationErrors","inner","length","forEach","message","type","body","errors","warn","functionName","endPoint","request","response","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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"}
|
|
@@ -0,0 +1 @@
|
|
|
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,IAA6B,OAAXC,UAAW;;"}
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
const o = (o2) => ({}.NEXT_PUBLIC_APP_ENV || {}.REACT_APP_ENVIRONMENT || {}.REACT_APP_ENV || "production") === "local" && (o2.includes("localhost") || /(^(\d{1,3}\.){3}(\d{1,3})(:\d{1,5})?$)/.test(o2));
|
|
2
2
|
export { o as isLocalhost };
|
|
3
|
+
//# sourceMappingURL=binamik-js-providers.es2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
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","NEXT_PUBLIC_APP_ENV","REACT_APP_ENVIRONMENT","REACT_APP_ENV","includes","test"],"mappings":"AAAA,MAGaA,IAAeC,QAOJ,AALpB,IAAYC,uBACZ,CAAA,EAAYC,yBACZ,CAAY,EAAAC,iBACZ,kBAEoB,WAAYH,IAAKI,SAAS,WAThD,KAAA,yCAAyCC,KAS8BL;;"}
|
|
@@ -6,3 +6,4 @@ const e = (e2) => {
|
|
|
6
6
|
}) : (e2 == null ? void 0 : e2.path) && (e2 == null ? void 0 : e2.message) ? r[e2.path] = e2.message : (e2 == null ? void 0 : e2.path) || (e2 == null ? void 0 : e2.type) !== "typeError" || (r.body = e2.errors[0]), r;
|
|
7
7
|
};
|
|
8
8
|
export { e as getYupValidationErrors };
|
|
9
|
+
//# sourceMappingURL=binamik-js-providers.es.js.map
|
|
@@ -0,0 +1 @@
|
|
|
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","validationErrors","inner","length","forEach","error","path","message","type","body","errors"],"mappings":"AAEa,MAAAA,IACXC,QAEA;AAHW;AAGX,QAAMC,IAAmB,CAAA;AAYlB,SAVHD,gCAAKE,UAALF,mBAAYG,UACVH,GAAAE,MAAME,QAAiBC,QAAAA;AACRJ,MAAAI,0BAAOC,SAAQ,aAAaD,GAAME;AAAAA,EAAA,CAE5CP,IAAAA,0BAAKM,SAAQN,0BAAKO,WACVN,EAAAD,GAAIM,QAAQN,GAAIO,UACvBP,0BAAKM,SAAsB,AAAdN,0BAAKQ,UAAS,eACpBP,GAAAQ,OAAOT,GAAIU,OAAO,KAG9BT;AAAA;;"}
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@binamik/js-providers",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.2",
|
|
4
4
|
"scripts": {
|
|
5
5
|
"dev": "vite",
|
|
6
|
-
"build": "tsc && vite build",
|
|
6
|
+
"build": "tsc && cross-env FORMAT=umd vite build && cross-env FORMAT=es vite build ",
|
|
7
7
|
"test": "vitest",
|
|
8
8
|
"lint": "eslint"
|
|
9
9
|
},
|
|
@@ -18,6 +18,7 @@
|
|
|
18
18
|
"@typescript-eslint/eslint-plugin": "^5.30.0",
|
|
19
19
|
"@typescript-eslint/parser": "^5.30.0",
|
|
20
20
|
"axios": "^0.27.2",
|
|
21
|
+
"cross-env": "^7.0.3",
|
|
21
22
|
"dayjs": "^1.11.3",
|
|
22
23
|
"eslint": "^8.0.1",
|
|
23
24
|
"eslint-config-prettier": "^8.5.0",
|
|
@@ -31,7 +32,7 @@
|
|
|
31
32
|
"prettier": "^2.7.1",
|
|
32
33
|
"rollup-plugin-terser": "^7.0.2",
|
|
33
34
|
"typescript": "^4.5.4",
|
|
34
|
-
"vite": "^2.9.
|
|
35
|
+
"vite": "^2.9.13",
|
|
35
36
|
"vite-plugin-dts": "^1.2.0",
|
|
36
37
|
"vitest": "^0.16.0",
|
|
37
38
|
"yup": "^0.32.11"
|