{"_id":"@batlify/minestore-api-connector","_rev":"4-f33eb471df227587d046256ce85bef05","name":"@batlify/minestore-api-connector","dist-tags":{"latest":"1.0.0-dev4"},"versions":{"1.0.0-dev1":{"name":"@batlify/minestore-api-connector","version":"1.0.0-dev1","keywords":["minestore","cms","minecraft","api","mscms","typescript","batlify","oop","ts","oop-ts","node","nodejs","npm","package","ts-package","package","minestorecms"],"author":{"url":"Michal Lipka","name":"Sxagon"},"license":"MIT","_id":"@batlify/minestore-api-connector@1.0.0-dev1","maintainers":[{"name":"batlifyuser","email":"billing@batlify.com"}],"dist":{"shasum":"aa444c8ee5d4ea378bb7a6b3214aba4e90a383ef","tarball":"https://registry.npmjs.org/@batlify/minestore-api-connector/-/minestore-api-connector-1.0.0-dev1.tgz","fileCount":71,"integrity":"sha512-nx6QRdkt+IddUDHPu9fQKUD1WNT7uBI9h6NBvtKkYJjIVfHEbWsMqyCZ2v130L2T4tHC+IjQRFiT8ufq31DpvQ==","signatures":[{"sig":"MEUCIEc5O4fjV8uAX0lfvDcTZU7JHfmIUjLweQGQyBT6bFtvAiEAvZtcwmnlX0OsS9/2qQ+CurC1Gwe524SxitiII5sPl1o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67922},"types":"./index.d.ts","gitHead":"be16adef770b9e91b0c6139efdb9b3323ee94850","scripts":{"build":"tsc"},"_npmUser":{"name":"batlifyuser","email":"billing@batlify.com"},"_npmVersion":"10.8.2","description":"MineStoreCMS v3 API connector","directories":{},"_nodeVersion":"20.19.1","dependencies":{"axios":"1.8.2","dotenv":"^16.4.7","@types/dotenv":"^8.2.3"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.2"},"_npmOperationalInternal":{"tmp":"tmp/minestore-api-connector_1.0.0-dev1_1748374117488_0.4960322292139068","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-dev2":{"name":"@batlify/minestore-api-connector","version":"1.0.0-dev2","keywords":["minestore","cms","minecraft","api","mscms","typescript","batlify","oop","ts","oop-ts","node","nodejs","npm","package","ts-package","package","minestorecms"],"author":{"url":"Michal Lipka","name":"Sxagon"},"license":"MIT","_id":"@batlify/minestore-api-connector@1.0.0-dev2","maintainers":[{"name":"batlifyuser","email":"billing@batlify.com"}],"dist":{"shasum":"2ae6f6a4c72b76d6af43d8c555716c7971786879","tarball":"https://registry.npmjs.org/@batlify/minestore-api-connector/-/minestore-api-connector-1.0.0-dev2.tgz","fileCount":71,"integrity":"sha512-6ghri4V27l2LEm3RDA69QOjg8Qy60vSX+uS8/2Qkk2aesA70tXwBFXGhYcLPe9sjMgn17j3548ZSrkCCahZxlA==","signatures":[{"sig":"MEQCIFHvkmAwoIzmeVZqX398TUAcW/b5or55vXPPeyYT11KAAiAejMFSpYxVg12TrMuqI+4nUXkmpS9odRMYJzXQHDOEhA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":68724},"types":"./index.d.ts","gitHead":"57b8b228c8cd8d6066a966c2461609cba1cb60d6","scripts":{"build":"tsc"},"_npmUser":{"name":"batlifyuser","email":"billing@batlify.com"},"_npmVersion":"10.8.2","description":"MineStoreCMS v3 API connector","directories":{},"_nodeVersion":"20.19.1","dependencies":{"axios":"1.8.2","dotenv":"^16.4.7","@types/dotenv":"^8.2.3"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.2"},"_npmOperationalInternal":{"tmp":"tmp/minestore-api-connector_1.0.0-dev2_1748455063062_0.6258812656416608","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-dev3":{"name":"@batlify/minestore-api-connector","version":"1.0.0-dev3","keywords":["minestore","cms","minecraft","api","mscms","typescript","batlify","oop","ts","oop-ts","node","nodejs","npm","package","ts-package","package","minestorecms"],"author":{"url":"Michal Lipka","name":"Sxagon"},"license":"MIT","_id":"@batlify/minestore-api-connector@1.0.0-dev3","maintainers":[{"name":"batlifyuser","email":"billing@batlify.com"}],"dist":{"shasum":"d7ce72faad603bb29a187d6935c463eefb75d778","tarball":"https://registry.npmjs.org/@batlify/minestore-api-connector/-/minestore-api-connector-1.0.0-dev3.tgz","fileCount":71,"integrity":"sha512-hnAHTHSYeMW91SrrydKGeaOqPbBK+7RC+i5uzAi6vBPKdh4kj8eG220uotARrNaZ0kAN7c6iNnHWOdaBXBuLgQ==","signatures":[{"sig":"MEUCIEXwguxjIIBZr2PoBHFCz9FwR3/R92/WueYnKulfqNmQAiEAkFcOnm8b+/pvnuLdJOxlwyGzD+Juie0lp2CmXrugs7k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":68628},"types":"./index.d.ts","gitHead":"d12413b9cc80d5b6d89ded9ce6922af0b817c3e4","scripts":{"build":"tsc"},"_npmUser":{"name":"batlifyuser","email":"billing@batlify.com"},"_npmVersion":"10.8.2","description":"MineStoreCMS v3 API connector","directories":{},"_nodeVersion":"20.19.1","dependencies":{"axios":"1.8.2","dotenv":"^16.4.7","@types/dotenv":"^8.2.3"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.2"},"_npmOperationalInternal":{"tmp":"tmp/minestore-api-connector_1.0.0-dev3_1748455439692_0.528392987904448","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-dev4":{"name":"@batlify/minestore-api-connector","version":"1.0.0-dev4","author":{"name":"Sxagon","url":"Michal Lipka"},"publishConfig":{"registry":"https://registry.npmjs.org"},"description":"MineStoreCMS v3 API connector","keywords":["minestore","cms","minecraft","api","mscms","typescript","batlify","oop","ts","oop-ts","node","nodejs","npm","package","ts-package","package","minestorecms"],"scripts":{"build":"tsc"},"license":"MIT","devDependencies":{"@types/node":"^22.10.2","typescript":"^5.7.2"},"dependencies":{"@types/dotenv":"^8.2.3","axios":"1.8.2","dotenv":"^16.4.7"},"_id":"@batlify/minestore-api-connector@1.0.0-dev4","gitHead":"5eacb8cf44834985fe2bdc976202e9f85a40a4c1","types":"./index.d.ts","_nodeVersion":"20.19.1","_npmVersion":"10.8.2","dist":{"integrity":"sha512-iVi6OqkXoW4EAxoLtzYBgyRohiyegxhTmxR7cQvO9a+VebjFNlAh2q7AxrIlEe2jHmBQUmmJ8sBYfW8EXl+qwg==","shasum":"a7a88d72118e80e4a1beb3467df9a200293376b0","tarball":"https://registry.npmjs.org/@batlify/minestore-api-connector/-/minestore-api-connector-1.0.0-dev4.tgz","fileCount":71,"unpackedSize":68755,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIEogGqG0qLaHd8Exft6Yaa4ZNi95vsorLUeWBJtPkIkOAiEAoEv41MNiiGazPM8Aj8gcQZfn3j6Xo4CHnv4S+X12RQA="}]},"_npmUser":{"name":"batlifyuser","email":"billing@batlify.com"},"directories":{},"maintainers":[{"name":"batlifyuser","email":"billing@batlify.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/minestore-api-connector_1.0.0-dev4_1748458395023_0.9839207645806154"},"_hasShrinkwrap":false}},"time":{"created":"2025-05-27T19:28:37.395Z","modified":"2025-05-28T18:53:15.399Z","1.0.0-dev1":"2025-05-27T19:28:37.652Z","1.0.0-dev2":"2025-05-28T17:57:43.282Z","1.0.0-dev3":"2025-05-28T18:03:59.883Z","1.0.0-dev4":"2025-05-28T18:53:15.231Z"},"author":{"name":"Sxagon","url":"Michal Lipka"},"license":"MIT","keywords":["minestore","cms","minecraft","api","mscms","typescript","batlify","oop","ts","oop-ts","node","nodejs","npm","package","ts-package","package","minestorecms"],"description":"MineStoreCMS v3 API connector","maintainers":[{"name":"batlifyuser","email":"billing@batlify.com"}],"readme":"# minestore-api-connector\n\nA TypeScript API client library for interacting with the Minestore webstore backend.  \nProvides classes to manage users, authentication, cart, products, payments, and more.\n\n---\n## Installation\n\nnpm:\n\n```bash\nnpm i @batlify/minestore-api-connector\n```\n\nyarn:\n\n```bash\nyarn add @batlify/minestore-api-connector\n```\n\npnpm:\n\n```bash\npnpm add @batlify/minestore-api-connector\n```\n\n---\n\n## Library Overview\n\n### AuthClassic\n- `login(username: string): Promise<{status: string, username?: string, token?: string}>`  \n  Logs in a user using classic username authentication.  \n  **Note:** Authorization token is not required.\n\n---\n\n### AuthMinecraft\n- `init(username: string): Promise<any>`  \n  Initializes Minecraft in-game authentication.\n- `check(username: string): Promise<any>`  \n  Checks Minecraft in-game authentication status.  \n  **Note:** Authorization token is not required.\n\n---\n\n### AuthDiscord\n- `getUrl(): Promise<{url: string}>`  \n  Gets OAuth URL for Discord login.  \n  **Note:** Authorization token is not required.\n\n---\n\n### User\n- `getUser(token: string): Promise<any>`  \n  Retrieves the currently logged-in user's data.  \n  **Note:** Authorization token is required.\n\n---\n\n### Accessibility\n- `check(): Promise<any>`  \n  Checks website accessibility for user's IP/country.  \n  **Note:** Authorization token is not required.\n\n---\n\n### Discounts\n*(Submodule for cart discounts, detailed functions as implemented)*\n\n---\n\n### Cart\n- `getCart(token: string): Promise<any>`  \n  Gets the current cart data.\n- `isCartEmpty(token: string): Promise<boolean>`  \n  Checks if the cart is empty.\n- `addPackage(token: string, id: string, promoted: boolean, payment_type: boolean): Promise<any>`  \n  Adds a package to the cart.\n- `removePackage(token: string, id: string): Promise<any>`  \n  Removes a package from the cart.\n- `quantityPackage(token: string, id: string, quantity: number): Promise<any>`  \n  Updates package quantity in the cart.\n- `pricePackage(token: string, id: string, price: number): Promise<any>`  \n  Updates package price in the cart.\n- `variablePackage(token: string, id: string, variable: number, value: string): Promise<any>`  \n  Updates package variable in the cart.\n- `selectServerPackage(token: string, id: string, server: number): Promise<any>`  \n  Selects a server for the package.\n- `getSelectableServers(token: string): Promise<any>`  \n  Retrieves list of selectable servers.\n- `checkStatus(orderId: string): Promise<any>`  \n  Checks payment status by order ID.  \n  **Note:** Authorization token is not required.\n\n---\n\n### Referrals\n- `apply(code: string, token: string): Promise<any>`  \n  Applies a referral code to the user's cart.\n- `remove(token: string): Promise<any>`  \n  Removes the referral code from the cart.\n\n---\n\n### Categories\n- `get(): Promise<any>`  \n  Retrieves the list of product categories.  \n  **Note:** Authorization token is not required.\n\n---\n\n### ProductsAuthorized\n- `get(token: string, id: string): Promise<any>`  \n  Gets product details by ID (authorized user).\n- `getFromCategory(token: string, path: string): Promise<any>`  \n  Gets products by category path (authorized user).\n- `getFeatured(token: string): Promise<any>`  \n  Gets featured/highlighted products.  \n  **Note:** Authorization token is required.\n\n---\n\n### ProductsForGuest\n- `get(id: string): Promise<any>`  \n  Gets product details by ID without authorization (guest access).\n\n---\n\n### Announcement\n- `get(): Promise<any>`  \n  Retrieves site announcements.  \n  **Note:** Authorization token is not required.\n\n---\n\n### Pages\n- `get(path: string): Promise<any>`  \n  Retrieves page content by URL path.  \n  **Note:** Authorization token is not required.\n\n---\n\n### Profile\n- `get(username: string): Promise<any>`  \n  Retrieves user profile by username.  \n  **Note:** Authorization token is not required.\n\n---\n\n### Staff\n- `get(): Promise<any>`  \n  Retrieves list of staff members.  \n  **Note:** Authorization token is not required.\n\n---\n\n### Settings\n- `get(): Promise<any>`  \n  Retrieves webstore settings.  \n  **Note:** Authorization token is not required.\n\n---\n\n### Patrons\n- `get(): Promise<any>`  \n  Retrieves list of patrons/supporters.  \n  **Note:** Authorization token is not required.\n\n---\n\n### Payment\n- `getMethods(token: string): Promise<any>`  \n  Gets available payment methods.\n- `create(token: string, data: any): Promise<any>`  \n  Creates a payment with provided data.\n\n---\n\n### Context\nBase class providing the generic `request` method for API calls with optional authorization and error handling.\n\n---\n\n## Usage Example\n\n```ts\nimport { AuthClassic, User } from '@batlify/minestore-api-connector';\n\nconst auth = new AuthClassic();\nconst loginResponse = await auth.login('myusername');\n\nif (loginResponse.status === 'success') {\n  const user = new User();\n  const userData = await user.getUser(loginResponse.token);\n  console.log(userData);\n}\n","readmeFilename":"README.md"}