@zydon/common 2.7.21 → 2.7.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,3 @@
1
+ function n(){return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){let x=Math.random()*16|0;return (t==="x"?x:x&3|8).toString(16)})}
2
+
3
+ export { n as a };
@@ -1,7 +1,7 @@
1
- import { a as a$1 } from '../../chunk-W3MYAMTH.js';
2
1
  import { a as a$2 } from '../../chunk-WIJV4EHZ.js';
3
2
  import '../../chunk-FO7JCJ76.js';
4
3
  import '../../chunk-C2JZG45F.js';
4
+ import { a as a$1 } from '../../chunk-W3MYAMTH.js';
5
5
  import a from '@mui/material/Stack';
6
6
  import { styled } from '@mui/material/styles';
7
7
  import { jsx, jsxs } from 'react/jsx-runtime';
@@ -7,10 +7,10 @@ import { a as a$7 } from '../../chunk-FK7DDO5L.js';
7
7
  import '../../chunk-7TWT67RG.js';
8
8
  import '../../chunk-U26IUEAG.js';
9
9
  import { a as a$4 } from '../../chunk-X2EIL7EB.js';
10
- import { a as a$8 } from '../../chunk-26GV7WKC.js';
11
10
  import { a as a$1 } from '../../chunk-WIJV4EHZ.js';
12
11
  import '../../chunk-FO7JCJ76.js';
13
12
  import '../../chunk-C2JZG45F.js';
13
+ import { a as a$8 } from '../../chunk-26GV7WKC.js';
14
14
  import { a as a$3 } from '../../chunk-ORYAES3Q.js';
15
15
  import { b as b$1 } from '../../chunk-ILHUUK4X.js';
16
16
  import '../../chunk-7J53ZUIF.js';
@@ -1,7 +1,7 @@
1
- import { a as a$2 } from '../../chunk-26GV7WKC.js';
2
1
  import { a as a$1 } from '../../chunk-WIJV4EHZ.js';
3
2
  import '../../chunk-FO7JCJ76.js';
4
3
  import '../../chunk-C2JZG45F.js';
4
+ import { a as a$2 } from '../../chunk-26GV7WKC.js';
5
5
  import g from '@mui/material/Drawer';
6
6
  import x from '@mui/material/IconButton';
7
7
  import a from '@mui/material/Stack';
@@ -1,7 +1,7 @@
1
- import { a } from '../../chunk-W3MYAMTH.js';
2
1
  import { a as a$1 } from '../../chunk-WIJV4EHZ.js';
3
2
  import '../../chunk-FO7JCJ76.js';
4
3
  import '../../chunk-C2JZG45F.js';
4
+ import { a } from '../../chunk-W3MYAMTH.js';
5
5
  import s from '@mui/material/IconButton';
6
6
  import n from '@mui/material/Stack';
7
7
  import m from '@mui/material/Typography';
@@ -1,4 +1,4 @@
1
- export { p as ContentType, q as FileContentType, i as FileThumbnail, a as HelperText, b as MultiFilePreview, s as MultipleFileUpload, t as MultipleImageUpload, c as SingleFilePreview, u as SingleFileUpload, v as SingleImageUpload, w as UploadAvatar, x as UploadSimpleBox, l as compressImageWithoutCrop, k as convertToWebP, n as encodeFilenameForHeader, d as fileFormat, g as fileNameByUrl, e as fileThumb, h as fileThumbnailClasses, f as fileTypeByUrl, m as getFileNameFromContentDisposition, j as isImageFile, o as useDropzoneUploader, r as useFileUploadService } from '../../chunk-JALBND3K.js';
1
+ export { p as ContentType, q as FileContentType, i as FileThumbnail, a as HelperText, b as MultiFilePreview, s as MultipleFileUpload, t as MultipleImageUpload, c as SingleFilePreview, u as SingleFileUpload, v as SingleImageUpload, w as UploadAvatar, x as UploadSimpleBox, l as compressImageWithoutCrop, k as convertToWebP, n as encodeFilenameForHeader, d as fileFormat, g as fileNameByUrl, e as fileThumb, h as fileThumbnailClasses, f as fileTypeByUrl, m as getFileNameFromContentDisposition, j as isImageFile, o as useDropzoneUploader, r as useFileUploadService } from '../../chunk-3JOLGWDJ.js';
2
2
  import '../../chunk-H5L4ARDB.js';
