jinaga-server 3.5.2 → 3.5.3

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 (57) hide show
  1. package/dist/authorization/authorization-keystore.js +2 -2
  2. package/dist/authorization/authorization-keystore.js.map +1 -1
  3. package/dist/http/csv-metadata.d.ts +24 -0
  4. package/dist/http/csv-metadata.js +3 -0
  5. package/dist/http/csv-metadata.js.map +1 -0
  6. package/dist/http/csv-validator.d.ts +23 -0
  7. package/dist/http/csv-validator.js +83 -0
  8. package/dist/http/csv-validator.js.map +1 -0
  9. package/dist/http/output-formatters.d.ts +28 -0
  10. package/dist/http/output-formatters.js +197 -0
  11. package/dist/http/output-formatters.js.map +1 -0
  12. package/dist/http/result-stream.d.ts +35 -0
  13. package/dist/http/result-stream.js +78 -0
  14. package/dist/http/result-stream.js.map +1 -0
  15. package/dist/http/router.d.ts +7 -1
  16. package/dist/http/router.js +93 -46
  17. package/dist/http/router.js.map +1 -1
  18. package/dist/postgres/postgres-store.js +7 -5
  19. package/dist/postgres/postgres-store.js.map +1 -1
  20. package/dist/postgres/purge-sql.js +15 -2
  21. package/dist/postgres/purge-sql.js.map +1 -1
  22. package/dist/postgres/specification-result-sql.d.ts +2 -0
  23. package/dist/postgres/specification-result-sql.js +49 -5
  24. package/dist/postgres/specification-result-sql.js.map +1 -1
  25. package/dist/postgres/specification-sql.js +28 -6
  26. package/dist/postgres/specification-sql.js.map +1 -1
  27. package/docs/design/feeds-persistent-proxy-plan.md +294 -0
  28. package/integration-test/integration-test/jinaga-test/package-lock.json +6 -0
  29. package/integration-test/jinaga-test/Dockerfile +1 -6
  30. package/integration-test/jinaga-test/http-test-helpers.js +77 -0
  31. package/integration-test/jinaga-test/jinaga.test.js +9 -9
  32. package/integration-test/jinaga-test/package-lock.json +329 -32
  33. package/integration-test/jinaga-test/package.json +5 -1
  34. package/integration-test/jinaga-test/read-csv.test.js +330 -0
  35. package/integration-test/jinaga-test/read-endpoint.test.js +442 -0
  36. package/integration-test/jinaga-test/read-performance.test.js +221 -0
  37. package/integration-test/jinaga-test/read-streaming.test.js +199 -0
  38. package/integration-test/jinaga-test/specification-conditions.test.js +147 -0
  39. package/integration-test/jinaga-test/test-helpers.js +12 -0
  40. package/integration-test/jinaga-test/time-projection.test.js +235 -0
  41. package/package.json +3 -2
  42. package/src/authorization/authorization-keystore.ts +4 -4
  43. package/src/http/csv-metadata.ts +34 -0
  44. package/src/http/csv-validator.ts +90 -0
  45. package/src/http/output-formatters.ts +196 -0
  46. package/src/http/result-stream.ts +69 -0
  47. package/src/http/router.ts +112 -33
  48. package/src/postgres/postgres-store.ts +13 -6
  49. package/src/postgres/purge-sql.ts +18 -2
  50. package/src/postgres/specification-result-sql.ts +70 -8
  51. package/src/postgres/specification-sql.ts +36 -8
  52. package/test/http/csv-validatorSpec.ts +205 -0
  53. package/test/http/result-streamSpec.ts +151 -0
  54. package/test/postgres/postgresReadSpec.ts +192 -14
  55. package/test/postgres/postgresSpecificationSpec.ts +3 -3
  56. package/test/postgres/specificationConditionsSpec.ts +268 -0
  57. package/documentation/streaming-feeds-full-results-solution.md +0 -230
@@ -10,12 +10,16 @@
10
10
  "license": "MIT",
11
11
  "dependencies": {
12
12
  "@stablelib/base64": "^1.0.1",
13
+ "csv-stringify": "^6.6.0",
13
14
  "express": "^4.21.2",
14
15
  "jest": "^29.7.0",
15
16
  "jest-compact-reporter": "^1.2.9",
16
- "jinaga": "^6.5.3",
17
+ "jinaga": "^6.7.13",
17
18
  "node-forge": "^1.3.0",
18
19
  "pg": "^8.13.1"
20
+ },
21
+ "devDependencies": {
22
+ "supertest": "^7.1.4"
19
23
  }
