@serverbench/js 1.0.6 → 1.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. package/dist/index.cjs +1 -26
  2. package/dist/index.cjs.map +1 -1
  3. package/dist/index.d.cts +96 -12
  4. package/dist/index.d.ts +96 -12
  5. package/dist/index.js +1 -26
  6. package/dist/index.js.map +1 -1
  7. package/package.json +10 -4
  8. package/dist/Member.cjs +0 -2
  9. package/dist/Member.cjs.map +0 -1
  10. package/dist/Member.d.cts +0 -7
  11. package/dist/Member.d.ts +0 -7
  12. package/dist/Member.js +0 -2
  13. package/dist/Member.js.map +0 -1
  14. package/dist/Serverbench-C0I-PLPz.d.cts +0 -38
  15. package/dist/Serverbench-F_xIsjPx.d.ts +0 -38
  16. package/dist/Serverbench.cjs +0 -9
  17. package/dist/Serverbench.cjs.map +0 -1
  18. package/dist/Serverbench.d.cts +0 -10
  19. package/dist/Serverbench.d.ts +0 -10
  20. package/dist/Serverbench.js +0 -9
  21. package/dist/Serverbench.js.map +0 -1
  22. package/dist/chunk-3J3HZGB4.cjs +0 -217
  23. package/dist/chunk-3J3HZGB4.cjs.map +0 -1
  24. package/dist/chunk-4SUKRL6R.js +0 -1
  25. package/dist/chunk-4SUKRL6R.js.map +0 -1
  26. package/dist/chunk-56HSL4MD.js +0 -1
  27. package/dist/chunk-56HSL4MD.js.map +0 -1
  28. package/dist/chunk-6H3W24A3.js +0 -49
  29. package/dist/chunk-6H3W24A3.js.map +0 -1
  30. package/dist/chunk-7KUMKL43.js +0 -1
  31. package/dist/chunk-7KUMKL43.js.map +0 -1
  32. package/dist/chunk-AS4B37XA.js +0 -1
  33. package/dist/chunk-AS4B37XA.js.map +0 -1
  34. package/dist/chunk-D22KLLON.cjs +0 -1
  35. package/dist/chunk-D22KLLON.cjs.map +0 -1
  36. package/dist/chunk-DSKIK7XF.cjs +0 -1
  37. package/dist/chunk-DSKIK7XF.cjs.map +0 -1
  38. package/dist/chunk-FI7FAFLX.js +0 -1
  39. package/dist/chunk-FI7FAFLX.js.map +0 -1
  40. package/dist/chunk-GOVZHEHO.cjs +0 -1
  41. package/dist/chunk-GOVZHEHO.cjs.map +0 -1
  42. package/dist/chunk-GUCBRGGB.cjs +0 -49
  43. package/dist/chunk-GUCBRGGB.cjs.map +0 -1
  44. package/dist/chunk-LBVHKFZO.js +0 -1
  45. package/dist/chunk-LBVHKFZO.js.map +0 -1
  46. package/dist/chunk-LTCU7F4C.js +0 -217
  47. package/dist/chunk-LTCU7F4C.js.map +0 -1
  48. package/dist/chunk-NRMKMC27.cjs +0 -1
  49. package/dist/chunk-NRMKMC27.cjs.map +0 -1
  50. package/dist/chunk-OJYCLEOF.cjs +0 -1
  51. package/dist/chunk-OJYCLEOF.cjs.map +0 -1
  52. package/dist/chunk-OVXIHLHV.cjs +0 -1
  53. package/dist/chunk-OVXIHLHV.cjs.map +0 -1
  54. package/dist/chunk-OW4YZ724.cjs +0 -1
  55. package/dist/chunk-OW4YZ724.cjs.map +0 -1
  56. package/dist/chunk-RY7QEHM4.js +0 -1
  57. package/dist/chunk-RY7QEHM4.js.map +0 -1
  58. package/dist/chunk-SPTRBXXV.js +0 -32
  59. package/dist/chunk-SPTRBXXV.js.map +0 -1
  60. package/dist/chunk-TGMXZUHQ.js +0 -1
  61. package/dist/chunk-TGMXZUHQ.js.map +0 -1
  62. package/dist/chunk-UHS7Z46V.cjs +0 -1
  63. package/dist/chunk-UHS7Z46V.cjs.map +0 -1
  64. package/dist/chunk-UZ4T6QQE.cjs +0 -32
  65. package/dist/chunk-UZ4T6QQE.cjs.map +0 -1
  66. package/dist/chunk-X4NW2R7G.cjs +0 -1
  67. package/dist/chunk-X4NW2R7G.cjs.map +0 -1
  68. package/dist/chunk-ZYLLOUW6.js +0 -1
  69. package/dist/chunk-ZYLLOUW6.js.map +0 -1
  70. package/dist/element/Element.cjs +0 -7
  71. package/dist/element/Element.cjs.map +0 -1
  72. package/dist/element/Element.d.cts +0 -10
  73. package/dist/element/Element.d.ts +0 -10
  74. package/dist/element/Element.js +0 -7
  75. package/dist/element/Element.js.map +0 -1
  76. package/dist/store/ICountryCurrency.cjs +0 -2
  77. package/dist/store/ICountryCurrency.cjs.map +0 -1
  78. package/dist/store/ICountryCurrency.d.cts +0 -7
  79. package/dist/store/ICountryCurrency.d.ts +0 -7
  80. package/dist/store/ICountryCurrency.js +0 -2
  81. package/dist/store/ICountryCurrency.js.map +0 -1
  82. package/dist/store/IDiscount.cjs +0 -2
  83. package/dist/store/IDiscount.cjs.map +0 -1
  84. package/dist/store/IDiscount.d.cts +0 -13
  85. package/dist/store/IDiscount.d.ts +0 -13
  86. package/dist/store/IDiscount.js +0 -2
  87. package/dist/store/IDiscount.js.map +0 -1
  88. package/dist/store/ISku.cjs +0 -2
  89. package/dist/store/ISku.cjs.map +0 -1
  90. package/dist/store/ISku.d.cts +0 -17
  91. package/dist/store/ISku.d.ts +0 -17
  92. package/dist/store/ISku.js +0 -2
  93. package/dist/store/ISku.js.map +0 -1
  94. package/dist/store/ISkuPerkUsage.cjs +0 -2
  95. package/dist/store/ISkuPerkUsage.cjs.map +0 -1
  96. package/dist/store/ISkuPerkUsage.d.cts +0 -7
  97. package/dist/store/ISkuPerkUsage.d.ts +0 -7
  98. package/dist/store/ISkuPerkUsage.js +0 -2
  99. package/dist/store/ISkuPerkUsage.js.map +0 -1
  100. package/dist/store/ISkuPrice.cjs +0 -2
  101. package/dist/store/ISkuPrice.cjs.map +0 -1
  102. package/dist/store/ISkuPrice.d.cts +0 -10
  103. package/dist/store/ISkuPrice.d.ts +0 -10
  104. package/dist/store/ISkuPrice.js +0 -2
  105. package/dist/store/ISkuPrice.js.map +0 -1
  106. package/dist/store/IStore.cjs +0 -2
  107. package/dist/store/IStore.cjs.map +0 -1
  108. package/dist/store/IStore.d.cts +0 -18
  109. package/dist/store/IStore.d.ts +0 -18
  110. package/dist/store/IStore.js +0 -2
  111. package/dist/store/IStore.js.map +0 -1
  112. package/dist/store/IStoreCategory.cjs +0 -2
  113. package/dist/store/IStoreCategory.cjs.map +0 -1
  114. package/dist/store/IStoreCategory.d.cts +0 -16
  115. package/dist/store/IStoreCategory.d.ts +0 -16
  116. package/dist/store/IStoreCategory.js +0 -2
  117. package/dist/store/IStoreCategory.js.map +0 -1
  118. package/dist/store/IStoreCategorySet.cjs +0 -2
  119. package/dist/store/IStoreCategorySet.cjs.map +0 -1
  120. package/dist/store/IStoreCategorySet.d.cts +0 -6
  121. package/dist/store/IStoreCategorySet.d.ts +0 -6
  122. package/dist/store/IStoreCategorySet.js +0 -2
  123. package/dist/store/IStoreCategorySet.js.map +0 -1
  124. package/dist/store/Store.cjs +0 -8
  125. package/dist/store/Store.cjs.map +0 -1
  126. package/dist/store/Store.d.cts +0 -10
  127. package/dist/store/Store.d.ts +0 -10
  128. package/dist/store/Store.js +0 -8
  129. package/dist/store/Store.js.map +0 -1
