@arcaelas/dynamite 1.0.9 → 1.0.13

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 (88) hide show
  1. package/LICENSE.txt +32 -0
  2. package/README.txt +206 -0
  3. package/package.json +5 -4
  4. package/src/@types/index.d.ts +96 -0
  5. package/src/@types/index.js +9 -0
  6. package/src/core/client.d.ts +69 -0
  7. package/src/core/client.js +164 -0
  8. package/src/core/table.d.ts +98 -0
  9. package/src/core/table.js +459 -0
  10. package/src/core/wrapper.d.ts +17 -0
  11. package/src/core/wrapper.js +46 -0
  12. package/src/decorators/belongs_to.d.ts +1 -0
  13. package/src/decorators/belongs_to.js +24 -0
  14. package/src/decorators/created_at.d.ts +1 -0
  15. package/{build → src}/decorators/created_at.js +0 -11
  16. package/src/decorators/default.d.ts +1 -0
  17. package/{build → src}/decorators/default.js +7 -12
  18. package/src/decorators/has_many.d.ts +1 -0
  19. package/src/decorators/has_many.js +24 -0
  20. package/src/decorators/index.d.ts +11 -0
  21. package/src/decorators/index.js +36 -0
  22. package/src/decorators/index_sort.d.ts +12 -0
  23. package/src/decorators/index_sort.js +43 -0
  24. package/{build → src}/decorators/mutate.js +12 -14
  25. package/{build → src}/decorators/name.js +1 -14
  26. package/src/decorators/not_null.d.ts +1 -0
  27. package/src/decorators/not_null.js +13 -0
  28. package/src/decorators/primary_key.d.ts +6 -0
  29. package/src/decorators/primary_key.js +30 -0
  30. package/src/decorators/updated_at.d.ts +12 -0
  31. package/src/decorators/updated_at.js +26 -0
  32. package/{build → src}/decorators/validate.js +12 -13
  33. package/src/index.d.ts +22 -0
  34. package/{build → src}/index.js +22 -6
  35. package/src/utils/batch-relations.d.ts +14 -0
  36. package/src/utils/batch-relations.js +131 -0
  37. package/src/utils/circular-detector.d.ts +82 -0
  38. package/src/utils/circular-detector.js +209 -0
  39. package/src/utils/memory-manager.d.ts +42 -0
  40. package/src/utils/memory-manager.js +108 -0
  41. package/src/utils/naming.d.ts +8 -0
  42. package/src/utils/naming.js +18 -0
  43. package/src/utils/projection.d.ts +12 -0
  44. package/src/utils/projection.js +51 -0
  45. package/src/utils/relations.d.ts +17 -0
  46. package/src/utils/relations.js +166 -0
  47. package/src/utils/security-validator.d.ts +49 -0
  48. package/src/utils/security-validator.js +152 -0
  49. package/src/utils/throttle-manager.d.ts +78 -0
  50. package/src/utils/throttle-manager.js +196 -0
  51. package/src/utils/transaction-manager.d.ts +88 -0
  52. package/src/utils/transaction-manager.js +298 -0
  53. package/build/core/table.d.ts +0 -138
  54. package/build/core/table.js +0 -400
  55. package/build/core/table.js.map +0 -1
  56. package/build/core/wrapper.d.ts +0 -44
  57. package/build/core/wrapper.js +0 -26
  58. package/build/core/wrapper.js.map +0 -1
  59. package/build/decorators/created_at.d.ts +0 -4
  60. package/build/decorators/created_at.js.map +0 -1
  61. package/build/decorators/default.d.ts +0 -2
  62. package/build/decorators/default.js.map +0 -1
  63. package/build/decorators/index.d.ts +0 -1
  64. package/build/decorators/index.js +0 -24
  65. package/build/decorators/index.js.map +0 -1
  66. package/build/decorators/index_sort.d.ts +0 -1
  67. package/build/decorators/index_sort.js +0 -27
  68. package/build/decorators/index_sort.js.map +0 -1
  69. package/build/decorators/mutate.js.map +0 -1
  70. package/build/decorators/name.js.map +0 -1
  71. package/build/decorators/not_null.d.ts +0 -4
  72. package/build/decorators/not_null.js +0 -28
  73. package/build/decorators/not_null.js.map +0 -1
  74. package/build/decorators/primary_key.d.ts +0 -7
  75. package/build/decorators/primary_key.js +0 -30
  76. package/build/decorators/primary_key.js.map +0 -1
  77. package/build/decorators/updated_at.d.ts +0 -4
  78. package/build/decorators/updated_at.js +0 -23
  79. package/build/decorators/updated_at.js.map +0 -1
  80. package/build/decorators/validate.js.map +0 -1
  81. package/build/index.d.ts +0 -11
  82. package/build/index.js.map +0 -1
  83. package/build/utils/naming.d.ts +0 -1
  84. package/build/utils/naming.js +0 -18
  85. package/build/utils/naming.js.map +0 -1
  86. /package/{build → src}/decorators/mutate.d.ts +0 -0
  87. /package/{build → src}/decorators/name.d.ts +0 -0
  88. /package/{build → src}/decorators/validate.d.ts +0 -0