20
24
  },
21
25
  "node_modules/@ampproject/remapping": {
@@ -973,6 +977,29 @@
973
977
  "@jridgewell/sourcemap-codec": "^1.4.14"
974
978
  }
975
979
  },
980
+ "node_modules/@noble/hashes": {
981
+ "version": "1.8.0",
982
+ "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz",
983
+ "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==",
984
+ "dev": true,
985
+ "license": "MIT",
986
+ "engines": {
987
+ "node": "^14.21.3 || >=16"
988
+ },
989
+ "funding": {
990
+ "url": "https://paulmillr.com/funding/"
991
+ }
992
+ },
993
+ "node_modules/@paralleldrive/cuid2": {
994
+ "version": "2.2.2",
995
+ "resolved": "https://registry.npmjs.org/@paralleldrive/cuid2/-/cuid2-2.2.2.tgz",
996
+ "integrity": "sha512-ZOBkgDwEdoYVlSeRbYYXs0S9MejQofiVYoTbKzy/6GQa39/q5tQU2IX46+shYnUkpEl3wc+J6wRlar7r2EK2xA==",
997
+ "dev": true,
998
+ "license": "MIT",
999
+ "dependencies": {
1000
+ "@noble/hashes": "^1.1.5"
1001
+ }
1002
+ },
976
1003
  "node_modules/@sinclair/typebox": {
977
1004
  "version": "0.27.8",
978
1005
  "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz",
@@ -1202,11 +1229,25 @@
1202
1229
  "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
1203
1230
  "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg=="
1204
1231
  },
1232
+ "node_modules/asap": {
1233
+ "version": "2.0.6",
1234
+ "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
1235
+ "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==",
1236
+ "dev": true,
1237
+ "license": "MIT"
1238
+ },
1205
1239
  "node_modules/assert-never": {
1206
1240
  "version": "1.2.1",
1207
1241
  "resolved": "https://registry.npmjs.org/assert-never/-/assert-never-1.2.1.tgz",
1208
1242
  "integrity": "sha512-TaTivMB6pYI1kXwrFlEhLeGfOqoDNdTxjCdwRfFFkEA30Eu+k48W34nlok2EYWJfFFzqaEmichdNM7th6M5HNw=="
1209
1243
  },
1244
+ "node_modules/asynckit": {
1245
+ "version": "0.4.0",
1246
+ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
1247
+ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
1248
+ "dev": true,
1249
+ "license": "MIT"
1250
+ },
1210
1251
  "node_modules/babel-jest": {
1211
1252
  "version": "29.7.0",
1212
1253
  "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz",
@@ -1429,6 +1470,19 @@
1429
1470
  "url": "https://github.com/sponsors/ljharb"
1430
1471
  }
1431
1472
  },
1473
+ "node_modules/call-bind-apply-helpers": {
1474
+ "version": "1.0.2",
1475
+ "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz",
1476
+ "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
1477
+ "license": "MIT",
1478
+ "dependencies": {
1479
+ "es-errors": "^1.3.0",
1480
+ "function-bind": "^1.1.2"
1481
+ },
1482
+ "engines": {
1483
+ "node": ">= 0.4"
1484
+ }
1485
+ },
1432
1486
  "node_modules/callsites": {
1433
1487
  "version": "3.1.0",
1434
1488
  "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
@@ -1549,6 +1603,29 @@
1549
1603
  "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
1550
1604
  "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
1551
1605
  },
1606
+ "node_modules/combined-stream": {
1607
+ "version": "1.0.8",
1608
+ "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
1609
+ "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
1610
+ "dev": true,
1611
+ "license": "MIT",
1612
+ "dependencies": {
1613
+ "delayed-stream": "~1.0.0"
1614
+ },
1615
+ "engines": {
1616
+ "node": ">= 0.8"
1617
+ }
1618
+ },
1619
+ "node_modules/component-emitter": {
1620
+ "version": "1.3.1",
1621
+ "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.1.tgz",
1622
+ "integrity": "sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ==",
1623
+ "dev": true,
1624
+ "license": "MIT",
1625
+ "funding": {
1626
+ "url": "https://github.com/sponsors/sindresorhus"
1627
+ }
1628
+ },
1552
1629
  "node_modules/concat-map": {
1553
1630
  "version": "0.0.1",
1554
1631
  "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
@@ -1593,6 +1670,13 @@
1593
1670
  "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
1594
1671
  "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ=="
1595
1672
  },