package/dist/index.cjs CHANGED
@@ -1,27 +1,2 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-OW4YZ724.cjs');
2
- require('./chunk-OJYCLEOF.cjs');
3
- require('./chunk-X4NW2R7G.cjs');
4
- require('./chunk-DSKIK7XF.cjs');
5
- require('./chunk-NRMKMC27.cjs');
6
-
7
-
8
- var _chunkGUCBRGGBcjs = require('./chunk-GUCBRGGB.cjs');
9
-
10
-
11
- var _chunkUZ4T6QQEcjs = require('./chunk-UZ4T6QQE.cjs');
12
-
13
-
14
- var _chunk3J3HZGB4cjs = require('./chunk-3J3HZGB4.cjs');
15
- require('./chunk-GOVZHEHO.cjs');
16
- require('./chunk-D22KLLON.cjs');
17
- require('./chunk-UHS7Z46V.cjs');
18
- require('./chunk-OVXIHLHV.cjs');
19
-
20
- // src/index.ts
21
- var src_default = _chunkGUCBRGGBcjs.Serverbench;
22
-
23
-
24
-
25
-
26
- exports.Element = _chunk3J3HZGB4cjs.Element; exports.Store = _chunkUZ4T6QQEcjs.Store; exports.default = src_default;
1
+ "use strict";var p=Object.defineProperty;var w=Object.getOwnPropertyDescriptor;var k=Object.getOwnPropertyNames;var E=Object.prototype.hasOwnProperty;var I=(e,t)=>{for(var n in t)p(e,n,{get:t[n],enumerable:!0})},L=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of k(t))!E.call(e,i)&&i!==n&&p(e,i,{get:()=>t[i],enumerable:!(r=w(t,i))||r.enumerable});return e};var R=e=>L(p({},"__esModule",{value:!0}),e);var J={};I(J,{Element:()=>u,Store:()=>l,default:()=>G});module.exports=R(J);var v=()=>typeof window<"u",z=()=>window.self!==window.top,b=e=>e instanceof HTMLIFrameElement,D=(e,t)=>{e.document.readyState==="complete"?t():e.addEventListener("load",t)},H=(e,t)=>{t(),e.addEventListener("load",t)},O=(e,t)=>{var n,r;let i=((n=e.contentWindow)==null?void 0:n.document.readyState)==="complete";return e.src!=="about:blank"&&((r=e.contentWindow)==null?void 0:r.location.href)!=="about:blank"&&i?t():e.addEventListener("load",t)},x=()=>({offsetSize:0,checkOrigin:!0,enableLegacyLibSupport:!1}),C=e=>{try{return new URL(e.src).origin===window.location.origin}catch{return!1}},A=e=>{try{let t=new URL(e.src).origin;if(t!=="about:blank")return t}catch{}return null},M=e=>(Object.keys(e).forEach(t=>e[t]===void 0&&delete e[t]),e),y=e=>{let{height:t}=e.documentElement.getBoundingClientRect();return Math.ceil(t)};function j(e){H(e,()=>{var t;return(t=e.contentWindow)==null?void 0:t.postMessage("[iFrameSizer]ID:0:false:false:32:true:true::auto:::0:false:child:auto:true:::true:::false","*")})}function P(e){if(typeof e.data=="string"&&e.data.startsWith("[iFrameSizer]")){let[t,n]=e.data.split(":"),r=+n;return r>0?r:null}return null}var f=v()?q():null,h=[],S=(e,t)=>{if(!v())return[];let n={...x(),...M(e??{})},r=$(t),i=B(n,r);return r.map(o=>{let s={iframe:o,settings:n,interactionState:{isHovered:!1}},d=W(s,i);return h.push(s),{unsubscribe:()=>{d(),h=h.filter(a=>a.iframe!==o)}}})};function $(e){return typeof e=="string"?Array.from(document.querySelectorAll(e)).filter(b):e?b(e)?[e]:[]:Array.from(document.getElementsByTagName("iframe"))}function B(e,t){if(Array.isArray(e.checkOrigin))return e.checkOrigin;if(!e.checkOrigin)return[];let n=[];for(let r of t){let i=A(r);i&&n.push(i)}return n}function W(e,t){let n=C(e.iframe)?U(e):T(e,t),r=F(e);return()=>{n(),r()}}function T(e,t){let{iframe:n,settings:r}=e,i=o=>{var s;let d=!r.checkOrigin||t.includes(o.origin);if(!(n.contentWindow!==o.source||!d)){if(((s=o.data)==null?void 0:s.type)==="iframe-resized"){let{height:a}=o.data;a&&g({newHeight:a,registeredElement:e});return}if(r.enableLegacyLibSupport){let a=P(o);a!==null&&g({newHeight:a,registeredElement:e});return}}};return window.addEventListener("message",i),r.enableLegacyLibSupport&&j(n),()=>window.removeEventListener("message",i)}function U({iframe:e}){let t=()=>{var n;let r=(n=e.contentDocument)==null?void 0:n.body;r&&f?.observe(r)};return O(e,t),()=>{var n;(n=e.contentDocument)!=null&&n.body&&f?.unobserve(e.contentDocument.body),e.removeEventListener("load",t)}}function F({iframe:e,interactionState:t}){let n=()=>{t.isHovered=!0},r=()=>{t.isHovered=!1};return e.addEventListener("mouseenter",n),e.addEventListener("mouseleave",r),()=>{e.removeEventListener("mouseenter",n),e.removeEventListener("mouseleave",r)}}function q(){let e=({target:t})=>{let n=h.find(o=>{var s;return((s=o.iframe.contentDocument)==null?void 0:s.body)===t});if(!n)return;let{iframe:r}=n;if(!r.contentDocument)return;let i=y(r.contentDocument);i&&g({newHeight:i,registeredElement:n})};return new ResizeObserver(t=>t.forEach(e))}function g({registeredElement:e,newHeight:t}){let{iframe:n,settings:r,interactionState:i}=e,o=n.getBoundingClientRect(),s=t+r.offsetSize;if(n.style.height=`${s}px`,!r.onIframeResize)return;let d={iframe:n,settings:{...r},interactionState:{...i},previousRenderState:{rect:o},nextRenderState:{rect:n.getBoundingClientRect()}};r.onIframeResize(d)}N();function N(){!v()||!z()||D(window,()=>{let e=()=>{let t={type:"iframe-resized",width:document.documentElement.scrollWidth,height:y(document)};window.parent.postMessage(t,"*")};new ResizeObserver(e).observe(document.body)})}var u=class{constructor(t,n,r={},i=!1,o=!1){this.client=t,this.dark=i,this.background=o,this.path=n,this.args=r}setDark(t){return this.dark=t,this}setBackground(t){return this.background=t,this}async mount(t){let n=new URLSearchParams;n.set("clientId",this.client.clientId),n.set("clientSecret",this.client.clientSecret),this.dark&&n.set("dark","true"),this.background&&n.set("background","true");for(let o in this.args){let s=this.args[o];Array.isArray(s)?n.set(o,s.join(",")):n.set(o,s)}let r=document.createElement("iframe");r.src=`https://safe.serverbench.io${this.path}?${n.toString()}`,r.style.width="100%";let i=t.appendChild(r);return S({},i),this}};var l=class{constructor(t){this.client=t}async get(t,n){return await this.client.post("community","/store/view",{username:t,eid:n})}checkout(t,n,r){return new u(this.client,"/community/checkout",{prices:t.map(i=>i.id).join(","),discounts:n.map(i=>i.id).join(","),member:r.id})}};var c=class c{constructor(t,n,r){this.clientId=t,this.clientSecret=n,this.test=r}static get(t,n,r=!1){return(!c.instance||c.instance.clientId!==t||c.instance.clientSecret!==n||c.instance.test!==r)&&(c.instance=new c(t,n,r)),c.instance}get store(){return new l(this)}async fetch(t,n,r){let i=this.test?"https://dev.serverbench.io":"https://api.serverbench.io",o=new Headers({authorization:`ApiKey ${this.clientSecret}`});return r&&o.set("Content-Type","application/json"),(await fetch(`${i}/${t}/${this.clientId}${n}`,{headers:o,method:r?"POST":"GET",body:r?JSON.stringify(r):void 0})).json()}async get(t,n){return this.fetch(t,n)}async post(t,n,r={}){return this.fetch(t,n,r)}};c.instance=null;var m=c;var G=m;0&&(module.exports={Element,Store});
27
2
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["c:\\Users\\quique\\Documents\\nominal\\serverbench\\js\\dist\\index.cjs"],"names":[],"mappings":"AAAA,yGAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B;AACA;AACA,IAAI,YAAY,EAAE,6BAAW;AAC7B;AACE;AACA;AACA;AACF,oHAAC","file":"C:\\Users\\quique\\Documents\\nominal\\serverbench\\js\\dist\\index.cjs","sourcesContent":[null]}
1
+ {"version":3,"sources":["../src/index.ts","../node_modules/.pnpm/@open-iframe-resizer+core@1.2.1/node_modules/@open-iframe-resizer/core/dist/index.js","../src/element/Element.ts","../src/store/Store.ts","../src/Serverbench.ts"],"sourcesContent":["import Member from \"./Member.js\";\r\nimport Serverbench from \"./Serverbench.js\";\r\nimport ICountryCurrency from \"./store/ICountryCurrency.js\";\r\nimport ISku from \"./store/ISku.js\";\r\nimport ISkuPerkUsage from \"./store/ISkuPerkUsage.js\";\r\nimport ISkuPrice from \"./store/ISkuPrice.js\";\r\nimport IStore from \"./store/IStore.js\";\r\nimport IStoreCategory from \"./store/IStoreCategory.js\";\r\nimport IStoreCategorySet from \"./store/IStoreCategorySet.js\";\r\nimport Store from \"./store/Store.js\";\r\nimport Element from \"./element/Element.js\"\r\nimport IDiscount from \"./store/IDiscount.js\";\r\n\r\nexport {\r\n Store,\r\n ICountryCurrency,\r\n IDiscount,\r\n ISku,\r\n ISkuPerkUsage,\r\n ISkuPrice,\r\n IStore,\r\n IStoreCategory,\r\n IStoreCategorySet,\r\n}\r\n\r\nexport {\r\n Member\r\n}\r\n\r\nexport {\r\n Element\r\n}\r\n\r\nexport default Serverbench","const g = () => typeof window < \"u\", L = () => window.self !== window.top, m = (e) => e instanceof HTMLIFrameElement, w = (e, t) => {\n e.document.readyState === \"complete\" ? t() : e.addEventListener(\"load\", t);\n}, y = (e, t) => {\n t(), e.addEventListener(\"load\", t);\n}, p = (e, t) => {\n var i, o;\n const n = ((i = e.contentWindow) == null ? void 0 : i.document.readyState) === \"complete\";\n return e.src !== \"about:blank\" && ((o = e.contentWindow) == null ? void 0 : o.location.href) !== \"about:blank\" && n ? t() : e.addEventListener(\"load\", t);\n}, v = () => ({ offsetSize: 0, checkOrigin: !0, enableLegacyLibSupport: !1 }), b = (e) => {\n try {\n return new URL(e.src).origin === window.location.origin;\n } catch {\n return !1;\n }\n}, I = (e) => {\n try {\n const t = new URL(e.src).origin;\n if (t !== \"about:blank\")\n return t;\n } catch {\n }\n return null;\n}, R = (e) => (Object.keys(e).forEach((t) => e[t] === void 0 && delete e[t]), e), h = (e) => {\n const { height: t } = e.documentElement.getBoundingClientRect();\n return Math.ceil(t);\n};\nfunction z(e) {\n y(\n e,\n () => {\n var t;\n return (t = e.contentWindow) == null ? void 0 : t.postMessage(\"[iFrameSizer]ID:0:false:false:32:true:true::auto:::0:false:child:auto:true:::true:::false\", \"*\");\n }\n );\n}\nfunction O(e) {\n if (typeof e.data == \"string\" && e.data.startsWith(\"[iFrameSizer]\")) {\n const [t, n] = e.data.split(\":\"), r = +n;\n return r > 0 ? r : null;\n }\n return null;\n}\nconst a = g() ? M() : null;\nlet l = [];\nconst D = (e, t) => {\n if (!g())\n return [];\n const n = { ...v(), ...R(e ?? {}) }, r = S(t), i = E(n, r);\n return r.map((o) => {\n const s = { iframe: o, settings: n, interactionState: { isHovered: !1 } }, d = C(s, i);\n return l.push(s), {\n unsubscribe: () => {\n d(), l = l.filter((u) => u.iframe !== o);\n }\n };\n });\n};\nfunction S(e) {\n return typeof e == \"string\" ? Array.from(document.querySelectorAll(e)).filter(m) : e ? m(e) ? [e] : [] : Array.from(document.getElementsByTagName(\"iframe\"));\n}\nfunction E(e, t) {\n if (Array.isArray(e.checkOrigin))\n return e.checkOrigin;\n if (!e.checkOrigin)\n return [];\n const n = [];\n for (const r of t) {\n const i = I(r);\n i && n.push(i);\n }\n return n;\n}\nfunction C(e, t) {\n const n = b(e.iframe) ? B(e) : k(e, t), r = H(e);\n return () => {\n n(), r();\n };\n}\nfunction k(e, t) {\n const { iframe: n, settings: r } = e, i = (o) => {\n var u;\n const s = !r.checkOrigin || t.includes(o.origin);\n if (!(!(n.contentWindow === o.source) || !s)) {\n if (((u = o.data) == null ? void 0 : u.type) === \"iframe-resized\") {\n const { height: c } = o.data;\n c && f({ newHeight: c, registeredElement: e });\n return;\n }\n if (r.enableLegacyLibSupport) {\n const c = O(o);\n c !== null && f({ newHeight: c, registeredElement: e });\n return;\n }\n }\n };\n return window.addEventListener(\"message\", i), r.enableLegacyLibSupport && z(n), () => window.removeEventListener(\"message\", i);\n}\nfunction B({ iframe: e }) {\n const t = () => {\n var r;\n const n = (r = e.contentDocument) == null ? void 0 : r.body;\n n && (a == null || a.observe(n));\n };\n return p(e, t), () => {\n var n;\n (n = e.contentDocument) != null && n.body && (a == null || a.unobserve(e.contentDocument.body)), e.removeEventListener(\"load\", t);\n };\n}\nfunction H({ iframe: e, interactionState: t }) {\n const n = () => {\n t.isHovered = !0;\n }, r = () => {\n t.isHovered = !1;\n };\n return e.addEventListener(\"mouseenter\", n), e.addEventListener(\"mouseleave\", r), () => {\n e.removeEventListener(\"mouseenter\", n), e.removeEventListener(\"mouseleave\", r);\n };\n}\nfunction M() {\n const e = ({ target: t }) => {\n const n = l.find((o) => {\n var s;\n return ((s = o.iframe.contentDocument) == null ? void 0 : s.body) === t;\n });\n if (!n)\n return;\n const { iframe: r } = n;\n if (!r.contentDocument)\n return;\n const i = h(r.contentDocument);\n i && f({ newHeight: i, registeredElement: n });\n };\n return new ResizeObserver((t) => t.forEach(e));\n}\nfunction f({ registeredElement: e, newHeight: t }) {\n const { iframe: n, settings: r, interactionState: i } = e, o = n.getBoundingClientRect(), s = t + r.offsetSize;\n if (n.style.height = `${s}px`, !r.onIframeResize)\n return;\n const d = {\n iframe: n,\n settings: { ...r },\n interactionState: { ...i },\n previousRenderState: { rect: o },\n nextRenderState: { rect: n.getBoundingClientRect() }\n };\n r.onIframeResize(d);\n}\nW();\nfunction W() {\n !g() || !L() || w(window, () => {\n const e = () => {\n const n = {\n type: \"iframe-resized\",\n width: document.documentElement.scrollWidth,\n height: h(document)\n };\n window.parent.postMessage(n, \"*\");\n };\n new ResizeObserver(e).observe(document.body);\n });\n}\nconst A = ({ previousRenderState: e, nextRenderState: t, interactionState: n }) => {\n n.isHovered && window.scrollBy(0, t.rect.bottom - e.rect.bottom);\n};\nexport {\n D as initialize,\n W as initializeChildListener,\n A as updateParentScrollOnResize\n};\n","import { initialize } from \"../../node_modules/@open-iframe-resizer/core/dist/index.js\"\r\nimport Serverbench from \"../Serverbench.js\"\r\n\r\nexport default class Element {\r\n\r\n private readonly client: Serverbench\r\n private dark: boolean\r\n private background: boolean\r\n private readonly path: string\r\n private readonly args: Record<string, string | string[]>\r\n\r\n constructor(client: Serverbench, path: string, args: Record<string, string | string[]> = {}, dark: boolean = false, background: boolean = false) {\r\n this.client = client\r\n this.dark = dark\r\n this.background = background\r\n this.path = path\r\n this.args = args\r\n }\r\n\r\n setDark(dark: boolean) {\r\n this.dark = dark\r\n return this\r\n }\r\n\r\n setBackground(background: boolean) {\r\n this.background = background\r\n return this\r\n }\r\n\r\n async mount(element: HTMLElement) {\r\n const queryParams = new URLSearchParams()\r\n queryParams.set('clientId', this.client.clientId)\r\n queryParams.set('clientSecret', this.client.clientSecret)\r\n if (this.dark) queryParams.set('dark', 'true')\r\n if (this.background) queryParams.set('background', 'true')\r\n for (const key in this.args) {\r\n const value = this.args[key]\r\n if (Array.isArray(value)) {\r\n queryParams.set(key, value.join(','))\r\n } else {\r\n queryParams.set(key, value)\r\n }\r\n }\r\n const iframe = document.createElement('iframe');\r\n iframe.src = `https://safe.serverbench.io${this.path}?${queryParams.toString()}`;\r\n iframe.style.width = '100%';\r\n const appended = element.appendChild(iframe);\r\n initialize({}, appended);\r\n return this\r\n }\r\n\r\n}","import Element from \"../element/Element.js\";\r\nimport Member from \"../Member.js\";\r\nimport type Serverbench from \"../Serverbench.js\";\r\nimport IDiscount from \"./IDiscount.js\";\r\nimport ISkuPrice from \"./ISkuPrice.js\";\r\nimport type IStore from \"./IStore.js\";\r\n\r\nexport default class Store {\r\n\r\n private client: Serverbench\r\n\r\n constructor(client: Serverbench) {\r\n this.client = client\r\n }\r\n\r\n async get(username?: string, eid?: string) {\r\n return (await this.client.post('community', '/store/view', {\r\n username,\r\n eid\r\n })) as IStore\r\n }\r\n\r\n checkout(prices: ISkuPrice[], discounts: IDiscount[], member: Member) {\r\n return new Element(\r\n this.client,\r\n '/community/checkout',\r\n {\r\n prices: prices.map(price => price.id).join(','),\r\n discounts: discounts.map(discount => discount.id).join(','),\r\n member: member.id\r\n }\r\n )\r\n }\r\n\r\n}","import Store from \"./store/Store.js\"\r\n\r\nexport default class Serverbench {\r\n\r\n clientId: string\r\n clientSecret: string\r\n test: boolean\r\n\r\n private static instance: Serverbench | null = null\r\n\r\n private constructor(clientId: string, clientSecret: string, test: boolean) {\r\n this.clientId = clientId\r\n this.clientSecret = clientSecret\r\n this.test = test\r\n }\r\n\r\n static get(clientId: string, clientSecret: string, test: boolean = false) {\r\n if (!Serverbench.instance || Serverbench.instance.clientId !== clientId || Serverbench.instance.clientSecret !== clientSecret || Serverbench.instance.test !== test) {\r\n Serverbench.instance = new Serverbench(clientId, clientSecret, test)\r\n }\r\n return Serverbench.instance\r\n }\r\n\r\n get store() {\r\n return new Store(this)\r\n }\r\n\r\n private async fetch(realm: string, url: string, body?: any) {\r\n const domain = this.test ? 'https://dev.serverbench.io' : 'https://api.serverbench.io'\r\n const headers = new Headers({\r\n authorization: `ApiKey ${this.clientSecret}`,\r\n })\r\n if (body) {\r\n headers.set('Content-Type', 'application/json')\r\n }\r\n const response = await fetch(`${domain}/${realm}/${this.clientId}${url}`, {\r\n headers,\r\n method: body ? 'POST' : 'GET',\r\n body: body ? JSON.stringify(body) : undefined\r\n })\r\n return response.json()\r\n }\r\n\r\n async get(realm: string, url: string) {\r\n return this.fetch(realm, url)\r\n }\r\n\r\n async post(realm: string, url: string, body: any = {}) {\r\n return this.fetch(realm, url, body)\r\n }\r\n\r\n}"],"mappings":"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","names":["src_exports","__export","Element","Store","src_default","__toCommonJS","g","L","m","w","y","p","i","o","n","v","b","I","R","h","z","O","a","M","l","D","S","E","C","u","B","k","H","s","c","f","r","W","Element","client","path","args","dark","background","element","queryParams","key","value","iframe","appended","D","Store","client","username","eid","prices","discounts","member","Element","price","discount","_Serverbench","clientId","clientSecret","test","Store","realm","url","body","domain","headers","Serverbench","src_default","Serverbench"]}
package/dist/index.d.cts CHANGED
@@ -1,15 +1,99 @@
1
- export { default as Member } from './Member.cjs';
2
- import { S as Serverbench } from './Serverbench-C0I-PLPz.cjs';
3
- export { E as Element, a as Store } from './Serverbench-C0I-PLPz.cjs';
4
- export { default as ICountryCurrency } from './store/ICountryCurrency.cjs';
5
- export { default as ISku } from './store/ISku.cjs';
6
- export { default as ISkuPerkUsage } from './store/ISkuPerkUsage.cjs';
7
- export { default as ISkuPrice } from './store/ISkuPrice.cjs';
8
- export { default as IStore } from './store/IStore.cjs';
9
- export { default as IStoreCategory } from './store/IStoreCategory.cjs';
10
- export { default as IStoreCategorySet } from './store/IStoreCategorySet.cjs';
11
- export { default as IDiscount } from './store/IDiscount.cjs';
1
+ interface Member {
2
+ name: string;
3
+ eid: string;
4
+ id: string;
5
+ }
12
6
 
