turboself-api 0.1.4 → 1.1.5

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 (69) hide show
  1. package/README.md +28 -14
  2. package/dist/api/balanceGet.d.ts +2 -0
  3. package/dist/api/balanceGet.js +27 -0
  4. package/dist/api/bookDay.d.ts +2 -0
  5. package/dist/api/bookDay.js +58 -0
  6. package/dist/api/bookingGet.d.ts +2 -0
  7. package/dist/api/bookingGet.js +43 -0
  8. package/dist/api/canBookEveningGet.d.ts +1 -0
  9. package/dist/api/canBookEveningGet.js +18 -0
  10. package/dist/api/establishmentGet.d.ts +2 -0
  11. package/dist/api/establishmentGet.js +43 -0
  12. package/dist/api/establishmentSearch.d.ts +2 -0
  13. package/dist/api/establishmentSearch.js +21 -0
  14. package/dist/api/historyGet.d.ts +2 -0
  15. package/dist/api/historyGet.js +26 -0
  16. package/dist/api/hostGet.d.ts +2 -0
  17. package/dist/api/hostGet.js +53 -0
  18. package/dist/api/lastPaymentGet.d.ts +2 -0
  19. package/dist/api/lastPaymentGet.js +21 -0
  20. package/dist/api/siblingsGet.d.ts +2 -0
  21. package/dist/api/siblingsGet.js +56 -0
  22. package/dist/authenticate/index.d.ts +3 -0
  23. package/dist/authenticate/index.js +25 -0
  24. package/dist/client/Turboself.d.ts +53 -0
  25. package/dist/client/Turboself.js +119 -0
  26. package/dist/index.d.ts +8 -0
  27. package/dist/index.js +12 -0
  28. package/dist/index.mjs +11 -0
  29. package/dist/interfaces/AuthFlow.d.ts +24 -0
  30. package/dist/interfaces/AuthFlow.js +3 -0
  31. package/dist/interfaces/Balance.d.ts +16 -0
  32. package/dist/interfaces/Balance.js +3 -0
  33. package/dist/interfaces/Bookings.d.ts +144 -0
  34. package/dist/interfaces/Bookings.js +3 -0
  35. package/dist/interfaces/Establishment.d.ts +95 -0
  36. package/dist/interfaces/Establishment.js +3 -0
  37. package/dist/interfaces/Fetcher.d.ts +9 -0
  38. package/dist/interfaces/Fetcher.js +3 -0
  39. package/dist/interfaces/Home.d.ts +27 -0
  40. package/dist/interfaces/Home.js +3 -0
  41. package/dist/interfaces/Host.d.ts +38 -0
  42. package/dist/interfaces/Host.js +3 -0
  43. package/dist/parser/Balance.d.ts +17 -0
  44. package/dist/parser/Balance.js +20 -0
  45. package/dist/parser/BookedMeal.d.ts +29 -0
  46. package/dist/parser/BookedMeal.js +28 -0
  47. package/dist/parser/BookingDay.d.ts +32 -0
  48. package/dist/parser/BookingDay.js +39 -0
  49. package/dist/parser/BookingPrice.d.ts +7 -0
  50. package/dist/parser/BookingPrice.js +13 -0
  51. package/dist/parser/BookingTerminal.d.ts +32 -0
  52. package/dist/parser/BookingTerminal.js +30 -0
  53. package/dist/parser/BookingWeek.d.ts +17 -0
  54. package/dist/parser/BookingWeek.js +19 -0
  55. package/dist/parser/Establishment.d.ts +117 -0
  56. package/dist/parser/Establishment.js +84 -0
  57. package/dist/parser/History.d.ts +17 -0
  58. package/dist/parser/History.js +20 -0
  59. package/dist/parser/Host.d.ts +70 -0
  60. package/dist/parser/Host.js +67 -0
  61. package/dist/parser/LatestPayment.d.ts +26 -0
  62. package/dist/parser/LatestPayment.js +27 -0
  63. package/dist/utils/endpoints.d.ts +10 -0
  64. package/dist/utils/endpoints.js +24 -0
  65. package/dist/utils/fetcher.d.ts +7 -0
  66. package/dist/utils/fetcher.js +25 -0
  67. package/dist/utils/weekNumber.d.ts +1 -0
  68. package/dist/utils/weekNumber.js +14 -0
  69. package/package.json +5 -4
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PUT_BOOK_MEAL = exports.GET_BOOKING_WEEK = exports.GET_SIBLINGS = exports.GET_HOST_CAN_BOOK_EVENING = exports.GET_HOST_HOME = exports.GET_HOST_BALANCE = exports.GET_HOST = exports.GET_ETABLISHMENT = exports.SEARCH_ETABLISHMENT = exports.LOGIN = void 0;
4
+ const LOGIN = () => "/api/v1/auth/login";
5
+ exports.LOGIN = LOGIN;
6
+ const SEARCH_ETABLISHMENT = (city, limit) => `/api/v1/etablissements?q=${city}&limit=${limit}`;
7
+ exports.SEARCH_ETABLISHMENT = SEARCH_ETABLISHMENT;
8
+ const GET_ETABLISHMENT = (id) => `/api/v1/etablissements/etabId/${id}`;
9
+ exports.GET_ETABLISHMENT = GET_ETABLISHMENT;
10
+ const GET_HOST = (id) => `/api/v1/hotes/${id}`;
11
+ exports.GET_HOST = GET_HOST;
12
+ const GET_HOST_BALANCE = (id) => `/api/v1/comptes/hotes/${id}/1`;
13
+ exports.GET_HOST_BALANCE = GET_HOST_BALANCE;
14
+ const GET_HOST_HOME = (id) => `/api/v2/hotes/${id}/accueil`;
15
+ exports.GET_HOST_HOME = GET_HOST_HOME;
16
+ const GET_HOST_CAN_BOOK_EVENING = (id) => `/api/v1/hotes/${id}/resa-soir`;
17
+ exports.GET_HOST_CAN_BOOK_EVENING = GET_HOST_CAN_BOOK_EVENING;
18
+ const GET_SIBLINGS = (id) => `/api/v1/hotes/${id}/freres-soeurs`;
19
+ exports.GET_SIBLINGS = GET_SIBLINGS;
20
+ const GET_BOOKING_WEEK = (id, weekNumber) => `/api/v1/reservations/hotes/${id}/semaines?num=${weekNumber}`;
21
+ exports.GET_BOOKING_WEEK = GET_BOOKING_WEEK;
22
+ const PUT_BOOK_MEAL = (id) => `/api/v2/hotes/${id}/reservations-jours`;
23
+ exports.PUT_BOOK_MEAL = PUT_BOOK_MEAL;
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5kcG9pbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGliL3V0aWxzL2VuZHBvaW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBTyxNQUFNLEtBQUssR0FBRyxHQUFHLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztBQUFuQyxRQUFBLEtBQUssU0FBOEI7QUFFekMsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLElBQVksRUFBRSxLQUFhLEVBQUUsRUFBRSxDQUFDLDRCQUE0QixJQUFJLFVBQVUsS0FBSyxFQUFFLENBQUM7QUFBekcsUUFBQSxtQkFBbUIsdUJBQXNGO0FBQy9HLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxFQUFVLEVBQUUsRUFBRSxDQUFDLGlDQUFpQyxFQUFFLEVBQUUsQ0FBQztBQUF6RSxRQUFBLGdCQUFnQixvQkFBeUQ7QUFFL0UsTUFBTSxRQUFRLEdBQUcsQ0FBQyxFQUFVLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQztBQUFqRCxRQUFBLFFBQVEsWUFBeUM7QUFDdkQsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEVBQVUsRUFBRSxFQUFFLENBQUMseUJBQXlCLEVBQUUsSUFBSSxDQUFDO0FBQW5FLFFBQUEsZ0JBQWdCLG9CQUFtRDtBQUN6RSxNQUFNLGFBQWEsR0FBRyxDQUFDLEVBQVUsRUFBRSxFQUFFLENBQUMsaUJBQWlCLEVBQUUsVUFBVSxDQUFDO0FBQTlELFFBQUEsYUFBYSxpQkFBaUQ7QUFDcEUsTUFBTSx5QkFBeUIsR0FBRyxDQUFDLEVBQVUsRUFBRSxFQUFFLENBQUMsaUJBQWlCLEVBQUUsWUFBWSxDQUFDO0FBQTVFLFFBQUEseUJBQXlCLDZCQUFtRDtBQUVsRixNQUFNLFlBQVksR0FBRyxDQUFDLEVBQVUsRUFBRSxFQUFFLENBQUMsaUJBQWlCLEVBQUUsZ0JBQWdCLENBQUM7QUFBbkUsUUFBQSxZQUFZLGdCQUF1RDtBQUV6RSxNQUFNLGdCQUFnQixHQUFHLENBQUMsRUFBVSxFQUFFLFVBQWtCLEVBQUUsRUFBRSxDQUFDLDhCQUE4QixFQUFFLGlCQUFpQixVQUFVLEVBQUUsQ0FBQztBQUFySCxRQUFBLGdCQUFnQixvQkFBcUc7QUFDM0gsTUFBTSxhQUFhLEdBQUcsQ0FBQyxFQUFVLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixFQUFFLHFCQUFxQixDQUFDO0FBQXpFLFFBQUEsYUFBYSxpQkFBNEQifQ==
@@ -0,0 +1,7 @@
1
+ /** @module fetcher */
2
+ import { FetcherOptions } from "../interfaces/Fetcher";
3
+ export declare const TurboselfFetcher: (url: string, options: FetcherOptions) => Promise<{
4
+ headers: import("undici-types").Headers;
5
+ text: () => Promise<string>;
6
+ json: <T>() => Promise<T>;
7
+ }>;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TurboselfFetcher = void 0;
4
+ const TurboselfFetcher = async (url, options) => {
5
+ const response = await fetch(url, {
6
+ method: options.method,
7
+ headers: {
8
+ ...options.headers,
9
+ "User-Agent": "@raphckrman/Turboself-API"
10
+ },
11
+ body: options.method === "GET" ? undefined : options.body,
12
+ redirect: options.redirect
13
+ });
14
+ if (!response.status.toString().startsWith("2")) {
15
+ const json = await response.json();
16
+ throw new Error(`${json.message} (${json.statusCode})`);
17
+ }
18
+ return {
19
+ headers: response.headers,
20
+ text: () => response.text(),
21
+ json: () => response.json()
22
+ };
23
+ };
24
+ exports.TurboselfFetcher = TurboselfFetcher;
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2hlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi91dGlscy9mZXRjaGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUdPLE1BQU0sZ0JBQWdCLEdBQUcsS0FBSyxFQUFFLEdBQVcsRUFBRSxPQUF1QixFQUFFLEVBQUU7SUFDN0UsTUFBTSxRQUFRLEdBQUcsTUFBTSxLQUFLLENBQUMsR0FBRyxFQUFFO1FBQ2hDLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtRQUN0QixPQUFPLEVBQUU7WUFDUCxHQUFHLE9BQU8sQ0FBQyxPQUFPO1lBQ2xCLFlBQVksRUFBRSwyQkFBMkI7U0FDMUM7UUFDRCxJQUFJLEVBQUUsT0FBTyxDQUFDLE1BQU0sS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUk7UUFDekQsUUFBUSxFQUFFLE9BQU8sQ0FBQyxRQUFRO0tBQzNCLENBQUMsQ0FBQztJQUNILElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ2hELE1BQU0sSUFBSSxHQUFHLE1BQU0sUUFBUSxDQUFDLElBQUksRUFJL0IsQ0FBQztRQUNGLE1BQU0sSUFBSSxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxLQUFLLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFJRCxPQUFPO1FBQ0wsT0FBTyxFQUFFLFFBQVEsQ0FBQyxPQUFPO1FBQ3pCLElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFO1FBQzNCLElBQUksRUFBRSxHQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFnQjtLQUM3QyxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBMUJXLFFBQUEsZ0JBQWdCLG9CQTBCM0IifQ==
@@ -0,0 +1 @@
1
+ export declare function getWeekNumber(date: Date): number;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getWeekNumber = void 0;
4
+ function getWeekNumber(date) {
5
+ const dayOfWeek = date.getDay();
6
+ const startOfYear = new Date(date.getFullYear(), 0, 0);
7
+ const diff = date.getTime() - startOfYear.getTime();
8
+ const oneDay = 1000 * 60 * 60 * 24;
9
+ const dayOfYear = Math.floor(diff / oneDay);
10
+ const weekNumber = Math.ceil((dayOfYear + 1) / 7);
11
+ return weekNumber;
12
+ }
13
+ exports.getWeekNumber = getWeekNumber;
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vla051bWJlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi91dGlscy93ZWVrTnVtYmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLFNBQWdCLGFBQWEsQ0FBQyxJQUFVO0lBQ3RDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUVoQyxNQUFNLFdBQVcsR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3ZELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDcEQsTUFBTSxNQUFNLEdBQUcsSUFBSSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDO0lBQ25DLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxDQUFDO0lBRTVDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFFbEQsT0FBTyxVQUFVLENBQUM7QUFDcEIsQ0FBQztBQVhELHNDQVdDIn0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "turboself-api",
3
- "version": "0.1.4",
3
+ "version": "1.1.5",
4
4
  "description": "A wrapper around Turboself internal API.",
5
5
  "repository": "github:raphckrman/turboself-api",
6
6
  "main": "./dist/index.js",
@@ -47,12 +47,13 @@
47
47
  "gen-esm-wrapper": "^1.1.3",
48
48
  "release-it": "^17.0.1",
49
49
  "terser": "^5.26.0",
50
+ "ts-node": "^10.9.2",
50
51
  "tsup": "^8.0.1",
51
52
  "tsx": "^4.7.0",
52
- "typescript": "^5.3.3",
53
- "ts-node": "^10.9.2"
53
+ "typescript": "^5.3.3"
54
54
  },
55
55
  "dependencies": {
56
- "axios": "^1.6.7"
56
+ "axios": "^1.6.7",
57
+ "undici": "^6.10.1"
57
58
  }
58
59
  }