1673
+ "node_modules/cookiejar": {
1674
+ "version": "2.1.4",
1675
+ "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz",
1676
+ "integrity": "sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==",
1677
+ "dev": true,
1678
+ "license": "MIT"
1679
+ },
1596
1680
  "node_modules/create-jest": {
1597
1681
  "version": "29.7.0",
1598
1682
  "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz",
@@ -1626,6 +1710,12 @@
1626
1710
  "node": ">= 8"
1627
1711
  }
1628
1712
  },
1713
+ "node_modules/csv-stringify": {
1714
+ "version": "6.6.0",
1715
+ "resolved": "https://registry.npmjs.org/csv-stringify/-/csv-stringify-6.6.0.tgz",
1716
+ "integrity": "sha512-YW32lKOmIBgbxtu3g5SaiqWNwa/9ISQt2EcgOq0+RAIFufFp9is6tqNnKahqE5kuKvrnYAzs28r+s6pXJR8Vcw==",
1717
+ "license": "MIT"
1718
+ },
1629
1719
  "node_modules/debug": {
1630
1720
  "version": "2.6.9",
1631
1721
  "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
@@ -1673,6 +1763,16 @@
1673
1763
  "url": "https://github.com/sponsors/ljharb"
1674
1764
  }
1675
1765
  },
1766
+ "node_modules/delayed-stream": {
1767
+ "version": "1.0.0",
1768
+ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
1769
+ "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
1770
+ "dev": true,
1771
+ "license": "MIT",
1772
+ "engines": {
1773
+ "node": ">=0.4.0"
1774
+ }
1775
+ },
1676
1776
  "node_modules/depd": {
1677
1777
  "version": "2.0.0",
1678
1778
  "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
@@ -1700,6 +1800,17 @@
1700
1800
  "node": ">=8"
1701
1801
  }
1702
1802
  },
1803
+ "node_modules/dezalgo": {
1804
+ "version": "1.0.4",
1805
+ "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz",
1806
+ "integrity": "sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==",
1807
+ "dev": true,
1808
+ "license": "ISC",
1809
+ "dependencies": {
1810
+ "asap": "^2.0.0",
1811
+ "wrappy": "1"
1812
+ }
1813
+ },
1703
1814
  "node_modules/diff-sequences": {
1704
1815
  "version": "29.6.3",
1705
1816
  "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz",
@@ -1708,6 +1819,20 @@
1708
1819
  "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
1709
1820
  }
1710
1821
  },
1822
+ "node_modules/dunder-proto": {
1823
+ "version": "1.0.1",
1824
+ "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
1825
+ "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
1826
+ "license": "MIT",
1827
+ "dependencies": {
1828
+ "call-bind-apply-helpers": "^1.0.1",
1829
+ "es-errors": "^1.3.0",
1830
+ "gopd": "^1.2.0"
1831
+ },
1832
+ "engines": {
1833
+ "node": ">= 0.4"
1834
+ }
1835
+ },
1711
1836
  "node_modules/ee-first": {
1712
1837
  "version": "1.1.1",
1713
1838
  "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
@@ -1753,13 +1878,10 @@
1753
1878
  }
1754
1879
  },
1755
1880
  "node_modules/es-define-property": {
1756
- "version": "1.0.0",
1757
- "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz",
1758
- "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==",
1881
+ "version": "1.0.1",
1882
+ "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
1883
+ "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==",
1759
1884
  "license": "MIT",
1760
- "dependencies": {
1761
- "get-intrinsic": "^1.2.4"
1762
- },
1763
1885
  "engines": {
1764
1886
  "node": ">= 0.4"
1765
1887
  }
@@ -1773,6 +1895,34 @@
1773
1895
  "node": ">= 0.4"
1774
1896
  }
1775
1897
  },