3
3
  import '../../chunk-3X7KMUN3.js';
4
4
  import '../../chunk-ANAHA3L6.js';
@@ -9,10 +9,10 @@ import '../../chunk-7AZX7L27.js';
9
9
  import '../../chunk-DUFPX4QZ.js';
10
10
  import '../../chunk-2P4CXK3O.js';
11
11
  import '../../chunk-FK7DDO5L.js';
12
- import '../../chunk-DMQW3LDF.js';
13
12
  import '../../chunk-WIJV4EHZ.js';
14
13
  import '../../chunk-FO7JCJ76.js';
15
14
  import '../../chunk-C2JZG45F.js';
15
+ import '../../chunk-DMQW3LDF.js';
16
16
  import '../../chunk-ILHUUK4X.js';
17
17
  import '../../chunk-GFJT57TO.js';
18
18
  import '../../chunk-S7QQBC4I.js';
@@ -1,8 +1,8 @@
1
1
  import { a } from '../../chunk-NPXVOPB2.js';
2
- import { a as a$2 } from '../../chunk-26GV7WKC.js';
3
2
  import { a as a$3 } from '../../chunk-WIJV4EHZ.js';
4
3
  import '../../chunk-FO7JCJ76.js';
5
4
  import '../../chunk-C2JZG45F.js';
5
+ import { a as a$2 } from '../../chunk-26GV7WKC.js';
6
6
  import { a as a$1 } from '../../chunk-KXEOEE4L.js';
7
7
  import '../../chunk-S7QQBC4I.js';
8
8
  import '../../chunk-QQDMA4TE.js';
@@ -1,9 +1,9 @@
1
- export { a as default } from '../../chunk-6LVV2OOJ.js';
1
+ export { a as default } from '../../chunk-7I3B5CBC.js';
2
2
  import '../../chunk-INPRA4JV.js';
3
3
  import '../../chunk-URVMF4MW.js';
4
4
  import '../../chunk-OBYJ5SJ2.js';
5
5
  import '../../chunk-U26IUEAG.js';
6
- import '../../chunk-26GV7WKC.js';
7
6
  import '../../chunk-WIJV4EHZ.js';
8
7
  import '../../chunk-FO7JCJ76.js';
9
8
  import '../../chunk-C2JZG45F.js';
9
+ import '../../chunk-26GV7WKC.js';
@@ -2,10 +2,10 @@ import { a as a$2 } from '../../chunk-INPRA4JV.js';
2
2
  import { a } from '../../chunk-URVMF4MW.js';
3
3
  import { a as a$1 } from '../../chunk-OBYJ5SJ2.js';
4
4
  import '../../chunk-U26IUEAG.js';
5
- import { a as a$3 } from '../../chunk-26GV7WKC.js';
6
5
  import { a as a$4 } from '../../chunk-WIJV4EHZ.js';
7
6
  import '../../chunk-FO7JCJ76.js';
8
7
  import '../../chunk-C2JZG45F.js';
8
+ import { a as a$3 } from '../../chunk-26GV7WKC.js';
9
9
  import { useState } from 'react';
10
10
  import h from '@mui/material/Checkbox';
11
11
  import T from '@mui/material/CircularProgress';
@@ -1,4 +1,4 @@
1
- import { v, s, t, u } from '../../../chunk-JALBND3K.js';
1
+ import { v, s, t, u } from '../../../chunk-3JOLGWDJ.js';
2
2
  import '../../../chunk-H5L4ARDB.js';
3
3
  import '../../../chunk-3X7KMUN3.js';
4
4
  import '../../../chunk-ANAHA3L6.js';
@@ -9,10 +9,10 @@ import '../../../chunk-7AZX7L27.js';
9
9
  import '../../../chunk-DUFPX4QZ.js';
10
10
  import '../../../chunk-2P4CXK3O.js';
11
11
  import '../../../chunk-FK7DDO5L.js';
12
- import '../../../chunk-DMQW3LDF.js';
13
12
  import '../../../chunk-WIJV4EHZ.js';