@@ -1,30 +0,0 @@
1
- "use strict";
2
- /*
3
- * Dinamite ORM — @PrimaryKey
4
- * --------------------------
5
- * Declara simultáneamente Partition Key y Sort Key
6
- * sobre la misma propiedad.
7
- */
8
- var __importDefault = (this && this.__importDefault) || function (mod) {
9
- return (mod && mod.__esModule) ? mod : { "default": mod };
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.default = PrimaryKey;
13
- const index_1 = __importDefault(require("./index"));
14
- const index_sort_1 = __importDefault(require("./index_sort"));
15
- /**
16
- * Atajo para definir clave primaria compuesta (PK + SK).
17
- * El parámetro `name` queda reservado por si en el futuro
18
- * se almacena un identificador lógico de índice, pero hoy
19
- * NO se pasa a ningún decorador interno.
20
- */
21
- function PrimaryKey(name = "primary") {
22
- if (typeof name !== "string" || !name.trim()) {
23
- throw new TypeError("@PrimaryKey requiere un nombre de índice válido");
24
- }
25
- return (target, prop) => {
26
- (0, index_1.default)()(target, prop); // Partition Key
27
- (0, index_sort_1.default)()(target, prop); // Sort Key
28
- };
29
- }
30
- //# sourceMappingURL=primary_key.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"primary_key.js","sourceRoot":"","sources":["../../src/decorators/primary_key.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;AAWH,6BASC;AAlBD,oDAA4B;AAC5B,8DAAqC;AAErC;;;;;GAKG;AACH,SAAwB,UAAU,CAAC,IAAI,GAAG,SAAS;IACjD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;QAC7C,MAAM,IAAI,SAAS,CAAC,iDAAiD,CAAC,CAAC;IACzE,CAAC;IAED,OAAO,CAAC,MAAc,EAAE,IAAqB,EAAQ,EAAE;QACrD,IAAA,eAAK,GAAE,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,gBAAgB;QACvC,IAAA,oBAAS,GAAE,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,WAAW;IACxC,CAAC,CAAC;AACJ,CAAC"}
@@ -1,4 +0,0 @@
1
- /**
2
- * Actualiza automáticamente la marca temporal en cada asignación.
3
- */
4
- export default function UpdatedAt(): PropertyDecorator;
@@ -1,23 +0,0 @@
1
- "use strict";
2
- /*
3
- * Dinamite ORM — @UpdatedAt Decorator (wrapper)
4
- * --------------------------------------------
5
- * Actualiza la fecha/hora cada vez que la propiedad recibe un nuevo valor
6
- * (incluyendo actualizaciones mediante Model.save()).
7
- * Internamente aplica @Mutate con una factory de timestamp ISO.
8
- *
9
- * © 2025 Miguel Alejandro
10
- */
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.default = UpdatedAt;
16
- const mutate_1 = __importDefault(require("./mutate"));
17
- /**
18
- * Actualiza automáticamente la marca temporal en cada asignación.
19
- */
20
- function UpdatedAt() {
21
- return (0, mutate_1.default)(() => new Date().toISOString());
22
- }
23
- //# sourceMappingURL=updated_at.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"updated_at.js","sourceRoot":"","sources":["../../src/decorators/updated_at.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;AAOH,4BAEC;AAPD,sDAA8B;AAE9B;;GAEG;AACH,SAAwB,SAAS;IAC/B,OAAO,IAAA,gBAAM,EAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;AAChD,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/decorators/validate.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AAKH,2BAsBC;AAzBD,6CAA4E;AAC5E,4CAAgD;AAEhD,SAAwB,QAAQ,CAC9B,UAEqC;IAErC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IACnE,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,UAAU,CAAC,EAAE,CAAC;QAC9D,MAAM,IAAI,SAAS,CAAC,8BAA8B,CAAC,CAAC;IACtD,CAAC;IAED,OAAO,CAAC,MAAc,EAAE,IAAqB,EAAQ,EAAE;QACrD,MAAM,IAAI,GAAI,MAAc,CAAC,WAAW,CAAC;QACzC,MAAM,KAAK,GAAG,IAAA,sBAAY,EAAC,IAAI,EAAE,IAAA,sBAAa,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3D,MAAM,GAAG,GAAG,IAAA,sBAAY,EAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAEpD,GAAG,CAAC,QAAQ,KAAK,EAAE,CAAC;QACpB,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QAE3B,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;YAChE,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED,wEAAwE;AACxE,SAAS,aAAa,CAAC,KAAU,EAAE,GAAW,EAAE,IAAqB;IACnE,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE;QACjC,GAAG;YACD,OAAO,CAAC,IAAI,CAAC,eAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;QACD,GAAG,CAAC,GAAY;YACd,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,eAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YAEjC,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBACnD,GAAG,GAAG,OAAO,GAAG,CAAC,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC;YACxE,CAAC;YACD,IAAI,GAAG,CAAC,MAAM;gBAAE,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,MAAM;oBAAE,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YACzD,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;gBACjB,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;oBAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;oBACjB,IAAI,CAAC,KAAK,IAAI;wBACZ,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC;gBACtE,CAAC;YACH,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;QAClB,CAAC;QACD,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,IAAI;KACnB,CAAC,CAAC;AACL,CAAC"}
package/build/index.d.ts DELETED
@@ -1,11 +0,0 @@
1
- export { connect, default as Table } from "./core/table";
2
- export { default as Default } from "./decorators/default";
3
- export { default as Index } from "./decorators/index";
4
- export { default as IndexSort } from "./decorators/index_sort";
5
- export { default as Mutate } from "./decorators/mutate";
6
- export { default as Name } from "./decorators/name";
7
- export { default as Validate } from "./decorators/validate";
8
- export { default as CreatedAt } from "./decorators/created_at";
9
- export { default as NotNull } from "./decorators/not_null";
10
- export { default as PrimaryKey } from "./decorators/primary_key";
11
- export { default as UpdatedAt } from "./decorators/updated_at";
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,sCAAyD;AAAhD,gGAAA,OAAO,OAAA;AAAE,+GAAA,OAAO,OAAS;AAElC,cAAc;AACd,gDAA0D;AAAjD,mHAAA,OAAO,OAAW;AAC3B,4CAAsD;AAA7C,+GAAA,OAAO,OAAS;AACzB,sDAA+D;AAAtD,wHAAA,OAAO,OAAa;AAC7B,8CAAwD;AAA/C,iHAAA,OAAO,OAAU;AAC1B,0CAAoD;AAA3C,6GAAA,OAAO,OAAQ;AACxB,kDAA4D;AAAnD,qHAAA,OAAO,OAAY;AAE5B,sDAA+D;AAAtD,wHAAA,OAAO,OAAa;AAC7B,kDAA2D;AAAlD,oHAAA,OAAO,OAAW;AAC3B,wDAAiE;AAAxD,0HAAA,OAAO,OAAc;AAC9B,sDAA+D;AAAtD,wHAAA,OAAO,OAAa"}
@@ -1 +0,0 @@
1
- export declare function toSnakePlural(input: string): string;
@@ -1,18 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.toSnakePlural = toSnakePlural;
7
- /* src/utils/naming.ts
8
- * -------------------------------------------------
9
- * Convierte Camel/Pascal → snake_case y pluraliza.
10
- * Se importa allí donde se necesite.
11
- */
12
- const pluralize_1 = __importDefault(require("pluralize"));
13
- function toSnakePlural(input) {
14
- // camelCase / PascalCase → snake_case
15
- const snake = input.replace(/([a-z0-9])([A-Z])/g, "$1_$2").toLowerCase();
16
- return (0, pluralize_1.default)(snake); // “user” → “users”, “status” → “statuses”…
17
- }
18
- //# sourceMappingURL=naming.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"naming.js","sourceRoot":"","sources":["../../src/utils/naming.ts"],"names":[],"mappings":";;;;;AAOA,sCAIC;AAXD;;;;GAIG;AACH,0DAAkC;AAElC,SAAgB,aAAa,CAAC,KAAa;IACzC,wCAAwC;IACxC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;IACzE,OAAO,IAAA,mBAAS,EAAC,KAAK,CAAC,CAAC,CAAC,2CAA2C;AACtE,CAAC"}
File without changes
File without changes
File without changes