1898
+ "node_modules/es-object-atoms": {
1899
+ "version": "1.1.1",
1900
+ "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz",
1901
+ "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==",
1902
+ "license": "MIT",
1903
+ "dependencies": {
1904
+ "es-errors": "^1.3.0"
1905
+ },
1906
+ "engines": {
1907
+ "node": ">= 0.4"
1908
+ }
1909
+ },
1910
+ "node_modules/es-set-tostringtag": {
1911
+ "version": "2.1.0",
1912
+ "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz",
1913
+ "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==",
1914
+ "dev": true,
1915
+ "license": "MIT",
1916
+ "dependencies": {
1917
+ "es-errors": "^1.3.0",
1918
+ "get-intrinsic": "^1.2.6",
1919
+ "has-tostringtag": "^1.0.2",
1920
+ "hasown": "^2.0.2"
1921
+ },
1922
+ "engines": {
1923
+ "node": ">= 0.4"
1924
+ }
1925
+ },
1776
1926
  "node_modules/escalade": {
1777
1927
  "version": "3.1.1",
1778
1928
  "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
@@ -1912,6 +2062,13 @@
1912
2062
  "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
1913
2063
  "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
1914
2064
  },
2065
+ "node_modules/fast-safe-stringify": {
2066
+ "version": "2.1.1",
2067
+ "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz",
2068
+ "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==",
2069
+ "dev": true,
2070
+ "license": "MIT"
2071
+ },
1915
2072
  "node_modules/fb-watchman": {
1916
2073
  "version": "2.0.2",
1917
2074
  "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz",
@@ -1961,6 +2118,41 @@
1961
2118
  "node": ">=8"
1962
2119
  }
1963
2120
  },
2121
+ "node_modules/form-data": {
2122
+ "version": "4.0.4",
2123
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.4.tgz",
2124
+ "integrity": "sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==",
2125
+ "dev": true,
2126
+ "license": "MIT",
2127
+ "dependencies": {
2128
+ "asynckit": "^0.4.0",
2129
+ "combined-stream": "^1.0.8",
2130
+ "es-set-tostringtag": "^2.1.0",
2131
+ "hasown": "^2.0.2",
2132
+ "mime-types": "^2.1.12"
2133
+ },
2134
+ "engines": {
2135
+ "node": ">= 6"
2136
+ }
2137
+ },
2138
+ "node_modules/formidable": {
2139
+ "version": "3.5.4",
2140
+ "resolved": "https://registry.npmjs.org/formidable/-/formidable-3.5.4.tgz",
2141
+ "integrity": "sha512-YikH+7CUTOtP44ZTnUhR7Ic2UASBPOqmaRkRKxRbywPTe5VxF7RRCck4af9wutiZ/QKM5nME9Bie2fFaPz5Gug==",
2142
+ "dev": true,
2143
+ "license": "MIT",
2144
+ "dependencies": {
2145
+ "@paralleldrive/cuid2": "^2.2.2",
2146
+ "dezalgo": "^1.0.4",
2147
+ "once": "^1.4.0"
2148
+ },
2149
+ "engines": {
2150
+ "node": ">=14.0.0"
2151
+ },
2152
+ "funding": {
2153
+ "url": "https://ko-fi.com/tunnckoCore/commissions"
2154
+ }
2155
+ },
1964
2156
  "node_modules/forwarded": {
1965
2157
  "version": "0.2.0",
1966
2158
  "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz",
@@ -2021,16 +2213,21 @@
2021
2213
  }
2022
2214
  },
2023
2215
  "node_modules/get-intrinsic": {
2024
- "version": "1.2.4",
2025
- "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz",
2026
- "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==",
2216
+ "version": "1.3.0",
2217
+ "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
2218
+ "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==",
2027
2219
  "license": "MIT",
2028
2220
  "dependencies": {
2221
+ "call-bind-apply-helpers": "^1.0.2",
2222
+ "es-define-property": "^1.0.1",
2029
2223
  "es-errors": "^1.3.0",
2224
+ "es-object-atoms": "^1.1.1",
2030
2225
  "function-bind": "^1.1.2",
2031
- "has-proto": "^1.0.1",
2032
- "has-symbols": "^1.0.3",
2033
- "hasown": "^2.0.0"
2226
+ "get-proto": "^1.0.1",
2227
+ "gopd": "^1.2.0",
2228
+ "has-symbols": "^1.1.0",
2229
+ "hasown": "^2.0.2",
2230
+ "math-intrinsics": "^1.1.0"
2034
2231
  },
2035
2232
  "engines": {
2036
2233
  "node": ">= 0.4"
@@ -2047,6 +2244,19 @@
2047
2244
  "node": ">=8.0.0"
2048
2245
  }
2049
2246
  },
