@articles-media/articles-dev-box 1.0.15 → 1.0.17

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 (39) hide show
  1. package/README.md +4 -0
  2. package/dist/Ad.cjs +1 -1
  3. package/dist/Ad.js +2 -2
  4. package/dist/{AdConfirmExitModal-CKkMAvBK.js → AdConfirmExitModal-Bhz-lt9w.js} +1 -1
  5. package/dist/{AdConfirmExitModal-CcSxmXKT.cjs → AdConfirmExitModal-N3Lvhb4y.cjs} +1 -1
  6. package/dist/{AdDetailsModal-k840vrS2.cjs → AdDetailsModal-BMj8DjV0.cjs} +1 -1
  7. package/dist/{AdDetailsModal-Bp5hZm9N.js → AdDetailsModal-DXvfmyKK.js} +1 -1
  8. package/dist/DarkModeHandler.cjs +1 -0
  9. package/dist/DarkModeHandler.js +17 -0
  10. package/dist/ElementChildren-DN3RWY2E.js +51 -0
  11. package/dist/ElementChildren-eAwIENLl.cjs +1 -0
  12. package/dist/FriendsList.cjs +1 -1
  13. package/dist/FriendsList.js +85 -98
  14. package/dist/GameScoreboard.cjs +1 -1
  15. package/dist/GameScoreboard.js +2 -2
  16. package/dist/{GlobalBody-tmIC_GWn.js → GlobalBody-BrrtfBBs.js} +2 -2
  17. package/dist/{GlobalBody-BQ2qC81K.cjs → GlobalBody-weON_TbJ.cjs} +1 -1
  18. package/dist/GlobalBody.cjs +1 -1
  19. package/dist/GlobalBody.js +1 -1
  20. package/dist/{Modal-Wmqy9fOm.cjs → Modal-Bdhkgkwr.cjs} +2 -2
  21. package/dist/{Modal-C9oYRgI1.js → Modal-nux8R77F.js} +320 -306
  22. package/dist/SettingsModal.cjs +1 -0
  23. package/dist/SettingsModal.js +658 -0
  24. package/dist/{StatusModal-CAVxWCUq.js → StatusModal-B086BgSW.js} +2 -2
  25. package/dist/{StatusModal-BlwaI-2B.cjs → StatusModal-CzPyqQQA.cjs} +1 -1
  26. package/dist/ViewUserModal.cjs +1 -1
  27. package/dist/ViewUserModal.js +465 -505
  28. package/dist/{index-DLYx67wi.js → index-C8MeSLnR.js} +935 -825
  29. package/dist/index-DWV8myok.cjs +6 -0
  30. package/dist/index.cjs +1 -1
  31. package/dist/index.js +19 -13
  32. package/dist/useUserDetails.cjs +1 -1
  33. package/dist/useUserDetails.js +1 -1
  34. package/dist/useUserFriends.cjs +1 -0
  35. package/dist/useUserFriends.js +52 -0
  36. package/dist/useUserToken.cjs +1 -1
  37. package/dist/useUserToken.js +1 -1
  38. package/package.json +13 -1
  39. package/dist/index-Ddv_TnxK.cjs +0 -6