14
13
  import '../../../chunk-FO7JCJ76.js';
15
14
  import '../../../chunk-C2JZG45F.js';
15
+ import '../../../chunk-DMQW3LDF.js';
16
16
  import '../../../chunk-ILHUUK4X.js';
17
17
  import '../../../chunk-GFJT57TO.js';
18
18
  import '../../../chunk-S7QQBC4I.js';
@@ -1,12 +1,12 @@
1
- import { a } from '../../../chunk-6LVV2OOJ.js';
1
+ import { a } from '../../../chunk-7I3B5CBC.js';
2
2
  import '../../../chunk-INPRA4JV.js';
3
3
  import '../../../chunk-URVMF4MW.js';
4
4
  import '../../../chunk-OBYJ5SJ2.js';
5
5
  import '../../../chunk-U26IUEAG.js';
6
- import '../../../chunk-26GV7WKC.js';
7
6
  import '../../../chunk-WIJV4EHZ.js';
8
7
  import '../../../chunk-FO7JCJ76.js';
9
8
  import '../../../chunk-C2JZG45F.js';
9
+ import '../../../chunk-26GV7WKC.js';
10
10
  import { useFormContext, Controller } from 'react-hook-form';
11
11
  import { jsx } from 'react/jsx-runtime';
12
12
 
@@ -1,15 +1,15 @@
1
- import { b } from '../../../chunk-ZOUS7PT6.js';
1
+ import { b } from '../../../chunk-Y7C7JIPZ.js';
2
2
  import '../../../chunk-3HJGN53F.js';
3
3
  import '../../../chunk-LGYLZTOS.js';
4
4
  import '../../../chunk-RQ5Q6X5Y.js';
5
5
  import '../../../chunk-ANAHA3L6.js';
6
6
  import '../../../chunk-GZ4UBWZJ.js';
7
- import { a } from '../../../chunk-GA4A5P3S.js';
8
- import '../../../chunk-X24QANPC.js';
9
- import '../../../chunk-W3MYAMTH.js';
10
7
  import '../../../chunk-WIJV4EHZ.js';
11
8
  import '../../../chunk-FO7JCJ76.js';
12
9
  import '../../../chunk-C2JZG45F.js';
10
+ import { a } from '../../../chunk-GA4A5P3S.js';
11
+ import '../../../chunk-X24QANPC.js';
12
+ import '../../../chunk-W3MYAMTH.js';
13
13
  import '../../../chunk-KFZEM7KS.js';
14
14
  import '../../../chunk-7J53ZUIF.js';
15
15
  import { useFormContext, Controller } from 'react-hook-form';
@@ -1,4 +1,4 @@
1
- import { e } from '../../../chunk-PWWPKKXN.js';
1
+ import { e } from '../../../chunk-22LB74NN.js';
2
2
  import '../../../chunk-3HJGN53F.js';
3
3
  import '../../../chunk-LGYLZTOS.js';
4
4
  import '../../../chunk-RQ5Q6X5Y.js';
@@ -8,13 +8,13 @@ import '../../../chunk-GZ4UBWZJ.js';
8
8
  import '../../../chunk-DUFPX4QZ.js';
9
9
  import '../../../chunk-2P4CXK3O.js';
10
10
  import '../../../chunk-FK7DDO5L.js';
11
+ import '../../../chunk-WIJV4EHZ.js';
12
+ import '../../../chunk-FO7JCJ76.js';
13
+ import '../../../chunk-C2JZG45F.js';
11
14
  import { a } from '../../../chunk-GA4A5P3S.js';
12
15
  import '../../../chunk-X24QANPC.js';
13
16
  import '../../../chunk-W3MYAMTH.js';
14
17
  import '../../../chunk-DMQW3LDF.js';
15
- import '../../../chunk-WIJV4EHZ.js';
16
- import '../../../chunk-FO7JCJ76.js';
17
- import '../../../chunk-C2JZG45F.js';
18
18
  import '../../../chunk-ILHUUK4X.js';
19
19
  import '../../../chunk-KFZEM7KS.js';
20
20
  import '../../../chunk-7J53ZUIF.js';
@@ -1,7 +1,7 @@
1
1
  import { a } from '../../../chunk-NV2X5CYP.js';