2247
+ "node_modules/get-proto": {
2248
+ "version": "1.0.1",
2249
+ "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz",
2250
+ "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
2251
+ "license": "MIT",
2252
+ "dependencies": {
2253
+ "dunder-proto": "^1.0.1",
2254
+ "es-object-atoms": "^1.0.0"
2255
+ },
2256
+ "engines": {
2257
+ "node": ">= 0.4"
2258
+ }
2259
+ },
2050
2260
  "node_modules/get-stream": {
2051
2261
  "version": "6.0.1",
2052
2262
  "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz",
@@ -2086,12 +2296,12 @@
2086
2296
  }
2087
2297
  },
2088
2298
  "node_modules/gopd": {
2089
- "version": "1.0.1",
2090
- "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz",
2091
- "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==",
2299
+ "version": "1.2.0",
2300
+ "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
2301
+ "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
2092
2302
  "license": "MIT",
2093
- "dependencies": {
2094
- "get-intrinsic": "^1.1.3"
2303
+ "engines": {
2304
+ "node": ">= 0.4"
2095
2305
  },
2096
2306
  "funding": {
2097
2307
  "url": "https://github.com/sponsors/ljharb"
@@ -2122,10 +2332,10 @@
2122
2332
  "url": "https://github.com/sponsors/ljharb"
2123
2333
  }
2124
2334
  },
2125
- "node_modules/has-proto": {
2126
- "version": "1.0.3",
2127
- "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz",
2128
- "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==",
2335
+ "node_modules/has-symbols": {
2336
+ "version": "1.1.0",
2337
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
2338
+ "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
2129
2339
  "license": "MIT",
2130
2340
  "engines": {
2131
2341
  "node": ">= 0.4"
@@ -2134,11 +2344,15 @@
2134
2344
  "url": "https://github.com/sponsors/ljharb"
2135
2345
  }
2136
2346
  },
2137
- "node_modules/has-symbols": {
2138
- "version": "1.0.3",
2139
- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
2140
- "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
2347
+ "node_modules/has-tostringtag": {
2348
+ "version": "1.0.2",
2349
+ "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz",
2350
+ "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==",
2351
+ "dev": true,
2141
2352
  "license": "MIT",
2353
+ "dependencies": {
2354
+ "has-symbols": "^1.0.3"
2355
+ },
2142
2356
  "engines": {
2143
2357
  "node": ">= 0.4"
2144
2358
  },
@@ -2147,9 +2361,10 @@
2147
2361
  }
2148
2362
  },
2149
2363
  "node_modules/hasown": {
2150
- "version": "2.0.0",
2151
- "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz",
2152
- "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==",
2364
+ "version": "2.0.2",
2365
+ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
2366
+ "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
2367
+ "license": "MIT",
2153
2368
  "dependencies": {
2154
2369
  "function-bind": "^1.1.2"
2155
2370
  },
@@ -2980,9 +3195,9 @@
2980
3195
  }
2981
3196
  },
2982
3197
  "node_modules/jinaga": {
2983
- "version": "6.5.3",
2984
- "resolved": "https://registry.npmjs.org/jinaga/-/jinaga-6.5.3.tgz",
2985
- "integrity": "sha512-y3yInu8z4+I5ZwjFBeXxkJPN7hPo1jwFsjEJmiIKd7yLShsAFwYkd2WWSZMjCvqfU/LuziFjsJw5XDjWK3CzFQ==",
3198
+ "version": "6.7.13",
3199
+ "resolved": "https://registry.npmjs.org/jinaga/-/jinaga-6.7.13.tgz",
3200
+ "integrity": "sha512-WhSg3bWvUr1WnC4lnpzswJIZ45bMWxRlKXlEhOsofI86jXJSH7tHUqXWKZ9UJihc5/8iGxJUnM65zWZmPa+aFA==",
2986
3201
  "license": "MIT",
2987
3202
  "dependencies": {
2988
3203
  "@stablelib/base64": "^1.0.1",
@@ -3130,6 +3345,15 @@
3130
3345
  "tmpl": "1.0.5"
3131
3346
  }
3132
3347
  },
3348
+ "node_modules/math-intrinsics": {
3349
+ "version": "1.1.0",
3350
+ "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
3351
+ "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
3352
+ "license": "MIT",
3353
+ "engines": {
3354
+ "node": ">= 0.4"
3355
+ }
3356
+ },
3133
3357
  "node_modules/media-typer": {
3134
3358
  "version": "0.3.0",
3135
3359
  "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
@@ -4024,6 +4248,79 @@
4024
4248
  "url": "https://github.com/sponsors/sindresorhus"
4025
4249
  }
4026
4250
  },