7
+ declare class Element {
8
+ private readonly client;
9
+ private dark;
10
+ private background;
11
+ private readonly path;
12
+ private readonly args;
13
+ constructor(client: Serverbench, path: string, args?: Record<string, string | string[]>, dark?: boolean, background?: boolean);
14
+ setDark(dark: boolean): this;
15
+ setBackground(background: boolean): this;
16
+ mount(element: HTMLElement): Promise<this>;
17
+ }
13
18
 
19
+ interface ICountryCurrency {
20
+ currency: string;
21
+ digits: number;
22
+ country: string | null;
23
+ }
14
24
 
15
- export { Serverbench as default };
25
+ interface ISkuPrice {
26
+ id: string;
27
+ amount: number;
28
+ currency: ICountryCurrency;
29
+ frequency: string | null;
30
+ }
31
+
32
+ interface IDiscount {
33
+ id: string;
34
+ amount: number | null;
35
+ percentage: number | null;
36
+ absolute: number;
37
+ end: Date | null;
38
+ price: ISkuPrice;
39
+ }
40
+
41
+ interface ISkuPerkUsage {
42
+ id: string;
43
+ name: string;
44
+ amount: number | null;
45
+ }
46
+
47
+ interface ISku {
48
+ id: string;
49
+ index: number;
50
+ name: string;
51
+ type: string;
52
+ perks: ISkuPerkUsage[];
53
+ prices: ISkuPrice[];
54
+ available: boolean;
55
+ discounts: IDiscount[];
56
+ }
57
+
58
+ interface IStoreCategorySet {
59
+ id: string;
60
+ name: string;
61
+ }
62
+
63
+ interface IStoreCategory {
64
+ id: string;
65
+ name: string;
66
+ skus: ISku[];
67
+ sets: IStoreCategorySet[];
68
+ policy: string | null;
69
+ }
70
+
71
+ interface IStore {
72
+ categories: IStoreCategory[];
73
+ sets: IStoreCategorySet[];
74
+ currency: ICountryCurrency;
75
+ country: string | null;
76
+ member: Member | null;
77
+ }
78
+
79
+ declare class Store {
80
+ private client;
81
+ constructor(client: Serverbench);
82
+ get(username?: string, eid?: string): Promise<IStore>;
83
+ checkout(prices: ISkuPrice[], discounts: IDiscount[], member: Member): Element;
84
+ }
85
+
86
+ declare class Serverbench {
87
+ clientId: string;
88
+ clientSecret: string;
89
+ test: boolean;
90
+ private static instance;
91
+ private constructor();
92
+ static get(clientId: string, clientSecret: string, test?: boolean): Serverbench;
93
+ get store(): Store;
94
+ private fetch;
95
+ get(realm: string, url: string): Promise<any>;
96
+ post(realm: string, url: string, body?: any): Promise<any>;
97
+ }
98
+
99
+ export { Element, type ICountryCurrency, type IDiscount, type ISku, type ISkuPerkUsage, type ISkuPrice, type IStore, type IStoreCategory, type IStoreCategorySet, type Member, Store, Serverbench as default };
package/dist/index.d.ts CHANGED
@@ -1,15 +1,99 @@
1
- export { default as Member } from './Member.js';
2
- import { S as Serverbench } from './Serverbench-F_xIsjPx.js';
3
- export { E as Element, a as Store } from './Serverbench-F_xIsjPx.js';
4
- export { default as ICountryCurrency } from './store/ICountryCurrency.js';
5
- export { default as ISku } from './store/ISku.js';
6
- export { default as ISkuPerkUsage } from './store/ISkuPerkUsage.js';
7
- export { default as ISkuPrice } from './store/ISkuPrice.js';
8
- export { default as IStore } from './store/IStore.js';
9
- export { default as IStoreCategory } from './store/IStoreCategory.js';
10
- export { default as IStoreCategorySet } from './store/IStoreCategorySet.js';
11
- export { default as IDiscount } from './store/IDiscount.js';
1
+ interface Member {
2
+ name: string;
3
+ eid: string;
4
+ id: string;
5
+ }
12
6
 