2
2
  import { a as a$2 } from '../../../chunk-DVVFB7RV.js';
3
- import '../../../chunk-KVFE6S5N.js';
4
3
  import { a as a$3 } from '../../../chunk-SERSUUWD.js';
4
+ import '../../../chunk-KVFE6S5N.js';
5
5
  import { a as a$1 } from '../../../chunk-WIJV4EHZ.js';
6
6
  import '../../../chunk-FO7JCJ76.js';
7
7
  import '../../../chunk-C2JZG45F.js';
@@ -1,5 +1,5 @@
1
- export { a as UploadAvatar, b as UploadAvatarWithCrop } from '../../chunk-ZOUS7PT6.js';
2
- export { c as DeleteButton, a as MultiFilePreview, b as SingleFilePreview, d as Upload, e as UploadWithCrop } from '../../chunk-PWWPKKXN.js';
1
+ export { c as DeleteButton, a as MultiFilePreview, b as SingleFilePreview, d as Upload, e as UploadWithCrop } from '../../chunk-22LB74NN.js';
2
+ export { a as UploadAvatar, b as UploadAvatarWithCrop } from '../../chunk-Y7C7JIPZ.js';
3
3
  import { o } from '../../chunk-3HJGN53F.js';
4
4
  export { p as RejectionFiles } from '../../chunk-3HJGN53F.js';
5
5
  import '../../chunk-LGYLZTOS.js';
@@ -10,12 +10,12 @@ import '../../chunk-GZ4UBWZJ.js';
10
10
  import '../../chunk-DUFPX4QZ.js';
11
11
  import '../../chunk-2P4CXK3O.js';
12
12
  import '../../chunk-FK7DDO5L.js';
13
- import '../../chunk-X24QANPC.js';
14
- import '../../chunk-W3MYAMTH.js';
15
- import '../../chunk-DMQW3LDF.js';
16
13
  import '../../chunk-WIJV4EHZ.js';
17
14
  import '../../chunk-FO7JCJ76.js';
18
15
  import '../../chunk-C2JZG45F.js';
16
+ import '../../chunk-X24QANPC.js';
17
+ import '../../chunk-W3MYAMTH.js';
18
+ import '../../chunk-DMQW3LDF.js';
19
19
  import '../../chunk-ILHUUK4X.js';
20
20
  import '../../chunk-KFZEM7KS.js';
21
21
  import '../../chunk-7J53ZUIF.js';
@@ -0,0 +1,8 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { PropsWithChildren } from 'react';
3
+ import { MessagesContextData } from '../../types/messages.js';
4
+
5
+ declare const MessagesProvider: ({ children }: PropsWithChildren) => react_jsx_runtime.JSX.Element;
6
+ declare const useMessages: () => MessagesContextData;
7
+
8
+ export { MessagesProvider, useMessages };
@@ -0,0 +1,7 @@
1
+ import { a } from '../../chunk-V2WK4RL5.js';
2
+ import { createContext, useState, useCallback, useMemo, useContext } from 'react';
3
+ import { jsx } from 'react/jsx-runtime';
4
+
5
+ var l=createContext(void 0),w=({children:o})=>{let[s,a$1]=useState([]),g=useCallback(e=>{let n={id:a(),payload:e,receivedAt:Date.now(),processed:!1};a$1(t=>[...t,n]);},[]),d=useCallback(e=>{a$1(n=>n.map(t=>t.id===e?{...t,processed:!0}:t));},[]),i=useCallback(()=>{a$1([]);},[]),c=useCallback(e=>s.filter(e),[s]),M=useMemo(()=>s.filter(e=>!e.processed),[s]),m=useMemo(()=>({messages:s,unprocessedMessages:M,addMessage:g,markAsProcessed:d,clearMessages:i,getMessagesByType:c}),[s,M,g,d,i,c]);return jsx(l.Provider,{value:m,children:o})},y=()=>{let o=useContext(l);if(!o)throw new Error("useMessages must be used within MessagesProvider");return o};
6
+
7
+ export { w as MessagesProvider, y as useMessages };
@@ -3,6 +3,6 @@ import { PushNotificationProviderProps, PushNotificationContextData } from '../.
3
3
  import 'react';
