@neosianexus/super-tebex 2.0.0 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +12 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var{defineProperty:
|
|
1
|
+
var{defineProperty:R,getOwnPropertyNames:ee,getOwnPropertyDescriptor:re}=Object,te=Object.prototype.hasOwnProperty;var W=new WeakMap,oe=(e)=>{var r=W.get(e),t;if(r)return r;if(r=R({},"__esModule",{value:!0}),e&&typeof e==="object"||typeof e==="function")ee(e).map((o)=>!te.call(r,o)&&R(r,o,{get:()=>e[o],enumerable:!(t=re(e,o))||t.enumerable}));return W.set(e,r),r};var se=(e,r)=>{for(var t in r)R(e,t,{get:r[t],enumerable:!0,configurable:!0,set:(o)=>r[t]=()=>o})};var de={};se(de,{useShopUserStore:()=>h,useShopUiStore:()=>d,useShopBasketStore:()=>C,useCreateBasket:()=>T,useCategories:()=>V,useBasket:()=>O,tebex:()=>k,shopUrls:()=>U,initTebex:()=>j,initShopUrls:()=>F,getTebex:()=>p,categoriesService:()=>G,basketService:()=>x});module.exports=oe(de);var U=null,ae=(e,r)=>{let t=r?.complete??"/shop/complete-purchase",o=r?.cancel??"/shop/cancel-purchase";U={completeUrl:new URL(t,e).toString(),cancelUrl:new URL(o,e).toString()}},F=ae;var K=require("tebex_headless"),k=null,ne=(e)=>{k=new K.TebexHeadless(e)},j=ne;var ie=()=>{if(!k)throw Error("Tebex client not initialized. Call initTebex(publicKey) first.");return k},p=ie;var b=require("react"),B=require("sonner");var le=async({username:e,completeUrl:r,cancelUrl:t,custom:o,completeAutoRedirect:i,ipAddress:m})=>{return(await p()).createMinecraftBasket(e,r,t,o,i,m)},ce=async(e)=>{return(await p()).getBasket(e)},me=async(e,r,t,o,i)=>{return(await p()).addPackageToBasket(e,r,t??1,o,i)},pe=async(e,r,t)=>{return(await p()).updateQuantity(e,r,t-1>=0?t-1:0)},fe={createBasket:le,getBasket:ce,addPackageToBasket:me,removePackageFromBasket:pe},x=fe;var q=require("zustand"),y=require("zustand/middleware"),ge=q.create()(y.subscribeWithSelector(y.persist((e)=>({basketIdent:null,setBasketIdent:(r)=>e({basketIdent:r}),clearBasketIdent:()=>e({basketIdent:null})}),{name:"shop-basket-store"}))),C=ge;var D=require("zustand"),J=require("zustand/middleware"),ue=D.create()(J.subscribeWithSelector((e)=>({isGlobalLoading:!1,setIsGlobalLoading:(r)=>e({isGlobalLoading:r}),isCreatingBasket:!1,setIsCreatingBasket:(r)=>e({isCreatingBasket:r})}))),d=ue;var M=require("zustand"),P=require("zustand/middleware"),xe=M.create()(P.subscribeWithSelector(P.persist((e)=>({username:"",setUsername:(r)=>e({username:r}),clearUsername:()=>e({username:""})}),{name:"shop-user-store"}))),h=xe;var N=require("react"),L=require("sonner");var Ce=async({includePackages:e,basketIdent:r,ipAddress:t})=>{return(await p()).getCategories(e,r,t)},Be={getCategories:Ce},G=Be;var be=async(e)=>{let{isCreatingBasket:r,setIsCreatingBasket:t,setBasketIdent:o,createBasket:i,username:m}=e;if(r)return null;let{completeUrl:s,cancelUrl:g}=he();try{t(!0);let c=await i({username:m,completeUrl:s,cancelUrl:g,completeAutoRedirect:!1,ipAddress:""});if(!c?.ident)return L.toast.error("Une erreur est survenue lors de la création du panier"),null;return o(c.ident),c}catch{return L.toast.error("Erreur lors de la création du panier. Contactez le support si le problème persiste."),null}finally{t(!1)}},Ue=(e)=>{let r=d((s)=>s.isCreatingBasket),t=d((s)=>s.setIsCreatingBasket),o=C((s)=>s.setBasketIdent),i=h((s)=>s.username);return N.useCallback(()=>be({isCreatingBasket:r,setIsCreatingBasket:t,setBasketIdent:o,createBasket:x.createBasket,username:e??i}),[r,t,o,e,i])},he=()=>{if(!U)throw Error("Shop URLs not initialized. Call initShopUrls(baseUrl, paths?: { complete?: string; cancel?: string }) first.");return{completeUrl:U.completeUrl,cancelUrl:U.cancelUrl}},T=Ue;var Se=(e)=>{let[r,t]=b.useState(null),[o,i]=b.useState(!1),[m,s]=b.useState(null),[g,c]=b.useState(!1),n=C((a)=>a.basketIdent),w=C((a)=>a.setBasketIdent),X=h((a)=>a.username),v=e??X,Y=T(v),A=C((a)=>a.clearBasketIdent),H=async(a)=>{i(!0),s(null);try{let l=await x.getBasket(a);if(l.complete){t(null),A(),s(null);return}t(l),w(l.ident),s(null)}catch(l){s(l),t(null),A()}finally{i(!1)}},Z=async(a,l,S,I)=>{if(g)return;try{if(c(!0),!v){B.toast.error("Vous devez vous connecter pour ajouter des articles à votre panier");return}let u=null;if(!n){if(u=(await Y())?.ident??null,!u){B.toast.error("Une erreur est survenue lors de la création du panier");return}w(u)}else u=n;if(!u){B.toast.error("Vous n'avez pas de panier. Si le problème persiste, veuillez vous rapprocher du support.");return}let z=x.addPackageToBasket(u,a,l,S,I);B.toast.promise(z,{loading:"Ajout de l'article dans votre panier...",success:"Article ajouté avec succès !",error:"Une erreur est survenue lors de l'ajout de l'article dans votre panier"});let Q=await z;t(Q),s(null)}catch(u){s(u)}finally{c(!1)}},_=async(a)=>{if(g)return;try{if(c(!0),!n){B.toast.error("Vous n'avez pas de panier. Si le problème persiste, veuillez vous rapprocher du support.");return}let l=x.removePackageFromBasket(n,a,r?.packages.find((S)=>S.id===a)?.in_basket.quantity??0);l.then((S)=>{t(S),s(null)}),B.toast.promise(l,{loading:"Suppression de l'article de votre panier...",success:"Article supprimé avec succès !",error:"Une erreur est survenue lors de la suppression de l'article de votre panier"})}catch(l){s(l)}finally{c(!1)}},$=async()=>{if(n)await H(n)},E=(a)=>{t(a)};return b.useEffect(()=>{if(!n)return;H(n)},[n]),{basket:r,loading:o,error:m,updateManualBasket:E,addPackageToBasket:Z,removePackageFromBasket:_,refetch:$}},O=Se;var f=require("react");var ke=(e)=>{let[r,t]=f.useState(null),[o,i]=f.useState(!0),[m,s]=f.useState(null),g=f.useCallback(async()=>{i(!0),s(null);try{let n=await G.getCategories(e);t(n)}catch(n){s(n),t(null)}finally{i(!1)}},[e]);f.useEffect(()=>{g()},[g]);let c=f.useCallback((n)=>r?.find((w)=>w.name.toLowerCase()===n.toLowerCase()),[r]);return{categories:r,loading:o,error:m,getByName:c,refetch:g}},V=ke;
|
package/dist/index.d.ts
CHANGED
|
@@ -2,6 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
import { Basket, Category, InBasket, Package, PackageType, TebexHeadless } from 'tebex_headless';
|
|
4
4
|
|
|
5
|
+
export interface GetShopUrlsResult {
|
|
6
|
+
completeUrl: string;
|
|
7
|
+
cancelUrl: string;
|
|
8
|
+
}
|
|
9
|
+
export declare const useCreateBasket: (username: string | null) => (() => Promise<Basket | null>);
|
|
10
|
+
export declare let shopUrls: GetShopUrlsResult | null;
|
|
11
|
+
export declare const initShopUrls: (baseUrl: string, paths?: {
|
|
12
|
+
complete?: string;
|
|
13
|
+
cancel?: string;
|
|
14
|
+
}) => void;
|
|
15
|
+
export declare let tebex: TebexHeadless | null;
|
|
16
|
+
export declare const initTebex: (publicKey: string) => void;
|
|
5
17
|
export declare const getTebex: () => TebexHeadless;
|
|
6
18
|
export interface UseBasketResult {
|
|
7
19
|
basket: Basket | null;
|
|
@@ -39,7 +51,6 @@ export interface UseCategoriesResult {
|
|
|
39
51
|
refetch: () => Promise<void>;
|
|
40
52
|
}
|
|
41
53
|
export declare const useCategories: (options: GetCategories) => UseCategoriesResult;
|
|
42
|
-
export declare const useCreateBasket: (username: string | null) => (() => Promise<Basket | null>);
|
|
43
54
|
export declare const basketService: {
|
|
44
55
|
createBasket: ({ username, completeUrl, cancelUrl, custom, completeAutoRedirect, ipAddress, }: CreateBasketProps) => Promise<Basket>;
|
|
45
56
|
getBasket: (basketIdent: Basket["ident"]) => Promise<Basket>;
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{TebexHeadless as
|
|
1
|
+
var b=null,J=(e,r)=>{let t=r?.complete??"/shop/complete-purchase",s=r?.cancel??"/shop/cancel-purchase";b={completeUrl:new URL(t,e).toString(),cancelUrl:new URL(s,e).toString()}},M=J;import{TebexHeadless as N}from"tebex_headless";var S=null,O=(e)=>{S=new N(e)},V=O;var X=()=>{if(!S)throw Error("Tebex client not initialized. Call initTebex(publicKey) first.");return S},g=X;import{useEffect as xe,useState as d}from"react";import{toast as C}from"sonner";var Y=async({username:e,completeUrl:r,cancelUrl:t,custom:s,completeAutoRedirect:i,ipAddress:m})=>{return(await g()).createMinecraftBasket(e,r,t,s,i,m)},Z=async(e)=>{return(await g()).getBasket(e)},_=async(e,r,t,s,i)=>{return(await g()).addPackageToBasket(e,r,t??1,s,i)},$=async(e,r,t)=>{return(await g()).updateQuantity(e,r,t-1>=0?t-1:0)},E={createBasket:Y,getBasket:Z,addPackageToBasket:_,removePackageFromBasket:$},u=E;import{create as I}from"zustand";import{persist as Q,subscribeWithSelector as ee}from"zustand/middleware";var re=I()(ee(Q((e)=>({basketIdent:null,setBasketIdent:(r)=>e({basketIdent:r}),clearBasketIdent:()=>e({basketIdent:null})}),{name:"shop-basket-store"}))),x=re;import{create as te}from"zustand";import{subscribeWithSelector as oe}from"zustand/middleware";var se=te()(oe((e)=>({isGlobalLoading:!1,setIsGlobalLoading:(r)=>e({isGlobalLoading:r}),isCreatingBasket:!1,setIsCreatingBasket:(r)=>e({isCreatingBasket:r})}))),k=se;import{create as ae}from"zustand";import{persist as ne,subscribeWithSelector as ie}from"zustand/middleware";var le=ae()(ie(ne((e)=>({username:"",setUsername:(r)=>e({username:r}),clearUsername:()=>e({username:""})}),{name:"shop-user-store"}))),U=le;import{useCallback as pe}from"react";import{toast as v}from"sonner";var ce=async({includePackages:e,basketIdent:r,ipAddress:t})=>{return(await g()).getCategories(e,r,t)},me={getCategories:ce},w=me;var fe=async(e)=>{let{isCreatingBasket:r,setIsCreatingBasket:t,setBasketIdent:s,createBasket:i,username:m}=e;if(r)return null;let{completeUrl:o,cancelUrl:p}=ue();try{t(!0);let c=await i({username:m,completeUrl:o,cancelUrl:p,completeAutoRedirect:!1,ipAddress:""});if(!c?.ident)return v.error("Une erreur est survenue lors de la création du panier"),null;return s(c.ident),c}catch{return v.error("Erreur lors de la création du panier. Contactez le support si le problème persiste."),null}finally{t(!1)}},ge=(e)=>{let r=k((o)=>o.isCreatingBasket),t=k((o)=>o.setIsCreatingBasket),s=x((o)=>o.setBasketIdent),i=U((o)=>o.username);return pe(()=>fe({isCreatingBasket:r,setIsCreatingBasket:t,setBasketIdent:s,createBasket:u.createBasket,username:e??i}),[r,t,s,e,i])},ue=()=>{if(!b)throw Error("Shop URLs not initialized. Call initShopUrls(baseUrl, paths?: { complete?: string; cancel?: string }) first.");return{completeUrl:b.completeUrl,cancelUrl:b.cancelUrl}},y=ge;var Ce=(e)=>{let[r,t]=d(null),[s,i]=d(!1),[m,o]=d(null),[p,c]=d(!1),n=x((a)=>a.basketIdent),h=x((a)=>a.setBasketIdent),H=U((a)=>a.username),G=e??H,z=y(G),T=x((a)=>a.clearBasketIdent),R=async(a)=>{i(!0),o(null);try{let l=await u.getBasket(a);if(l.complete){t(null),T(),o(null);return}t(l),h(l.ident),o(null)}catch(l){o(l),t(null),T()}finally{i(!1)}},W=async(a,l,B,q)=>{if(p)return;try{if(c(!0),!G){C.error("Vous devez vous connecter pour ajouter des articles à votre panier");return}let f=null;if(!n){if(f=(await z())?.ident??null,!f){C.error("Une erreur est survenue lors de la création du panier");return}h(f)}else f=n;if(!f){C.error("Vous n'avez pas de panier. Si le problème persiste, veuillez vous rapprocher du support.");return}let L=u.addPackageToBasket(f,a,l,B,q);C.promise(L,{loading:"Ajout de l'article dans votre panier...",success:"Article ajouté avec succès !",error:"Une erreur est survenue lors de l'ajout de l'article dans votre panier"});let D=await L;t(D),o(null)}catch(f){o(f)}finally{c(!1)}},F=async(a)=>{if(p)return;try{if(c(!0),!n){C.error("Vous n'avez pas de panier. Si le problème persiste, veuillez vous rapprocher du support.");return}let l=u.removePackageFromBasket(n,a,r?.packages.find((B)=>B.id===a)?.in_basket.quantity??0);l.then((B)=>{t(B),o(null)}),C.promise(l,{loading:"Suppression de l'article de votre panier...",success:"Article supprimé avec succès !",error:"Une erreur est survenue lors de la suppression de l'article de votre panier"})}catch(l){o(l)}finally{c(!1)}},K=async()=>{if(n)await R(n)},j=(a)=>{t(a)};return xe(()=>{if(!n)return;R(n)},[n]),{basket:r,loading:s,error:m,updateManualBasket:j,addPackageToBasket:W,removePackageFromBasket:F,refetch:K}},Be=Ce;import{useCallback as A,useEffect as be,useState as P}from"react";var Ue=(e)=>{let[r,t]=P(null),[s,i]=P(!0),[m,o]=P(null),p=A(async()=>{i(!0),o(null);try{let n=await w.getCategories(e);t(n)}catch(n){o(n),t(null)}finally{i(!1)}},[e]);be(()=>{p()},[p]);let c=A((n)=>r?.find((h)=>h.name.toLowerCase()===n.toLowerCase()),[r]);return{categories:r,loading:s,error:m,getByName:c,refetch:p}},he=Ue;export{U as useShopUserStore,k as useShopUiStore,x as useShopBasketStore,y as useCreateBasket,he as useCategories,Be as useBasket,S as tebex,b as shopUrls,V as initTebex,M as initShopUrls,g as getTebex,w as categoriesService,u as basketService};
|