@@ -0,0 +1 @@
1
+ "use strict";const s=require("./jsx-runtime-nZSsnGb7.cjs"),j=require("react"),f=require("./Button-0ZK0NKiK.cjs"),d=require("./index-BlP2-uOi.cjs"),c=require("./Modal-Bdhkgkwr.cjs"),B=require("./ElementChildren-eAwIENLl.cjs");function W(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const o=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,o.get?o:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const m=W(j);function X({as:e,bsPrefix:t,className:n,...o}){t=c.useBootstrapPrefix(t,"col");const r=c.useBootstrapBreakpoints(),i=c.useBootstrapMinBreakpoint(),x=[],a=[];return r.forEach(u=>{const l=o[u];delete o[u];let p,E,N;typeof l=="object"&&l!=null?{span:p,offset:E,order:N}=l:p=l;const R=u!==i?`-${u}`:"";p&&x.push(p===!0?`${t}${R}`:`${t}${R}-${p}`),N!=null&&a.push(`order${R}-${N}`),E!=null&&a.push(`offset${R}-${E}`)}),[{...o,className:d.classNames(n,...x,...a)},{as:e,bsPrefix:t,spans:x}]}const O=m.forwardRef((e,t)=>{const[{className:n,...o},{as:r="div",bsPrefix:i,spans:x}]=X(e);return s.jsxRuntimeExports.jsx(r,{...o,ref:t,className:d.classNames(n,!x.length&&i)})});O.displayName="Col";const Y={type:c.PropTypes.string,tooltip:c.PropTypes.bool,as:c.PropTypes.elementType},C=m.forwardRef(({as:e="div",className:t,type:n="valid",tooltip:o=!1,...r},i)=>s.jsxRuntimeExports.jsx(e,{...r,ref:i,className:d.classNames(t,`${n}-${o?"tooltip":"feedback"}`)}));C.displayName="Feedback";C.propTypes=Y;const h=m.createContext({}),w=m.forwardRef(({id:e,bsPrefix:t,className:n,type:o="checkbox",isValid:r=!1,isInvalid:i=!1,as:x="input",...a},u)=>{const{controlId:l}=j.useContext(h);return t=c.useBootstrapPrefix(t,"form-check-input"),s.jsxRuntimeExports.jsx(x,{...a,ref:u,type:o,id:e||l,className:d.classNames(n,t,r&&"is-valid",i&&"is-invalid")})});w.displayName="FormCheckInput";const g=m.forwardRef(({bsPrefix:e,className:t,htmlFor:n,...o},r)=>{const{controlId:i}=j.useContext(h);return e=c.useBootstrapPrefix(e,"form-check-label"),s.jsxRuntimeExports.jsx("label",{...o,ref:r,htmlFor:n||i,className:d.classNames(t,e)})});g.displayName="FormCheckLabel";const L=m.forwardRef(({id:e,bsPrefix:t,bsSwitchPrefix:n,inline:o=!1,reverse:r=!1,disabled:i=!1,isValid:x=!1,isInvalid:a=!1,feedbackTooltip:u=!1,feedback:l,feedbackType:p,className:E,style:N,title:R="",type:F="checkbox",label:k,children:b,as:_="input",...z},J)=>{t=c.useBootstrapPrefix(t,"form-check"),n=c.useBootstrapPrefix(n,"form-switch");const{controlId:T}=j.useContext(h),K=j.useMemo(()=>({controlId:e||T}),[T,e]),A=!b&&k!=null&&k!==!1||B.hasChildOfType(b,g),U=s.jsxRuntimeExports.jsx(w,{...z,type:F==="switch"?"checkbox":F,ref:J,isValid:x,isInvalid:a,disabled:i,as:_});return s.jsxRuntimeExports.jsx(h.Provider,{value:K,children:s.jsxRuntimeExports.jsx("div",{style:N,className:d.classNames(E,A&&t,o&&`${t}-inline`,r&&`${t}-reverse`,F==="switch"&&n),children:b||s.jsxRuntimeExports.jsxs(s.jsxRuntimeExports.Fragment,{children:[U,A&&s.jsxRuntimeExports.jsx(g,{title:R,children:k}),l&&s.jsxRuntimeExports.jsx(C,{type:p,tooltip:u,children:l})]})})})});L.displayName="FormCheck";const v=Object.assign(L,{Input:w,Label:g}),S=m.forwardRef(({bsPrefix:e,type:t,size:n,htmlSize:o,id:r,className:i,isValid:x=!1,isInvalid:a=!1,plaintext:u,readOnly:l,as:p="input",...E},N)=>{const{controlId:R}=j.useContext(h);return e=c.useBootstrapPrefix(e,"form-control"),process.env.NODE_ENV!=="production"&&B.warning(R==null||!r,"`controlId` is ignored on `<FormControl>` when `id` is specified."),s.jsxRuntimeExports.jsx(p,{...E,type:t,size:o,ref:N,readOnly:l,id:r||R,className:d.classNames(i,u?`${e}-plaintext`:e,n&&`${e}-${n}`,t==="color"&&`${e}-color`,x&&"is-valid",a&&"is-invalid")})});S.displayName="FormControl";const Z=Object.assign(S,{Feedback:C}),I=m.forwardRef(({className:e,bsPrefix:t,as:n="div",...o},r)=>(t=c.useBootstrapPrefix(t,"form-floating"),s.jsxRuntimeExports.jsx(n,{ref:r,className:d.classNames(e,t),...o})));I.displayName="FormFloating";const $=m.forwardRef(({controlId:e,as:t="div",...n},o)=>{const r=j.useMemo(()=>({controlId:e}),[e]);return s.jsxRuntimeExports.jsx(h.Provider,{value:r,children:s.jsxRuntimeExports.jsx(t,{...n,ref:o})})});$.displayName="FormGroup";const D=m.forwardRef(({as:e="label",bsPrefix:t,column:n=!1,visuallyHidden:o=!1,className:r,htmlFor:i,...x},a)=>{const{controlId:u}=j.useContext(h);t=c.useBootstrapPrefix(t,"form-label");let l="col-form-label";typeof n=="string"&&(l=`${l} ${l}-${n}`);const p=d.classNames(r,t,o&&"visually-hidden",n&&l);return process.env.NODE_ENV!=="production"&&B.warning(u==null||!i,"`controlId` is ignored on `<FormLabel>` when `htmlFor` is specified."),i=i||u,n?s.jsxRuntimeExports.jsx(O,{ref:a,as:"label",className:p,htmlFor:i,...x}):s.jsxRuntimeExports.jsx(e,{ref:a,className:p,htmlFor:i,...x})});D.displayName="FormLabel";const G=m.forwardRef(({bsPrefix:e,className:t,id:n,...o},r)=>{const{controlId:i}=j.useContext(h);return e=c.useBootstrapPrefix(e,"form-range"),s.jsxRuntimeExports.jsx("input",{...o,type:"range",ref:r,className:d.classNames(t,e),id:n||i})});G.displayName="FormRange";const q=m.forwardRef(({bsPrefix:e,size:t,htmlSize:n,className:o,isValid:r=!1,isInvalid:i=!1,id:x,...a},u)=>{const{controlId:l}=j.useContext(h);return e=c.useBootstrapPrefix(e,"form-select"),s.jsxRuntimeExports.jsx("select",{...a,size:n,ref:u,className:d.classNames(o,e,t&&`${e}-${t}`,r&&"is-valid",i&&"is-invalid"),id:x||l})});q.displayName="FormSelect";const Q=m.forwardRef(({bsPrefix:e,className:t,as:n="small",muted:o,...r},i)=>(e=c.useBootstrapPrefix(e,"form-text"),s.jsxRuntimeExports.jsx(n,{...r,ref:i,className:d.classNames(t,e,o&&"text-muted")})));Q.displayName="FormText";const H=m.forwardRef((e,t)=>s.jsxRuntimeExports.jsx(v,{...e,ref:t,type:"switch"}));H.displayName="Switch";const P=Object.assign(H,{Input:v.Input,Label:v.Label}),V=m.forwardRef(({bsPrefix:e,className:t,children:n,controlId:o,label:r,...i},x)=>(e=c.useBootstrapPrefix(e,"form-floating"),s.jsxRuntimeExports.jsxs($,{ref:x,className:d.classNames(t,e),controlId:o,...i,children:[n,s.jsxRuntimeExports.jsx("label",{htmlFor:o,children:r})]})));V.displayName="FloatingLabel";const ss={_ref:c.PropTypes.any,validated:c.PropTypes.bool,as:c.PropTypes.elementType},M=m.forwardRef(({className:e,validated:t,as:n="form",...o},r)=>s.jsxRuntimeExports.jsx(n,{...o,ref:r,className:d.classNames(e,t&&"was-validated")}));M.displayName="Form";M.propTypes=ss;const y=Object.assign(M,{Group:$,Control:Z,Floating:I,Check:v,Switch:P,Label:D,Text:Q,Range:G,Select:q,FloatingLabel:V});function es({useStore:e}){const t=e(a=>a?.darkMode),n=e(a=>a?.setDarkMode),o=e(a=>a?.graphicsQuality),r=e(a=>a?.setGraphicsQuality),i=e(a=>a?.landingAnimation),x=e(a=>a?.setLandingAnimation);return s.jsxRuntimeExports.jsxs(s.jsxRuntimeExports.Fragment,{children:[s.jsxRuntimeExports.jsx("div",{children:"Dark Mode"}),s.jsxRuntimeExports.jsx("div",{className:"mb-3",children:[!1,!0].map((a,u)=>s.jsxRuntimeExports.jsx(f.ArticlesButton,{active:t===a,onClick:()=>{n(a)},children:a?"On":"Off"},u))}),s.jsxRuntimeExports.jsx("div",{children:"Graphics Quality"}),s.jsxRuntimeExports.jsx("div",{className:"mb-3",children:["Low","Medium","High"].map(a=>s.jsxRuntimeExports.jsx(f.ArticlesButton,{active:o===a,onClick:()=>{r(a)},children:a},a))}),s.jsxRuntimeExports.jsx("div",{children:"Landing Animation"}),s.jsxRuntimeExports.jsxs("div",{className:"mb-3",children:[s.jsxRuntimeExports.jsx(f.ArticlesButton,{active:i===!1,onClick:()=>{x(!1)},children:"Disabled"}),s.jsxRuntimeExports.jsx(f.ArticlesButton,{active:i===!0,onClick:()=>{x(!0)},children:"Enabled"})]})]})}function ts({useAudioStore:e,config:t}){const n=e(r=>r?.audioSettings),o=e(r=>r?.setAudioSettings);return s.jsxRuntimeExports.jsxs(s.jsxRuntimeExports.Fragment,{children:[s.jsxRuntimeExports.jsx("div",{children:"Sound"}),s.jsxRuntimeExports.jsxs("div",{className:"mb-3",children:[s.jsxRuntimeExports.jsx(f.ArticlesButton,{active:!n?.enabled,onClick:()=>{o({...n,enabled:!1})},children:"Disabled"}),s.jsxRuntimeExports.jsx(f.ArticlesButton,{active:n?.enabled,onClick:()=>{o({...n,enabled:!0})},children:"Enabled"})]}),t?.tabs?.Audio?.sliders?.map(r=>s.jsxRuntimeExports.jsxs("div",{children:[s.jsxRuntimeExports.jsx(y.Label,{className:"mb-0",children:r.label}),s.jsxRuntimeExports.jsx(y.Range,{value:n?.[r.key],onChange:i=>{o({...n,[r.key]:i.target.value})}})]},r.key))]})}function ns(){return s.jsxRuntimeExports.jsxs("div",{className:"p-2",children:[s.jsxRuntimeExports.jsx(y.Label,{className:"mb-0",children:"Socket Server Host"}),s.jsxRuntimeExports.jsx(y.Control,{type:"text"}),s.jsxRuntimeExports.jsx(y.Label,{className:"mb-0",children:"Edit this to connect to a different multiplayer host!"}),s.jsxRuntimeExports.jsxs("div",{className:"mt-3",children:[s.jsxRuntimeExports.jsx(f.ArticlesButton,{className:"mb-1",children:"Retry"}),s.jsxRuntimeExports.jsxs("div",{children:["Status: ",s.jsxRuntimeExports.jsx("span",{className:"badge bg-danger",children:"Offline"})]})]})]})}function os(){return s.jsxRuntimeExports.jsxs("div",{className:"p-2",children:[s.jsxRuntimeExports.jsx("h5",{children:"Control Settings"}),s.jsxRuntimeExports.jsx("p",{children:"Configure your key bindings and control preferences here."})]})}function rs({useStore:e}){const t=e(o=>o?.debug),n=e(o=>o?.setDebug);return s.jsxRuntimeExports.jsxs(s.jsxRuntimeExports.Fragment,{children:[s.jsxRuntimeExports.jsx("div",{children:"Debug Mode"}),s.jsxRuntimeExports.jsx("div",{className:"mb-3",children:[!1,!0].map((o,r)=>s.jsxRuntimeExports.jsx(f.ArticlesButton,{active:t===o,onClick:()=>{n(o)},children:o?"On":"Off"},r))})]})}function as({show:e,setShow:t,store:n,useAudioStore:o,config:r}){const[i,x]=j.useState(!1),[a,u]=j.useState("Graphics");return n(l=>l.darkMode),n(l=>l.setDarkMode),n(l=>l.arcadeMode),n(l=>l.setArcadeMode),s.jsxRuntimeExports.jsxs(c.Modal,{className:"articles-modal",size:"md",show:e,centered:!0,scrollable:!0,onExited:()=>{},onHide:()=>{t(!1)},children:[s.jsxRuntimeExports.jsx(c.Modal.Header,{closeButton:!0,children:s.jsxRuntimeExports.jsx(c.Modal.Title,{children:"Game Settings"})}),s.jsxRuntimeExports.jsxs(c.Modal.Body,{className:"flex-column p-0",children:[s.jsxRuntimeExports.jsx("div",{className:"p-2",children:["Graphics","Controls","Audio","Multiplayer","Other"].map(l=>s.jsxRuntimeExports.jsx(f.ArticlesButton,{active:a==l,onClick:()=>{u(l)},children:l},l))}),s.jsxRuntimeExports.jsx("hr",{className:"my-0"}),s.jsxRuntimeExports.jsxs("div",{className:"p-2",children:[a=="Controls"&&s.jsxRuntimeExports.jsx(os,{useStore:n,config:r}),a=="Graphics"&&s.jsxRuntimeExports.jsx(es,{useStore:n,config:r}),a=="Audio"&&s.jsxRuntimeExports.jsx(ts,{useAudioStore:o,config:r}),a=="Multiplayer"&&s.jsxRuntimeExports.jsx(ns,{useStore:n,config:r}),a=="Other"&&s.jsxRuntimeExports.jsx(rs,{useStore:n})]})]}),s.jsxRuntimeExports.jsx(c.Modal.Footer,{className:"justify-content-between",children:s.jsxRuntimeExports.jsxs("div",{children:[s.jsxRuntimeExports.jsx(f.ArticlesButton,{variant:"outline-dark",onClick:()=>{t(!1)},children:"Close"}),s.jsxRuntimeExports.jsx(f.ArticlesButton,{variant:"outline-danger ms-3",onClick:()=>{},children:"Reset"})]})})]})}module.exports=as;
@@ -0,0 +1,658 @@
1
+ import { j as e } from "./jsx-runtime-tc70JA_2.js";
2
+ import * as m from "react";
3
+ import { useContext as y, useMemo as D, useState as A } from "react";
4
+ import { A as f } from "./Button-_Quon8UV.js";
5
+ import { c as p } from "./index-YnD2EP-S.js";
6
+ import { u as h, a as P, b as ee, P as v, M as F } from "./Modal-nux8R77F.js";
7
+ import { h as se, w as G } from "./ElementChildren-DN3RWY2E.js";
8
+ function ae({
9
+ as: s,
10
+ bsPrefix: a,
11
+ className: n,
12
+ ...t
13
+ }) {
14
+ a = h(a, "col");
15
+ const o = P(), r = ee(), i = [], l = [];
16
+ return o.forEach((d) => {
17
+ const c = t[d];
18
+ delete t[d];
19
+ let u, N, g;
20
+ typeof c == "object" && c != null ? {
21
+ span: u,
22
+ offset: N,
23
+ order: g
24
+ } = c : u = c;
25
+ const j = d !== r ? `-${d}` : "";
26
+ u && i.push(u === !0 ? `${a}${j}` : `${a}${j}-${u}`), g != null && l.push(`order${j}-${g}`), N != null && l.push(`offset${j}-${N}`);
27
+ }), [{
28
+ ...t,
29
+ className: p(n, ...i, ...l)
30
+ }, {
31
+ as: s,
32
+ bsPrefix: a,
33
+ spans: i
34
+ }];
35
+ }
36
+ const E = /* @__PURE__ */ m.forwardRef(
37
+ // Need to define the default "as" during prop destructuring to be compatible with styled-components github.com/react-bootstrap/react-bootstrap/issues/3595
38
+ (s, a) => {
39
+ const [{
40
+ className: n,
41
+ ...t
42
+ }, {
43
+ as: o = "div",
44
+ bsPrefix: r,
45
+ spans: i
46
+ }] = ae(s);
47
+ return /* @__PURE__ */ e.jsx(o, {
48
+ ...t,
49
+ ref: a,
50
+ className: p(n, !i.length && r)
51
+ });
52
+ }
53
+ );
54
+ E.displayName = "Col";
55
+ const ne = {
56
+ /**
57
+ * Specify whether the feedback is for valid or invalid fields
58
+ *
59
+ * @type {('valid'|'invalid')}
60
+ */
61
+ type: v.string,
62
+ /** Display feedback as a tooltip. */
63
+ tooltip: v.bool,
64
+ as: v.elementType
65
+ }, w = /* @__PURE__ */ m.forwardRef(
66
+ // Need to define the default "as" during prop destructuring to be compatible with styled-components github.com/react-bootstrap/react-bootstrap/issues/3595
67
+ ({
68
+ as: s = "div",
69
+ className: a,
70
+ type: n = "valid",
71
+ tooltip: t = !1,
72
+ ...o
73
+ }, r) => /* @__PURE__ */ e.jsx(s, {
74
+ ...o,
75
+ ref: r,
76
+ className: p(a, `${n}-${t ? "tooltip" : "feedback"}`)
77
+ })
78
+ );
79
+ w.displayName = "Feedback";
80
+ w.propTypes = ne;
81
+ const x = /* @__PURE__ */ m.createContext({}), L = /* @__PURE__ */ m.forwardRef(({
82
+ id: s,
83
+ bsPrefix: a,
84
+ className: n,
85
+ type: t = "checkbox",
86
+ isValid: o = !1,
87
+ isInvalid: r = !1,
88
+ // Need to define the default "as" during prop destructuring to be compatible with styled-components github.com/react-bootstrap/react-bootstrap/issues/3595
89
+ as: i = "input",
90
+ ...l
91
+ }, d) => {
92
+ const {
93
+ controlId: c
94
+ } = y(x);
95
+ return a = h(a, "form-check-input"), /* @__PURE__ */ e.jsx(i, {
96
+ ...l,
97
+ ref: d,
98
+ type: t,
99
+ id: s || c,
100
+ className: p(n, a, o && "is-valid", r && "is-invalid")
101
+ });
102
+ });
103
+ L.displayName = "FormCheckInput";
104
+ const k = /* @__PURE__ */ m.forwardRef(({
105
+ bsPrefix: s,
106
+ className: a,
107
+ htmlFor: n,
108
+ ...t
109
+ }, o) => {
110
+ const {
111
+ controlId: r
112
+ } = y(x);
113
+ return s = h(s, "form-check-label"), /* @__PURE__ */ e.jsx("label", {
114
+ ...t,
115
+ ref: o,
116
+ htmlFor: n || r,
117
+ className: p(a, s)
118
+ });
119
+ });
120
+ k.displayName = "FormCheckLabel";
121
+ const B = /* @__PURE__ */ m.forwardRef(({
122
+ id: s,
123
+ bsPrefix: a,
124
+ bsSwitchPrefix: n,
125
+ inline: t = !1,
126
+ reverse: o = !1,
127
+ disabled: r = !1,
128
+ isValid: i = !1,
129
+ isInvalid: l = !1,
130
+ feedbackTooltip: d = !1,
131
+ feedback: c,
132
+ feedbackType: u,
133
+ className: N,
134
+ style: g,
135
+ title: j = "",
136
+ type: $ = "checkbox",
137
+ label: R,
138
+ children: M,
139
+ // Need to define the default "as" during prop destructuring to be compatible with styled-components github.com/react-bootstrap/react-bootstrap/issues/3595
140
+ as: W = "input",
141
+ ...X
142
+ }, Y) => {
143
+ a = h(a, "form-check"), n = h(n, "form-switch");
144
+ const {
145
+ controlId: I
146
+ } = y(x), Z = D(() => ({
147
+ controlId: s || I
148
+ }), [I, s]), S = !M && R != null && R !== !1 || se(M, k), _ = /* @__PURE__ */ e.jsx(L, {
149
+ ...X,
150
+ type: $ === "switch" ? "checkbox" : $,
151
+ ref: Y,
152
+ isValid: i,
153
+ isInvalid: l,
154
+ disabled: r,
155
+ as: W
156
+ });
157
+ return /* @__PURE__ */ e.jsx(x.Provider, {
158
+ value: Z,
159
+ children: /* @__PURE__ */ e.jsx("div", {
160
+ style: g,
161
+ className: p(N, S && a, t && `${a}-inline`, o && `${a}-reverse`, $ === "switch" && n),
162
+ children: M || /* @__PURE__ */ e.jsxs(e.Fragment, {
163
+ children: [_, S && /* @__PURE__ */ e.jsx(k, {
164
+ title: j,
165
+ children: R
166
+ }), c && /* @__PURE__ */ e.jsx(w, {
167
+ type: u,
168
+ tooltip: d,
169
+ children: c
170
+ })]
171
+ })
172
+ })
173
+ });
174
+ });
175
+ B.displayName = "FormCheck";
176
+ const b = Object.assign(B, {
177
+ Input: L,
178
+ Label: k
179
+ }), Q = /* @__PURE__ */ m.forwardRef(({
180
+ bsPrefix: s,
181
+ type: a,
182
+ size: n,
183
+ htmlSize: t,
184
+ id: o,
185
+ className: r,
186
+ isValid: i = !1,
187
+ isInvalid: l = !1,
188
+ plaintext: d,
189
+ readOnly: c,
190
+ // Need to define the default "as" during prop destructuring to be compatible with styled-components github.com/react-bootstrap/react-bootstrap/issues/3595
191
+ as: u = "input",
192
+ ...N
193
+ }, g) => {
194
+ const {
195
+ controlId: j
196
+ } = y(x);
197
+ return s = h(s, "form-control"), process.env.NODE_ENV !== "production" && G(j == null || !o, "`controlId` is ignored on `<FormControl>` when `id` is specified."), /* @__PURE__ */ e.jsx(u, {
198
+ ...N,
199
+ type: a,
200
+ size: t,
201
+ ref: g,
202
+ readOnly: c,
203
+ id: o || j,
204
+ className: p(r, d ? `${s}-plaintext` : s, n && `${s}-${n}`, a === "color" && `${s}-color`, i && "is-valid", l && "is-invalid")
205
+ });
206
+ });
207
+ Q.displayName = "FormControl";
208
+ const te = Object.assign(Q, {
209
+ Feedback: w
210
+ }), H = /* @__PURE__ */ m.forwardRef(({
211
+ className: s,
212
+ bsPrefix: a,
213
+ as: n = "div",
214
+ ...t
215
+ }, o) => (a = h(a, "form-floating"), /* @__PURE__ */ e.jsx(n, {
216
+ ref: o,
217
+ className: p(s, a),
218
+ ...t
219
+ })));
220
+ H.displayName = "FormFloating";
221
+ const T = /* @__PURE__ */ m.forwardRef(({
222
+ controlId: s,
223
+ // Need to define the default "as" during prop destructuring to be compatible with styled-components github.com/react-bootstrap/react-bootstrap/issues/3595
224
+ as: a = "div",
225
+ ...n
226
+ }, t) => {
227
+ const o = D(() => ({
228
+ controlId: s
229
+ }), [s]);
230
+ return /* @__PURE__ */ e.jsx(x.Provider, {
231
+ value: o,
232
+ children: /* @__PURE__ */ e.jsx(a, {
233
+ ...n,
234
+ ref: t
235
+ })
236
+ });
237
+ });
238
+ T.displayName = "FormGroup";
239
+ const V = /* @__PURE__ */ m.forwardRef(({
240
+ // Need to define the default "as" during prop destructuring to be compatible with styled-components github.com/react-bootstrap/react-bootstrap/issues/3595
241
+ as: s = "label",
242
+ bsPrefix: a,
243
+ column: n = !1,
244
+ visuallyHidden: t = !1,
245
+ className: o,
246
+ htmlFor: r,
247
+ ...i
248
+ }, l) => {
249
+ const {
250
+ controlId: d
251
+ } = y(x);
252
+ a = h(a, "form-label");
253
+ let c = "col-form-label";
254
+ typeof n == "string" && (c = `${c} ${c}-${n}`);
255
+ const u = p(o, a, t && "visually-hidden", n && c);
256
+ return process.env.NODE_ENV !== "production" && G(d == null || !r, "`controlId` is ignored on `<FormLabel>` when `htmlFor` is specified."), r = r || d, n ? /* @__PURE__ */ e.jsx(E, {
257
+ ref: l,
258
+ as: "label",
259
+ className: u,
260
+ htmlFor: r,
261
+ ...i
262
+ }) : /* @__PURE__ */ e.jsx(s, {
263
+ ref: l,
264
+ className: u,
265
+ htmlFor: r,
266
+ ...i
267
+ });
268
+ });
269
+ V.displayName = "FormLabel";
270
+ const z = /* @__PURE__ */ m.forwardRef(({
271
+ bsPrefix: s,
272
+ className: a,
273
+ id: n,
274
+ ...t
275
+ }, o) => {
276
+ const {
277
+ controlId: r
278
+ } = y(x);
279
+ return s = h(s, "form-range"), /* @__PURE__ */ e.jsx("input", {
280
+ ...t,
281
+ type: "range",
282
+ ref: o,
283
+ className: p(a, s),
284
+ id: n || r
285
+ });
286
+ });
287
+ z.displayName = "FormRange";
288
+ const q = /* @__PURE__ */ m.forwardRef(({
289
+ bsPrefix: s,
290
+ size: a,
291
+ htmlSize: n,
292
+ className: t,
293
+ isValid: o = !1,
294
+ isInvalid: r = !1,
295
+ id: i,
296
+ ...l
297
+ }, d) => {
298
+ const {
299
+ controlId: c
300
+ } = y(x);
301
+ return s = h(s, "form-select"), /* @__PURE__ */ e.jsx("select", {
302
+ ...l,
303
+ size: n,
304
+ ref: d,
305
+ className: p(t, s, a && `${s}-${a}`, o && "is-valid", r && "is-invalid"),
306
+ id: i || c
307
+ });
308
+ });
309
+ q.displayName = "FormSelect";
310
+ const J = /* @__PURE__ */ m.forwardRef(
311
+ // Need to define the default "as" during prop destructuring to be compatible with styled-components github.com/react-bootstrap/react-bootstrap/issues/3595
312
+ ({
313
+ bsPrefix: s,
314
+ className: a,
315
+ as: n = "small",
316
+ muted: t,
317
+ ...o
318
+ }, r) => (s = h(s, "form-text"), /* @__PURE__ */ e.jsx(n, {
319
+ ...o,
320
+ ref: r,
321
+ className: p(a, s, t && "text-muted")
322
+ }))
323
+ );
324
+ J.displayName = "FormText";
325
+ const K = /* @__PURE__ */ m.forwardRef((s, a) => /* @__PURE__ */ e.jsx(b, {
326
+ ...s,
327
+ ref: a,
328
+ type: "switch"
329
+ }));
330
+ K.displayName = "Switch";
331
+ const oe = Object.assign(K, {
332
+ Input: b.Input,
333
+ Label: b.Label
334
+ }), U = /* @__PURE__ */ m.forwardRef(({
335
+ bsPrefix: s,
336
+ className: a,
337
+ children: n,
338
+ controlId: t,
339
+ label: o,
340
+ ...r
341
+ }, i) => (s = h(s, "form-floating"), /* @__PURE__ */ e.jsxs(T, {
342
+ ref: i,
343
+ className: p(a, s),
344
+ controlId: t,
345
+ ...r,
346
+ children: [n, /* @__PURE__ */ e.jsx("label", {
347
+ htmlFor: t,
348
+ children: o
349
+ })]
350
+ })));
351
+ U.displayName = "FloatingLabel";
352
+ const le = {
353
+ /**
354
+ * The Form `ref` will be forwarded to the underlying element,
355
+ * which means, unless it's rendered `as` a composite component,
356
+ * it will be a DOM node, when resolved.
357
+ *
358
+ * @type {ReactRef}
359
+ * @alias ref
360
+ */
361
+ _ref: v.any,
362
+ /**
363
+ * Mark a form as having been validated. Setting it to `true` will
364
+ * toggle any validation styles on the forms elements.
365
+ */
366
+ validated: v.bool,
367
+ as: v.elementType
368
+ }, O = /* @__PURE__ */ m.forwardRef(({
369
+ className: s,
370
+ validated: a,
371
+ // Need to define the default "as" during prop destructuring to be compatible with styled-components github.com/react-bootstrap/react-bootstrap/issues/3595
372
+ as: n = "form",
373
+ ...t
374
+ }, o) => /* @__PURE__ */ e.jsx(n, {
375
+ ...t,
376
+ ref: o,
377
+ className: p(s, a && "was-validated")
378
+ }));
379
+ O.displayName = "Form";
380
+ O.propTypes = le;
381
+ const C = Object.assign(O, {
382
+ Group: T,
383
+ Control: te,
384
+ Floating: H,
385
+ Check: b,
386
+ Switch: oe,
387
+ Label: V,
388
+ Text: J,
389
+ Range: z,
390
+ Select: q,
391
+ FloatingLabel: U
392
+ });
393
+ function re({
394
+ useStore: s
395
+ }) {
396
+ const a = s((l) => l?.darkMode), n = s((l) => l?.setDarkMode), t = s((l) => l?.graphicsQuality), o = s((l) => l?.setGraphicsQuality), r = s((l) => l?.landingAnimation), i = s((l) => l?.setLandingAnimation);
397
+ return /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
398
+ /* @__PURE__ */ e.jsx("div", { children: "Dark Mode" }),
399
+ /* @__PURE__ */ e.jsx("div", { className: "mb-3", children: [!1, !0].map((l, d) => /* @__PURE__ */ e.jsx(
400
+ f,
401
+ {
402
+ active: a === l,
403
+ onClick: () => {
404
+ n(l);
405
+ },
406
+ children: l ? "On" : "Off"
407
+ },
408
+ d
409
+ )) }),
410
+ /* @__PURE__ */ e.jsx("div", { children: "Graphics Quality" }),
411
+ /* @__PURE__ */ e.jsx("div", { className: "mb-3", children: ["Low", "Medium", "High"].map((l) => /* @__PURE__ */ e.jsx(
412
+ f,
413
+ {
414
+ active: t === l,
415
+ onClick: () => {
416
+ o(l);
417
+ },
418
+ children: l
419
+ },
420
+ l
421
+ )) }),
422
+ /* @__PURE__ */ e.jsx("div", { children: "Landing Animation" }),
423
+ /* @__PURE__ */ e.jsxs("div", { className: "mb-3", children: [
424
+ /* @__PURE__ */ e.jsx(
425
+ f,
426
+ {
427
+ active: r === !1,
428
+ onClick: () => {
429
+ i(!1);
430
+ },
431
+ children: "Disabled"
432
+ }
433
+ ),
434
+ /* @__PURE__ */ e.jsx(
435
+ f,
436
+ {
437
+ active: r === !0,
438
+ onClick: () => {
439
+ i(!0);
440
+ },
441
+ children: "Enabled"
442
+ }
443
+ )
444
+ ] })
445
+ ] });
446
+ }
447
+ function ce({
448
+ useAudioStore: s,
449
+ config: a
450
+ }) {
451
+ const n = s((o) => o?.audioSettings), t = s((o) => o?.setAudioSettings);
452
+ return /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
453
+ /* @__PURE__ */ e.jsx("div", { children: "Sound" }),
454
+ /* @__PURE__ */ e.jsxs("div", { className: "mb-3", children: [
455
+ /* @__PURE__ */ e.jsx(
456
+ f,
457
+ {
458
+ active: !n?.enabled,
459
+ onClick: () => {
460
+ t({
461
+ ...n,
462
+ enabled: !1
463
+ });
464
+ },
465
+ children: "Disabled"
466
+ }
467
+ ),
468
+ /* @__PURE__ */ e.jsx(
469
+ f,
470
+ {
471
+ active: n?.enabled,
472
+ onClick: () => {
473
+ t({
474
+ ...n,
475
+ enabled: !0
476
+ });
477
+ },
478
+ children: "Enabled"
479
+ }
480
+ )
481
+ ] }),
482
+ a?.tabs?.Audio?.sliders?.map((o) => /* @__PURE__ */ e.jsxs("div", { children: [
483
+ /* @__PURE__ */ e.jsx(C.Label, { className: "mb-0", children: o.label }),
484
+ /* @__PURE__ */ e.jsx(
485
+ C.Range,
486
+ {
487
+ value: n?.[o.key],
488
+ onChange: (r) => {
489
+ t({
490
+ ...n,
491
+ [o.key]: r.target.value
492
+ });
493
+ }
494
+ }
495
+ )
496
+ ] }, o.key))
497
+ ] });
498
+ }
499
+ function ie() {
500
+ return /* @__PURE__ */ e.jsxs("div", { className: "p-2", children: [
501
+ /* @__PURE__ */ e.jsx(C.Label, { className: "mb-0", children: "Socket Server Host" }),
502
+ /* @__PURE__ */ e.jsx(
503
+ C.Control,
504
+ {
505
+ type: "text"
506
+ }
507
+ ),
508
+ /* @__PURE__ */ e.jsx(C.Label, { className: "mb-0", children: "Edit this to connect to a different multiplayer host!" }),
509
+ /* @__PURE__ */ e.jsxs("div", { className: "mt-3", children: [
510
+ /* @__PURE__ */ e.jsx(
511
+ f,
512
+ {
513
+ className: "mb-1",
514
+ children: "Retry"
515
+ }
516
+ ),
517
+ /* @__PURE__ */ e.jsxs("div", { children: [
518
+ "Status: ",
519
+ /* @__PURE__ */ e.jsx("span", { className: "badge bg-danger", children: "Offline" })
520
+ ] })
521
+ ] })
522
+ ] });
523
+ }
524
+ function de() {
525
+ return /* @__PURE__ */ e.jsxs("div", { className: "p-2", children: [
526
+ /* @__PURE__ */ e.jsx("h5", { children: "Control Settings" }),
527
+ /* @__PURE__ */ e.jsx("p", { children: "Configure your key bindings and control preferences here." })
528
+ ] });
529
+ }
530
+ function me({
531
+ useStore: s
532
+ }) {
533
+ const a = s((t) => t?.debug), n = s((t) => t?.setDebug);
534
+ return /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
535
+ /* @__PURE__ */ e.jsx("div", { children: "Debug Mode" }),
536
+ /* @__PURE__ */ e.jsx("div", { className: "mb-3", children: [!1, !0].map((t, o) => /* @__PURE__ */ e.jsx(
537
+ f,
538
+ {
539
+ active: a === t,
540
+ onClick: () => {
541
+ n(t);
542
+ },
543
+ children: t ? "On" : "Off"
544
+ },
545
+ o
546
+ )) })
547
+ ] });
548
+ }
549
+ function Ne({
550
+ show: s,
551
+ setShow: a,
552
+ store: n,
553
+ useAudioStore: t,
554
+ config: o
555
+ }) {
556
+ const [r, i] = A(!1), [l, d] = A("Graphics");
557
+ return n((c) => c.darkMode), n((c) => c.setDarkMode), n((c) => c.arcadeMode), n((c) => c.setArcadeMode), /* @__PURE__ */ e.jsxs(
558
+ F,
559
+ {
560
+ className: "articles-modal",
561
+ size: "md",
562
+ show: s,
563
+ centered: !0,
564
+ scrollable: !0,
565
+ onExited: () => {
566
+ },
567
+ onHide: () => {
568
+ a(!1);
569
+ },
570
+ children: [
571
+ /* @__PURE__ */ e.jsx(F.Header, { closeButton: !0, children: /* @__PURE__ */ e.jsx(F.Title, { children: "Game Settings" }) }),
572
+ /* @__PURE__ */ e.jsxs(F.Body, { className: "flex-column p-0", children: [
573
+ /* @__PURE__ */ e.jsx("div", { className: "p-2", children: [
574
+ "Graphics",
575
+ "Controls",
576
+ "Audio",
577
+ "Multiplayer",
578
+ // 'Chat',
579
+ "Other"
580
+ ].map(
581
+ (c) => /* @__PURE__ */ e.jsx(
582
+ f,
583
+ {
584
+ active: l == c,
585
+ onClick: () => {
586
+ d(c);
587
+ },
588
+ children: c
589
+ },
590
+ c
591
+ )
592
+ ) }),
593
+ /* @__PURE__ */ e.jsx("hr", { className: "my-0" }),
594
+ /* @__PURE__ */ e.jsxs("div", { className: "p-2", children: [
595
+ l == "Controls" && /* @__PURE__ */ e.jsx(
596
+ de,
597
+ {
598
+ useStore: n,
599
+ config: o
600
+ }
601
+ ),
602
+ l == "Graphics" && /* @__PURE__ */ e.jsx(
603
+ re,
604
+ {
605
+ useStore: n,
606
+ config: o
607
+ }
608
+ ),
609
+ l == "Audio" && /* @__PURE__ */ e.jsx(
610
+ ce,
611
+ {
612
+ useAudioStore: t,
613
+ config: o
614
+ }
615
+ ),
616
+ l == "Multiplayer" && /* @__PURE__ */ e.jsx(
617
+ ie,
618
+ {
619
+ useStore: n,
620
+ config: o
621
+ }
622
+ ),
623
+ l == "Other" && /* @__PURE__ */ e.jsx(
624
+ me,
625
+ {
626
+ useStore: n
627
+ }
628
+ )
629
+ ] })
630
+ ] }),
631
+ /* @__PURE__ */ e.jsx(F.Footer, { className: "justify-content-between", children: /* @__PURE__ */ e.jsxs("div", { children: [
632
+ /* @__PURE__ */ e.jsx(
633
+ f,
634
+ {
635
+ variant: "outline-dark",
636
+ onClick: () => {
637
+ a(!1);
638
+ },
639
+ children: "Close"
640
+ }
641
+ ),
642
+ /* @__PURE__ */ e.jsx(
643
+ f,
644
+ {
645
+ variant: "outline-danger ms-3",
646
+ onClick: () => {
647
+ },
648
+ children: "Reset"
649
+ }
650
+ )
651
+ ] }) })
652
+ ]
653
+ }
654
+ );
655
+ }
656
+ export {
657
+ Ne as default
658
+ };
@@ -1,8 +1,8 @@
1
1
  import { j as e } from "./jsx-runtime-tc70JA_2.js";
2
2
  import { useState as h } from "react";
3
3
  import { A as o } from "./Button-_Quon8UV.js";
4
- import { u as g, a as E } from "./GlobalBody-tmIC_GWn.js";
5
- import { M as s } from "./Modal-C9oYRgI1.js";
4
+ import { u as g, a as E } from "./GlobalBody-BrrtfBBs.js";
5
+ import { M as s } from "./Modal-nux8R77F.js";
6
6
  function A({
7
7
  show: f,
8
8
  setShow: d