7
+ declare class Element {
8
+ private readonly client;
9
+ private dark;
10
+ private background;
11
+ private readonly path;
12
+ private readonly args;
13
+ constructor(client: Serverbench, path: string, args?: Record<string, string | string[]>, dark?: boolean, background?: boolean);
14
+ setDark(dark: boolean): this;
15
+ setBackground(background: boolean): this;
16
+ mount(element: HTMLElement): Promise<this>;
17
+ }
13
18
 
19
+ interface ICountryCurrency {
20
+ currency: string;
21
+ digits: number;
22
+ country: string | null;
23
+ }
14
24
 
15
- export { Serverbench as default };
25
+ interface ISkuPrice {
26
+ id: string;
27
+ amount: number;
28
+ currency: ICountryCurrency;
29
+ frequency: string | null;
30
+ }
31
+
32
+ interface IDiscount {
33
+ id: string;
34
+ amount: number | null;
35
+ percentage: number | null;
36
+ absolute: number;
37
+ end: Date | null;
38
+ price: ISkuPrice;
39
+ }
40
+
41
+ interface ISkuPerkUsage {
42
+ id: string;
43
+ name: string;
44
+ amount: number | null;
45
+ }
46
+
47
+ interface ISku {
48
+ id: string;
49
+ index: number;
50
+ name: string;
51
+ type: string;
52
+ perks: ISkuPerkUsage[];
53
+ prices: ISkuPrice[];
54
+ available: boolean;
55
+ discounts: IDiscount[];
56
+ }
57
+
58
+ interface IStoreCategorySet {
59
+ id: string;
60
+ name: string;
61
+ }
62
+
63
+ interface IStoreCategory {
64
+ id: string;
65
+ name: string;
66
+ skus: ISku[];
67
+ sets: IStoreCategorySet[];
68
+ policy: string | null;
69
+ }
70
+
71
+ interface IStore {
72
+ categories: IStoreCategory[];
73
+ sets: IStoreCategorySet[];
74
+ currency: ICountryCurrency;
75
+ country: string | null;
76
+ member: Member | null;
77
+ }
78
+
79
+ declare class Store {
80
+ private client;
81
+ constructor(client: Serverbench);
82
+ get(username?: string, eid?: string): Promise<IStore>;
83
+ checkout(prices: ISkuPrice[], discounts: IDiscount[], member: Member): Element;
84
+ }
85
+
86
+ declare class Serverbench {
87
+ clientId: string;
88
+ clientSecret: string;
89
+ test: boolean;
90
+ private static instance;
91
+ private constructor();
92
+ static get(clientId: string, clientSecret: string, test?: boolean): Serverbench;
93
+ get store(): Store;
94
+ private fetch;
95
+ get(realm: string, url: string): Promise<any>;
96
+ post(realm: string, url: string, body?: any): Promise<any>;
97
+ }
98
+
99
+ export { Element, type ICountryCurrency, type IDiscount, type ISku, type ISkuPerkUsage, type ISkuPrice, type IStore, type IStoreCategory, type IStoreCategorySet, type Member, Store, Serverbench as default };
package/dist/index.js CHANGED
@@ -1,27 +1,2 @@
1
- import "./chunk-FI7FAFLX.js";
2
- import "./chunk-TGMXZUHQ.js";
3
- import "./chunk-LBVHKFZO.js";
4
- import "./chunk-7KUMKL43.js";
5
- import "./chunk-4SUKRL6R.js";
6
- import {
7
- Serverbench
8
- } from "./chunk-6H3W24A3.js";
9
- import {
10
- Store
11
- } from "./chunk-SPTRBXXV.js";
12
- import {
13
- Element
14
- } from "./chunk-LTCU7F4C.js";
15
- import "./chunk-RY7QEHM4.js";
16
- import "./chunk-ZYLLOUW6.js";
17
- import "./chunk-AS4B37XA.js";
18
- import "./chunk-56HSL4MD.js";
19
-
20
- // src/index.ts
21
- var src_default = Serverbench;
22
- export {
23
- Element,
24
- Store,
25
- src_default as default
26
- };
1
+ var g=()=>typeof window<"u",S=()=>window.self!==window.top,v=e=>e instanceof HTMLIFrameElement,w=(e,t)=>{e.document.readyState==="complete"?t():e.addEventListener("load",t)},k=(e,t)=>{t(),e.addEventListener("load",t)},E=(e,t)=>{var n,r;let i=((n=e.contentWindow)==null?void 0:n.document.readyState)==="complete";return e.src!=="about:blank"&&((r=e.contentWindow)==null?void 0:r.location.href)!=="about:blank"&&i?t():e.addEventListener("load",t)},I=()=>({offsetSize:0,checkOrigin:!0,enableLegacyLibSupport:!1}),L=e=>{try{return new URL(e.src).origin===window.location.origin}catch{return!1}},R=e=>{try{let t=new URL(e.src).origin;if(t!=="about:blank")return t}catch{}return null},z=e=>(Object.keys(e).forEach(t=>e[t]===void 0&&delete e[t]),e),b=e=>{let{height:t}=e.documentElement.getBoundingClientRect();return Math.ceil(t)};function D(e){k(e,()=>{var t;return(t=e.contentWindow)==null?void 0:t.postMessage("[iFrameSizer]ID:0:false:false:32:true:true::auto:::0:false:child:auto:true:::true:::false","*")})}function H(e){if(typeof e.data=="string"&&e.data.startsWith("[iFrameSizer]")){let[t,n]=e.data.split(":"),r=+n;return r>0?r:null}return null}var f=g()?P():null,h=[],y=(e,t)=>{if(!g())return[];let n={...I(),...z(e??{})},r=O(t),i=x(n,r);return r.map(o=>{let s={iframe:o,settings:n,interactionState:{isHovered:!1}},d=C(s,i);return h.push(s),{unsubscribe:()=>{d(),h=h.filter(a=>a.iframe!==o)}}})};function O(e){return typeof e=="string"?Array.from(document.querySelectorAll(e)).filter(v):e?v(e)?[e]:[]:Array.from(document.getElementsByTagName("iframe"))}function x(e,t){if(Array.isArray(e.checkOrigin))return e.checkOrigin;if(!e.checkOrigin)return[];let n=[];for(let r of t){let i=R(r);i&&n.push(i)}return n}function C(e,t){let n=L(e.iframe)?M(e):A(e,t),r=j(e);return()=>{n(),r()}}function A(e,t){let{iframe:n,settings:r}=e,i=o=>{var s;let d=!r.checkOrigin||t.includes(o.origin);if(!(n.contentWindow!==o.source||!d)){if(((s=o.data)==null?void 0:s.type)==="iframe-resized"){let{height:a}=o.data;a&&p({newHeight:a,registeredElement:e});return}if(r.enableLegacyLibSupport){let a=H(o);a!==null&&p({newHeight:a,registeredElement:e});return}}};return window.addEventListener("message",i),r.enableLegacyLibSupport&&D(n),()=>window.removeEventListener("message",i)}function M({iframe:e}){let t=()=>{var n;let r=(n=e.contentDocument)==null?void 0:n.body;r&&f?.observe(r)};return E(e,t),()=>{var n;(n=e.contentDocument)!=null&&n.body&&f?.unobserve(e.contentDocument.body),e.removeEventListener("load",t)}}function j({iframe:e,interactionState:t}){let n=()=>{t.isHovered=!0},r=()=>{t.isHovered=!1};return e.addEventListener("mouseenter",n),e.addEventListener("mouseleave",r),()=>{e.removeEventListener("mouseenter",n),e.removeEventListener("mouseleave",r)}}function P(){let e=({target:t})=>{let n=h.find(o=>{var s;return((s=o.iframe.contentDocument)==null?void 0:s.body)===t});if(!n)return;let{iframe:r}=n;if(!r.contentDocument)return;let i=b(r.contentDocument);i&&p({newHeight:i,registeredElement:n})};return new ResizeObserver(t=>t.forEach(e))}function p({registeredElement:e,newHeight:t}){let{iframe:n,settings:r,interactionState:i}=e,o=n.getBoundingClientRect(),s=t+r.offsetSize;if(n.style.height=`${s}px`,!r.onIframeResize)return;let d={iframe:n,settings:{...r},interactionState:{...i},previousRenderState:{rect:o},nextRenderState:{rect:n.getBoundingClientRect()}};r.onIframeResize(d)}$();function $(){!g()||!S()||w(window,()=>{let e=()=>{let t={type:"iframe-resized",width:document.documentElement.scrollWidth,height:b(document)};window.parent.postMessage(t,"*")};new ResizeObserver(e).observe(document.body)})}var u=class{constructor(t,n,r={},i=!1,o=!1){this.client=t,this.dark=i,this.background=o,this.path=n,this.args=r}setDark(t){return this.dark=t,this}setBackground(t){return this.background=t,this}async mount(t){let n=new URLSearchParams;n.set("clientId",this.client.clientId),n.set("clientSecret",this.client.clientSecret),this.dark&&n.set("dark","true"),this.background&&n.set("background","true");for(let o in this.args){let s=this.args[o];Array.isArray(s)?n.set(o,s.join(",")):n.set(o,s)}let r=document.createElement("iframe");r.src=`https://safe.serverbench.io${this.path}?${n.toString()}`,r.style.width="100%";let i=t.appendChild(r);return y({},i),this}};var l=class{constructor(t){this.client=t}async get(t,n){return await this.client.post("community","/store/view",{username:t,eid:n})}checkout(t,n,r){return new u(this.client,"/community/checkout",{prices:t.map(i=>i.id).join(","),discounts:n.map(i=>i.id).join(","),member:r.id})}};var c=class c{constructor(t,n,r){this.clientId=t,this.clientSecret=n,this.test=r}static get(t,n,r=!1){return(!c.instance||c.instance.clientId!==t||c.instance.clientSecret!==n||c.instance.test!==r)&&(c.instance=new c(t,n,r)),c.instance}get store(){return new l(this)}async fetch(t,n,r){let i=this.test?"https://dev.serverbench.io":"https://api.serverbench.io",o=new Headers({authorization:`ApiKey ${this.clientSecret}`});return r&&o.set("Content-Type","application/json"),(await fetch(`${i}/${t}/${this.clientId}${n}`,{headers:o,method:r?"POST":"GET",body:r?JSON.stringify(r):void 0})).json()}async get(t,n){return this.fetch(t,n)}async post(t,n,r={}){return this.fetch(t,n,r)}};c.instance=null;var m=c;var Q=m;export{u as Element,l as Store,Q as default};
27
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import Member from \"./Member.js\";\r\nimport Serverbench from \"./Serverbench.js\";\r\nimport ICountryCurrency from \"./store/ICountryCurrency.js\";\r\nimport ISku from \"./store/ISku.js\";\r\nimport ISkuPerkUsage from \"./store/ISkuPerkUsage.js\";\r\nimport ISkuPrice from \"./store/ISkuPrice.js\";\r\nimport IStore from \"./store/IStore.js\";\r\nimport IStoreCategory from \"./store/IStoreCategory.js\";\r\nimport IStoreCategorySet from \"./store/IStoreCategorySet.js\";\r\nimport Store from \"./store/Store.js\";\r\nimport Element from \"./element/Element.js\"\r\nimport IDiscount from \"./store/IDiscount.js\";\r\n\r\nexport {\r\n Store,\r\n ICountryCurrency,\r\n IDiscount,\r\n ISku,\r\n ISkuPerkUsage,\r\n ISkuPrice,\r\n IStore,\r\n IStoreCategory,\r\n IStoreCategorySet,\r\n}\r\n\r\nexport {\r\n Member\r\n}\r\n\r\nexport {\r\n Element\r\n}\r\n\r\nexport default Serverbench"],"mappings":";;;;;;;;;;;;;;;;;;;;AAiCA,IAAO,cAAQ;","names":[]}
1
+ {"version":3,"sources":["../node_modules/.pnpm/@open-iframe-resizer+core@1.2.1/node_modules/@open-iframe-resizer/core/dist/index.js","../src/element/Element.ts","../src/store/Store.ts","../src/Serverbench.ts","../src/index.ts"],"sourcesContent":["const g = () => typeof window < \"u\", L = () => window.self !== window.top, m = (e) => e instanceof HTMLIFrameElement, w = (e, t) => {\n e.document.readyState === \"complete\" ? t() : e.addEventListener(\"load\", t);\n}, y = (e, t) => {\n t(), e.addEventListener(\"load\", t);\n}, p = (e, t) => {\n var i, o;\n const n = ((i = e.contentWindow) == null ? void 0 : i.document.readyState) === \"complete\";\n return e.src !== \"about:blank\" && ((o = e.contentWindow) == null ? void 0 : o.location.href) !== \"about:blank\" && n ? t() : e.addEventListener(\"load\", t);\n}, v = () => ({ offsetSize: 0, checkOrigin: !0, enableLegacyLibSupport: !1 }), b = (e) => {\n try {\n return new URL(e.src).origin === window.location.origin;\n } catch {\n return !1;\n }\n}, I = (e) => {\n try {\n const t = new URL(e.src).origin;\n if (t !== \"about:blank\")\n return t;\n } catch {\n }\n return null;\n}, R = (e) => (Object.keys(e).forEach((t) => e[t] === void 0 && delete e[t]), e), h = (e) => {\n const { height: t } = e.documentElement.getBoundingClientRect();\n return Math.ceil(t);\n};\nfunction z(e) {\n y(\n e,\n () => {\n var t;\n return (t = e.contentWindow) == null ? void 0 : t.postMessage(\"[iFrameSizer]ID:0:false:false:32:true:true::auto:::0:false:child:auto:true:::true:::false\", \"*\");\n }\n );\n}\nfunction O(e) {\n if (typeof e.data == \"string\" && e.data.startsWith(\"[iFrameSizer]\")) {\n const [t, n] = e.data.split(\":\"), r = +n;\n return r > 0 ? r : null;\n }\n return null;\n}\nconst a = g() ? M() : null;\nlet l = [];\nconst D = (e, t) => {\n if (!g())\n return [];\n const n = { ...v(), ...R(e ?? {}) }, r = S(t), i = E(n, r);\n return r.map((o) => {\n const s = { iframe: o, settings: n, interactionState: { isHovered: !1 } }, d = C(s, i);\n return l.push(s), {\n unsubscribe: () => {\n d(), l = l.filter((u) => u.iframe !== o);\n }\n };\n });\n};\nfunction S(e) {\n return typeof e == \"string\" ? Array.from(document.querySelectorAll(e)).filter(m) : e ? m(e) ? [e] : [] : Array.from(document.getElementsByTagName(\"iframe\"));\n}\nfunction E(e, t) {\n if (Array.isArray(e.checkOrigin))\n return e.checkOrigin;\n if (!e.checkOrigin)\n return [];\n const n = [];\n for (const r of t) {\n const i = I(r);\n i && n.push(i);\n }\n return n;\n}\nfunction C(e, t) {\n const n = b(e.iframe) ? B(e) : k(e, t), r = H(e);\n return () => {\n n(), r();\n };\n}\nfunction k(e, t) {\n const { iframe: n, settings: r } = e, i = (o) => {\n var u;\n const s = !r.checkOrigin || t.includes(o.origin);\n if (!(!(n.contentWindow === o.source) || !s)) {\n if (((u = o.data) == null ? void 0 : u.type) === \"iframe-resized\") {\n const { height: c } = o.data;\n c && f({ newHeight: c, registeredElement: e });\n return;\n }\n if (r.enableLegacyLibSupport) {\n const c = O(o);\n c !== null && f({ newHeight: c, registeredElement: e });\n return;\n }\n }\n };\n return window.addEventListener(\"message\", i), r.enableLegacyLibSupport && z(n), () => window.removeEventListener(\"message\", i);\n}\nfunction B({ iframe: e }) {\n const t = () => {\n var r;\n const n = (r = e.contentDocument) == null ? void 0 : r.body;\n n && (a == null || a.observe(n));\n };\n return p(e, t), () => {\n var n;\n (n = e.contentDocument) != null && n.body && (a == null || a.unobserve(e.contentDocument.body)), e.removeEventListener(\"load\", t);\n };\n}\nfunction H({ iframe: e, interactionState: t }) {\n const n = () => {\n t.isHovered = !0;\n }, r = () => {\n t.isHovered = !1;\n };\n return e.addEventListener(\"mouseenter\", n), e.addEventListener(\"mouseleave\", r), () => {\n e.removeEventListener(\"mouseenter\", n), e.removeEventListener(\"mouseleave\", r);\n };\n}\nfunction M() {\n const e = ({ target: t }) => {\n const n = l.find((o) => {\n var s;\n return ((s = o.iframe.contentDocument) == null ? void 0 : s.body) === t;\n });\n if (!n)\n return;\n const { iframe: r } = n;\n if (!r.contentDocument)\n return;\n const i = h(r.contentDocument);\n i && f({ newHeight: i, registeredElement: n });\n };\n return new ResizeObserver((t) => t.forEach(e));\n}\nfunction f({ registeredElement: e, newHeight: t }) {\n const { iframe: n, settings: r, interactionState: i } = e, o = n.getBoundingClientRect(), s = t + r.offsetSize;\n if (n.style.height = `${s}px`, !r.onIframeResize)\n return;\n const d = {\n iframe: n,\n settings: { ...r },\n interactionState: { ...i },\n previousRenderState: { rect: o },\n nextRenderState: { rect: n.getBoundingClientRect() }\n };\n r.onIframeResize(d);\n}\nW();\nfunction W() {\n !g() || !L() || w(window, () => {\n const e = () => {\n const n = {\n type: \"iframe-resized\",\n width: document.documentElement.scrollWidth,\n height: h(document)\n };\n window.parent.postMessage(n, \"*\");\n };\n new ResizeObserver(e).observe(document.body);\n });\n}\nconst A = ({ previousRenderState: e, nextRenderState: t, interactionState: n }) => {\n n.isHovered && window.scrollBy(0, t.rect.bottom - e.rect.bottom);\n};\nexport {\n D as initialize,\n W as initializeChildListener,\n A as updateParentScrollOnResize\n};\n","import { initialize } from \"../../node_modules/@open-iframe-resizer/core/dist/index.js\"\r\nimport Serverbench from \"../Serverbench.js\"\r\n\r\nexport default class Element {\r\n\r\n private readonly client: Serverbench\r\n private dark: boolean\r\n private background: boolean\r\n private readonly path: string\r\n private readonly args: Record<string, string | string[]>\r\n\r\n constructor(client: Serverbench, path: string, args: Record<string, string | string[]> = {}, dark: boolean = false, background: boolean = false) {\r\n this.client = client\r\n this.dark = dark\r\n this.background = background\r\n this.path = path\r\n this.args = args\r\n }\r\n\r\n setDark(dark: boolean) {\r\n this.dark = dark\r\n return this\r\n }\r\n\r\n setBackground(background: boolean) {\r\n this.background = background\r\n return this\r\n }\r\n\r\n async mount(element: HTMLElement) {\r\n const queryParams = new URLSearchParams()\r\n queryParams.set('clientId', this.client.clientId)\r\n queryParams.set('clientSecret', this.client.clientSecret)\r\n if (this.dark) queryParams.set('dark', 'true')\r\n if (this.background) queryParams.set('background', 'true')\r\n for (const key in this.args) {\r\n const value = this.args[key]\r\n if (Array.isArray(value)) {\r\n queryParams.set(key, value.join(','))\r\n } else {\r\n queryParams.set(key, value)\r\n }\r\n }\r\n const iframe = document.createElement('iframe');\r\n iframe.src = `https://safe.serverbench.io${this.path}?${queryParams.toString()}`;\r\n iframe.style.width = '100%';\r\n const appended = element.appendChild(iframe);\r\n initialize({}, appended);\r\n return this\r\n }\r\n\r\n}","import Element from \"../element/Element.js\";\r\nimport Member from \"../Member.js\";\r\nimport type Serverbench from \"../Serverbench.js\";\r\nimport IDiscount from \"./IDiscount.js\";\r\nimport ISkuPrice from \"./ISkuPrice.js\";\r\nimport type IStore from \"./IStore.js\";\r\n\r\nexport default class Store {\r\n\r\n private client: Serverbench\r\n\r\n constructor(client: Serverbench) {\r\n this.client = client\r\n }\r\n\r\n async get(username?: string, eid?: string) {\r\n return (await this.client.post('community', '/store/view', {\r\n username,\r\n eid\r\n })) as IStore\r\n }\r\n\r\n checkout(prices: ISkuPrice[], discounts: IDiscount[], member: Member) {\r\n return new Element(\r\n this.client,\r\n '/community/checkout',\r\n {\r\n prices: prices.map(price => price.id).join(','),\r\n discounts: discounts.map(discount => discount.id).join(','),\r\n member: member.id\r\n }\r\n )\r\n }\r\n\r\n}","import Store from \"./store/Store.js\"\r\n\r\nexport default class Serverbench {\r\n\r\n clientId: string\r\n clientSecret: string\r\n test: boolean\r\n\r\n private static instance: Serverbench | null = null\r\n\r\n private constructor(clientId: string, clientSecret: string, test: boolean) {\r\n this.clientId = clientId\r\n this.clientSecret = clientSecret\r\n this.test = test\r\n }\r\n\r\n static get(clientId: string, clientSecret: string, test: boolean = false) {\r\n if (!Serverbench.instance || Serverbench.instance.clientId !== clientId || Serverbench.instance.clientSecret !== clientSecret || Serverbench.instance.test !== test) {\r\n Serverbench.instance = new Serverbench(clientId, clientSecret, test)\r\n }\r\n return Serverbench.instance\r\n }\r\n\r\n get store() {\r\n return new Store(this)\r\n }\r\n\r\n private async fetch(realm: string, url: string, body?: any) {\r\n const domain = this.test ? 'https://dev.serverbench.io' : 'https://api.serverbench.io'\r\n const headers = new Headers({\r\n authorization: `ApiKey ${this.clientSecret}`,\r\n })\r\n if (body) {\r\n headers.set('Content-Type', 'application/json')\r\n }\r\n const response = await fetch(`${domain}/${realm}/${this.clientId}${url}`, {\r\n headers,\r\n method: body ? 'POST' : 'GET',\r\n body: body ? JSON.stringify(body) : undefined\r\n })\r\n return response.json()\r\n }\r\n\r\n async get(realm: string, url: string) {\r\n return this.fetch(realm, url)\r\n }\r\n\r\n async post(realm: string, url: string, body: any = {}) {\r\n return this.fetch(realm, url, body)\r\n }\r\n\r\n}","import Member from \"./Member.js\";\r\nimport Serverbench from \"./Serverbench.js\";\r\nimport ICountryCurrency from \"./store/ICountryCurrency.js\";\r\nimport ISku from \"./store/ISku.js\";\r\nimport ISkuPerkUsage from \"./store/ISkuPerkUsage.js\";\r\nimport ISkuPrice from \"./store/ISkuPrice.js\";\r\nimport IStore from \"./store/IStore.js\";\r\nimport IStoreCategory from \"./store/IStoreCategory.js\";\r\nimport IStoreCategorySet from \"./store/IStoreCategorySet.js\";\r\nimport Store from \"./store/Store.js\";\r\nimport Element from \"./element/Element.js\"\r\nimport IDiscount from \"./store/IDiscount.js\";\r\n\r\nexport {\r\n Store,\r\n ICountryCurrency,\r\n IDiscount,\r\n ISku,\r\n ISkuPerkUsage,\r\n ISkuPrice,\r\n IStore,\r\n IStoreCategory,\r\n IStoreCategorySet,\r\n}\r\n\r\nexport {\r\n Member\r\n}\r\n\r\nexport {\r\n Element\r\n}\r\n\r\nexport default Serverbench"],"mappings":"AAAA,IAAM,EAAI,IAAM,OAAO,OAAS,IAAKA,EAAI,IAAM,OAAO,OAAS,OAAO,IAAKC,EAAK,GAAM,aAAa,kBAAmB,EAAI,CAAC,EAAG,IAAM,CAClI,EAAE,SAAS,aAAe,WAAa,EAAE,EAAI,EAAE,iBAAiB,OAAQ,CAAC,CAC3E,EAAGC,EAAI,CAAC,EAAG,IAAM,CACf,EAAE,EAAG,EAAE,iBAAiB,OAAQ,CAAC,CACnC,EAAGC,EAAI,CAAC,EAAG,IAAM,CACf,IAAIC,EAAGC,EACP,IAAMC,IAAMF,EAAI,EAAE,gBAAkB,KAAO,OAASA,EAAE,SAAS,cAAgB,WAC/E,OAAO,EAAE,MAAQ,iBAAmBC,EAAI,EAAE,gBAAkB,KAAO,OAASA,EAAE,SAAS,QAAU,eAAiBC,EAAI,EAAE,EAAI,EAAE,iBAAiB,OAAQ,CAAC,CAC1J,EAAGC,EAAI,KAAO,CAAE,WAAY,EAAG,YAAa,GAAI,uBAAwB,EAAG,GAAIC,EAAK,GAAM,CACxF,GAAI,CACF,OAAO,IAAI,IAAI,EAAE,GAAG,EAAE,SAAW,OAAO,SAAS,MACnD,MAAQ,CACN,MAAO,EACT,CACF,EAAGC,EAAK,GAAM,CACZ,GAAI,CACF,IAAM,EAAI,IAAI,IAAI,EAAE,GAAG,EAAE,OACzB,GAAI,IAAM,cACR,OAAO,CACX,MAAQ,CACR,CACA,OAAO,IACT,EAAGC,EAAK,IAAO,OAAO,KAAK,CAAC,EAAE,QAAS,GAAM,EAAE,CAAC,IAAM,QAAU,OAAO,EAAE,CAAC,CAAC,EAAG,GAAIC,EAAK,GAAM,CAC3F,GAAM,CAAE,OAAQ,CAAE,EAAI,EAAE,gBAAgB,sBAAsB,EAC9D,OAAO,KAAK,KAAK,CAAC,CACpB,EACA,SAASC,EAAE,EAAG,CACZV,EACE,EACA,IAAM,CACJ,IAAI,EACJ,OAAQ,EAAI,EAAE,gBAAkB,KAAO,OAAS,EAAE,YAAY,4FAA6F,GAAG,CAChK,CACF,CACF,CACA,SAASW,EAAE,EAAG,CACZ,GAAI,OAAO,EAAE,MAAQ,UAAY,EAAE,KAAK,WAAW,eAAe,EAAG,CACnE,GAAM,CAAC,EAAG,CAAC,EAAI,EAAE,KAAK,MAAM,GAAG,EAAG,EAAI,CAAC,EACvC,OAAO,EAAI,EAAI,EAAI,IACrB,CACA,OAAO,IACT,CACA,IAAMC,EAAI,EAAE,EAAIC,EAAE,EAAI,KAClBC,EAAI,CAAC,EACHC,EAAI,CAAC,EAAG,IAAM,CAClB,GAAI,CAAC,EAAE,EACL,MAAO,CAAC,EACV,IAAM,EAAI,CAAE,GAAGV,EAAE,EAAG,GAAGG,EAAE,GAAK,CAAC,CAAC,CAAE,EAAG,EAAIQ,EAAE,CAAC,EAAG,EAAIC,EAAE,EAAG,CAAC,EACzD,OAAO,EAAE,IAAK,GAAM,CAClB,IAAM,EAAI,CAAE,OAAQ,EAAG,SAAU,EAAG,iBAAkB,CAAE,UAAW,EAAG,CAAE,EAAG,EAAI,EAAE,EAAG,CAAC,EACrF,OAAOH,EAAE,KAAK,CAAC,EAAG,CAChB,YAAa,IAAM,CACjB,EAAE,EAAGA,EAAIA,EAAE,OAAQI,GAAMA,EAAE,SAAW,CAAC,CACzC,CACF,CACF,CAAC,CACH,EACA,SAASF,EAAE,EAAG,CACZ,OAAO,OAAO,GAAK,SAAW,MAAM,KAAK,SAAS,iBAAiB,CAAC,CAAC,EAAE,OAAOjB,CAAC,EAAI,EAAIA,EAAE,CAAC,EAAI,CAAC,CAAC,EAAI,CAAC,EAAI,MAAM,KAAK,SAAS,qBAAqB,QAAQ,CAAC,CAC7J,CACA,SAASkB,EAAE,EAAG,EAAG,CACf,GAAI,MAAM,QAAQ,EAAE,WAAW,EAC7B,OAAO,EAAE,YACX,GAAI,CAAC,EAAE,YACL,MAAO,CAAC,EACV,IAAM,EAAI,CAAC,EACX,QAAW,KAAK,EAAG,CACjB,IAAM,EAAIV,EAAE,CAAC,EACb,GAAK,EAAE,KAAK,CAAC,CACf,CACA,OAAO,CACT,CACA,SAAS,EAAE,EAAG,EAAG,CACf,IAAM,EAAID,EAAE,EAAE,MAAM,EAAIa,EAAE,CAAC,EAAIC,EAAE,EAAG,CAAC,EAAG,EAAIC,EAAE,CAAC,EAC/C,MAAO,IAAM,CACX,EAAE,EAAG,EAAE,CACT,CACF,CACA,SAASD,EAAE,EAAG,EAAG,CACf,GAAM,CAAE,OAAQ,EAAG,SAAU,CAAE,EAAI,EAAG,EAAK,GAAM,CAC/C,IAAIF,EACJ,IAAMI,EAAI,CAAC,EAAE,aAAe,EAAE,SAAS,EAAE,MAAM,EAC/C,GAAI,EAAI,EAAE,gBAAkB,EAAE,QAAW,CAACA,GAAI,CAC5C,KAAMJ,EAAI,EAAE,OAAS,KAAO,OAASA,EAAE,QAAU,iBAAkB,CACjE,GAAM,CAAE,OAAQK,CAAE,EAAI,EAAE,KACxBA,GAAKC,EAAE,CAAE,UAAWD,EAAG,kBAAmB,CAAE,CAAC,EAC7C,MACF,CACA,GAAI,EAAE,uBAAwB,CAC5B,IAAMA,EAAIZ,EAAE,CAAC,EACbY,IAAM,MAAQC,EAAE,CAAE,UAAWD,EAAG,kBAAmB,CAAE,CAAC,EACtD,MACF,CACF,CACF,EACA,OAAO,OAAO,iBAAiB,UAAW,CAAC,EAAG,EAAE,wBAA0Bb,EAAE,CAAC,EAAG,IAAM,OAAO,oBAAoB,UAAW,CAAC,CAC/H,CACA,SAASS,EAAE,CAAE,OAAQ,CAAE,EAAG,CACxB,IAAM,EAAI,IAAM,CACd,IAAIM,EACJ,IAAMrB,GAAKqB,EAAI,EAAE,kBAAoB,KAAO,OAASA,EAAE,KACvDrB,GAAmBQ,GAAE,QAAQR,CAAC,CAChC,EACA,OAAOH,EAAE,EAAG,CAAC,EAAG,IAAM,CACpB,IAAI,GACH,EAAI,EAAE,kBAAoB,MAAQ,EAAE,MAAsBW,GAAE,UAAU,EAAE,gBAAgB,IAAI,EAAI,EAAE,oBAAoB,OAAQ,CAAC,CAClI,CACF,CACA,SAASS,EAAE,CAAE,OAAQ,EAAG,iBAAkB,CAAE,EAAG,CAC7C,IAAM,EAAI,IAAM,CACd,EAAE,UAAY,EAChB,EAAG,EAAI,IAAM,CACX,EAAE,UAAY,EAChB,EACA,OAAO,EAAE,iBAAiB,aAAc,CAAC,EAAG,EAAE,iBAAiB,aAAc,CAAC,EAAG,IAAM,CACrF,EAAE,oBAAoB,aAAc,CAAC,EAAG,EAAE,oBAAoB,aAAc,CAAC,CAC/E,CACF,CACA,SAASR,GAAI,CACX,IAAM,EAAI,CAAC,CAAE,OAAQ,CAAE,IAAM,CAC3B,IAAM,EAAIC,EAAE,KAAM,GAAM,CACtB,IAAI,EACJ,QAAS,EAAI,EAAE,OAAO,kBAAoB,KAAO,OAAS,EAAE,QAAU,CACxE,CAAC,EACD,GAAI,CAAC,EACH,OACF,GAAM,CAAE,OAAQ,CAAE,EAAI,EACtB,GAAI,CAAC,EAAE,gBACL,OACF,IAAM,EAAIL,EAAE,EAAE,eAAe,EAC7B,GAAKe,EAAE,CAAE,UAAW,EAAG,kBAAmB,CAAE,CAAC,CAC/C,EACA,OAAO,IAAI,eAAgB,GAAM,EAAE,QAAQ,CAAC,CAAC,CAC/C,CACA,SAASA,EAAE,CAAE,kBAAmB,EAAG,UAAW,CAAE,EAAG,CACjD,GAAM,CAAE,OAAQ,EAAG,SAAU,EAAG,iBAAkB,CAAE,EAAI,EAAG,EAAI,EAAE,sBAAsB,EAAG,EAAI,EAAI,EAAE,WACpG,GAAI,EAAE,MAAM,OAAS,GAAG,CAAC,KAAM,CAAC,EAAE,eAChC,OACF,IAAM,EAAI,CACR,OAAQ,EACR,SAAU,CAAE,GAAG,CAAE,EACjB,iBAAkB,CAAE,GAAG,CAAE,EACzB,oBAAqB,CAAE,KAAM,CAAE,EAC/B,gBAAiB,CAAE,KAAM,EAAE,sBAAsB,CAAE,CACrD,EACA,EAAE,eAAe,CAAC,CACpB,CACAE,EAAE,EACF,SAASA,GAAI,CACX,CAAC,EAAE,GAAK,CAAC5B,EAAE,GAAK,EAAE,OAAQ,IAAM,CAC9B,IAAM,EAAI,IAAM,CACd,IAAMM,EAAI,CACR,KAAM,iBACN,MAAO,SAAS,gBAAgB,YAChC,OAAQK,EAAE,QAAQ,CACpB,EACA,OAAO,OAAO,YAAYL,EAAG,GAAG,CAClC,EACA,IAAI,eAAe,CAAC,EAAE,QAAQ,SAAS,IAAI,CAC7C,CAAC,CACH,CC7JA,IAAqBuB,EAArB,KAA6B,CAQzB,YAAYC,EAAqBC,EAAcC,EAA0C,CAAC,EAAGC,EAAgB,GAAOC,EAAsB,GAAO,CAC7I,KAAK,OAASJ,EACd,KAAK,KAAOG,EACZ,KAAK,WAAaC,EAClB,KAAK,KAAOH,EACZ,KAAK,KAAOC,CAChB,CAEA,QAAQC,EAAe,CACnB,YAAK,KAAOA,EACL,IACX,CAEA,cAAcC,EAAqB,CAC/B,YAAK,WAAaA,EACX,IACX,CAEA,MAAM,MAAMC,EAAsB,CAC9B,IAAMC,EAAc,IAAI,gBACxBA,EAAY,IAAI,WAAY,KAAK,OAAO,QAAQ,EAChDA,EAAY,IAAI,eAAgB,KAAK,OAAO,YAAY,EACpD,KAAK,MAAMA,EAAY,IAAI,OAAQ,MAAM,EACzC,KAAK,YAAYA,EAAY,IAAI,aAAc,MAAM,EACzD,QAAWC,KAAO,KAAK,KAAM,CACzB,IAAMC,EAAQ,KAAK,KAAKD,CAAG,EACvB,MAAM,QAAQC,CAAK,EACnBF,EAAY,IAAIC,EAAKC,EAAM,KAAK,GAAG,CAAC,EAEpCF,EAAY,IAAIC,EAAKC,CAAK,CAElC,CACA,IAAMC,EAAS,SAAS,cAAc,QAAQ,EAC9CA,EAAO,IAAM,8BAA8B,KAAK,IAAI,IAAIH,EAAY,SAAS,CAAC,GAC9EG,EAAO,MAAM,MAAQ,OACrB,IAAMC,EAAWL,EAAQ,YAAYI,CAAM,EAC3C,OAAAE,EAAW,CAAC,EAAGD,CAAQ,EAChB,IACX,CAEJ,EC5CA,IAAqBE,EAArB,KAA2B,CAIvB,YAAYC,EAAqB,CAC7B,KAAK,OAASA,CAClB,CAEA,MAAM,IAAIC,EAAmBC,EAAc,CACvC,OAAQ,MAAM,KAAK,OAAO,KAAK,YAAa,cAAe,CACvD,SAAAD,EACA,IAAAC,CACJ,CAAC,CACL,CAEA,SAASC,EAAqBC,EAAwBC,EAAgB,CAClE,OAAO,IAAIC,EACP,KAAK,OACL,sBACA,CACI,OAAQH,EAAO,IAAII,GAASA,EAAM,EAAE,EAAE,KAAK,GAAG,EAC9C,UAAWH,EAAU,IAAII,GAAYA,EAAS,EAAE,EAAE,KAAK,GAAG,EAC1D,OAAQH,EAAO,EACnB,CACJ,CACJ,CAEJ,EChCA,IAAqBI,EAArB,MAAqBA,CAAY,CAQrB,YAAYC,EAAkBC,EAAsBC,EAAe,CACvE,KAAK,SAAWF,EAChB,KAAK,aAAeC,EACpB,KAAK,KAAOC,CAChB,CAEA,OAAO,IAAIF,EAAkBC,EAAsBC,EAAgB,GAAO,CACtE,OAAI,CAACH,EAAY,UAAYA,EAAY,SAAS,WAAaC,GAAYD,EAAY,SAAS,eAAiBE,GAAgBF,EAAY,SAAS,OAASG,KAC3JH,EAAY,SAAW,IAAIA,EAAYC,EAAUC,EAAcC,CAAI,GAEhEH,EAAY,QACvB,CAEA,IAAI,OAAQ,CACR,OAAO,IAAII,EAAM,IAAI,CACzB,CAEA,MAAc,MAAMC,EAAeC,EAAaC,EAAY,CACxD,IAAMC,EAAS,KAAK,KAAO,6BAA+B,6BACpDC,EAAU,IAAI,QAAQ,CACxB,cAAe,UAAU,KAAK,YAAY,EAC9C,CAAC,EACD,OAAIF,GACAE,EAAQ,IAAI,eAAgB,kBAAkB,GAEjC,MAAM,MAAM,GAAGD,CAAM,IAAIH,CAAK,IAAI,KAAK,QAAQ,GAAGC,CAAG,GAAI,CACtE,QAAAG,EACA,OAAQF,EAAO,OAAS,MACxB,KAAMA,EAAO,KAAK,UAAUA,CAAI,EAAI,MACxC,CAAC,GACe,KAAK,CACzB,CAEA,MAAM,IAAIF,EAAeC,EAAa,CAClC,OAAO,KAAK,MAAMD,EAAOC,CAAG,CAChC,CAEA,MAAM,KAAKD,EAAeC,EAAaC,EAAY,CAAC,EAAG,CACnD,OAAO,KAAK,MAAMF,EAAOC,EAAKC,CAAI,CACtC,CAEJ,EAjDqBP,EAMF,SAA+B,KANlD,IAAqBU,EAArBV,EC+BA,IAAOW,EAAQC","names":["L","m","y","p","i","o","n","v","b","I","R","h","z","O","a","M","l","D","S","E","u","B","k","H","s","c","f","r","W","Element","client","path","args","dark","background","element","queryParams","key","value","iframe","appended","D","Store","client","username","eid","prices","discounts","member","Element","price","discount","_Serverbench","clientId","clientSecret","test","Store","realm","url","body","domain","headers","Serverbench","src_default","Serverbench"]}
package/package.json CHANGED
@@ -1,11 +1,17 @@
1
1
  {
2
2
  "name": "@serverbench/js",
3
- "version": "1.0.6",
3
+ "version": "1.0.8",
4
4
  "description": "",
5
- "main": "./dist/index.js",
5
+ "exports": {
6
+ ".": {
7
+ "import": "./dist/index.mjs",
8
+ "require": "./dist/index.cjs",
9
+ "types": "./dist/index.d.ts"
10
+ }
11
+ },
12
+ "main": "./dist/index.cjs",
6
13
  "module": "./dist/index.mjs",
7
14
  "types": "./dist/index.d.ts",
8
- "exports": "./dist/index.mts",
9
15
  "files": [
10
16
  "dist"
11
17
  ],
@@ -22,6 +28,6 @@
22
28
  "@open-iframe-resizer/core": "^1.2.1"
23
29
  },