4251
+ "node_modules/superagent": {
4252
+ "version": "10.2.3",
4253
+ "resolved": "https://registry.npmjs.org/superagent/-/superagent-10.2.3.tgz",
4254
+ "integrity": "sha512-y/hkYGeXAj7wUMjxRbB21g/l6aAEituGXM9Rwl4o20+SX3e8YOSV6BxFXl+dL3Uk0mjSL3kCbNkwURm8/gEDig==",
4255
+ "dev": true,
4256
+ "license": "MIT",
4257
+ "dependencies": {
4258
+ "component-emitter": "^1.3.1",
4259
+ "cookiejar": "^2.1.4",
4260
+ "debug": "^4.3.7",
4261
+ "fast-safe-stringify": "^2.1.1",
4262
+ "form-data": "^4.0.4",
4263
+ "formidable": "^3.5.4",
4264
+ "methods": "^1.1.2",
4265
+ "mime": "2.6.0",
4266
+ "qs": "^6.11.2"
4267
+ },
4268
+ "engines": {
4269
+ "node": ">=14.18.0"
4270
+ }
4271
+ },
4272
+ "node_modules/superagent/node_modules/debug": {
4273
+ "version": "4.4.3",
4274
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
4275
+ "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
4276
+ "dev": true,
4277
+ "license": "MIT",
4278
+ "dependencies": {
4279
+ "ms": "^2.1.3"
4280
+ },
4281
+ "engines": {
4282
+ "node": ">=6.0"
4283
+ },
4284
+ "peerDependenciesMeta": {
4285
+ "supports-color": {
4286
+ "optional": true
4287
+ }
4288
+ }
4289
+ },
4290
+ "node_modules/superagent/node_modules/mime": {
4291
+ "version": "2.6.0",
4292
+ "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz",
4293
+ "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==",
4294
+ "dev": true,
4295
+ "license": "MIT",
4296
+ "bin": {
4297
+ "mime": "cli.js"
4298
+ },
4299
+ "engines": {
4300
+ "node": ">=4.0.0"
4301
+ }
4302
+ },
4303
+ "node_modules/superagent/node_modules/ms": {
4304
+ "version": "2.1.3",
4305
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
4306
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
4307
+ "dev": true,
4308
+ "license": "MIT"
4309
+ },
4310
+ "node_modules/supertest": {
4311
+ "version": "7.1.4",
4312
+ "resolved": "https://registry.npmjs.org/supertest/-/supertest-7.1.4.tgz",
4313
+ "integrity": "sha512-tjLPs7dVyqgItVFirHYqe2T+MfWc2VOBQ8QFKKbWTA3PU7liZR8zoSpAi/C1k1ilm9RsXIKYf197oap9wXGVYg==",
4314
+ "dev": true,
4315
+ "license": "MIT",
4316
+ "dependencies": {
4317
+ "methods": "^1.1.2",
4318
+ "superagent": "^10.2.3"
4319
+ },
4320
+ "engines": {
4321
+ "node": ">=14.18.0"
4322
+ }
4323
+ },
4027
4324
  "node_modules/supports-color": {
4028
4325
  "version": "7.2.0",
4029
4326
  "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
@@ -14,11 +14,15 @@
14
14
  "license": "MIT",
15
15
  "dependencies": {
16
16
  "@stablelib/base64": "^1.0.1",
17
+ "csv-stringify": "^6.6.0",
17
18
  "express": "^4.21.2",
18
19
  "jest": "^29.7.0",
19
20
  "jest-compact-reporter": "^1.2.9",
20
- "jinaga": "^6.5.3",
21
+ "jinaga": "^6.7.13",
21
22
  "node-forge": "^1.3.0",
22
23
  "pg": "^8.13.1"
24
+ },
25
+ "devDependencies": {
26
+ "supertest": "^7.1.4"
23
27
  }
24
28
  }