4
4
 
5
5
  declare const PushNotificationProvider: <TMessage = unknown>({ children, originId, originType, bearerToken, vapidKey, serviceWorkerPath, serviceWorkerFile, pollingInterval, apiAdapters, onMessageReceived, onError, }: PushNotificationProviderProps<TMessage>) => react_jsx_runtime.JSX.Element;
6
- declare function usePushNotifications<TMessage = unknown>(): PushNotificationContextData<TMessage>;
6
+ declare function usePushNotifications(): PushNotificationContextData;
7
7
 
8
8
  export { PushNotificationProvider, usePushNotifications };
@@ -3,6 +3,6 @@ import '../../chunk-IHAHXNLH.js';
3
3
  import { createContext, useState, useMemo, useEffect, useCallback, useContext } from 'react';
4
4
  import { jsx } from 'react/jsx-runtime';
5
5
 
6
- var X=createContext(void 0),oe=({children:g,originId:S,originType:C,bearerToken:T,vapidKey:N,serviceWorkerPath:k="/",serviceWorkerFile:x="service-worker.js",pollingInterval:D=1e3,apiAdapters:r,onMessageReceived:d,onError:o})=>{let[t,h]=useState(null),[I,L]=useState(null),[B,m]=useState(0),[R,w]=useState(!1),[W,b]=useState(!1),[V,Y]=useState({subscriptions:[]}),[z,O]=useState(!1),[P]=useState(new Set),_=useMemo(()=>!t||z,[t,z]);useEffect(()=>{if(!W||!t||!r.fetchMessages)return;let e=setInterval(async()=>{try{let n=(await r.fetchMessages(t))?.messages?.[0];if(n?.payload){let a=n.id.value;if(P.has(a))return;P.add(a),L(n.payload),m(i=>i+1),d?.(n.payload);try{await r.updateMessageStatus(a,{status:"DELIVERED"});}catch(i){console.error("Erro ao marcar mensagem como entregue:",i);}}}catch(s){console.error("Erro ao buscar mensagens:",s);}},D);return ()=>clearInterval(e)},[W,t,D,r,d,P]);let v=useCallback(async(e,s)=>{try{let n=e?.toJSON().keys,a={origin_type:C,origin_id:S,...s&&e?{endpoint:e.endpoint,auth:n?.auth,p256dh:n?.p256dh}:{}},i=await r.registerClient(a);return h(i.id),w(!1),s||b(!0),i.id}catch(n){return console.error("Erro ao registrar cliente:",n),w(!0),o?.(n),null}},[r,S,C,o]);useEffect(()=>{let e=!0,s=null;async function n(){if(!("serviceWorker"in navigator)||!("PushManager"in window)){console.warn("Push notifications n\xE3o suportadas, criando cliente ativo com polling");try{let a=await v(null,!1);e&&a&&(h(a),b(!0));}catch(a){console.error("Erro ao registrar cliente ativo:",a),o?.(a);}return}try{let a$1=await Notification.requestPermission(),i=null,f=!1;if(a$1==="granted")try{let p=await navigator.serviceWorker.register(`${k}${x}`);if(!e||(await navigator.serviceWorker.ready,!e))return;i=await p.pushManager.subscribe({userVisibleOnly:!0,applicationServerKey:a(N)}),s=async j=>{let E=j.data?.payload;E&&(L(E),m(y=>y+1),d?.(E));let G=j.data?.id?.value;if(G)try{await r.updateMessageStatus(G,{status:"DELIVERED"});}catch(y){console.error("Erro ao atualizar status da mensagem:",y),w(!0),o?.(y);}},navigator.serviceWorker.addEventListener("message",s),f=!0,console.log("Permiss\xE3o concedida, criando cliente passivo (aguarda webpush)");}catch(p){console.warn("Falha ao configurar push subscription, criando cliente ativo:",p),f=!1;}else console.warn("Permiss\xE3o de notifica\xE7\xE3o negada, criando cliente ativo com polling"),f=!1;let U=await v(i,f);e&&U&&(h(U),f||b(!0));}catch(a){console.error("Erro ao inicializar notifica\xE7\xF5es:",a),o?.(a);try{let i=await v(null,!1);e&&i&&(h(i),b(!0));}catch(i){console.error("Erro ao criar cliente ativo como fallback:",i);}}}return T&&n(),()=>{e=!1,s&&"serviceWorker"in navigator&&navigator.serviceWorker.removeEventListener("message",s);}},[T,v,r,N,k,x,d,o]);let c=useCallback(async()=>{if(t){O(!0);try{let e=await r.listSubscriptions(t);Y(e);}catch(e){console.error("Erro ao listar inscri\xE7\xF5es:",e),o?.(e);}finally{O(!1);}}},[t,r,o]);useEffect(()=>{t&&c();},[t]);let $=useCallback(async e=>{if(t)try{await r.subscribeTopic(t,e),await c();}catch(s){console.error("Erro ao inscrever em t\xF3pico:",s),o?.(s);}},[t,r,c,o]),q=useCallback(async e=>{if(t)try{await r.unsubscribeTopic(t,e),await c();}catch(s){console.error("Erro ao desinscrever de t\xF3pico:",s),o?.(s);}},[t,r,c,o]),F=useCallback(async e=>{if(!(!t||e.length===0))try{await r.subscribeTopicsBatch(t,e),await c();}catch(s){console.error("Erro ao inscrever em t\xF3picos:",s),o?.(s);}},[t,r,c,o]),H=useCallback(async e=>{if(!(!t||e.length===0))try{await r.unsubscribeTopicsBatch(t,e),await c();}catch(s){console.error("Erro ao desinscrever de t\xF3picos:",s),o?.(s);}},[t,r,c,o]),J=useCallback(()=>{m(0);},[]),Z=useMemo(()=>({clientId:t,subscribedTopics:V,isRegisterError:R,isLoading:_,lastMessage:I,newMessageCount:B,subscribeToTopic:$,unsubscribeFromTopic:q,subscribeTopicsBatch:F,unsubscribeTopicsBatch:H,resetMessageCount:J}),[t,V,R,_,I,B,$,q,F,H,J]);return jsx(X.Provider,{value:Z,children:g})};function ae(){let g=useContext(X);if(!g)throw new Error("usePushNotifications precisa estar dentro de PushNotificationProvider");return g}
6
+ var G=createContext(void 0),re=({children:d,originId:C,originType:N,bearerToken:M,vapidKey:T,serviceWorkerPath:k="/",serviceWorkerFile:x="service-worker.js",pollingInterval:D=1e3,apiAdapters:s,onMessageReceived:g,onError:o})=>{let[t,h]=useState(null),[I,m]=useState(0),[L,w]=useState(!1),[R,v]=useState(!1),[B,K]=useState({subscriptions:[]}),[W,V]=useState(!1),[P]=useState(new Set),z=useMemo(()=>!t||W,[t,W]);useEffect(()=>{if(!R||!t||!s.fetchMessages)return;let e=setInterval(async()=>{try{let n=(await s.fetchMessages(t))?.messages?.[0];if(n?.payload){let i=n.payload.id.value;if(P.has(i))return;P.add(i),m(a=>a+1),g?.(n.payload);try{await s.updateMessageStatus(i,{status:"DELIVERED"});}catch(a){console.error("Erro ao marcar mensagem como entregue:",a);}}}catch(r){console.error("Erro ao buscar mensagens:",r);}},D);return ()=>clearInterval(e)},[R,t,D,s,g,P]);let b=useCallback(async(e,r)=>{try{let n=e?.toJSON().keys,i={origin_type:N,origin_id:C,...r&&e?{endpoint:e.endpoint,auth:n?.auth,p256dh:n?.p256dh}:{}},a=await s.registerClient(i);return h(a.id),w(!1),r||v(!0),a.id}catch(n){return console.error("Erro ao registrar cliente:",n),w(!0),o?.(n),null}},[s,C,N,o]);useEffect(()=>{let e=!0,r=null;async function n(){if(!("serviceWorker"in navigator)||!("PushManager"in window)){console.warn("Push notifications n\xE3o suportadas, criando cliente ativo com polling");try{let i=await b(null,!1);e&&i&&(h(i),v(!0));}catch(i){console.error("Erro ao registrar cliente ativo:",i),o?.(i);}return}try{let i=await Notification.requestPermission(),a$1=null,f=!1;if(i==="granted")try{let p=await navigator.serviceWorker.register(`${k}${x}`);if(!e||(await navigator.serviceWorker.ready,!e))return;a$1=await p.pushManager.subscribe({userVisibleOnly:!0,applicationServerKey:a(T)}),r=async X=>{let E=X.data?.payload,J=E?.id?.value;if(E&&(m(y=>y+1),g?.(E)),J)try{await s.updateMessageStatus(J,{status:"DELIVERED"});}catch(y){console.error("Erro ao atualizar status da mensagem:",y),w(!0),o?.(y);}},navigator.serviceWorker.addEventListener("message",r),f=!0,console.log("Permiss\xE3o concedida, criando cliente passivo (aguarda webpush)");}catch(p){console.warn("Falha ao configurar push subscription, criando cliente ativo:",p),f=!1;}else console.warn("Permiss\xE3o de notifica\xE7\xE3o negada, criando cliente ativo com polling"),f=!1;let H=await b(a$1,f);e&&H&&(h(H),f||v(!0));}catch(i){console.error("Erro ao inicializar notifica\xE7\xF5es:",i),o?.(i);try{let a=await b(null,!1);e&&a&&(h(a),v(!0));}catch(a){console.error("Erro ao criar cliente ativo como fallback:",a);}}}return M&&n(),()=>{e=!1,r&&"serviceWorker"in navigator&&navigator.serviceWorker.removeEventListener("message",r);}},[M,b,s,T,k,x,g,o]);let c=useCallback(async()=>{if(t){V(!0);try{let e=await s.listSubscriptions(t);K(e);}catch(e){console.error("Erro ao listar inscri\xE7\xF5es:",e),o?.(e);}finally{V(!1);}}},[t,s,o]);useEffect(()=>{t&&c();},[t]);let O=useCallback(async e=>{if(t)try{await s.subscribeTopic(t,e),await c();}catch(r){console.error("Erro ao inscrever em t\xF3pico:",r),o?.(r);}},[t,s,c,o]),_=useCallback(async e=>{if(t)try{await s.unsubscribeTopic(t,e),await c();}catch(r){console.error("Erro ao desinscrever de t\xF3pico:",r),o?.(r);}},[t,s,c,o]),$=useCallback(async e=>{if(!(!t||e.length===0))try{await s.subscribeTopicsBatch(t,e),await c();}catch(r){console.error("Erro ao inscrever em t\xF3picos:",r),o?.(r);}},[t,s,c,o]),q=useCallback(async e=>{if(!(!t||e.length===0))try{await s.unsubscribeTopicsBatch(t,e),await c();}catch(r){console.error("Erro ao desinscrever de t\xF3picos:",r),o?.(r);}},[t,s,c,o]),F=useCallback(()=>{m(0);},[]),Q=useMemo(()=>({clientId:t,subscribedTopics:B,isLoading:z,newMessageCount:I,isRegisterError:L,subscribeToTopic:O,unsubscribeFromTopic:_,subscribeTopicsBatch:$,unsubscribeTopicsBatch:q,resetMessageCount:F}),[t,B,z,I,L,O,_,$,q,F]);return jsx(G.Provider,{value:Q,children:d})};function se(){let d=useContext(G);if(!d)throw new Error("usePushNotifications precisa estar dentro de PushNotificationProvider");return d}
7
7
 
