vobi_lib 1.6.4 → 1.6.5

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/README.md CHANGED
@@ -1,4 +1,33 @@
1
- # Função de Criptografia
1
+ # Vobi Library
2
+
3
+ Biblioteca utilitária com funções para criptografia, upload de arquivos, processamento de imagens e muito mais.
4
+
5
+ ## 📦 Instalação
6
+
7
+ ```bash
8
+ npm install vobi_lib
9
+ ```
10
+
11
+ ### ⚠️ Dependência Importante: Sharp
12
+
13
+ Para usar as funções de processamento de imagem, você precisa instalar o Sharp separadamente:
14
+
15
+ ```bash
16
+ # Para AWS Lambda ARM64 (recomendado)
17
+ npm install --platform=linux --arch=arm64 sharp
18
+
19
+ # Para AWS Lambda x86_64
20
+ npm install --platform=linux --arch=x64 sharp
21
+
22
+ # Para desenvolvimento local
23
+ npm install sharp
24
+ ```
25
+
26
+ 📖 **[Guia completo de instalação do Sharp](./SHARP_INSTALLATION.md)**
27
+
28
+ ## 🚀 Funcionalidades
29
+
30
+ ### 🔐 Criptografia
2
31
 
3
32
  Essa função permite criptografar um texto utilizando o algoritmo AES (Advanced Encryption Standard) com uma chave fornecida.
4
33
 
@@ -0,0 +1,80 @@
1
+ # Sharp Installation Guide
2
+
3
+ This library uses Sharp for image processing, which is a peer dependency that needs to be installed separately.
4
+
5
+ ## Installation
6
+
7
+ ### 1. Install the library
8
+ ```bash
9
+ npm install vobi_lib
10
+ ```
11
+
12
+ ### 2. Install Sharp for your environment
13
+
14
+ #### For AWS Lambda ARM64 (recommended)
15
+ ```bash
16
+ npm install --platform=linux --arch=arm64 sharp
17
+ ```
18
+
19
+ #### For AWS Lambda x86_64
20
+ ```bash
21
+ npm install --platform=linux --arch=x64 sharp
22
+ ```
23
+
24
+ #### For local development
25
+ ```bash
26
+ npm install sharp
27
+ ```
28
+
29
+ ## Why Sharp is a peer dependency?
30
+
31
+ - **Performance**: Sharp is much faster than alternatives
32
+ - **Architecture compatibility**: Different environments need different Sharp builds
33
+ - **Bundle size**: Keeps the library lightweight
34
+ - **Flexibility**: You control which Sharp version to use
35
+
36
+ ## Troubleshooting
37
+
38
+ ### Error: "Sharp is required for image processing"
39
+ This means Sharp is not installed. Follow the installation steps above.
40
+
41
+ ### Error: "Could not load the sharp module using the linux-arm64 runtime"
42
+ Your Sharp was compiled for the wrong architecture. Reinstall with:
43
+ ```bash
44
+ npm uninstall sharp
45
+ npm install --platform=linux --arch=arm64 sharp # for ARM64 Lambda
46
+ ```
47
+
48
+ ### Error: Sharp not working in local development
49
+ If you installed Sharp for Lambda, reinstall for local development:
50
+ ```bash
51
+ npm install sharp
52
+ ```
53
+
54
+ ## CI/CD Setup
55
+
56
+ Add this to your deployment script:
57
+ ```bash
58
+ # Before deploying to Lambda ARM64
59
+ npm install --platform=linux --arch=arm64 sharp
60
+
61
+ # Build and deploy
62
+ npm run build
63
+ # your deployment command here
64
+ ```
65
+
66
+ ## Docker Setup
67
+
68
+ If using Docker for Lambda:
69
+ ```dockerfile
70
+ FROM public.ecr.aws/lambda/nodejs:18-arm64
71
+
72
+ WORKDIR /var/task
73
+ COPY package*.json ./
74
+ RUN npm ci --only=production
75
+ COPY . .
76
+
77
+ CMD ["index.handler"]
78
+ ```
79
+
80
+ Sharp will be automatically compiled for the correct architecture.
package/dist/index.d.ts CHANGED
@@ -261,6 +261,8 @@ declare const getDateOpenFinance: () => {
261
261
  yesterday: string;
262
262
  };
263
263
 
264
+ declare const _setSharpForTesting: (mockSharp: any) => void;
265
+
264
266
  declare const upload: ({ fileObject, idCompany, suffix }: UploadParams) => Promise<string | undefined>;
265
267
  declare const createThumbnail: (file: File, suffix?: string) => Promise<ProcessedImage | null>;
266
268
  declare const compressImage: (file: File, suffix?: string) => Promise<ImageProcessingResult>;
@@ -277,4 +279,4 @@ declare const configure: (options?: Record<string, any>) => void;
277
279
  declare const getConfig: () => ConfigType;
278
280
  declare const get: <T>(key: string, defaultValue?: T) => T;
279
281
 