24
30
  "scripts": {
25
- "build": "tsup --platform browser"
31
+ "build": "tsup"
26
32
  }
27
33
  }
package/dist/Member.cjs DELETED
@@ -1,2 +0,0 @@
1
- "use strict";require('./chunk-NRMKMC27.cjs');
2
- //# sourceMappingURL=Member.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["c:\\Users\\quique\\Documents\\nominal\\serverbench\\js\\dist\\Member.cjs"],"names":[],"mappings":"AAAA,6CAA6B","file":"C:\\Users\\quique\\Documents\\nominal\\serverbench\\js\\dist\\Member.cjs"}
package/dist/Member.d.cts DELETED
@@ -1,7 +0,0 @@
1
- interface Member {
2
- name: string;
3
- eid: string;
4
- id: string;
5
- }
6
-
7
- export type { Member as default };
package/dist/Member.d.ts DELETED
@@ -1,7 +0,0 @@
1
- interface Member {
2
- name: string;
3
- eid: string;
4
- id: string;
5
- }
6
-
7
- export type { Member as default };
package/dist/Member.js DELETED
@@ -1,2 +0,0 @@
1
- import "./chunk-4SUKRL6R.js";
2
- //# sourceMappingURL=Member.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,38 +0,0 @@
1
- import Member from './Member.cjs';
2
- import IDiscount from './store/IDiscount.cjs';
3
- import ISkuPrice from './store/ISkuPrice.cjs';
4
- import IStore from './store/IStore.cjs';
5
-
6
- declare class Element {
7
- private readonly client;
8
- private dark;
9
- private background;
10
- private readonly path;
11
- private readonly args;
12
- constructor(client: Serverbench, path: string, args?: Record<string, string | string[]>, dark?: boolean, background?: boolean);
13
- setDark(dark: boolean): this;
14
- setBackground(background: boolean): this;
15
- mount(element: HTMLElement): Promise<this>;
16
- }
17
-
18
- declare class Store {
19
- private client;
20
- constructor(client: Serverbench);
21
- get(username?: string, eid?: string): Promise<IStore>;
22
- checkout(prices: ISkuPrice[], discounts: IDiscount[], member: Member): Element;
23
- }
24
-
25
- declare class Serverbench {
26
- clientId: string;
27
- clientSecret: string;
28
- test: boolean;
29
- private static instance;
30
- private constructor();
31
- static get(clientId: string, clientSecret: string, test?: boolean): Serverbench;
32
- get store(): Store;
33
- private fetch;
34
- get(realm: string, url: string): Promise<any>;
35
- post(realm: string, url: string, body?: any): Promise<any>;
36
- }
37
-
38
- export { Element as E, Serverbench as S, Store as a };
@@ -1,38 +0,0 @@
1
- import Member from './Member.js';
2
- import IDiscount from './store/IDiscount.js';
3
- import ISkuPrice from './store/ISkuPrice.js';
4
- import IStore from './store/IStore.js';
5
-
6
- declare class Element {
7
- private readonly client;
8
- private dark;
9
- private background;
10
- private readonly path;
11
- private readonly args;
12
- constructor(client: Serverbench, path: string, args?: Record<string, string | string[]>, dark?: boolean, background?: boolean);
13
- setDark(dark: boolean): this;
14
- setBackground(background: boolean): this;
15
- mount(element: HTMLElement): Promise<this>;
16
- }
17
-
18
- declare class Store {
19
- private client;
20
- constructor(client: Serverbench);
21
- get(username?: string, eid?: string): Promise<IStore>;
22
- checkout(prices: ISkuPrice[], discounts: IDiscount[], member: Member): Element;
23
- }
24
-
25
- declare class Serverbench {
26
- clientId: string;
27
- clientSecret: string;
28
- test: boolean;
29
- private static instance;
30
- private constructor();
31
- static get(clientId: string, clientSecret: string, test?: boolean): Serverbench;
32
- get store(): Store;
33
- private fetch;
34
- get(realm: string, url: string): Promise<any>;
35
- post(realm: string, url: string, body?: any): Promise<any>;
36
- }
37
-
38
- export { Element as E, Serverbench as S, Store as a };
@@ -1,9 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
-
3
- var _chunkGUCBRGGBcjs = require('./chunk-GUCBRGGB.cjs');
4
- require('./chunk-UZ4T6QQE.cjs');
5
- require('./chunk-3J3HZGB4.cjs');
6
-
7
-
8
- exports.default = _chunkGUCBRGGBcjs.Serverbench;
9
- //# sourceMappingURL=Serverbench.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["c:\\Users\\quique\\Documents\\nominal\\serverbench\\js\\dist\\Serverbench.cjs"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACF,gDAAC","file":"C:\\Users\\quique\\Documents\\nominal\\serverbench\\js\\dist\\Serverbench.cjs"}
@@ -1,10 +0,0 @@
1
- export { S as default } from './Serverbench-C0I-PLPz.cjs';
2
- import './Member.cjs';
3
- import './store/IDiscount.cjs';
4
- import './store/ISkuPrice.cjs';
5
- import './store/ICountryCurrency.cjs';
6
- import './store/IStore.cjs';
7
- import './store/IStoreCategory.cjs';
8
- import './store/ISku.cjs';
9
- import './store/ISkuPerkUsage.cjs';
10
- import './store/IStoreCategorySet.cjs';
@@ -1,10 +0,0 @@
1
- export { S as default } from './Serverbench-F_xIsjPx.js';
2
- import './Member.js';
3
- import './store/IDiscount.js';
4
- import './store/ISkuPrice.js';
5
- import './store/ICountryCurrency.js';
6
- import './store/IStore.js';
7
- import './store/IStoreCategory.js';
8
- import './store/ISku.js';
9
- import './store/ISkuPerkUsage.js';
10
- import './store/IStoreCategorySet.js';
@@ -1,9 +0,0 @@
1
- import {
2
- Serverbench
3
- } from "./chunk-6H3W24A3.js";
4
- import "./chunk-SPTRBXXV.js";
5
- import "./chunk-LTCU7F4C.js";
6
- export {
7
- Serverbench as default
8
- };
9
- //# sourceMappingURL=Serverbench.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}