8
- export { oe as PushNotificationProvider, ae as usePushNotifications };
8
+ export { re as PushNotificationProvider, se as usePushNotifications };
@@ -0,0 +1,16 @@
1
+ interface Message<T = unknown> {
2
+ id: string;
3
+ payload: T;
4
+ receivedAt: number;
5
+ processed: boolean;
6
+ }
7
+ interface MessagesContextData {
8
+ messages: Message[];
9
+ unprocessedMessages: Message[];
10
+ addMessage: (payload: unknown) => void;
11
+ markAsProcessed: (id: string) => void;
12
+ clearMessages: () => void;
13
+ getMessagesByType: <T>(filter: (msg: Message) => boolean) => Message<T>[];
14
+ }
15
+
16
+ export { Message, MessagesContextData };
@@ -0,0 +1 @@
1
+
@@ -59,11 +59,10 @@ interface PushNotificationProviderProps<TMessage = unknown> {
59
59
  onMessageReceived?: (message: TMessage) => void;
60
60
  onError?: (error: Error) => void;
61
61
  }
62
- interface PushNotificationContextData<TMessage = unknown> {
62
+ interface PushNotificationContextData {
63
63
  clientId: string | null;
64
64
  subscribedTopics: SubscriptionsData;
65
65
  isLoading: boolean;
66
- lastMessage: TMessage | null;
67
66
  newMessageCount: number;
68
67
  isRegisterError: boolean;
69
68
  subscribeToTopic: (topic: string) => Promise<void>;
@@ -1,3 +1 @@
1
- function n(){return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){let x=Math.random()*16|0;return (t==="x"?x:x&3|8).toString(16)})}
2
-
3
- export { n as default };
1
+ export { a as default } from '../chunk-V2WK4RL5.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zydon/common",
3
- "version": "2.7.21",
3
+ "version": "2.7.23",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "module": "./dist/index.js",
@@ -5,9 +5,9 @@ import { e } from './chunk-ANAHA3L6.js';
5
5
  import { a as a$7 } from './chunk-DUFPX4QZ.js';
