@restura/core 0.1.0-alpha.3 → 0.1.0-alpha.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.
package/README.md ADDED
@@ -0,0 +1,32 @@
1
+ # @restura/core
2
+
3
+ Restura is a powerful utility library for building Node.js backend applications with ease. It provides the core functionality to define, validate, and manage your REST API by generating Express.js routes from a schema file. Additionally, it integrates with PostgreSQL databases to handle SQL queries and offers comprehensive authentication and authorization capabilities.
4
+
5
+ `@restura/core` is the core library that powers the Restura framework. It provides the essential functionality to define your REST API, validate input parameters, generate SQL queries, and handle user authentication and authorization. The library is designed to be extensible and customizable, allowing you to build complex backend applications with minimal effort.
6
+
7
+ ## Key Features
8
+
9
+ - **Schema-Based REST API**: Define your entire REST API in a schema file, and automatically generate all the required Express.js routes.
10
+ - **Input Validation**: Automatically detects and validates query and body parameters for all routes.
11
+ - **Authentication & Authorization**: Built-in support for handling user authentication and role-based authorization.
12
+ - **Database Query Generation**: Automatically generate and run SQL queries against a PostgreSQL database, returning properly formatted data.
13
+ - **Post-Validation**: Ensures all data returned from the database is correctly formatted according to your schema.
14
+
15
+ ## Installation and Simple Usage
16
+
17
+ Install the library using npm:
18
+
19
+ ```bash
20
+ pnpm add @restura/core
21
+
22
+ // Todo add more usage instructions
23
+
24
+ ```
25
+
26
+ ## Full Documentation
27
+
28
+ Documentation can be found in the [official Restura documentation](https://restura.io/docs).
29
+
30
+ ## License
31
+
32
+ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
package/dist/index.cjs CHANGED
@@ -20,16 +20,15 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
20
20
  // src/index.ts
21
21
  var src_exports = {};
22
22
  __export(src_exports, {
23
- isEven: () => isEven
23
+ init: () => init
24
24
  });
25
25
  module.exports = __toCommonJS(src_exports);
26
26
  var import_internal = require("@restura/internal");
27
- function isEven(value) {
28
- (0, import_internal.log)("isEven called");
29
- return value % 2 === 0;
27
+ async function init() {
28
+ return await (0, import_internal.loadConfigFile)();
30
29
  }
31
30
  // Annotate the CommonJS export names for ESM import in node:
32
31
  0 && (module.exports = {
33
- isEven
32
+ init
34
33
  });
35
34
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import { log } from '@restura/internal';\n\nexport function isEven(value: number): boolean {\n\tlog('isEven called');\n\treturn value % 2 === 0;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAAoB;AAEb,SAAS,OAAO,OAAwB;AAC9C,2BAAI,eAAe;AACnB,SAAO,QAAQ,MAAM;AACtB;","names":[]}
1
+ {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import { loadConfigFile } from '@restura/internal';\n\nexport async function init(): Promise<object> {\n\treturn await loadConfigFile();\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAA+B;AAE/B,eAAsB,OAAwB;AAC7C,SAAO,UAAM,gCAAe;AAC7B;","names":[]}
package/dist/index.d.cts CHANGED
@@ -1,3 +1,3 @@
1
- declare function isEven(value: number): boolean;
1
+ declare function init(): Promise<object>;
2
2
 
3
- export { isEven };
3
+ export { init };
package/dist/index.d.mts CHANGED
@@ -1,3 +1,9 @@
1
- declare function isEven(value: number): boolean;
1
+ import * as express from 'express';
2
2
 
3
- export { isEven };
3
+ declare class ResturaEngine {
4
+ init(app: express.Application): void;
5
+ private resturaAuthentication;
6
+ }
7
+ declare const restura: ResturaEngine;
8
+
9
+ export { restura };
package/dist/index.d.ts CHANGED
@@ -1,3 +1,9 @@
1
- declare function isEven(value: number): boolean;
1
+ import * as express from 'express';
2
2
 
3
- export { isEven };
3
+ declare class ResturaEngine {
4
+ init(app: express.Application): void;
5
+ private resturaAuthentication;
6
+ }
7
+ declare const restura: ResturaEngine;
8
+
9
+ export { restura };
package/dist/index.js CHANGED
@@ -1,10 +1,99 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var __decorateClass = (decorators, target, key, kind) => {
20
+ var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
21
+ for (var i = decorators.length - 1, decorator; i >= 0; i--)
22
+ if (decorator = decorators[i])
23
+ result = (kind ? decorator(target, key, result) : decorator(result)) || result;
24
+ if (kind && result) __defProp(target, key, result);
25
+ return result;
26
+ };
27
+
1
28
  // src/index.ts
2
- import { log } from "@restura/internal";
3
- function isEven(value) {
4
- log("isEven called");
5
- return value % 2 === 0;
29
+ var src_exports = {};
30
+ __export(src_exports, {
31
+ restura: () => restura
32
+ });
33
+ module.exports = __toCommonJS(src_exports);
34
+
35
+ // ../../node_modules/.pnpm/autobind-decorator@2.4.0/node_modules/autobind-decorator/lib/esm/index.js
36
+ function _typeof(obj) {
37
+ if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
38
+ _typeof = function _typeof2(obj2) {
39
+ return typeof obj2;
40
+ };
41
+ } else {
42
+ _typeof = function _typeof2(obj2) {
43
+ return obj2 && typeof Symbol === "function" && obj2.constructor === Symbol && obj2 !== Symbol.prototype ? "symbol" : typeof obj2;
44
+ };
45
+ }
46
+ return _typeof(obj);
47
+ }
48
+ function boundMethod(target, key, descriptor) {
49
+ var fn = descriptor.value;
50
+ if (typeof fn !== "function") {
51
+ throw new TypeError("@boundMethod decorator can only be applied to methods not: ".concat(_typeof(fn)));
52
+ }
53
+ var definingProperty = false;
54
+ return {
55
+ configurable: true,
56
+ get: function get() {
57
+ if (definingProperty || this === target.prototype || this.hasOwnProperty(key) || typeof fn !== "function") {
58
+ return fn;
59
+ }
60
+ var boundFn = fn.bind(this);
61
+ definingProperty = true;
62
+ Object.defineProperty(this, key, {
63
+ configurable: true,
64
+ get: function get2() {
65
+ return boundFn;
66
+ },
67
+ set: function set(value) {
68
+ fn = value;
69
+ delete this[key];
70
+ }
71
+ });
72
+ definingProperty = false;
73
+ return boundFn;
74
+ },
75
+ set: function set(value) {
76
+ fn = value;
77
+ }
78
+ };
6
79
  }
7
- export {
8
- isEven
80
+
81
+ // src/restura/restura.ts
82
+ var ResturaEngine = class {
83
+ init(app) {
84
+ app.use("/restura", this.resturaAuthentication);
85
+ console.log("Restura Engine Initialized");
86
+ }
87
+ resturaAuthentication(req, res, next) {
88
+ next();
89
+ }
9
90
  };
91
+ __decorateClass([
92
+ boundMethod
93
+ ], ResturaEngine.prototype, "resturaAuthentication", 1);
94
+ var restura = new ResturaEngine();
95
+ // Annotate the CommonJS export names for ESM import in node:
96
+ 0 && (module.exports = {
97
+ restura
98
+ });
10
99
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import { log } from '@restura/internal';\n\nexport function isEven(value: number): boolean {\n\tlog('isEven called');\n\treturn value % 2 === 0;\n}\n"],"mappings":";AAAA,SAAS,WAAW;AAEb,SAAS,OAAO,OAAwB;AAC9C,MAAI,eAAe;AACnB,SAAO,QAAQ,MAAM;AACtB;","names":[]}
1
+ {"version":3,"sources":["../src/index.ts","../../../node_modules/.pnpm/autobind-decorator@2.4.0/node_modules/autobind-decorator/lib/esm/index.js","../src/restura/restura.ts"],"sourcesContent":["export * from './restura/restura';\n","function _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n/**\n * Return a descriptor removing the value and returning a getter\n * The getter will return a .bind version of the function\n * and memoize the result against a symbol on the instance\n */\nexport function boundMethod(target, key, descriptor) {\n var fn = descriptor.value;\n\n if (typeof fn !== 'function') {\n throw new TypeError(\"@boundMethod decorator can only be applied to methods not: \".concat(_typeof(fn)));\n } // In IE11 calling Object.defineProperty has a side-effect of evaluating the\n // getter for the property which is being replaced. This causes infinite\n // recursion and an \"Out of stack space\" error.\n\n\n var definingProperty = false;\n return {\n configurable: true,\n get: function get() {\n // eslint-disable-next-line no-prototype-builtins\n if (definingProperty || this === target.prototype || this.hasOwnProperty(key) || typeof fn !== 'function') {\n return fn;\n }\n\n var boundFn = fn.bind(this);\n definingProperty = true;\n Object.defineProperty(this, key, {\n configurable: true,\n get: function get() {\n return boundFn;\n },\n set: function set(value) {\n fn = value;\n delete this[key];\n }\n });\n definingProperty = false;\n return boundFn;\n },\n set: function set(value) {\n fn = value;\n }\n };\n}\n/**\n * Use boundMethod to bind all methods on the target.prototype\n */\n\nexport function boundClass(target) {\n // (Using reflect to get all keys including symbols)\n var keys; // Use Reflect if exists\n\n if (typeof Reflect !== 'undefined' && typeof Reflect.ownKeys === 'function') {\n keys = Reflect.ownKeys(target.prototype);\n } else {\n keys = Object.getOwnPropertyNames(target.prototype); // Use symbols if support is provided\n\n if (typeof Object.getOwnPropertySymbols === 'function') {\n keys = keys.concat(Object.getOwnPropertySymbols(target.prototype));\n }\n }\n\n keys.forEach(function (key) {\n // Ignore special case target method\n if (key === 'constructor') {\n return;\n }\n\n var descriptor = Object.getOwnPropertyDescriptor(target.prototype, key); // Only methods need binding\n\n if (typeof descriptor.value === 'function') {\n Object.defineProperty(target.prototype, key, boundMethod(target, key, descriptor));\n }\n });\n return target;\n}\nexport default function autobind() {\n if (arguments.length === 1) {\n return boundClass.apply(void 0, arguments);\n }\n\n return boundMethod.apply(void 0, arguments);\n}","import { boundMethod } from 'autobind-decorator';\nimport * as express from 'express';\n\nclass ResturaEngine {\n\tinit(app: express.Application) {\n\t\t// Middleware\n\t\tapp.use('/restura', this.resturaAuthentication);\n\n\t\tconsole.log('Restura Engine Initialized');\n\t}\n\n\t@boundMethod\n\tprivate resturaAuthentication(req: express.Request, res: express.Response, next: express.NextFunction) {\n\t\tnext();\n\t\t//if (req.headers['x-auth-token'] !== config.application.resturaAuthToken) res.status(401).send('Unauthorized');\n\t\t//else next();\n\t}\n}\n\nconst restura = new ResturaEngine();\nexport { restura };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,SAAS,QAAQ,KAAK;AAAE,MAAI,OAAO,WAAW,cAAc,OAAO,OAAO,aAAa,UAAU;AAAE,cAAU,SAASA,SAAQC,MAAK;AAAE,aAAO,OAAOA;AAAA,IAAK;AAAA,EAAG,OAAO;AAAE,cAAU,SAASD,SAAQC,MAAK;AAAE,aAAOA,QAAO,OAAO,WAAW,cAAcA,KAAI,gBAAgB,UAAUA,SAAQ,OAAO,YAAY,WAAW,OAAOA;AAAA,IAAK;AAAA,EAAG;AAAE,SAAO,QAAQ,GAAG;AAAG;AAOvV,SAAS,YAAY,QAAQ,KAAK,YAAY;AACnD,MAAI,KAAK,WAAW;AAEpB,MAAI,OAAO,OAAO,YAAY;AAC5B,UAAM,IAAI,UAAU,8DAA8D,OAAO,QAAQ,EAAE,CAAC,CAAC;AAAA,EACvG;AAKA,MAAI,mBAAmB;AACvB,SAAO;AAAA,IACL,cAAc;AAAA,IACd,KAAK,SAAS,MAAM;AAElB,UAAI,oBAAoB,SAAS,OAAO,aAAa,KAAK,eAAe,GAAG,KAAK,OAAO,OAAO,YAAY;AACzG,eAAO;AAAA,MACT;AAEA,UAAI,UAAU,GAAG,KAAK,IAAI;AAC1B,yBAAmB;AACnB,aAAO,eAAe,MAAM,KAAK;AAAA,QAC/B,cAAc;AAAA,QACd,KAAK,SAASC,OAAM;AAClB,iBAAO;AAAA,QACT;AAAA,QACA,KAAK,SAAS,IAAI,OAAO;AACvB,eAAK;AACL,iBAAO,KAAK,GAAG;AAAA,QACjB;AAAA,MACF,CAAC;AACD,yBAAmB;AACnB,aAAO;AAAA,IACT;AAAA,IACA,KAAK,SAAS,IAAI,OAAO;AACvB,WAAK;AAAA,IACP;AAAA,EACF;AACF;;;AC1CA,IAAM,gBAAN,MAAoB;AAAA,EACnB,KAAK,KAA0B;AAE9B,QAAI,IAAI,YAAY,KAAK,qBAAqB;AAE9C,YAAQ,IAAI,4BAA4B;AAAA,EACzC;AAAA,EAGQ,sBAAsB,KAAsB,KAAuB,MAA4B;AACtG,SAAK;AAAA,EAGN;AACD;AALS;AAAA,EADP;AAAA,GARI,cASG;AAOT,IAAM,UAAU,IAAI,cAAc;","names":["_typeof","obj","get"]}
package/dist/index.mjs CHANGED
@@ -1,10 +1,75 @@
1
- // src/index.ts
2
- import { log } from "@restura/internal";
3
- function isEven(value) {
4
- log("isEven called");
5
- return value % 2 === 0;
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __decorateClass = (decorators, target, key, kind) => {
4
+ var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
5
+ for (var i = decorators.length - 1, decorator; i >= 0; i--)
6
+ if (decorator = decorators[i])
7
+ result = (kind ? decorator(target, key, result) : decorator(result)) || result;
8
+ if (kind && result) __defProp(target, key, result);
9
+ return result;
10
+ };
11
+
12
+ // ../../node_modules/.pnpm/autobind-decorator@2.4.0/node_modules/autobind-decorator/lib/esm/index.js
13
+ function _typeof(obj) {
14
+ if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
15
+ _typeof = function _typeof2(obj2) {
16
+ return typeof obj2;
17
+ };
18
+ } else {
19
+ _typeof = function _typeof2(obj2) {
20
+ return obj2 && typeof Symbol === "function" && obj2.constructor === Symbol && obj2 !== Symbol.prototype ? "symbol" : typeof obj2;
21
+ };
22
+ }
23
+ return _typeof(obj);
24
+ }
25
+ function boundMethod(target, key, descriptor) {
26
+ var fn = descriptor.value;
27
+ if (typeof fn !== "function") {
28
+ throw new TypeError("@boundMethod decorator can only be applied to methods not: ".concat(_typeof(fn)));
29
+ }
30
+ var definingProperty = false;
31
+ return {
32
+ configurable: true,
33
+ get: function get() {
34
+ if (definingProperty || this === target.prototype || this.hasOwnProperty(key) || typeof fn !== "function") {
35
+ return fn;
36
+ }
37
+ var boundFn = fn.bind(this);
38
+ definingProperty = true;
39
+ Object.defineProperty(this, key, {
40
+ configurable: true,
41
+ get: function get2() {
42
+ return boundFn;
43
+ },
44
+ set: function set(value) {
45
+ fn = value;
46
+ delete this[key];
47
+ }
48
+ });
49
+ definingProperty = false;
50
+ return boundFn;
51
+ },
52
+ set: function set(value) {
53
+ fn = value;
54
+ }
55
+ };
6
56
  }
57
+
58
+ // src/restura/restura.ts
59
+ var ResturaEngine = class {
60
+ init(app) {
61
+ app.use("/restura", this.resturaAuthentication);
62
+ console.log("Restura Engine Initialized");
63
+ }
64
+ resturaAuthentication(req, res, next) {
65
+ next();
66
+ }
67
+ };
68
+ __decorateClass([
69
+ boundMethod
70
+ ], ResturaEngine.prototype, "resturaAuthentication", 1);
71
+ var restura = new ResturaEngine();
7
72
  export {
8
- isEven
73
+ restura
9
74
  };
10
75
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import { log } from '@restura/internal';\n\nexport function isEven(value: number): boolean {\n\tlog('isEven called');\n\treturn value % 2 === 0;\n}\n"],"mappings":";AAAA,SAAS,WAAW;AAEb,SAAS,OAAO,OAAwB;AAC9C,MAAI,eAAe;AACnB,SAAO,QAAQ,MAAM;AACtB;","names":[]}
1
+ {"version":3,"sources":["../../../node_modules/.pnpm/autobind-decorator@2.4.0/node_modules/autobind-decorator/lib/esm/index.js","../src/restura/restura.ts"],"sourcesContent":["function _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n/**\n * Return a descriptor removing the value and returning a getter\n * The getter will return a .bind version of the function\n * and memoize the result against a symbol on the instance\n */\nexport function boundMethod(target, key, descriptor) {\n var fn = descriptor.value;\n\n if (typeof fn !== 'function') {\n throw new TypeError(\"@boundMethod decorator can only be applied to methods not: \".concat(_typeof(fn)));\n } // In IE11 calling Object.defineProperty has a side-effect of evaluating the\n // getter for the property which is being replaced. This causes infinite\n // recursion and an \"Out of stack space\" error.\n\n\n var definingProperty = false;\n return {\n configurable: true,\n get: function get() {\n // eslint-disable-next-line no-prototype-builtins\n if (definingProperty || this === target.prototype || this.hasOwnProperty(key) || typeof fn !== 'function') {\n return fn;\n }\n\n var boundFn = fn.bind(this);\n definingProperty = true;\n Object.defineProperty(this, key, {\n configurable: true,\n get: function get() {\n return boundFn;\n },\n set: function set(value) {\n fn = value;\n delete this[key];\n }\n });\n definingProperty = false;\n return boundFn;\n },\n set: function set(value) {\n fn = value;\n }\n };\n}\n/**\n * Use boundMethod to bind all methods on the target.prototype\n */\n\nexport function boundClass(target) {\n // (Using reflect to get all keys including symbols)\n var keys; // Use Reflect if exists\n\n if (typeof Reflect !== 'undefined' && typeof Reflect.ownKeys === 'function') {\n keys = Reflect.ownKeys(target.prototype);\n } else {\n keys = Object.getOwnPropertyNames(target.prototype); // Use symbols if support is provided\n\n if (typeof Object.getOwnPropertySymbols === 'function') {\n keys = keys.concat(Object.getOwnPropertySymbols(target.prototype));\n }\n }\n\n keys.forEach(function (key) {\n // Ignore special case target method\n if (key === 'constructor') {\n return;\n }\n\n var descriptor = Object.getOwnPropertyDescriptor(target.prototype, key); // Only methods need binding\n\n if (typeof descriptor.value === 'function') {\n Object.defineProperty(target.prototype, key, boundMethod(target, key, descriptor));\n }\n });\n return target;\n}\nexport default function autobind() {\n if (arguments.length === 1) {\n return boundClass.apply(void 0, arguments);\n }\n\n return boundMethod.apply(void 0, arguments);\n}","import { boundMethod } from 'autobind-decorator';\nimport * as express from 'express';\n\nclass ResturaEngine {\n\tinit(app: express.Application) {\n\t\t// Middleware\n\t\tapp.use('/restura', this.resturaAuthentication);\n\n\t\tconsole.log('Restura Engine Initialized');\n\t}\n\n\t@boundMethod\n\tprivate resturaAuthentication(req: express.Request, res: express.Response, next: express.NextFunction) {\n\t\tnext();\n\t\t//if (req.headers['x-auth-token'] !== config.application.resturaAuthToken) res.status(401).send('Unauthorized');\n\t\t//else next();\n\t}\n}\n\nconst restura = new ResturaEngine();\nexport { restura };\n"],"mappings":";;;;;;;;;;;;AAAA,SAAS,QAAQ,KAAK;AAAE,MAAI,OAAO,WAAW,cAAc,OAAO,OAAO,aAAa,UAAU;AAAE,cAAU,SAASA,SAAQC,MAAK;AAAE,aAAO,OAAOA;AAAA,IAAK;AAAA,EAAG,OAAO;AAAE,cAAU,SAASD,SAAQC,MAAK;AAAE,aAAOA,QAAO,OAAO,WAAW,cAAcA,KAAI,gBAAgB,UAAUA,SAAQ,OAAO,YAAY,WAAW,OAAOA;AAAA,IAAK;AAAA,EAAG;AAAE,SAAO,QAAQ,GAAG;AAAG;AAOvV,SAAS,YAAY,QAAQ,KAAK,YAAY;AACnD,MAAI,KAAK,WAAW;AAEpB,MAAI,OAAO,OAAO,YAAY;AAC5B,UAAM,IAAI,UAAU,8DAA8D,OAAO,QAAQ,EAAE,CAAC,CAAC;AAAA,EACvG;AAKA,MAAI,mBAAmB;AACvB,SAAO;AAAA,IACL,cAAc;AAAA,IACd,KAAK,SAAS,MAAM;AAElB,UAAI,oBAAoB,SAAS,OAAO,aAAa,KAAK,eAAe,GAAG,KAAK,OAAO,OAAO,YAAY;AACzG,eAAO;AAAA,MACT;AAEA,UAAI,UAAU,GAAG,KAAK,IAAI;AAC1B,yBAAmB;AACnB,aAAO,eAAe,MAAM,KAAK;AAAA,QAC/B,cAAc;AAAA,QACd,KAAK,SAASC,OAAM;AAClB,iBAAO;AAAA,QACT;AAAA,QACA,KAAK,SAAS,IAAI,OAAO;AACvB,eAAK;AACL,iBAAO,KAAK,GAAG;AAAA,QACjB;AAAA,MACF,CAAC;AACD,yBAAmB;AACnB,aAAO;AAAA,IACT;AAAA,IACA,KAAK,SAAS,IAAI,OAAO;AACvB,WAAK;AAAA,IACP;AAAA,EACF;AACF;;;AC1CA,IAAM,gBAAN,MAAoB;AAAA,EACnB,KAAK,KAA0B;AAE9B,QAAI,IAAI,YAAY,KAAK,qBAAqB;AAE9C,YAAQ,IAAI,4BAA4B;AAAA,EACzC;AAAA,EAGQ,sBAAsB,KAAsB,KAAuB,MAA4B;AACtG,SAAK;AAAA,EAGN;AACD;AALS;AAAA,EADP;AAAA,GARI,cASG;AAOT,IAAM,UAAU,IAAI,cAAc;","names":["_typeof","obj","get"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@restura/core",
3
- "version": "0.1.0-alpha.3",
3
+ "version": "0.1.0-alpha.5",
4
4
  "description": "Restura core utilities for No Code APIs",
5
5
  "types": "./dist/index.d.ts",
6
6
  "repository": "https://github.com/redsky-engineering/restura",
@@ -9,7 +9,6 @@
9
9
  "files": [
10
10
  "dist/**"
11
11
  ],
12
- "type": "module",
13
12
  "main": "./dist/index.js",
14
13
  "exports": {
15
14
  "import": "./dist/index.mjs",
@@ -22,16 +21,22 @@
22
21
  "sql generator"
23
22
  ],
24
23
  "dependencies": {
25
- "@restura/internal": "0.1.0-alpha.3"
24
+ "@restura/internal": "0.1.0-alpha.4"
26
25
  },
27
26
  "devDependencies": {
27
+ "@types/express": "^4.17.21",
28
+ "express": "^4.21.0",
28
29
  "tsup": "^8.3.0"
29
30
  },
30
31
  "publishConfig": {
31
32
  "access": "public"
32
33
  },
34
+ "peerDependencies": {
35
+ "express": "^4.21.0"
36
+ },
33
37
  "scripts": {
34
- "test": "echo \"Error: no test specified\" && exit 1",
35
- "build": "tsup ./src/index.ts"
38
+ "test": "echo \"Todo: add tests\"",
39
+ "build": "tsup ./src/index.ts",
40
+ "lint": "eslint src"
36
41
  }
37
42
  }