280
- export { type ArrayItem, BAD_GATEWAY, BAD_REQUEST, type Encode, FORBIDDEN, type FileMetaData, type FileObject, type FormatCurrencyProps, type ICustomErrorParams, INTERNAL_SERVER_ERROR, type ImageProcessingResult, IsJsonString, METHOD_NOT_ALLOWED, type MimeType, NOT_ALLOWED, NOT_FOUND, type ProcessedImage, SERVICE_UNAVAILABLE, type SignUrls, UNAUTHORIZED, type UploadCompleteData, type UploadInitData, type UploadParams, type UploadPart, asArray, asBrazilianDate, asDate, asyncForEach, base64ToBlob, brazilianDateTime, brazilianDateToDate, capitalize, checkApprovalAuthority, checkCnpj, checkCpf, checkEmail, compressImage, configure, containsEncodedComponents, createThumbnail, currentDay, curry, dateIsValid, decodeToken, decrypt, diffObject, dynamici18nString, elasticTransformOr, encrypt, enumHelper, error, eventBus, extractMonthInfo, extractValueFromWhere, filterAttributes, filterEmpty, findValue, firstMonthDay, flatMapData, flattenChildren, formatCurrency, formatDate, formatDocument, formatNumber, formatNumberAnyFormat, get, getConfig, getDateOpenFinance, getExtension, getMonthNumber, getNameWithoutExtension, getNextDay, getNextWeekday, getPreviewsWeekday, getToday, getToken, getTomorrow, getUUIDFromEmail, getYesterday, imgSrcRegex, isAfter, isDateValid, isNumber, isOfAge, isValidUrl, lastMonthDay, makeRefurbishFileUrl, maxDateToList, minDateToList, monthsBetween, normalizeString, nullIfEmpty, padLeft, parseArrayAsObject, parseRouteToModel, prepareDoc, prepareSession, promiseAny, promiseEach, removeProperty, removeSpecialChar, replaceNumberOrPercentage, slugify, splitList, sum, sumByFunction, upload, validateAccess, validateMobilePhoneNumber, valueReplacer };
282
+ export { type ArrayItem, BAD_GATEWAY, BAD_REQUEST, type Encode, FORBIDDEN, type FileMetaData, type FileObject, type FormatCurrencyProps, type ICustomErrorParams, INTERNAL_SERVER_ERROR, type ImageProcessingResult, IsJsonString, METHOD_NOT_ALLOWED, type MimeType, NOT_ALLOWED, NOT_FOUND, type ProcessedImage, SERVICE_UNAVAILABLE, type SignUrls, UNAUTHORIZED, type UploadCompleteData, type UploadInitData, type UploadParams, type UploadPart, _setSharpForTesting, asArray, asBrazilianDate, asDate, asyncForEach, base64ToBlob, brazilianDateTime, brazilianDateToDate, capitalize, checkApprovalAuthority, checkCnpj, checkCpf, checkEmail, compressImage, configure, containsEncodedComponents, createThumbnail, currentDay, curry, dateIsValid, decodeToken, decrypt, diffObject, dynamici18nString, elasticTransformOr, encrypt, enumHelper, error, eventBus, extractMonthInfo, extractValueFromWhere, filterAttributes, filterEmpty, findValue, firstMonthDay, flatMapData, flattenChildren, formatCurrency, formatDate, formatDocument, formatNumber, formatNumberAnyFormat, get, getConfig, getDateOpenFinance, getExtension, getMonthNumber, getNameWithoutExtension, getNextDay, getNextWeekday, getPreviewsWeekday, getToday, getToken, getTomorrow, getUUIDFromEmail, getYesterday, imgSrcRegex, isAfter, isDateValid, isNumber, isOfAge, isValidUrl, lastMonthDay, makeRefurbishFileUrl, maxDateToList, minDateToList, monthsBetween, normalizeString, nullIfEmpty, padLeft, parseArrayAsObject, parseRouteToModel, prepareDoc, prepareSession, promiseAny, promiseEach, removeProperty, removeSpecialChar, replaceNumberOrPercentage, slugify, splitList, sum, sumByFunction, upload, validateAccess, validateMobilePhoneNumber, valueReplacer };
package/dist/index.js CHANGED
@@ -1 +1,7 @@
1
- "use strict";var se=Object.create;var P=Object.defineProperty;var ie=Object.getOwnPropertyDescriptor;var le=Object.getOwnPropertyNames;var ce=Object.getPrototypeOf,de=Object.prototype.hasOwnProperty;var ue=(e,t)=>{for(var a in t)P(e,a,{get:t[a],enumerable:!0})},W=(e,t,a,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of le(t))!de.call(e,r)&&r!==a&&P(e,r,{get:()=>t[r],enumerable:!(o=ie(t,r))||o.enumerable});return e};var x=(e,t,a)=>(a=e!=null?se(ce(e)):{},W(t||!e||!e.__esModule?P(a,"default",{value:e,enumerable:!0}):a,e)),pe=e=>W(P({},"__esModule",{value:!0}),e);var Mt={};ue(Mt,{BAD_GATEWAY:()=>ye,BAD_REQUEST:()=>d,FORBIDDEN:()=>fe,INTERNAL_SERVER_ERROR:()=>U,IsJsonString:()=>be,METHOD_NOT_ALLOWED:()=>ge,NOT_ALLOWED:()=>L,NOT_FOUND:()=>O,SERVICE_UNAVAILABLE:()=>he,UNAUTHORIZED:()=>R,asArray:()=>F,asBrazilianDate:()=>j,asDate:()=>w,asyncForEach:()=>De,base64ToBlob:()=>kt,brazilianDateTime:()=>Q,brazilianDateToDate:()=>je,capitalize:()=>k,checkApprovalAuthority:()=>At,checkCnpj:()=>ve,checkCpf:()=>Ne,checkEmail:()=>Ae,compressImage:()=>Ft,configure:()=>Ee,containsEncodedComponents:()=>Be,createThumbnail:()=>Ut,currentDay:()=>$,curry:()=>Pe,dateIsValid:()=>Ze,decodeToken:()=>st,decrypt:()=>Re,diffObject:()=>Te,dynamici18nString:()=>we,elasticTransformOr:()=>Se,encrypt:()=>Le,enumHelper:()=>n,error:()=>y,eventBus:()=>Oe,extractMonthInfo:()=>Nt,extractValueFromWhere:()=>Ue,filterAttributes:()=>ke,filterEmpty:()=>_e,findValue:()=>_,firstMonthDay:()=>V,flatMapData:()=>It,flattenChildren:()=>z,formatCurrency:()=>M,formatDate:()=>X,formatDocument:()=>Bt,formatNumber:()=>Qe,formatNumberAnyFormat:()=>Xe,get:()=>N,getConfig:()=>Ce,getDateOpenFinance:()=>Pt,getExtension:()=>et,getMonthNumber:()=>He,getNameWithoutExtension:()=>Fe,getNextDay:()=>Me,getNextWeekday:()=>ee,getPreviewsWeekday:()=>te,getToday:()=>$e,getToken:()=>rt,getTomorrow:()=>qe,getUUIDFromEmail:()=>_t,getYesterday:()=>ze,imgSrcRegex:()=>tt,isAfter:()=>Ge,isDateValid:()=>at,isNumber:()=>ot,isOfAge:()=>Ye,isValidUrl:()=>nt,lastMonthDay:()=>G,makeRefurbishFileUrl:()=>it,maxDateToList:()=>We,minDateToList:()=>Je,monthsBetween:()=>Ve,normalizeString:()=>Ct,nullIfEmpty:()=>lt,padLeft:()=>ct,parseArrayAsObject:()=>dt,parseRouteToModel:()=>ut,prepareDoc:()=>pt,prepareSession:()=>mt,promiseAny:()=>ft,promiseEach:()=>xe,removeProperty:()=>gt,removeSpecialChar:()=>yt,replaceNumberOrPercentage:()=>vt,slugify:()=>ht,splitList:()=>bt,sum:()=>xt,sumByFunction:()=>Dt,upload:()=>Ot,validateAccess:()=>Ie,validateMobilePhoneNumber:()=>Et,valueReplacer:()=>S});module.exports=pe(Mt);var J={userNotFound:"Usu\xE1rio n\xE3o foi encontrado.",pageNotFound:"Desculpe. P\xE1gina n\xE3o encontrada.",notAuthorized:"N\xE3o autorizado.",tokenExpired:"Sess\xE3o expirada.",invalidToken:"Token inv\xE1lido.",notUpdated:"Nenhum registro foi alterado.",cantDelete:"Esse registro est\xE1 sendo usado, por isso n\xE3o \xE9 poss\xEDvel apaga-lo.",general:"Ocorreu um erro.",sentError:"Erro ao enviar proposta",noUser:"Usu\xE1rio n\xE3o encontrado.",noEmail:"E-mail n\xE3o foi informado",noPassword:"Senha n\xE3o foi informada.",invalidEmail:"O e-mail informado \xE9 inv\xE1lido.",uniqueEmail:"O e-mail informado j\xE1 est\xE1 cadastrado.",invalidCPF:"O CPF informado \xE9 inv\xE1lido.",invalidCNPJ:"O CNPJ informado \xE9 inv\xE1lido.",uniqueName:"Nome informado j\xE1 cadastrado.",noName:"Nome n\xE3o foi informado.",noData:"Dados n\xE3o informados.",noDate:"Data n\xE3o informada.",noModel:"Ocorreu um erro com a entidade",invalidId:"Id inv\xE1lido",invalidCredentials:"Usu\xE1rio e/ou senha inv\xE1lidos.",noPhone:"Telefone n\xE3o foi informado.",noCPF:"CPF n\xE3o foi informado.",noRG:"RG n\xE3o foi informado.",noZipcode:"CEP n\xE3o foi informado.",noStreet:"Endere\xE7o n\xE3o foi informado.",noNumber:"N\xFAmero n\xE3o foi informado.",noState:"Estado n\xE3o foi informado.",noCity:"Cidade n\xE3o foi informada.",noNeighborhood:"Bairro n\xE3o foi informado.",noCNPJ:"CNPJ n\xE3o foi informado.",noCompanyName:"Raz\xE3o social n\xE3o foi informada.",noTrademarkName:"Nome fantasia n\xE3o foi informado.",noCompanyZipcode:"CEP da empresa n\xE3o foi informado.",noCompanyStreet:"Endere\xE7o da empresa n\xE3o foi informado.",noCompanyNumber:"N\xFAmero da empresa n\xE3o foi informado.",noCompanyState:"Estado da empresa n\xE3o foi informado.",noCompanyCity:"Cidade da empresa n\xE3o foi informado.",noCompanyNeighborhood:"Bairro da empresa n\xE3o foi informado.",noBirthdate:"Data de nascimento n\xE3o foi informada.",noCompany:"Empresa n\xE3o informada.",invalidURL:"URL inv\xE1lida.",noPermissions:"Permiss\xF5es n\xE3o encontradas.",fileLimit50:"Os arquivos n\xE3o pode ter mais de 50 MB. Para arquivos maiores voc\xEA pode informar a url de um servidor externo.",fileLimit10:"Os arquivos n\xE3o pode ter mais de 10 MB. Para arquivos maiores voc\xEA pode informar a url de um servidor externo no corpo da mensagem.",maxLength:"O nome deve ter no m\xE1ximo 255 caracteres.",invalidData:"Dados inv\xE1lidos.",invalidDate:"Data inv\xE1lida.",invalidDates:"Data de in\xEDcio n\xE3o pode ser maior que data de fim.",invalidUUID:"A URL informada n\xE3o foi encontrada, verifique se est\xE1 correto o link desejado.",invalidValue:"Valor informado inv\xE1lido.",invalidDoc:"O documento informado (CNPJ/CPF) est\xE1 incorreto.",docAlreadyExists:"Documento j\xE1 cadastrado.",tokenPasswordError:"Link de recupera\xE7\xE3o de senha inv\xE1lido.",errPassword:"Senha est\xE1 inv\xE1lida.",noParameters:"Par\xE2metros n\xE3o informado.",uniqueCode:"C\xF3digo j\xE1 cadastrado."};var y={},Z={en:J,"pt-br":"PT_BR_LOCALE"},l=Z.en||Z.en,d=400,L=405,R=401,fe=403,O=404,ge=405,U=500,ye=502,he=503;y.NOT_FOUND={userNotFound:{statusCode:O,code:"NF-00001",message:l.userNotFound},pageNotFound:{statusCode:O,code:"NF-00002",message:l.pageNotFound}};y.UNAUTHORIZED={notAuthorized:{statusCode:R,code:"UA-00001",message:l.notAuthorized},tokenExpired:{statusCode:R,code:"UA-00002",message:l.tokenExpired},invalidToken:{statusCode:R,code:"UA-00003",message:l.invalidToken}};y.NOT_ALLOWED={notUpdated:{statusCode:L,code:"NA-00001",message:l.notUpdated},cantDelete:{statusCode:L,code:"NA-00002",message:l.cantDelete}};y.INTERNAL_SERVER_ERROR={general:{statusCode:U,code:"ISE-00001",message:l.general},sentError:{statusCode:U,code:"ISE-00002",message:l.sentError}};y.BAD_REQUEST={noUser:{statusCode:d,code:"LIB-B-00001",message:l.noUser},noEmail:{statusCode:d,code:"LIB-B-00002",message:l.noEmail},noPassword:{statusCode:d,code:"LIB-B-00003",message:l.noPassword},invalidEmail:{statusCode:d,code:"LIB-B-00004",message:l.invalidEmail},uniqueEmail:{statusCode:d,code:"LIB-B-00005",message:l.uniqueEmail},invalidCPF:{statusCode:d,code:"LIB-B-00006",message:l.invalidCPF},invalidCNPJ:{statusCode:d,code:"LIB-B-00007",message:l.invalidCNPJ},uniqueName:{statusCode:d,code:"LIB-B-00008",message:l.uniqueName},noName:{statusCode:d,code:"LIB-B-00009",message:l.noName},noData:{statusCode:d,code:"LIB-B-00010",message:l.noData},invalidCredentials:{statusCode:d,code:"LIB-B-00011",message:l.invalidCredentials},tokenPasswordError:{statusCode:d,code:"LIB-B-00012",message:l.tokenPasswordError},errPassword:{statusCode:d,code:"LIB-B-00013",message:l.errPassword},noPhone:{statusCode:d,code:"LIB-B-00014",message:l.noPhone},noCPF:{statusCode:d,code:"LIB-B-00015",message:l.noCPF},noRG:{statusCode:d,code:"LIB-B-00016",message:l.noRG},noZipcode:{statusCode:d,code:"LIB-B-00017",message:l.noZipcode},noStreet:{statusCode:d,code:"LIB-B-00018",message:l.noStreet},noNumber:{statusCode:d,code:"LIB-B-00019",message:l.noNumber},noState:{statusCode:d,code:"LIB-B-00020",message:l.noState},noCity:{statusCode:d,code:"LIB-B-00021",message:l.noCity},noNeighborhood:{statusCode:d,code:"LIB-B-00022",message:l.noNeighborhood},noCNPJ:{statusCode:d,code:"LIB-B-00023",message:l.noCNPJ},noCompanyName:{statusCode:d,code:"LIB-B-00024",message:l.noCompanyName},noTrademarkName:{statusCode:d,code:"LIB-B-00025",message:l.noTrademarkName},noCompanyZipcode:{statusCode:d,code:"LIB-B-00026",message:l.noCompanyZipcode},noCompanyStreet:{statusCode:d,code:"LIB-B-00027",message:l.noCompanyStreet},noCompanyNumber:{statusCode:d,code:"LIB-B-00028",message:l.noCompanyNumber},noCompanyState:{statusCode:d,code:"LIB-B-00029",message:l.noCompanyState},noCompanyCity:{statusCode:d,code:"LIB-B-00030",message:l.noCompanyCity},noCompanyNeighborhood:{statusCode:d,code:"PRO-00031",message:l.noCompanyNeighborhood},noBirthdate:{statusCode:d,code:"LIB-B-00032",message:l.noBirthdate},noCompany:{statusCode:d,code:"LIB-B-00033",message:l.noCompany},noParameters:{statusCode:d,code:"LIB-B-00034",message:l.noParameters},invalidDoc:{statusCode:d,code:"LIB-B-00035",message:l.invalidDoc},docAlreadyExists:{statusCode:d,code:"LIB-B-00036",message:l.docAlreadyExists},invalidURL:{statusCode:d,code:"LIB-B-00037",message:l.invalidURL},noPermissions:{statusCode:d,code:"LIB-B-00038",message:l.noPermissions},fileLimit50:{statusCode:d,code:"LIB-B-00039",message:l.fileLimit50},fileLimit10:{statusCode:d,code:"LIB-B-00040",message:l.fileLimit10},invalidDates:{statusCode:d,code:"LIB-B-00041",message:l.invalidDates},maxLength:{statusCode:d,code:"LIB-B-00042",message:l.maxLength},uniqueCode:{statusCode:d,code:"LIB-B-00043",message:l.uniqueCode},invalidValue:{statusCode:d,code:"LIB-B-00044",message:l.invalidValue},invalidData:{statusCode:d,code:"LIB-B-00045",message:l.invalidData},invalidUUID:{statusCode:d,code:"LIB-B-00046",message:l.invalidUUID},noDate:{statusCode:d,code:"LIB-B-00047",message:l.noDate},invalidDate:{statusCode:d,code:"LIB-B-00048",message:l.invalidDate},invalidId:{statusCode:d,code:"LIB-B-00049",message:l.invalidId},noModel:{statusCode:d,code:"LIB-B-00050",message:l.noModel},sequelizeValidation:{statusCode:d,code:"LIB-B-00999"}};var be=e=>{try{JSON.parse(e)}catch{return!1}return JSON.parse(e)};var xe=async(e,t)=>{for(let a of e)await t(a,e.indexOf(a))};var F=e=>e==null?[]:Array.isArray(e)?e:[e];var De=async(e,t)=>{await Promise.all(e.map((a,o)=>t(a,o,e)))};var n={};n.fileType={receipt:"receipt",paymentVoucher:"paymentVoucher",quote:"quote",others:"others",project:"project",proposal:"proposal",bankBillet:"bankBillet",refund:"refund"};n.refurbishItemStatus={approved:{label:"Aprovado",value:"approved"},rejected:{label:"N\xE3o aprovado",value:"rejected"},pending:{label:"Para aprovar",value:"pending"},activeStatus:["approved","pending"]};n.companyStatus={created:{id:1,name:"Cadastro iniciado"},onBoarding:{id:2,name:"Aguardando libera\xE7\xE3o"},active:{id:3,name:"Ativo"},blocked:{id:4,name:"Bloqueado"},cancelled:{id:5,name:"Cancelada"}};n.companyType={architect:{id:1,name:"Arquitetura e design de interiores",roles:["architect"]},service:{id:2,name:"Execu\xE7\xE3o de obra"},store:{id:3,name:"Loja de produtos e materiais"},factory:{id:4,name:"Fabricante"},other:{id:10,name:"Outros"}};n.refurbishStatus={new:{id:1,name:"Novo"},contact:{id:2,name:"Em contato"},proposalSent:{id:3,name:"Proposta enviada"},archived:{id:4,name:"Arquivada"},winner:{id:5,name:"Ganha",winner:!0},execution:{id:5,name:"Em andamento"},finished:{id:6,name:"Finalizado"},cancelled:{id:7,name:"Cancelado"},activeOpportunity:[1,2,3],opportunity:[1,2,3,4],project:[5,6,7],end:[4,5,6,7]};n.refurbishStage={1:{id:1,name:"Oportunidade"},2:{id:2,name:"Projeto"}};n.roles={admin:{id:"admin",name:"Administrador"},sales:{id:"sales",name:"Venda"},arch:{id:"architect",name:"Arquitetura"},plan:{id:"plan",name:"Planejamento"},work:{id:"work",name:"Obra"},quality:{id:"quality",name:"Qualidade"},supply:{id:"supply",name:"Suprimentos"},contractor:{id:"contractor",name:"Empreiteiro"},beta:{id:"beta",name:"Beta user"}};n.userType={guest:{name:"Visitante",value:"guest",type:"visitante"},operator:{name:"Operador",value:"operator",type:"operador"},customer:{name:"Cliente",value:"customer",type:"cliente"},provider:{name:"Profissional",value:"provider",type:"profissional"},system:{name:"Sistema",value:"system",type:"sistema"},anonymous:{name:"An\xF4nimo",value:"anonymous"},realTypes:["guest","operator","customer","provider"],skipPermission:["operator","customer"],all:["system","provider","customer","operator"]};n.paymentStatus={waitingOrder:1,analyzing:2,waitingRelease:3,released:4,transferred:5,markAsPaid:6,allowTransfer:[3,4],allowChange:[1,6],sendEmail:[4,5]};n.personTypes={pf:"pf",pj:"pj"};n.asaasPersonTypes={pf:"FISICA",pj:"JURIDICA"};n.stepAccount={personal:0,address:1,documents:2};n.statusVobiPay={PENDING:{color:"#FF8E1B",label:"Em an\xE1lise"}};n.refurbishItemType={product:1,labor:2,parent:3,composition:4,notParent:[1,2,4],productLabor:[1,2]};n.notificationChannel={system:"system",email:"email",whatsApp:"whatsApp"};n.planType={free:{value:"free",label:"freemium"},paid:{value:"paid",label:"Pago"}};n.installmentStatuses={pendingPayment:1,paid:2,confirm:3,paidManually:4,inAnalysis:5,refunded:6,refundRequested:7,onGoingRefund:8,chargebackRequested:9,onGoingChargeback:10,waitingChargeback:11,cancelled:12,all:[1,2,3,4,5,6,7,8,9,10],paidVobiPay:[2,3,7,8,9,10,11],bankStatement:[2,4,6,7,8,9,10,11],allPaid:[2,3,4,7,8,9,10,11],allPaidBalance:[2,4,7,8,9,10,11],allPending:[1,5]};n.paymentStatuses={draft:1,open:2,paid:3,cancelled:4,realValues:[2,3],allStatus:[1,2,3,4]};n.billType={income:"receita",expense:"despesa",transfer:"transferencia",balance:"saldo inicial"};n.paymentTypeValues={expense:{value:"expense",label:"despesa"},income:{value:"income",label:"receita"},transfer:{value:"transfer",label:"transfer\xEAncia"},payment:{value:"payment",label:"pagamento"},balance:{value:"balance",label:"saldo inicial"}};n.financialCategories={serviceSelling:1,productsSelling:2,fee:3,investimentIncome:4,others:5,advanceFutureCapital:6,capitalIncrease:7,bankLoan:8,institutionLoan:9,partnerLoan:10,paymentShareCapital:11};n.getEnumValue=(e,t,a=["id","name"])=>{let o=null;return!e||!t||Object.keys(e).some(r=>e[r][a[0]]===t?(o=e[r][a[1]],!0):!1),o};n.asaasPixType={CPF:"CPF",CNPJ:"CNPJ",EMAIL:"E-mail",PHONE:"Celular",EVP:"Aleat\xF3ria"};n.paymentTypes={pix:1,bankSlip:2,creditCard:3,debitCard:4,transfer:5,money:6,other:7};n.paymentTypesDesc={1:"Pix",2:"Boleto",3:"Cart\xE3o de cr\xE9dito",4:"Cart\xE3o de d\xE9bito",5:"Transfer\xEAncia",6:"Dinheiro",7:"Outro"};n.vobiPayPaymentType={pix:1,bankSlip:2,creditCard:3,all:[1,2,3],1:"pix",2:"bankSlip",3:"creditCard"};n.asaasPaymentStatus={PENDING:{label:"PENDING",value:n.installmentStatuses.pendingPayment},RECEIVED:{label:"RECEIVED",value:n.installmentStatuses.paid},CONFIRMED:{label:"CONFIRMED",value:n.installmentStatuses.confirm},OVERDUE:{label:"OVERDUE",value:null},REFUNDED:{label:"REFUNDED",value:n.installmentStatuses.refunded},RECEIVED_IN_CASH:{label:"RECEIVED_IN_CASH",value:n.installmentStatuses.paidManually},REFUND_REQUESTED:{label:"REFUND_REQUESTED",value:n.installmentStatuses.refundRequested},REFUND_IN_PROGRESS:{label:"REFUND_IN_PROGRESS",value:n.installmentStatuses.onGoingRefund},CHARGEBACK_REQUESTED:{label:"CHARGEBACK_REQUESTED",value:n.installmentStatuses.chargebackRequested},CHARGEBACK_DISPUTE:{label:"CHARGEBACK_DISPUTE",value:n.installmentStatuses.onGoingChargeback},AWAITING_CHARGEBACK_REVERSAL:{label:"AWAITING_CHARGEBACK_REVERSAL",value:n.installmentStatuses.waitingChargeback},DUNNING_REQUESTED:{label:"DUNNING_REQUESTED",value:null},DUNNING_RECEIVED:{label:"DUNNING_RECEIVED",value:null},AWAITING_RISK_ANALYSIS:{label:"AWAITING_RISK_ANALYSIS",value:n.installmentStatuses.inAnalysis}};n.maxLimitPayment={credit:{value:2e4,label:"20.000,00"},installment:{value:15e4,label:"150.000,00"},minimumInstallmentValue:{value:10,label:"10,00"},maximumInstallments:{value:12}};n.asaasWithdrawStatus={PENDING:"PENDING",PROCESSING:"PROCESSING",DONE:"DONE",FAILED:"FAILED",CANCELLED:"CANCELLED",BLOCKED:"BLOCKED"};n.withdrawStatuses={DONE:"Efetuada",PENDING:"Pendente",BANK_PROCESSING:"Processando",CANCELLED:"Cancelada",FAILED:"Falhou",BLOCKED:"Bloqueado",group:{done:["DONE"],open:["PENDING","BANK_PROCESSING"],error:["CANCELLED","FAILED","BLOCKED"]}};n.vobiPayBankAccountType={corrente:"CONTA_CORRENTE",poupanca:"CONTA_POUPANCA",salario:"CONTA_SALARIO",pagamento:"CONTA_DE_PAGAMENTO"};n.withdrawSteps={list:1,fillData:2,confirmData:3};n.billingManagerStatus={pending:1,send:2,error:3,discarded:4,notSent:5,sending:6};n.billingManagerStatusDesc={1:"Aguardando",2:"Enviado",3:"Erro",4:"Descartado",5:"N\xE3o enviado",6:"Enviando"};n.billingManagerChannels={allChannels:["email","sms","whatsapp"],email:{value:"email",label:"E-mail"},sms:{value:"sms",label:"SMS"},whatsapp:{value:"whatsapp",label:"WhatsApp"}};n.billingManagerType={allTypes:["DC","D-3","D0","D+1","D+3","D+6"],billingRulerType:["D-3","D0","D+1","D+3","D+6"],DC:{label:"Cria\xE7\xE3o da cobran\xE7a",value:"DC",tooltip:"Ao criar a cobran\xE7a",message:"de cobran\xE7a criada para {customerName} {value}"},"D-3":{label:"3 dias antes do vencimento",value:"D-3",tooltip:"3 dias antes do vencimento das parcelas",message:"de aviso de vencimento em 3 dias para {customerName} {value}"},D0:{label:"Dia do vencimento",value:"D0",tooltip:"No dia do vencimento da parcela",message:"de aviso de cobran\xE7a vencendo hoje para {customerName} {value}"},"D+1":{label:"1 dia ap\xF3s o vencimento",value:"D+1",tooltip:"1 dia ap\xF3s o vencimento de cada parcela",message:"de aviso de cobran\xE7a vencida h\xE1 1 dia para {customerName} {value}"},"D+3":{label:"3 dias ap\xF3s o vencimento",value:"D+3",tooltip:"3 dias ap\xF3s o vencimento de cada parcela",message:"de aviso de cobran\xE7a vencida h\xE1 3 dias para {customerName} {value}"},"D+6":{label:"6 dias ap\xF3s o vencimento",value:"D+6",tooltip:"6 dias ap\xF3s o vencimento de cada parcela",message:"de aviso de cobran\xE7a vencida h\xE1 6 dias para {customerName} {value}"}};n.paymentCreditPermission={allowed:2e4,blocked:0};n.withdrawLimit={pj:{daytime:2e4,nightly:5e3},pf:{daytime:2e4,nightly:5e3}};n.optionsRefurbishReport={financialPhysical:"financialPhysics",budgeted:"budgeted",financial:"financial",physic:"physic",financialPhysicBudgeted:{value:"financialPhysics.budgeted"},physicBudgeted:{value:"physic.budgeted"},physicAccomplished:{value:"physic.accomplished"},financialBudgeted:{value:"financial.budgeted"},financialAccomplished:{value:"financial.accomplished"},financialBudAcp:{value:"financial.budgetedAccomplished"},physicBudAcp:{value:"physic.budgetedAccomplished"}};n.refurbishReportType={budgeted:[n.optionsRefurbishReport.financialPhysicBudgeted.value,n.optionsRefurbishReport.physicBudgeted.value,n.optionsRefurbishReport.financialBudgeted.value],accomplished:[n.optionsRefurbishReport.physicAccomplished.value,n.optionsRefurbishReport.financialAccomplished.value],budgetedAccomplished:[n.optionsRefurbishReport.financialBudAcp.value,n.optionsRefurbishReport.physicBudAcp.value],common:[n.optionsRefurbishReport.financialPhysicBudgeted.value,n.optionsRefurbishReport.physicBudgeted.value,n.optionsRefurbishReport.physicBudAcp.value,n.optionsRefurbishReport.financialBudgeted.value,n.optionsRefurbishReport.financialBudAcp.value],measurement:[n.optionsRefurbishReport.physicAccomplished.value],financial:[n.optionsRefurbishReport.financialAccomplished.value],customColumns:[n.optionsRefurbishReport.physicBudAcp.value,n.optionsRefurbishReport.financialBudAcp.value],simpleExport:[n.optionsRefurbishReport.physicAccomplished.value,n.optionsRefurbishReport.financialAccomplished.value,n.optionsRefurbishReport.physicBudgeted.value,n.optionsRefurbishReport.financialBudgeted.value]};n.reportTypeActions={consolidatedByProject:{model:"refurbishes",clickRow:!1,groupBy:"refurbishes",rangeField:"paidDate",idInstallmentStatus:n.installmentStatuses.allPaid,howDoesItsWorksId:"howFinancialReportByProjectStatusPaid",tableTitle:"Resultado de projetos",tableTitleTooltip:"S\xE3o contabilizadas apenas parcelas que j\xE1 foram marcadas como pago das receitas e despesas.",withResultChart:!0,filters:{dateRangePicker:!0,selectDateFieldTofilter:!0,yearPicker:!1,columns:!0},showLegend:!0,exportCsvModel:"financial/report",exportEntity:"consolidatedByProject"},foreseenByProject:{model:"refurbishes",clickRow:!1,groupBy:"refurbishes",rangeField:"dueDate",howDoesItsWorksId:"howFinancialReportByProjectAllStatus",tableTitle:"Previs\xE3o de resultado dos projetos",tableTitleTooltip:"S\xE3o contabilizadas todas as receitas e despesas, que j\xE1 foram pagas ou ainda em aberto.",withResultChart:!0,filters:{dateRangePicker:!0,selectDateFieldTofilter:!0,yearPicker:!1,columns:!0},showLegend:!0,exportCsvModel:"financial/report",exportEntity:"foreseenByProject"},resultsByInstallment:{model:"installments",clickRow:!0,groupBy:"months",rangeField:"paidDate",idInstallmentStatus:n.installmentStatuses.allPaid,howDoesItsWorksId:"howResultsWork",tableTitle:"Transa\xE7\xF5es realizadas",tableTitleTooltip:"S\xE3o contabilizadas apenas parcelas que j\xE1 foram marcadas como pago das receitas e despesas",withResultChart:!0,filters:{dateRangePicker:!0,selectDateFieldTofilter:!0,yearPicker:!1,columns:!0},showLegend:!0,exportCsvModel:"financial",exportEntity:"resultsByInstallment"},"cashFlow-monthly":{model:"cashFlow",idInstallmentStatus:n.installmentStatuses.allPaid,howDoesItsWorksId:"howCashFlowWork",tableTitle:"Fluxo de caixa",tableTitleTooltip:"",withResultChart:!1,filters:{dateRangePicker:!1,selectDateFieldTofilter:!1,yearPicker:!0,columns:!0},showLegend:!1,exportCsvModel:"financial/cashFlow",exportEntity:"cashFlow"},dre:{model:"dre",howDoesItsWorksId:"howDREWorks",filters:{dateRangePicker:!1,selectDateFieldTofilter:!1,yearPicker:!0,columns:!1},showLegend:!1,exportCsvModel:"financial/dre",exportEntity:"dre"},"cashFlow-daily":{model:"cashFlow",howDoesItsWorksId:"howDailyCashFlowWorks",tableTitleTooltip:"",filters:{dateRangePicker:!1,selectDateFieldTofilter:!1,monthPicker:!0,columns:!1,paymentBankAccount:!0},showLegend:!1,exportCsvModel:"financial/dailyCashFlow",exportEntity:"dailyCashFlow"}};n.extraValuesPayment={taxes:"taxes",discount:"discount",shipping:"shipping",dueDateDiscount:"dueDateDiscount",dueDateDiscountType:"dueDateDiscountType",dueDateLimitDays:"dueDateLimitDays",fine:"fine",fineType:"fineType",interest:"interest"};n.extraValuesPaymentType={simple:[n.extraValuesPayment.taxes,n.extraValuesPayment.discount,n.extraValuesPayment.shipping],asaas:[n.extraValuesPayment.dueDateDiscount,n.extraValuesPayment.dueDateDiscountType,n.extraValuesPayment.dueDateLimitDays,n.extraValuesPayment.fine,n.extraValuesPayment.fineType,n.extraValuesPayment.interest]};n.fineInterestDiscountType={percentage:{value:"PERCENTAGE",label:"Percentual"},fixed:{value:"FIXED",label:"Valor fixo"}};n.paymentPermissions={financialResume:"financialResume",financialSupplier:"financialSupplier",financialOwnBusiness:"financialOwnBusiness",financialIncome:"financialIncome",financialExpense:"financialExpense",financialTransfer:"financialTransfer",financialResults:"financialResults",financialBankStatement:"financialBankStatement",financialReport:"financialReport",projectResume:"projectResume",projectSupplier:"projectSupplier",projectOwnBusiness:"projectOwnBusiness",projectIncome:"projectIncome",projectExpense:"projectExpense",projectResults:"projectResults",projectBudgetedAccomplished:"projectBudgetedAccomplished"};n.colors={primary50:"#EBF0FF",primary100:"#D6E2FF",primary400:"#4F8EFA",primary500:"#2F74DE",teal500:"#00a296",teal600:"#009389",green500:"#46a22e",green600:"#40932A",yellow400:"#e0a819",yellow500:"#BA8A12",orange500:"#de7400",orange600:"#CA6A00",red50:"#fdeceb",red100:"#fac4c0",red500:"#ef4134",red600:"#D93B2F",pink500:"#e547a6",pink600:"#D04197",violet500:"#a145de",violet600:"#933FCA",neutral500:"#6F778B",neutral600:"#565E71"};n.maxInstallmentLength=60;n.purchaseSolicitationStatus={draft:1,open:2,quote:3,buy:4,closed:5,canceled:6,approved:19,rejected:20,editable:[1,2,20],ongoing:[2,3,4,19,20]};n.purchaseOrderStatus={draft:7,open:8,sent:9,accepted:10,refused:11,closed:12,approved:21,rejected:22,requestableRefund:[10,12],chargeableAdministrationFee:[10,12],editable:[7,8,22],ongoing:[8,9],finished:[10,12],allRejected:[11,22]};n.purchaseQuoteStatus={draft:13,open:14,pendingResponse:15,quoted:16,buy:17,finished:18,editable:[13,14,15],ongoing:[14,15,16,17]};n.groupPermission={admin:1,member:2};n.mimeTypes={DOCUMENT:{PDF:"application/pdf"},IMAGE:{JPEG:"image/jpeg",PNG:"image/png",WEBP:"image/webp"},AUDIO:{MPEG:"audio/mpeg",OGG:"audio/ogg",WAV:"audio/wav",MP4:"audio/mp4",AAC:"audio/aac"}};var v=n;var I={sources:[],baseUrl:""},Ee=(e={})=>{Object.keys(e).forEach(t=>{typeof e[t]=="object"&&e[t]!==null&&!Array.isArray(e[t])?I[t]={...I[t],...e[t]}:I[t]=e[t]})},Ce=()=>I,N=(e,t=null)=>e in I?I[e]:t;var Ie=({data:e,allowAudience:t=[...v.userType.all],permissions:a})=>{var o,r;try{let s=N("sources",[]),{user:c,isPublic:m,isAnonymous:p,source:u=""}=e;if(m||c!=null&&c.isCustomerView)return null;let f=[...t,v.userType.system.value];return!(c!=null&&c.id)||c.isActive===!1||p||!f.includes(c.userType||"")?y.UNAUTHORIZED.notAuthorized:(c==null?void 0:c.userType)===v.userType.system.value&&!(c!=null&&c.idCompany)?s!=null&&s.includes(u)?null:y.UNAUTHORIZED.notAuthorized:(o=v.userType.skipPermission)!=null&&o.includes((c==null?void 0:c.userType)||"")||!(a!=null&&a.length)?null:!((r=c.permissions)!=null&&r.find(D=>a==null?void 0:a.includes(D)))?y.UNAUTHORIZED.notAuthorized:null}catch{return y.UNAUTHORIZED.notAuthorized}};var k=e=>{if(typeof e!="string")return"";let t=e.trim();return t.charAt(0).toUpperCase()+t.slice(1)};var ve=e=>{let t,a,o,r,s,c,m=!0;if(e.length<14)return!1;for(let p=1;p<e.length;p++)if(e.charAt(p-1)!==e.charAt(p)){m=!1;break}if(!m){c=e.length-2,t=e.substring(0,c),a=e.substring(c),o=0,s=c-7;for(let p=0;p<c;p++)o+=parseInt(t.charAt(p))*s--,s<2&&(s=9);if(r=o%11<2?0:11-o%11,r!==parseInt(a.charAt(0)))return!1;c+=1,t=e.substring(0,c),o=0,s=c-7;for(let p=0;p<c;p++)o+=parseInt(t.charAt(p))*s--,s<2&&(s=9);return r=o%11<2?0:11-o%11,r===parseInt(a.charAt(1))}return!1};var Ne=(e,t=!1)=>{let a,o;return a=0,e.length<11||!t&&e.split("").every(r=>r===e[0])||(Array.from({length:9}).forEach((r,s)=>{a+=parseInt(e.substring(s,s+1),10)*(11-(s+1))}),o=a*10%11,(o===10||o===11)&&(o=0),o!==parseInt(e.substring(9,10),10))?!1:(a=0,Array.from({length:10}).forEach((r,s)=>{a+=parseInt(e.substring(s,s+1),10)*(12-(s+1))}),o=a*10%11,(o===10||o===11)&&(o=0),o===parseInt(e.substring(10,11),10))};var Ae=e=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e);var Be=e=>decodeURI(e)!==decodeURIComponent(e);var Pe=e=>(...t)=>e.length>t.length?e.bind(null,...t):e(...t);var T=x(require("crypto-js")),Re=(e,t)=>T.AES.decrypt(e,t).toString(T.enc.Utf8);var Te=(e,t)=>Object.keys(t).reduce((a,o)=>{if(e[o]===t[o]||o==="lastModifiedBy"||o==="createdAt")return a;let{oldData:r,newData:s}=a;return{oldData:{...r,[o]:e[o]},newData:{...s,[o]:t[o]}}},{});var we=(e,t)=>e&&typeof e=="string"?e.search(/[a-z]\.[a-z]/i)>=0?t.__(e):e:"";var Se=e=>{let t={};return e==null||e.forEach(a=>{Object.keys(a).forEach(r=>{typeof a[r]=="string"&&(a[r].toLowerCase()==="true"||a[r].toLowerCase()==="false")?t[r]=a[r].toLowerCase()==="true":t[r]=a[r]})}),t};var K=x(require("crypto-js")),Le=(e,t)=>(typeof e=="object"&&(e=JSON.stringify(e)),K.AES.encrypt(e,t).toString());var Oe={on(e,t){document.addEventListener(e,t)},dispatch(e,t){document.dispatchEvent(new CustomEvent(e,{detail:t}))},remove(e,t){document.removeEventListener(e,t)}};var _=(e,t)=>{if(Array.isArray(e)===!1)return null;let a=null;return e.some(o=>(a=t(o),!!a)),a};var Ue=(e,t)=>e?e[t]?e[t]:_(e.or,a=>a[t]):null;var Fe=e=>{let t=e.lastIndexOf(".");return t===-1?e:e.substring(0,t)};var ke=(e,t)=>e&&e.length&&t&&t.length?e.map(a=>Object.entries(a).filter(([o])=>t.includes(o)).reduce((o,[r,s])=>Object.assign(o,{[r]:s}),{})):[];var _e=e=>e.filter(t=>F(t).length>0&&t);var M=(e,t={})=>{let a={decimalCount:2,decimal:",",thousands:".",...t},{decimal:o,thousands:r,currencySymbol:s}=a,{decimalCount:c}=a;try{c=Math.abs(c),c=isNaN(c)?2:c;let m=e<0?"-":"",p=parseInt(e=Math.abs(Number(e)||0).toFixed(c),10).toString(),u=p.length>3?p.length%3:0;return(s?`${m}${s}`:m)+(u?p.substr(0,u)+r:"")+p.substr(u).replace(/(\d{3})(?=\d)/g,`$1${r}`)+(c?o+Math.abs(e-parseInt(p,10)).toFixed(c).slice(2):"")}catch(m){return console.log(m),""}};var g=x(require("moment-timezone")),Q=e=>{let t=e?new Date(e):new Date,a={timeZone:"America/Sao_Paulo"},o=t.toLocaleString("en-US",a);return new Date(o)},X=(e,t,a,o,r)=>{if(!e)return null;if(r)return(0,g.default)(e,t);let s=g.default.utc(e);return o||s.local(),a&&s.locale(a),s.format(t)},Me=(e,t="YYYY-MM-DD")=>{let a=(0,g.default)(e,t).add(1,"days");return typeof e=="string"?a.format(t):a.toDate()},ee=(e=new Date,t=1)=>{let a=new Date(e.setDate(e.getDate()+t));return a.getDay()%6?a:ee(a)},te=(e=new Date,t=1)=>{let a=new Date(e.setDate(e.getDate()-t));return a.getDay()%6?a:te(a)},w=e=>e?g.default.utc(e).local():null,j=e=>e&&g.default.tz(new Date(e),"America/Sao_Paulo"),je=(e,t)=>{let a=j(e);return a&&a.format(t||"YYYY-MM-DDTHH:mm:ssZ")},Ve=(e,t)=>{if(!e||!t)return null;let a=w(e),o=w(t);return!a||!o?null:o.diff(a,"months")},Ge=(e,t)=>{var a;return!e||!t?null:(a=w(e))==null?void 0:a.isAfter(t)},$e=(e=!0)=>{let t=g.default.tz("America/Sao_Paulo");return e?t.startOf("day").toDate():t.toDate()},ze=(e=!0)=>{let t=g.default.tz("America/Sao_Paulo").subtract(1,"day");return e?t.startOf("day").toDate():t.toDate()},qe=(e=!0)=>{let t=g.default.tz("America/Sao_Paulo").add(1,"day");return e?t.startOf("day").toDate():t.toDate()},He=e=>{let t=Q(e);return`${t.getFullYear()}${t.getMonth().toString().padStart(2,"0")}`},Ye=(e,t)=>{let a=new Date(e),o=new Date;return new Date(o.getFullYear()-t,o.getMonth(),o.getDate()).getTime()>a.getTime()},We=e=>g.default.max(e),Je=e=>g.default.min(e),Ze=e=>(0,g.default)(e).isValid(),V=(e,t)=>new Date(e,t-1,1).toISOString().split("T")[0],G=(e,t)=>new Date(e,t,0).toISOString().split("T")[0],$=()=>{let e=new Date(j(new Date));return X(e,"YYYY-MM-DD")};var Ke=x(require("dayjs"));var S=e=>e.length===2?[e[0].replace(/\./g,""),e[1].replace(/\./g,"")]:e;var ae=e=>{let t=S(e.toString().replace("%","").replace("R$","").replace(/\s/g,"").trim().split(","));if(t.length===2)return t.join(".");let a=S(t[0].split("."));return a.length===2?a.join("."):t[0].replace(/\./g,"")},Qe=e=>{if(e==null)return e;if(!ae(e))return null;let t=Number(ae(e));return t>=Number.MAX_SAFE_INTEGER||Number.isNaN(t)?null:t},Xe=e=>{var a,o;if(!e)return null;let t=e.toString();return t.indexOf("/")>=0?null:(t=t.replace(/[^0-9.,-]/g,""),t.includes(",")&&t.includes(".")?(t.lastIndexOf(",")>t.lastIndexOf(".")?t=t.replace(/\./g,"").replace(",","."):t=t.replace(/,/g,""),Number(t)):t.includes(",")&&((a=t.split(",")[1])==null?void 0:a.length)>0?Number(t.replace(",",".")):t.includes(".")&&((o=t.split(".")[1])==null?void 0:o.length)>0?Number(t):Number(t.replace(/[.,]/g,"")))};var et=e=>{let t=e.indexOf("."),a=e.length;return t&&a?e.substr(t,a):""};var tt=new RegExp('<img[^>]+src="(https://vobi-storage[^">]+)"',"gm");var at=e=>{if(!e)return!1;let t=new Date(e);return!isNaN(t.getTime())};var ot=e=>!isNaN(parseFloat(e))&&!isNaN(e-0);var nt=e=>{try{return!!new URL(e)}catch{return!1}};var oe=x(require("jwt-decode")),rt=e=>{var r;let{authorization:t,Authorization:a}=e,o=(r=t||a)==null?void 0:r.split(" ");return(o==null?void 0:o[0])==="Bearer"?o[1]:null},st=e=>{let{user:t,isCustomerView:a,accessedBy:o,exp:r,iss:s}=e?(0,oe.default)(e):{};return{...t,isCustomerView:a,accessedBy:o,exp:r,currentDevice:s}};var it=(e,t,a,o)=>{let r=e.idStatus>=5?"projetos":"oportunidades",s=t==="customer"?"cliente":"profissional",c=`/${s}/${r}/perfil/${e.id}`,m=`/${s}`;return`${{operator:c,provider:c,customer:m}}/arquivos?arquivo=${a.id}${o?"&visualizar":""}`};var lt=e=>(e==null?void 0:e.length)===0?null:e;var ct=(e,t="0000")=>(t+e).slice(t.length*-1);var dt=(e,t=!1)=>{let a={};for(let o=0;o<e.length;o++){let r=e[o];a[r.value]=t?{...r}:r.label}return a};var ut=e=>e.replace(/ /g,"").split("-").reduce((t,a)=>t+k(a),"");var pt=e=>e==null?void 0:e.replace(/[,-./]/g,"");var mt=({id:e,name:t,email:a,idCompany:o,userType:r,type:s,isOwner:c,MGMCode:m,groupPermission:p,isActive:u,limitAccess:f,company:h})=>({id:e,name:t,email:a,idCompany:o,userType:r,type:s,isOwner:c,MGMCode:m,groupPermission:p,isActive:u,limitAccess:f,idPlan:h==null?void 0:h.idPlan});var ft=e=>{let t=new Array(e.length),a=0;return new Promise((o,r)=>{e.forEach((s,c)=>{Promise.resolve(s).then(o).catch(m=>{t[c]=m,a+=1,a===e.length&&r(t)})})})};var gt=(e,t)=>Object.keys(t).filter(a=>a!==e).reduce((a,o)=>({...a,[o]:t[o]}),{});var yt=(e,t,a=!0)=>{if(!e)return e;let o=e.toLowerCase();return a&&(o=o.replace(new RegExp("\\s","g"),"")),o=o.replace(new RegExp("[\xE0\xE1\xE2\xE3\xE4\xE5]","g"),"a"),o=o.replace(new RegExp("\xE6","g"),"ae"),o=o.replace(new RegExp("\xE7","g"),"c"),o=o.replace(new RegExp("[\xE8\xE9\xEA\xEB]","g"),"e"),o=o.replace(new RegExp("[\xEC\xED\xEE\xEF]","g"),"i"),o=o.replace(new RegExp("\xF1","g"),"n"),o=o.replace(new RegExp("[\xF2\xF3\xF4\xF5\xF6]","g"),"o"),o=o.replace(new RegExp("\u0153","g"),"oe"),o=o.replace(new RegExp("[\xF9\xFA\xFB\xFC]","g"),"u"),o=o.replace(new RegExp("[\xFD\xFF]","g"),"y"),o=o.replace("'",""),o=o.replace("\xB4",""),o=o.replace("`",""),t&&(o=o.replace(new RegExp("\\W","g"),"")),o};var ht=e=>e==null?void 0:e.normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/[^a-zA-Z0-9-/\s]/g,"").replace(/\//g,"").replace(/\s+/g,"-").toLowerCase();var bt=(e,t)=>e.reduce((a,o,r)=>{let s=Math.floor(r/t),c=[...a];return a[s]||(c[s]=[]),c[s].push(o),c},[]);var xt=(e,t,a)=>{let o=a||t;return(e==null?void 0:e.map(r=>o?r[a]||r[t]:r).reduce((r,s)=>r+(Number(s||0)||0),0))||0};var Dt=(e,t)=>(e==null?void 0:e.map(a=>t(a)).reduce((a,o)=>a+(Number(o||0)||0),0))||0;var Et=e=>{let t=e.replace(/\D/g,"");return/^(?:\+?55 ?)?(?:0?[1-9]{2})?9\d{8}$/.test(t)};var Ct=e=>typeof e!="string"||!e?"":e.normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().trim();var z=(e,t="")=>!e||e.length<=0?[]:e.flatMap((a,o)=>{let r=t?`${t}.${o+1}`:`${o+1}`,{children:s,...c}=a;return[{...c,index:r},...z(s||[],r)]}),It=e=>z(e).reduce((a,o)=>o.id?{...a,[o.id]:o}:a,{});var vt=(e,t)=>{var o;let a=e?(o=Number(e).toFixed(2))==null?void 0:o.replace(".",","):0;return t?`${M(e*100)}%`:a};var Nt=e=>{if(!e)return{};let[t,a]=e.split("-").map(Number),o=$(),r=V(t,a),s=G(t,a);return{startDate:r,endDate:s,actualDate:o}};var At=({oldStatus:e,newStatus:t,total:a,user:o,moveStatus:r})=>{var h,D,b,E,C;let{userApprovalAuthorities:s,isOwner:c,groupPermission:m,company:p}=o||{},u=r==null?void 0:r[e];if(!((h=u==null?void 0:u[t])!=null&&h.isAllowed))return null;if(c||m===n.groupPermission.admin||!((D=u==null?void 0:u[t])!=null&&D.authorityLevel))return u==null?void 0:u[t];let f=s==null?void 0:s.find(B=>{var Y;return(B==null?void 0:B.idApprovalAuthority)===((Y=u==null?void 0:u[t])==null?void 0:Y.authorityLevel)});return!f&&((E=p==null?void 0:p.approvalAuthority)!=null&&E[(b=u==null?void 0:u[t])==null?void 0:b.authorityLevel])?!1:(C=u==null?void 0:u[t])!=null&&C.maxAmount?!Number((f==null?void 0:f.maxAmount)||0)&&(f==null?void 0:f.maxAmount)!==0||Number(a||0)<=Number(f==null?void 0:f.maxAmount)?u==null?void 0:u[t]:!1:u==null?void 0:u[t]};var Bt=e=>{if(!e)return null;let t=e==null?void 0:e.replace(/\D/g,"");return(t==null?void 0:t.length)===11?t==null?void 0:t.replace(/(\d{3})(\d{3})(\d{3})(\d{2})/,"$1.$2.$3-$4"):(t==null?void 0:t.length)===14?t==null?void 0:t.replace(/(\d{2})(\d{3})(\d{3})(\d{4})(\d{2})/,"$1.$2.$3/$4-$5"):t};var q=x(require("dayjs")),Pt=()=>{let e=(0,q.default)().format("YYYY-MM-DD"),t=(0,q.default)().subtract(1,"day").format("YYYY-MM-DD");return{today:e,yesterday:t}};var H=x(require("sharp"));var ne=10*1024*1024,Rt=300,Tt=300,wt=9999,St=9999,re=80,A=(e,t="",a="")=>{var s;let o=Date.now().toString(),r=((s=e==null?void 0:e.type)==null?void 0:s.split("/")[1])||"unknown";return`${t}${o}_${a}.${r}`},Lt=async(e,t)=>{let a=Object.keys(t);return await Promise.all(a.map(async o=>{let r=Number(o),s=r*ne,c=(r+1)*ne,m=e.slice(s,c),p=await fetch(t[o],{method:"PUT",body:m,headers:{"Content-Type":e.type},credentials:"omit"});if(!p.ok)throw new Error(`HTTP error! status: ${p.status}`);return{ETag:p.headers.get("etag"),PartNumber:r+1}}))},Ot=async({fileObject:e,idCompany:t="",suffix:a=""})=>{let o=N("baseUrl","");if(!e||!e.file)throw new Error("Nenhum arquivo fornecido");try{let{file:r,fileName:s}=e,c=A(r,"document_",a),m={name:s||c,size:(r==null?void 0:r.size)||0,type:(r==null?void 0:r.type)||"image/jpeg"},p=await fetch(`${o}/media/start/agent`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({identify:t,file:m})});if(!p.ok){let C=await p.json().catch(()=>({}));throw new Error(`Failed to start upload. Status: ${p.status}, Data: ${JSON.stringify(C)}`)}let u=await p.json(),{signUrls:f,uploadId:h}=u,D=await Lt(e.file,f),b=await fetch(`${o}/media/complete/agent`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({identify:t,file:m,uploadId:h,parts:D})});if(!b.ok){let C=await b.json().catch(()=>({}));throw new Error(`Failed to complete upload. Status: ${b.status}, Data: ${JSON.stringify(C)}`)}let E=await b.json();return E==null?void 0:E.location}catch(r){throw r}},Ut=async(e,t="")=>{var a,o;if(!((a=e==null?void 0:e.type)!=null&&a.includes("image"))||(o=e==null?void 0:e.type)!=null&&o.includes("tif"))return null;try{let r=await e.arrayBuffer(),s=await(0,H.default)(Buffer.from(r)).resize(Rt,Tt,{fit:"inside",withoutEnlargement:!0}).jpeg({quality:re}).toBuffer();return{file:new Blob([s],{type:"image/jpeg"}),fileName:A(e,"thumbnail_",t)}}catch(r){throw new Error(`Error creating thumbnail: ${r instanceof Error?r.message:"Unknown error"}`)}},Ft=async(e,t="")=>{var a,o;if(!((a=e==null?void 0:e.type)!=null&&a.includes("image"))||(o=e==null?void 0:e.type)!=null&&o.includes("tif"))return{file:e,fileName:A(e,"image_",t)};try{let r=await e.arrayBuffer(),s=await(0,H.default)(Buffer.from(r)).resize(wt,St,{fit:"inside",withoutEnlargement:!0}).jpeg({quality:re}).toBuffer();return{file:new Blob([s],{type:"image/jpeg"}),fileName:A(e,"image_",t)}}catch{return{file:e,fileName:A(e,"image_",t)}}},kt=(e,t="image/jpeg")=>{let a;try{e.includes("data:")?a=atob(e.split(",")[1]):a=atob(e);let o=new ArrayBuffer(a.length),r=new Uint8Array(o);for(let s=0;s<a.length;s++)r[s]=a.charCodeAt(s);return new Blob([o],{type:t})}catch(o){throw new Error(`Error processing base64: ${o instanceof Error?o.message:"Unknown error"}`)}};var _t=e=>e.split("+")[1].split("@")[0];0&&(module.exports={BAD_GATEWAY,BAD_REQUEST,FORBIDDEN,INTERNAL_SERVER_ERROR,IsJsonString,METHOD_NOT_ALLOWED,NOT_ALLOWED,NOT_FOUND,SERVICE_UNAVAILABLE,UNAUTHORIZED,asArray,asBrazilianDate,asDate,asyncForEach,base64ToBlob,brazilianDateTime,brazilianDateToDate,capitalize,checkApprovalAuthority,checkCnpj,checkCpf,checkEmail,compressImage,configure,containsEncodedComponents,createThumbnail,currentDay,curry,dateIsValid,decodeToken,decrypt,diffObject,dynamici18nString,elasticTransformOr,encrypt,enumHelper,error,eventBus,extractMonthInfo,extractValueFromWhere,filterAttributes,filterEmpty,findValue,firstMonthDay,flatMapData,flattenChildren,formatCurrency,formatDate,formatDocument,formatNumber,formatNumberAnyFormat,get,getConfig,getDateOpenFinance,getExtension,getMonthNumber,getNameWithoutExtension,getNextDay,getNextWeekday,getPreviewsWeekday,getToday,getToken,getTomorrow,getUUIDFromEmail,getYesterday,imgSrcRegex,isAfter,isDateValid,isNumber,isOfAge,isValidUrl,lastMonthDay,makeRefurbishFileUrl,maxDateToList,minDateToList,monthsBetween,normalizeString,nullIfEmpty,padLeft,parseArrayAsObject,parseRouteToModel,prepareDoc,prepareSession,promiseAny,promiseEach,removeProperty,removeSpecialChar,replaceNumberOrPercentage,slugify,splitList,sum,sumByFunction,upload,validateAccess,validateMobilePhoneNumber,valueReplacer});
1
+ "use strict";var se=Object.create;var R=Object.defineProperty;var ie=Object.getOwnPropertyDescriptor;var le=Object.getOwnPropertyNames;var ce=Object.getPrototypeOf,de=Object.prototype.hasOwnProperty;var ue=(e,t)=>{for(var a in t)R(e,a,{get:t[a],enumerable:!0})},W=(e,t,a,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of le(t))!de.call(e,n)&&n!==a&&R(e,n,{get:()=>t[n],enumerable:!(o=ie(t,n))||o.enumerable});return e};var C=(e,t,a)=>(a=e!=null?se(ce(e)):{},W(t||!e||!e.__esModule?R(a,"default",{value:e,enumerable:!0}):a,e)),pe=e=>W(R({},"__esModule",{value:!0}),e);var jt={};ue(jt,{BAD_GATEWAY:()=>ye,BAD_REQUEST:()=>d,FORBIDDEN:()=>fe,INTERNAL_SERVER_ERROR:()=>F,IsJsonString:()=>xe,METHOD_NOT_ALLOWED:()=>ge,NOT_ALLOWED:()=>O,NOT_FOUND:()=>U,SERVICE_UNAVAILABLE:()=>he,UNAUTHORIZED:()=>T,_setSharpForTesting:()=>Rt,asArray:()=>_,asBrazilianDate:()=>V,asDate:()=>S,asyncForEach:()=>De,base64ToBlob:()=>kt,brazilianDateTime:()=>Q,brazilianDateToDate:()=>je,capitalize:()=>k,checkApprovalAuthority:()=>Nt,checkCnpj:()=>ve,checkCpf:()=>Ae,checkEmail:()=>Ne,compressImage:()=>_t,configure:()=>Ee,containsEncodedComponents:()=>Be,createThumbnail:()=>Ft,currentDay:()=>$,curry:()=>Pe,dateIsValid:()=>Ze,decodeToken:()=>st,decrypt:()=>Re,diffObject:()=>Te,dynamici18nString:()=>we,elasticTransformOr:()=>Se,encrypt:()=>Le,enumHelper:()=>r,error:()=>y,eventBus:()=>Oe,extractMonthInfo:()=>At,extractValueFromWhere:()=>Ue,filterAttributes:()=>_e,filterEmpty:()=>ke,findValue:()=>M,firstMonthDay:()=>G,flatMapData:()=>It,flattenChildren:()=>z,formatCurrency:()=>j,formatDate:()=>X,formatDocument:()=>Bt,formatNumber:()=>Qe,formatNumberAnyFormat:()=>Xe,get:()=>N,getConfig:()=>Ce,getDateOpenFinance:()=>Pt,getExtension:()=>et,getMonthNumber:()=>He,getNameWithoutExtension:()=>Fe,getNextDay:()=>Me,getNextWeekday:()=>ee,getPreviewsWeekday:()=>te,getToday:()=>qe,getToken:()=>nt,getTomorrow:()=>ze,getUUIDFromEmail:()=>Mt,getYesterday:()=>$e,imgSrcRegex:()=>tt,isAfter:()=>Ge,isDateValid:()=>at,isNumber:()=>ot,isOfAge:()=>Ye,isValidUrl:()=>rt,lastMonthDay:()=>q,makeRefurbishFileUrl:()=>it,maxDateToList:()=>We,minDateToList:()=>Je,monthsBetween:()=>Ve,normalizeString:()=>Ct,nullIfEmpty:()=>lt,padLeft:()=>ct,parseArrayAsObject:()=>dt,parseRouteToModel:()=>ut,prepareDoc:()=>pt,prepareSession:()=>mt,promiseAny:()=>ft,promiseEach:()=>be,removeProperty:()=>gt,removeSpecialChar:()=>yt,replaceNumberOrPercentage:()=>vt,slugify:()=>ht,splitList:()=>xt,sum:()=>bt,sumByFunction:()=>Dt,upload:()=>Ut,validateAccess:()=>Ie,validateMobilePhoneNumber:()=>Et,valueReplacer:()=>L});module.exports=pe(jt);var J={userNotFound:"Usu\xE1rio n\xE3o foi encontrado.",pageNotFound:"Desculpe. P\xE1gina n\xE3o encontrada.",notAuthorized:"N\xE3o autorizado.",tokenExpired:"Sess\xE3o expirada.",invalidToken:"Token inv\xE1lido.",notUpdated:"Nenhum registro foi alterado.",cantDelete:"Esse registro est\xE1 sendo usado, por isso n\xE3o \xE9 poss\xEDvel apaga-lo.",general:"Ocorreu um erro.",sentError:"Erro ao enviar proposta",noUser:"Usu\xE1rio n\xE3o encontrado.",noEmail:"E-mail n\xE3o foi informado",noPassword:"Senha n\xE3o foi informada.",invalidEmail:"O e-mail informado \xE9 inv\xE1lido.",uniqueEmail:"O e-mail informado j\xE1 est\xE1 cadastrado.",invalidCPF:"O CPF informado \xE9 inv\xE1lido.",invalidCNPJ:"O CNPJ informado \xE9 inv\xE1lido.",uniqueName:"Nome informado j\xE1 cadastrado.",noName:"Nome n\xE3o foi informado.",noData:"Dados n\xE3o informados.",noDate:"Data n\xE3o informada.",noModel:"Ocorreu um erro com a entidade",invalidId:"Id inv\xE1lido",invalidCredentials:"Usu\xE1rio e/ou senha inv\xE1lidos.",noPhone:"Telefone n\xE3o foi informado.",noCPF:"CPF n\xE3o foi informado.",noRG:"RG n\xE3o foi informado.",noZipcode:"CEP n\xE3o foi informado.",noStreet:"Endere\xE7o n\xE3o foi informado.",noNumber:"N\xFAmero n\xE3o foi informado.",noState:"Estado n\xE3o foi informado.",noCity:"Cidade n\xE3o foi informada.",noNeighborhood:"Bairro n\xE3o foi informado.",noCNPJ:"CNPJ n\xE3o foi informado.",noCompanyName:"Raz\xE3o social n\xE3o foi informada.",noTrademarkName:"Nome fantasia n\xE3o foi informado.",noCompanyZipcode:"CEP da empresa n\xE3o foi informado.",noCompanyStreet:"Endere\xE7o da empresa n\xE3o foi informado.",noCompanyNumber:"N\xFAmero da empresa n\xE3o foi informado.",noCompanyState:"Estado da empresa n\xE3o foi informado.",noCompanyCity:"Cidade da empresa n\xE3o foi informado.",noCompanyNeighborhood:"Bairro da empresa n\xE3o foi informado.",noBirthdate:"Data de nascimento n\xE3o foi informada.",noCompany:"Empresa n\xE3o informada.",invalidURL:"URL inv\xE1lida.",noPermissions:"Permiss\xF5es n\xE3o encontradas.",fileLimit50:"Os arquivos n\xE3o pode ter mais de 50 MB. Para arquivos maiores voc\xEA pode informar a url de um servidor externo.",fileLimit10:"Os arquivos n\xE3o pode ter mais de 10 MB. Para arquivos maiores voc\xEA pode informar a url de um servidor externo no corpo da mensagem.",maxLength:"O nome deve ter no m\xE1ximo 255 caracteres.",invalidData:"Dados inv\xE1lidos.",invalidDate:"Data inv\xE1lida.",invalidDates:"Data de in\xEDcio n\xE3o pode ser maior que data de fim.",invalidUUID:"A URL informada n\xE3o foi encontrada, verifique se est\xE1 correto o link desejado.",invalidValue:"Valor informado inv\xE1lido.",invalidDoc:"O documento informado (CNPJ/CPF) est\xE1 incorreto.",docAlreadyExists:"Documento j\xE1 cadastrado.",tokenPasswordError:"Link de recupera\xE7\xE3o de senha inv\xE1lido.",errPassword:"Senha est\xE1 inv\xE1lida.",noParameters:"Par\xE2metros n\xE3o informado.",uniqueCode:"C\xF3digo j\xE1 cadastrado."};var y={},Z={en:J,"pt-br":"PT_BR_LOCALE"},l=Z.en||Z.en,d=400,O=405,T=401,fe=403,U=404,ge=405,F=500,ye=502,he=503;y.NOT_FOUND={userNotFound:{statusCode:U,code:"NF-00001",message:l.userNotFound},pageNotFound:{statusCode:U,code:"NF-00002",message:l.pageNotFound}};y.UNAUTHORIZED={notAuthorized:{statusCode:T,code:"UA-00001",message:l.notAuthorized},tokenExpired:{statusCode:T,code:"UA-00002",message:l.tokenExpired},invalidToken:{statusCode:T,code:"UA-00003",message:l.invalidToken}};y.NOT_ALLOWED={notUpdated:{statusCode:O,code:"NA-00001",message:l.notUpdated},cantDelete:{statusCode:O,code:"NA-00002",message:l.cantDelete}};y.INTERNAL_SERVER_ERROR={general:{statusCode:F,code:"ISE-00001",message:l.general},sentError:{statusCode:F,code:"ISE-00002",message:l.sentError}};y.BAD_REQUEST={noUser:{statusCode:d,code:"LIB-B-00001",message:l.noUser},noEmail:{statusCode:d,code:"LIB-B-00002",message:l.noEmail},noPassword:{statusCode:d,code:"LIB-B-00003",message:l.noPassword},invalidEmail:{statusCode:d,code:"LIB-B-00004",message:l.invalidEmail},uniqueEmail:{statusCode:d,code:"LIB-B-00005",message:l.uniqueEmail},invalidCPF:{statusCode:d,code:"LIB-B-00006",message:l.invalidCPF},invalidCNPJ:{statusCode:d,code:"LIB-B-00007",message:l.invalidCNPJ},uniqueName:{statusCode:d,code:"LIB-B-00008",message:l.uniqueName},noName:{statusCode:d,code:"LIB-B-00009",message:l.noName},noData:{statusCode:d,code:"LIB-B-00010",message:l.noData},invalidCredentials:{statusCode:d,code:"LIB-B-00011",message:l.invalidCredentials},tokenPasswordError:{statusCode:d,code:"LIB-B-00012",message:l.tokenPasswordError},errPassword:{statusCode:d,code:"LIB-B-00013",message:l.errPassword},noPhone:{statusCode:d,code:"LIB-B-00014",message:l.noPhone},noCPF:{statusCode:d,code:"LIB-B-00015",message:l.noCPF},noRG:{statusCode:d,code:"LIB-B-00016",message:l.noRG},noZipcode:{statusCode:d,code:"LIB-B-00017",message:l.noZipcode},noStreet:{statusCode:d,code:"LIB-B-00018",message:l.noStreet},noNumber:{statusCode:d,code:"LIB-B-00019",message:l.noNumber},noState:{statusCode:d,code:"LIB-B-00020",message:l.noState},noCity:{statusCode:d,code:"LIB-B-00021",message:l.noCity},noNeighborhood:{statusCode:d,code:"LIB-B-00022",message:l.noNeighborhood},noCNPJ:{statusCode:d,code:"LIB-B-00023",message:l.noCNPJ},noCompanyName:{statusCode:d,code:"LIB-B-00024",message:l.noCompanyName},noTrademarkName:{statusCode:d,code:"LIB-B-00025",message:l.noTrademarkName},noCompanyZipcode:{statusCode:d,code:"LIB-B-00026",message:l.noCompanyZipcode},noCompanyStreet:{statusCode:d,code:"LIB-B-00027",message:l.noCompanyStreet},noCompanyNumber:{statusCode:d,code:"LIB-B-00028",message:l.noCompanyNumber},noCompanyState:{statusCode:d,code:"LIB-B-00029",message:l.noCompanyState},noCompanyCity:{statusCode:d,code:"LIB-B-00030",message:l.noCompanyCity},noCompanyNeighborhood:{statusCode:d,code:"PRO-00031",message:l.noCompanyNeighborhood},noBirthdate:{statusCode:d,code:"LIB-B-00032",message:l.noBirthdate},noCompany:{statusCode:d,code:"LIB-B-00033",message:l.noCompany},noParameters:{statusCode:d,code:"LIB-B-00034",message:l.noParameters},invalidDoc:{statusCode:d,code:"LIB-B-00035",message:l.invalidDoc},docAlreadyExists:{statusCode:d,code:"LIB-B-00036",message:l.docAlreadyExists},invalidURL:{statusCode:d,code:"LIB-B-00037",message:l.invalidURL},noPermissions:{statusCode:d,code:"LIB-B-00038",message:l.noPermissions},fileLimit50:{statusCode:d,code:"LIB-B-00039",message:l.fileLimit50},fileLimit10:{statusCode:d,code:"LIB-B-00040",message:l.fileLimit10},invalidDates:{statusCode:d,code:"LIB-B-00041",message:l.invalidDates},maxLength:{statusCode:d,code:"LIB-B-00042",message:l.maxLength},uniqueCode:{statusCode:d,code:"LIB-B-00043",message:l.uniqueCode},invalidValue:{statusCode:d,code:"LIB-B-00044",message:l.invalidValue},invalidData:{statusCode:d,code:"LIB-B-00045",message:l.invalidData},invalidUUID:{statusCode:d,code:"LIB-B-00046",message:l.invalidUUID},noDate:{statusCode:d,code:"LIB-B-00047",message:l.noDate},invalidDate:{statusCode:d,code:"LIB-B-00048",message:l.invalidDate},invalidId:{statusCode:d,code:"LIB-B-00049",message:l.invalidId},noModel:{statusCode:d,code:"LIB-B-00050",message:l.noModel},sequelizeValidation:{statusCode:d,code:"LIB-B-00999"}};var xe=e=>{try{JSON.parse(e)}catch{return!1}return JSON.parse(e)};var be=async(e,t)=>{for(let a of e)await t(a,e.indexOf(a))};var _=e=>e==null?[]:Array.isArray(e)?e:[e];var De=async(e,t)=>{await Promise.all(e.map((a,o)=>t(a,o,e)))};var r={};r.fileType={receipt:"receipt",paymentVoucher:"paymentVoucher",quote:"quote",others:"others",project:"project",proposal:"proposal",bankBillet:"bankBillet",refund:"refund"};r.refurbishItemStatus={approved:{label:"Aprovado",value:"approved"},rejected:{label:"N\xE3o aprovado",value:"rejected"},pending:{label:"Para aprovar",value:"pending"},activeStatus:["approved","pending"]};r.companyStatus={created:{id:1,name:"Cadastro iniciado"},onBoarding:{id:2,name:"Aguardando libera\xE7\xE3o"},active:{id:3,name:"Ativo"},blocked:{id:4,name:"Bloqueado"},cancelled:{id:5,name:"Cancelada"}};r.companyType={architect:{id:1,name:"Arquitetura e design de interiores",roles:["architect"]},service:{id:2,name:"Execu\xE7\xE3o de obra"},store:{id:3,name:"Loja de produtos e materiais"},factory:{id:4,name:"Fabricante"},other:{id:10,name:"Outros"}};r.refurbishStatus={new:{id:1,name:"Novo"},contact:{id:2,name:"Em contato"},proposalSent:{id:3,name:"Proposta enviada"},archived:{id:4,name:"Arquivada"},winner:{id:5,name:"Ganha",winner:!0},execution:{id:5,name:"Em andamento"},finished:{id:6,name:"Finalizado"},cancelled:{id:7,name:"Cancelado"},activeOpportunity:[1,2,3],opportunity:[1,2,3,4],project:[5,6,7],end:[4,5,6,7]};r.refurbishStage={1:{id:1,name:"Oportunidade"},2:{id:2,name:"Projeto"}};r.roles={admin:{id:"admin",name:"Administrador"},sales:{id:"sales",name:"Venda"},arch:{id:"architect",name:"Arquitetura"},plan:{id:"plan",name:"Planejamento"},work:{id:"work",name:"Obra"},quality:{id:"quality",name:"Qualidade"},supply:{id:"supply",name:"Suprimentos"},contractor:{id:"contractor",name:"Empreiteiro"},beta:{id:"beta",name:"Beta user"}};r.userType={guest:{name:"Visitante",value:"guest",type:"visitante"},operator:{name:"Operador",value:"operator",type:"operador"},customer:{name:"Cliente",value:"customer",type:"cliente"},provider:{name:"Profissional",value:"provider",type:"profissional"},system:{name:"Sistema",value:"system",type:"sistema"},anonymous:{name:"An\xF4nimo",value:"anonymous"},realTypes:["guest","operator","customer","provider"],skipPermission:["operator","customer"],all:["system","provider","customer","operator"]};r.paymentStatus={waitingOrder:1,analyzing:2,waitingRelease:3,released:4,transferred:5,markAsPaid:6,allowTransfer:[3,4],allowChange:[1,6],sendEmail:[4,5]};r.personTypes={pf:"pf",pj:"pj"};r.asaasPersonTypes={pf:"FISICA",pj:"JURIDICA"};r.stepAccount={personal:0,address:1,documents:2};r.statusVobiPay={PENDING:{color:"#FF8E1B",label:"Em an\xE1lise"}};r.refurbishItemType={product:1,labor:2,parent:3,composition:4,notParent:[1,2,4],productLabor:[1,2]};r.notificationChannel={system:"system",email:"email",whatsApp:"whatsApp"};r.planType={free:{value:"free",label:"freemium"},paid:{value:"paid",label:"Pago"}};r.installmentStatuses={pendingPayment:1,paid:2,confirm:3,paidManually:4,inAnalysis:5,refunded:6,refundRequested:7,onGoingRefund:8,chargebackRequested:9,onGoingChargeback:10,waitingChargeback:11,cancelled:12,all:[1,2,3,4,5,6,7,8,9,10],paidVobiPay:[2,3,7,8,9,10,11],bankStatement:[2,4,6,7,8,9,10,11],allPaid:[2,3,4,7,8,9,10,11],allPaidBalance:[2,4,7,8,9,10,11],allPending:[1,5]};r.paymentStatuses={draft:1,open:2,paid:3,cancelled:4,realValues:[2,3],allStatus:[1,2,3,4]};r.billType={income:"receita",expense:"despesa",transfer:"transferencia",balance:"saldo inicial"};r.paymentTypeValues={expense:{value:"expense",label:"despesa"},income:{value:"income",label:"receita"},transfer:{value:"transfer",label:"transfer\xEAncia"},payment:{value:"payment",label:"pagamento"},balance:{value:"balance",label:"saldo inicial"}};r.financialCategories={serviceSelling:1,productsSelling:2,fee:3,investimentIncome:4,others:5,advanceFutureCapital:6,capitalIncrease:7,bankLoan:8,institutionLoan:9,partnerLoan:10,paymentShareCapital:11};r.getEnumValue=(e,t,a=["id","name"])=>{let o=null;return!e||!t||Object.keys(e).some(n=>e[n][a[0]]===t?(o=e[n][a[1]],!0):!1),o};r.asaasPixType={CPF:"CPF",CNPJ:"CNPJ",EMAIL:"E-mail",PHONE:"Celular",EVP:"Aleat\xF3ria"};r.paymentTypes={pix:1,bankSlip:2,creditCard:3,debitCard:4,transfer:5,money:6,other:7};r.paymentTypesDesc={1:"Pix",2:"Boleto",3:"Cart\xE3o de cr\xE9dito",4:"Cart\xE3o de d\xE9bito",5:"Transfer\xEAncia",6:"Dinheiro",7:"Outro"};r.vobiPayPaymentType={pix:1,bankSlip:2,creditCard:3,all:[1,2,3],1:"pix",2:"bankSlip",3:"creditCard"};r.asaasPaymentStatus={PENDING:{label:"PENDING",value:r.installmentStatuses.pendingPayment},RECEIVED:{label:"RECEIVED",value:r.installmentStatuses.paid},CONFIRMED:{label:"CONFIRMED",value:r.installmentStatuses.confirm},OVERDUE:{label:"OVERDUE",value:null},REFUNDED:{label:"REFUNDED",value:r.installmentStatuses.refunded},RECEIVED_IN_CASH:{label:"RECEIVED_IN_CASH",value:r.installmentStatuses.paidManually},REFUND_REQUESTED:{label:"REFUND_REQUESTED",value:r.installmentStatuses.refundRequested},REFUND_IN_PROGRESS:{label:"REFUND_IN_PROGRESS",value:r.installmentStatuses.onGoingRefund},CHARGEBACK_REQUESTED:{label:"CHARGEBACK_REQUESTED",value:r.installmentStatuses.chargebackRequested},CHARGEBACK_DISPUTE:{label:"CHARGEBACK_DISPUTE",value:r.installmentStatuses.onGoingChargeback},AWAITING_CHARGEBACK_REVERSAL:{label:"AWAITING_CHARGEBACK_REVERSAL",value:r.installmentStatuses.waitingChargeback},DUNNING_REQUESTED:{label:"DUNNING_REQUESTED",value:null},DUNNING_RECEIVED:{label:"DUNNING_RECEIVED",value:null},AWAITING_RISK_ANALYSIS:{label:"AWAITING_RISK_ANALYSIS",value:r.installmentStatuses.inAnalysis}};r.maxLimitPayment={credit:{value:2e4,label:"20.000,00"},installment:{value:15e4,label:"150.000,00"},minimumInstallmentValue:{value:10,label:"10,00"},maximumInstallments:{value:12}};r.asaasWithdrawStatus={PENDING:"PENDING",PROCESSING:"PROCESSING",DONE:"DONE",FAILED:"FAILED",CANCELLED:"CANCELLED",BLOCKED:"BLOCKED"};r.withdrawStatuses={DONE:"Efetuada",PENDING:"Pendente",BANK_PROCESSING:"Processando",CANCELLED:"Cancelada",FAILED:"Falhou",BLOCKED:"Bloqueado",group:{done:["DONE"],open:["PENDING","BANK_PROCESSING"],error:["CANCELLED","FAILED","BLOCKED"]}};r.vobiPayBankAccountType={corrente:"CONTA_CORRENTE",poupanca:"CONTA_POUPANCA",salario:"CONTA_SALARIO",pagamento:"CONTA_DE_PAGAMENTO"};r.withdrawSteps={list:1,fillData:2,confirmData:3};r.billingManagerStatus={pending:1,send:2,error:3,discarded:4,notSent:5,sending:6};r.billingManagerStatusDesc={1:"Aguardando",2:"Enviado",3:"Erro",4:"Descartado",5:"N\xE3o enviado",6:"Enviando"};r.billingManagerChannels={allChannels:["email","sms","whatsapp"],email:{value:"email",label:"E-mail"},sms:{value:"sms",label:"SMS"},whatsapp:{value:"whatsapp",label:"WhatsApp"}};r.billingManagerType={allTypes:["DC","D-3","D0","D+1","D+3","D+6"],billingRulerType:["D-3","D0","D+1","D+3","D+6"],DC:{label:"Cria\xE7\xE3o da cobran\xE7a",value:"DC",tooltip:"Ao criar a cobran\xE7a",message:"de cobran\xE7a criada para {customerName} {value}"},"D-3":{label:"3 dias antes do vencimento",value:"D-3",tooltip:"3 dias antes do vencimento das parcelas",message:"de aviso de vencimento em 3 dias para {customerName} {value}"},D0:{label:"Dia do vencimento",value:"D0",tooltip:"No dia do vencimento da parcela",message:"de aviso de cobran\xE7a vencendo hoje para {customerName} {value}"},"D+1":{label:"1 dia ap\xF3s o vencimento",value:"D+1",tooltip:"1 dia ap\xF3s o vencimento de cada parcela",message:"de aviso de cobran\xE7a vencida h\xE1 1 dia para {customerName} {value}"},"D+3":{label:"3 dias ap\xF3s o vencimento",value:"D+3",tooltip:"3 dias ap\xF3s o vencimento de cada parcela",message:"de aviso de cobran\xE7a vencida h\xE1 3 dias para {customerName} {value}"},"D+6":{label:"6 dias ap\xF3s o vencimento",value:"D+6",tooltip:"6 dias ap\xF3s o vencimento de cada parcela",message:"de aviso de cobran\xE7a vencida h\xE1 6 dias para {customerName} {value}"}};r.paymentCreditPermission={allowed:2e4,blocked:0};r.withdrawLimit={pj:{daytime:2e4,nightly:5e3},pf:{daytime:2e4,nightly:5e3}};r.optionsRefurbishReport={financialPhysical:"financialPhysics",budgeted:"budgeted",financial:"financial",physic:"physic",financialPhysicBudgeted:{value:"financialPhysics.budgeted"},physicBudgeted:{value:"physic.budgeted"},physicAccomplished:{value:"physic.accomplished"},financialBudgeted:{value:"financial.budgeted"},financialAccomplished:{value:"financial.accomplished"},financialBudAcp:{value:"financial.budgetedAccomplished"},physicBudAcp:{value:"physic.budgetedAccomplished"}};r.refurbishReportType={budgeted:[r.optionsRefurbishReport.financialPhysicBudgeted.value,r.optionsRefurbishReport.physicBudgeted.value,r.optionsRefurbishReport.financialBudgeted.value],accomplished:[r.optionsRefurbishReport.physicAccomplished.value,r.optionsRefurbishReport.financialAccomplished.value],budgetedAccomplished:[r.optionsRefurbishReport.financialBudAcp.value,r.optionsRefurbishReport.physicBudAcp.value],common:[r.optionsRefurbishReport.financialPhysicBudgeted.value,r.optionsRefurbishReport.physicBudgeted.value,r.optionsRefurbishReport.physicBudAcp.value,r.optionsRefurbishReport.financialBudgeted.value,r.optionsRefurbishReport.financialBudAcp.value],measurement:[r.optionsRefurbishReport.physicAccomplished.value],financial:[r.optionsRefurbishReport.financialAccomplished.value],customColumns:[r.optionsRefurbishReport.physicBudAcp.value,r.optionsRefurbishReport.financialBudAcp.value],simpleExport:[r.optionsRefurbishReport.physicAccomplished.value,r.optionsRefurbishReport.financialAccomplished.value,r.optionsRefurbishReport.physicBudgeted.value,r.optionsRefurbishReport.financialBudgeted.value]};r.reportTypeActions={consolidatedByProject:{model:"refurbishes",clickRow:!1,groupBy:"refurbishes",rangeField:"paidDate",idInstallmentStatus:r.installmentStatuses.allPaid,howDoesItsWorksId:"howFinancialReportByProjectStatusPaid",tableTitle:"Resultado de projetos",tableTitleTooltip:"S\xE3o contabilizadas apenas parcelas que j\xE1 foram marcadas como pago das receitas e despesas.",withResultChart:!0,filters:{dateRangePicker:!0,selectDateFieldTofilter:!0,yearPicker:!1,columns:!0},showLegend:!0,exportCsvModel:"financial/report",exportEntity:"consolidatedByProject"},foreseenByProject:{model:"refurbishes",clickRow:!1,groupBy:"refurbishes",rangeField:"dueDate",howDoesItsWorksId:"howFinancialReportByProjectAllStatus",tableTitle:"Previs\xE3o de resultado dos projetos",tableTitleTooltip:"S\xE3o contabilizadas todas as receitas e despesas, que j\xE1 foram pagas ou ainda em aberto.",withResultChart:!0,filters:{dateRangePicker:!0,selectDateFieldTofilter:!0,yearPicker:!1,columns:!0},showLegend:!0,exportCsvModel:"financial/report",exportEntity:"foreseenByProject"},resultsByInstallment:{model:"installments",clickRow:!0,groupBy:"months",rangeField:"paidDate",idInstallmentStatus:r.installmentStatuses.allPaid,howDoesItsWorksId:"howResultsWork",tableTitle:"Transa\xE7\xF5es realizadas",tableTitleTooltip:"S\xE3o contabilizadas apenas parcelas que j\xE1 foram marcadas como pago das receitas e despesas",withResultChart:!0,filters:{dateRangePicker:!0,selectDateFieldTofilter:!0,yearPicker:!1,columns:!0},showLegend:!0,exportCsvModel:"financial",exportEntity:"resultsByInstallment"},"cashFlow-monthly":{model:"cashFlow",idInstallmentStatus:r.installmentStatuses.allPaid,howDoesItsWorksId:"howCashFlowWork",tableTitle:"Fluxo de caixa",tableTitleTooltip:"",withResultChart:!1,filters:{dateRangePicker:!1,selectDateFieldTofilter:!1,yearPicker:!0,columns:!0},showLegend:!1,exportCsvModel:"financial/cashFlow",exportEntity:"cashFlow"},dre:{model:"dre",howDoesItsWorksId:"howDREWorks",filters:{dateRangePicker:!1,selectDateFieldTofilter:!1,yearPicker:!0,columns:!1},showLegend:!1,exportCsvModel:"financial/dre",exportEntity:"dre"},"cashFlow-daily":{model:"cashFlow",howDoesItsWorksId:"howDailyCashFlowWorks",tableTitleTooltip:"",filters:{dateRangePicker:!1,selectDateFieldTofilter:!1,monthPicker:!0,columns:!1,paymentBankAccount:!0},showLegend:!1,exportCsvModel:"financial/dailyCashFlow",exportEntity:"dailyCashFlow"}};r.extraValuesPayment={taxes:"taxes",discount:"discount",shipping:"shipping",dueDateDiscount:"dueDateDiscount",dueDateDiscountType:"dueDateDiscountType",dueDateLimitDays:"dueDateLimitDays",fine:"fine",fineType:"fineType",interest:"interest"};r.extraValuesPaymentType={simple:[r.extraValuesPayment.taxes,r.extraValuesPayment.discount,r.extraValuesPayment.shipping],asaas:[r.extraValuesPayment.dueDateDiscount,r.extraValuesPayment.dueDateDiscountType,r.extraValuesPayment.dueDateLimitDays,r.extraValuesPayment.fine,r.extraValuesPayment.fineType,r.extraValuesPayment.interest]};r.fineInterestDiscountType={percentage:{value:"PERCENTAGE",label:"Percentual"},fixed:{value:"FIXED",label:"Valor fixo"}};r.paymentPermissions={financialResume:"financialResume",financialSupplier:"financialSupplier",financialOwnBusiness:"financialOwnBusiness",financialIncome:"financialIncome",financialExpense:"financialExpense",financialTransfer:"financialTransfer",financialResults:"financialResults",financialBankStatement:"financialBankStatement",financialReport:"financialReport",projectResume:"projectResume",projectSupplier:"projectSupplier",projectOwnBusiness:"projectOwnBusiness",projectIncome:"projectIncome",projectExpense:"projectExpense",projectResults:"projectResults",projectBudgetedAccomplished:"projectBudgetedAccomplished"};r.colors={primary50:"#EBF0FF",primary100:"#D6E2FF",primary400:"#4F8EFA",primary500:"#2F74DE",teal500:"#00a296",teal600:"#009389",green500:"#46a22e",green600:"#40932A",yellow400:"#e0a819",yellow500:"#BA8A12",orange500:"#de7400",orange600:"#CA6A00",red50:"#fdeceb",red100:"#fac4c0",red500:"#ef4134",red600:"#D93B2F",pink500:"#e547a6",pink600:"#D04197",violet500:"#a145de",violet600:"#933FCA",neutral500:"#6F778B",neutral600:"#565E71"};r.maxInstallmentLength=60;r.purchaseSolicitationStatus={draft:1,open:2,quote:3,buy:4,closed:5,canceled:6,approved:19,rejected:20,editable:[1,2,20],ongoing:[2,3,4,19,20]};r.purchaseOrderStatus={draft:7,open:8,sent:9,accepted:10,refused:11,closed:12,approved:21,rejected:22,requestableRefund:[10,12],chargeableAdministrationFee:[10,12],editable:[7,8,22],ongoing:[8,9],finished:[10,12],allRejected:[11,22]};r.purchaseQuoteStatus={draft:13,open:14,pendingResponse:15,quoted:16,buy:17,finished:18,editable:[13,14,15],ongoing:[14,15,16,17]};r.groupPermission={admin:1,member:2};r.mimeTypes={DOCUMENT:{PDF:"application/pdf"},IMAGE:{JPEG:"image/jpeg",PNG:"image/png",WEBP:"image/webp"},AUDIO:{MPEG:"audio/mpeg",OGG:"audio/ogg",WAV:"audio/wav",MP4:"audio/mp4",AAC:"audio/aac"}};var A=r;var I={sources:[],baseUrl:""},Ee=(e={})=>{Object.keys(e).forEach(t=>{typeof e[t]=="object"&&e[t]!==null&&!Array.isArray(e[t])?I[t]={...I[t],...e[t]}:I[t]=e[t]})},Ce=()=>I,N=(e,t=null)=>e in I?I[e]:t;var Ie=({data:e,allowAudience:t=[...A.userType.all],permissions:a})=>{var o,n;try{let s=N("sources",[]),{user:c,isPublic:m,isAnonymous:p,source:u=""}=e;if(m||c!=null&&c.isCustomerView)return null;let f=[...t,A.userType.system.value];return!(c!=null&&c.id)||c.isActive===!1||p||!f.includes(c.userType||"")?y.UNAUTHORIZED.notAuthorized:(c==null?void 0:c.userType)===A.userType.system.value&&!(c!=null&&c.idCompany)?s!=null&&s.includes(u)?null:y.UNAUTHORIZED.notAuthorized:(o=A.userType.skipPermission)!=null&&o.includes((c==null?void 0:c.userType)||"")||!(a!=null&&a.length)?null:!((n=c.permissions)!=null&&n.find(b=>a==null?void 0:a.includes(b)))?y.UNAUTHORIZED.notAuthorized:null}catch{return y.UNAUTHORIZED.notAuthorized}};var k=e=>{if(typeof e!="string")return"";let t=e.trim();return t.charAt(0).toUpperCase()+t.slice(1)};var ve=e=>{let t,a,o,n,s,c,m=!0;if(e.length<14)return!1;for(let p=1;p<e.length;p++)if(e.charAt(p-1)!==e.charAt(p)){m=!1;break}if(!m){c=e.length-2,t=e.substring(0,c),a=e.substring(c),o=0,s=c-7;for(let p=0;p<c;p++)o+=parseInt(t.charAt(p))*s--,s<2&&(s=9);if(n=o%11<2?0:11-o%11,n!==parseInt(a.charAt(0)))return!1;c+=1,t=e.substring(0,c),o=0,s=c-7;for(let p=0;p<c;p++)o+=parseInt(t.charAt(p))*s--,s<2&&(s=9);return n=o%11<2?0:11-o%11,n===parseInt(a.charAt(1))}return!1};var Ae=(e,t=!1)=>{let a,o;return a=0,e.length<11||!t&&e.split("").every(n=>n===e[0])||(Array.from({length:9}).forEach((n,s)=>{a+=parseInt(e.substring(s,s+1),10)*(11-(s+1))}),o=a*10%11,(o===10||o===11)&&(o=0),o!==parseInt(e.substring(9,10),10))?!1:(a=0,Array.from({length:10}).forEach((n,s)=>{a+=parseInt(e.substring(s,s+1),10)*(12-(s+1))}),o=a*10%11,(o===10||o===11)&&(o=0),o===parseInt(e.substring(10,11),10))};var Ne=e=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e);var Be=e=>decodeURI(e)!==decodeURIComponent(e);var Pe=e=>(...t)=>e.length>t.length?e.bind(null,...t):e(...t);var w=C(require("crypto-js")),Re=(e,t)=>w.AES.decrypt(e,t).toString(w.enc.Utf8);var Te=(e,t)=>Object.keys(t).reduce((a,o)=>{if(e[o]===t[o]||o==="lastModifiedBy"||o==="createdAt")return a;let{oldData:n,newData:s}=a;return{oldData:{...n,[o]:e[o]},newData:{...s,[o]:t[o]}}},{});var we=(e,t)=>e&&typeof e=="string"?e.search(/[a-z]\.[a-z]/i)>=0?t.__(e):e:"";var Se=e=>{let t={};return e==null||e.forEach(a=>{Object.keys(a).forEach(n=>{typeof a[n]=="string"&&(a[n].toLowerCase()==="true"||a[n].toLowerCase()==="false")?t[n]=a[n].toLowerCase()==="true":t[n]=a[n]})}),t};var K=C(require("crypto-js")),Le=(e,t)=>(typeof e=="object"&&(e=JSON.stringify(e)),K.AES.encrypt(e,t).toString());var Oe={on(e,t){document.addEventListener(e,t)},dispatch(e,t){document.dispatchEvent(new CustomEvent(e,{detail:t}))},remove(e,t){document.removeEventListener(e,t)}};var M=(e,t)=>{if(Array.isArray(e)===!1)return null;let a=null;return e.some(o=>(a=t(o),!!a)),a};var Ue=(e,t)=>e?e[t]?e[t]:M(e.or,a=>a[t]):null;var Fe=e=>{let t=e.lastIndexOf(".");return t===-1?e:e.substring(0,t)};var _e=(e,t)=>e&&e.length&&t&&t.length?e.map(a=>Object.entries(a).filter(([o])=>t.includes(o)).reduce((o,[n,s])=>Object.assign(o,{[n]:s}),{})):[];var ke=e=>e.filter(t=>_(t).length>0&&t);var j=(e,t={})=>{let a={decimalCount:2,decimal:",",thousands:".",...t},{decimal:o,thousands:n,currencySymbol:s}=a,{decimalCount:c}=a;try{c=Math.abs(c),c=isNaN(c)?2:c;let m=e<0?"-":"",p=parseInt(e=Math.abs(Number(e)||0).toFixed(c),10).toString(),u=p.length>3?p.length%3:0;return(s?`${m}${s}`:m)+(u?p.substr(0,u)+n:"")+p.substr(u).replace(/(\d{3})(?=\d)/g,`$1${n}`)+(c?o+Math.abs(e-parseInt(p,10)).toFixed(c).slice(2):"")}catch(m){return console.log(m),""}};var g=C(require("moment-timezone")),Q=e=>{let t=e?new Date(e):new Date,a={timeZone:"America/Sao_Paulo"},o=t.toLocaleString("en-US",a);return new Date(o)},X=(e,t,a,o,n)=>{if(!e)return null;if(n)return(0,g.default)(e,t);let s=g.default.utc(e);return o||s.local(),a&&s.locale(a),s.format(t)},Me=(e,t="YYYY-MM-DD")=>{let a=(0,g.default)(e,t).add(1,"days");return typeof e=="string"?a.format(t):a.toDate()},ee=(e=new Date,t=1)=>{let a=new Date(e.setDate(e.getDate()+t));return a.getDay()%6?a:ee(a)},te=(e=new Date,t=1)=>{let a=new Date(e.setDate(e.getDate()-t));return a.getDay()%6?a:te(a)},S=e=>e?g.default.utc(e).local():null,V=e=>e&&g.default.tz(new Date(e),"America/Sao_Paulo"),je=(e,t)=>{let a=V(e);return a&&a.format(t||"YYYY-MM-DDTHH:mm:ssZ")},Ve=(e,t)=>{if(!e||!t)return null;let a=S(e),o=S(t);return!a||!o?null:o.diff(a,"months")},Ge=(e,t)=>{var a;return!e||!t?null:(a=S(e))==null?void 0:a.isAfter(t)},qe=(e=!0)=>{let t=g.default.tz("America/Sao_Paulo");return e?t.startOf("day").toDate():t.toDate()},$e=(e=!0)=>{let t=g.default.tz("America/Sao_Paulo").subtract(1,"day");return e?t.startOf("day").toDate():t.toDate()},ze=(e=!0)=>{let t=g.default.tz("America/Sao_Paulo").add(1,"day");return e?t.startOf("day").toDate():t.toDate()},He=e=>{let t=Q(e);return`${t.getFullYear()}${t.getMonth().toString().padStart(2,"0")}`},Ye=(e,t)=>{let a=new Date(e),o=new Date;return new Date(o.getFullYear()-t,o.getMonth(),o.getDate()).getTime()>a.getTime()},We=e=>g.default.max(e),Je=e=>g.default.min(e),Ze=e=>(0,g.default)(e).isValid(),G=(e,t)=>new Date(e,t-1,1).toISOString().split("T")[0],q=(e,t)=>new Date(e,t,0).toISOString().split("T")[0],$=()=>{let e=new Date(V(new Date));return X(e,"YYYY-MM-DD")};var Ke=C(require("dayjs"));var L=e=>e.length===2?[e[0].replace(/\./g,""),e[1].replace(/\./g,"")]:e;var ae=e=>{let t=L(e.toString().replace("%","").replace("R$","").replace(/\s/g,"").trim().split(","));if(t.length===2)return t.join(".");let a=L(t[0].split("."));return a.length===2?a.join("."):t[0].replace(/\./g,"")},Qe=e=>{if(e==null)return e;if(!ae(e))return null;let t=Number(ae(e));return t>=Number.MAX_SAFE_INTEGER||Number.isNaN(t)?null:t},Xe=e=>{var a,o;if(!e)return null;let t=e.toString();return t.indexOf("/")>=0?null:(t=t.replace(/[^0-9.,-]/g,""),t.includes(",")&&t.includes(".")?(t.lastIndexOf(",")>t.lastIndexOf(".")?t=t.replace(/\./g,"").replace(",","."):t=t.replace(/,/g,""),Number(t)):t.includes(",")&&((a=t.split(",")[1])==null?void 0:a.length)>0?Number(t.replace(",",".")):t.includes(".")&&((o=t.split(".")[1])==null?void 0:o.length)>0?Number(t):Number(t.replace(/[.,]/g,"")))};var et=e=>{let t=e.indexOf("."),a=e.length;return t&&a?e.substr(t,a):""};var tt=new RegExp('<img[^>]+src="(https://vobi-storage[^">]+)"',"gm");var at=e=>{if(!e)return!1;let t=new Date(e);return!isNaN(t.getTime())};var ot=e=>!isNaN(parseFloat(e))&&!isNaN(e-0);var rt=e=>{try{return!!new URL(e)}catch{return!1}};var oe=C(require("jwt-decode")),nt=e=>{var n;let{authorization:t,Authorization:a}=e,o=(n=t||a)==null?void 0:n.split(" ");return(o==null?void 0:o[0])==="Bearer"?o[1]:null},st=e=>{let{user:t,isCustomerView:a,accessedBy:o,exp:n,iss:s}=e?(0,oe.default)(e):{};return{...t,isCustomerView:a,accessedBy:o,exp:n,currentDevice:s}};var it=(e,t,a,o)=>{let n=e.idStatus>=5?"projetos":"oportunidades",s=t==="customer"?"cliente":"profissional",c=`/${s}/${n}/perfil/${e.id}`,m=`/${s}`;return`${{operator:c,provider:c,customer:m}}/arquivos?arquivo=${a.id}${o?"&visualizar":""}`};var lt=e=>(e==null?void 0:e.length)===0?null:e;var ct=(e,t="0000")=>(t+e).slice(t.length*-1);var dt=(e,t=!1)=>{let a={};for(let o=0;o<e.length;o++){let n=e[o];a[n.value]=t?{...n}:n.label}return a};var ut=e=>e.replace(/ /g,"").split("-").reduce((t,a)=>t+k(a),"");var pt=e=>e==null?void 0:e.replace(/[,-./]/g,"");var mt=({id:e,name:t,email:a,idCompany:o,userType:n,type:s,isOwner:c,MGMCode:m,groupPermission:p,isActive:u,limitAccess:f,company:h})=>({id:e,name:t,email:a,idCompany:o,userType:n,type:s,isOwner:c,MGMCode:m,groupPermission:p,isActive:u,limitAccess:f,idPlan:h==null?void 0:h.idPlan});var ft=e=>{let t=new Array(e.length),a=0;return new Promise((o,n)=>{e.forEach((s,c)=>{Promise.resolve(s).then(o).catch(m=>{t[c]=m,a+=1,a===e.length&&n(t)})})})};var gt=(e,t)=>Object.keys(t).filter(a=>a!==e).reduce((a,o)=>({...a,[o]:t[o]}),{});var yt=(e,t,a=!0)=>{if(!e)return e;let o=e.toLowerCase();return a&&(o=o.replace(new RegExp("\\s","g"),"")),o=o.replace(new RegExp("[\xE0\xE1\xE2\xE3\xE4\xE5]","g"),"a"),o=o.replace(new RegExp("\xE6","g"),"ae"),o=o.replace(new RegExp("\xE7","g"),"c"),o=o.replace(new RegExp("[\xE8\xE9\xEA\xEB]","g"),"e"),o=o.replace(new RegExp("[\xEC\xED\xEE\xEF]","g"),"i"),o=o.replace(new RegExp("\xF1","g"),"n"),o=o.replace(new RegExp("[\xF2\xF3\xF4\xF5\xF6]","g"),"o"),o=o.replace(new RegExp("\u0153","g"),"oe"),o=o.replace(new RegExp("[\xF9\xFA\xFB\xFC]","g"),"u"),o=o.replace(new RegExp("[\xFD\xFF]","g"),"y"),o=o.replace("'",""),o=o.replace("\xB4",""),o=o.replace("`",""),t&&(o=o.replace(new RegExp("\\W","g"),"")),o};var ht=e=>e==null?void 0:e.normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/[^a-zA-Z0-9-/\s]/g,"").replace(/\//g,"").replace(/\s+/g,"-").toLowerCase();var xt=(e,t)=>e.reduce((a,o,n)=>{let s=Math.floor(n/t),c=[...a];return a[s]||(c[s]=[]),c[s].push(o),c},[]);var bt=(e,t,a)=>{let o=a||t;return(e==null?void 0:e.map(n=>o?n[a]||n[t]:n).reduce((n,s)=>n+(Number(s||0)||0),0))||0};var Dt=(e,t)=>(e==null?void 0:e.map(a=>t(a)).reduce((a,o)=>a+(Number(o||0)||0),0))||0;var Et=e=>{let t=e.replace(/\D/g,"");return/^(?:\+?55 ?)?(?:0?[1-9]{2})?9\d{8}$/.test(t)};var Ct=e=>typeof e!="string"||!e?"":e.normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().trim();var z=(e,t="")=>!e||e.length<=0?[]:e.flatMap((a,o)=>{let n=t?`${t}.${o+1}`:`${o+1}`,{children:s,...c}=a;return[{...c,index:n},...z(s||[],n)]}),It=e=>z(e).reduce((a,o)=>o.id?{...a,[o.id]:o}:a,{});var vt=(e,t)=>{var o;let a=e?(o=Number(e).toFixed(2))==null?void 0:o.replace(".",","):0;return t?`${j(e*100)}%`:a};var At=e=>{if(!e)return{};let[t,a]=e.split("-").map(Number),o=$(),n=G(t,a),s=q(t,a);return{startDate:n,endDate:s,actualDate:o}};var Nt=({oldStatus:e,newStatus:t,total:a,user:o,moveStatus:n})=>{var h,b,x,D,E;let{userApprovalAuthorities:s,isOwner:c,groupPermission:m,company:p}=o||{},u=n==null?void 0:n[e];if(!((h=u==null?void 0:u[t])!=null&&h.isAllowed))return null;if(c||m===r.groupPermission.admin||!((b=u==null?void 0:u[t])!=null&&b.authorityLevel))return u==null?void 0:u[t];let f=s==null?void 0:s.find(P=>{var Y;return(P==null?void 0:P.idApprovalAuthority)===((Y=u==null?void 0:u[t])==null?void 0:Y.authorityLevel)});return!f&&((D=p==null?void 0:p.approvalAuthority)!=null&&D[(x=u==null?void 0:u[t])==null?void 0:x.authorityLevel])?!1:(E=u==null?void 0:u[t])!=null&&E.maxAmount?!Number((f==null?void 0:f.maxAmount)||0)&&(f==null?void 0:f.maxAmount)!==0||Number(a||0)<=Number(f==null?void 0:f.maxAmount)?u==null?void 0:u[t]:!1:u==null?void 0:u[t]};var Bt=e=>{if(!e)return null;let t=e==null?void 0:e.replace(/\D/g,"");return(t==null?void 0:t.length)===11?t==null?void 0:t.replace(/(\d{3})(\d{3})(\d{3})(\d{2})/,"$1.$2.$3-$4"):(t==null?void 0:t.length)===14?t==null?void 0:t.replace(/(\d{2})(\d{3})(\d{3})(\d{4})(\d{2})/,"$1.$2.$3/$4-$5"):t};var H=C(require("dayjs")),Pt=()=>{let e=(0,H.default)().format("YYYY-MM-DD"),t=(0,H.default)().subtract(1,"day").format("YYYY-MM-DD");return{today:e,yesterday:t}};var v;try{v=require("sharp")}catch{}var Rt=e=>{v=e},re=10*1024*1024,Tt=300,wt=300,St=9999,Lt=9999,ne=80,B=(e,t="",a="")=>{var s;let o=Date.now().toString(),n=((s=e==null?void 0:e.type)==null?void 0:s.split("/")[1])||"unknown";return`${t}${o}_${a}.${n}`},Ot=async(e,t)=>{let a=Object.keys(t);return await Promise.all(a.map(async o=>{let n=Number(o),s=n*re,c=(n+1)*re,m=e.slice(s,c),p=await fetch(t[o],{method:"PUT",body:m,headers:{"Content-Type":e.type},credentials:"omit"});if(!p.ok)throw new Error(`HTTP error! status: ${p.status}`);return{ETag:p.headers.get("etag"),PartNumber:n+1}}))},Ut=async({fileObject:e,idCompany:t="",suffix:a=""})=>{let o=N("baseUrl","");if(!e||!e.file)throw new Error("Nenhum arquivo fornecido");try{let{file:n,fileName:s}=e,c=B(n,"document_",a),m={name:s||c,size:(n==null?void 0:n.size)||0,type:(n==null?void 0:n.type)||"image/jpeg"},p=await fetch(`${o}/media/start/agent`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({identify:t,file:m})});if(!p.ok){let E=await p.json().catch(()=>({}));throw new Error(`Failed to start upload. Status: ${p.status}, Data: ${JSON.stringify(E)}`)}let u=await p.json(),{signUrls:f,uploadId:h}=u,b=await Ot(e.file,f),x=await fetch(`${o}/media/complete/agent`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({identify:t,file:m,uploadId:h,parts:b})});if(!x.ok){let E=await x.json().catch(()=>({}));throw new Error(`Failed to complete upload. Status: ${x.status}, Data: ${JSON.stringify(E)}`)}let D=await x.json();return D==null?void 0:D.location}catch(n){throw n}},Ft=async(e,t="")=>{var a,o;if(!v)throw new Error(`Sharp is required for image processing. Install it with:
2
+ For Lambda ARM64: npm install --platform=linux --arch=arm64 sharp
3
+ For Lambda x86_64: npm install --platform=linux --arch=x64 sharp
4
+ For local development: npm install sharp`);if(!((a=e==null?void 0:e.type)!=null&&a.includes("image"))||(o=e==null?void 0:e.type)!=null&&o.includes("tif"))return null;try{let n=await e.arrayBuffer(),s=await v(Buffer.from(n)).resize(Tt,wt,{fit:"inside",withoutEnlargement:!0}).jpeg({quality:ne}).toBuffer();return{file:new Blob([s],{type:"image/jpeg"}),fileName:B(e,"thumbnail_",t)}}catch(n){throw new Error(`Error creating thumbnail: ${n instanceof Error?n.message:"Unknown error"}`)}},_t=async(e,t="")=>{var a,o;if(!v)throw new Error(`Sharp is required for image processing. Install it with:
5
+ For Lambda ARM64: npm install --platform=linux --arch=arm64 sharp
6
+ For Lambda x86_64: npm install --platform=linux --arch=x64 sharp
7
+ For local development: npm install sharp`);if(!((a=e==null?void 0:e.type)!=null&&a.includes("image"))||(o=e==null?void 0:e.type)!=null&&o.includes("tif"))return{file:e,fileName:B(e,"image_",t)};try{let n=await e.arrayBuffer(),s=await v(Buffer.from(n)).resize(St,Lt,{fit:"inside",withoutEnlargement:!0}).jpeg({quality:ne}).toBuffer();return{file:new Blob([s],{type:"image/jpeg"}),fileName:B(e,"image_",t)}}catch{return{file:e,fileName:B(e,"image_",t)}}},kt=(e,t="image/jpeg")=>{let a;try{e.includes("data:")?a=atob(e.split(",")[1]):a=atob(e);let o=new ArrayBuffer(a.length),n=new Uint8Array(o);for(let s=0;s<a.length;s++)n[s]=a.charCodeAt(s);return new Blob([o],{type:t})}catch(o){throw new Error(`Error processing base64: ${o instanceof Error?o.message:"Unknown error"}`)}};var Mt=e=>e.split("+")[1].split("@")[0];0&&(module.exports={BAD_GATEWAY,BAD_REQUEST,FORBIDDEN,INTERNAL_SERVER_ERROR,IsJsonString,METHOD_NOT_ALLOWED,NOT_ALLOWED,NOT_FOUND,SERVICE_UNAVAILABLE,UNAUTHORIZED,_setSharpForTesting,asArray,asBrazilianDate,asDate,asyncForEach,base64ToBlob,brazilianDateTime,brazilianDateToDate,capitalize,checkApprovalAuthority,checkCnpj,checkCpf,checkEmail,compressImage,configure,containsEncodedComponents,createThumbnail,currentDay,curry,dateIsValid,decodeToken,decrypt,diffObject,dynamici18nString,elasticTransformOr,encrypt,enumHelper,error,eventBus,extractMonthInfo,extractValueFromWhere,filterAttributes,filterEmpty,findValue,firstMonthDay,flatMapData,flattenChildren,formatCurrency,formatDate,formatDocument,formatNumber,formatNumberAnyFormat,get,getConfig,getDateOpenFinance,getExtension,getMonthNumber,getNameWithoutExtension,getNextDay,getNextWeekday,getPreviewsWeekday,getToday,getToken,getTomorrow,getUUIDFromEmail,getYesterday,imgSrcRegex,isAfter,isDateValid,isNumber,isOfAge,isValidUrl,lastMonthDay,makeRefurbishFileUrl,maxDateToList,minDateToList,monthsBetween,normalizeString,nullIfEmpty,padLeft,parseArrayAsObject,parseRouteToModel,prepareDoc,prepareSession,promiseAny,promiseEach,removeProperty,removeSpecialChar,replaceNumberOrPercentage,slugify,splitList,sum,sumByFunction,upload,validateAccess,validateMobilePhoneNumber,valueReplacer});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vobi_lib",
3
- "version": "1.6.4",
3
+ "version": "1.6.5",
4
4
  "description": "Vobi Library",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",
@@ -37,9 +37,16 @@
37
37
  "node-polyfill-webpack-plugin": "^4.0.0",
38
38
  "os-browserify": "^0.3.0",
39
39
  "path-browserify": "^1.0.1",
40
- "sharp": "^0.34.3",
41
40
  "stream-browserify": "^3.0.0"
42
41
  },
42
+ "peerDependencies": {
43
+ "sharp": "^0.32.0"
44
+ },
45
+ "peerDependenciesMeta": {
46
+ "sharp": {
47
+ "optional": false
48
+ }
49
+ },
43
50
  "devDependencies": {
44
51
  "@types/node": "^20.12.12",
45
52
  "@types/sharp": "^0.31.1",