6
6
  import { x } from './chunk-2P4CXK3O.js';
7
7
  import { a as a$4 } from './chunk-FK7DDO5L.js';
8
+ import { a } from './chunk-WIJV4EHZ.js';
8
9
  import { a as a$2 } from './chunk-X24QANPC.js';
9
10
  import { j } from './chunk-DMQW3LDF.js';
10
- import { a } from './chunk-WIJV4EHZ.js';
11
11
  import { a as a$3 } from './chunk-KFZEM7KS.js';
12
12
  import { k, q } from './chunk-7J53ZUIF.js';
13
13
  import { useSensors, useSensor, PointerSensor, KeyboardSensor, DndContext, closestCenter } from '@dnd-kit/core';
@@ -6,8 +6,8 @@ import { a as a$6 } from './chunk-KA6PGKWV.js';
6
6
  import { a as a$2 } from './chunk-DUFPX4QZ.js';
7
7
  import { x } from './chunk-2P4CXK3O.js';
8
8
  import { a as a$7 } from './chunk-FK7DDO5L.js';
9
- import { j } from './chunk-DMQW3LDF.js';
10
9
  import { a as a$4 } from './chunk-WIJV4EHZ.js';
10
+ import { j } from './chunk-DMQW3LDF.js';
11
11
  import { a as a$8 } from './chunk-GFJT57TO.js';
12
12
  import { a as a$1 } from './chunk-S7QQBC4I.js';
13
13
  import { memo, forwardRef, useMemo, useLayoutEffect, useState, useCallback, useRef, useEffect } from 'react';
@@ -1,8 +1,8 @@
1
1
  import { a as a$4 } from './chunk-INPRA4JV.js';
2
2
  import { a as a$1 } from './chunk-URVMF4MW.js';
3
3
  import { a as a$3 } from './chunk-OBYJ5SJ2.js';
4
- import { a as a$2 } from './chunk-26GV7WKC.js';
5
4
  import { a as a$5 } from './chunk-WIJV4EHZ.js';
5
+ import { a as a$2 } from './chunk-26GV7WKC.js';
6
6
  import { useState } from 'react';
7
7
  import L from '@mui/material/Button';
8
8
  import W from '@mui/material/CircularProgress';
@@ -1,8 +1,8 @@
1
1
  import { p, f } from './chunk-3HJGN53F.js';
2
2
  import { a as a$3 } from './chunk-LGYLZTOS.js';
3
3
  import { e } from './chunk-ANAHA3L6.js';
4
- import { a as a$1 } from './chunk-X24QANPC.js';
5
4
  import { a } from './chunk-WIJV4EHZ.js';
5
+ import { a as a$1 } from './chunk-X24QANPC.js';
6
6
  import { a as a$2 } from './chunk-KFZEM7KS.js';
7
7
  import { k } from './chunk-7J53ZUIF.js';
8
8
  import { useState, useEffect } from 'react';