@lindorm/iris 0.5.0 → 0.6.0

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/dist/decorators/CorrelationField.d.ts.map +1 -1
  2. package/dist/decorators/CorrelationField.js +2 -3
  3. package/dist/decorators/CorrelationField.js.map +1 -1
  4. package/dist/decorators/Generated.d.ts +7 -1
  5. package/dist/decorators/Generated.d.ts.map +1 -1
  6. package/dist/decorators/Generated.js +17 -9
  7. package/dist/decorators/Generated.js.map +1 -1
  8. package/dist/decorators/IdentifierField.d.ts.map +1 -1
  9. package/dist/decorators/IdentifierField.js +2 -3
  10. package/dist/decorators/IdentifierField.js.map +1 -1
  11. package/dist/decorators/TimestampField.d.ts.map +1 -1
  12. package/dist/decorators/TimestampField.js +13 -3
  13. package/dist/decorators/TimestampField.js.map +1 -1
  14. package/dist/internal/dead-letter/DeadLetterManager.js +2 -2
  15. package/dist/internal/dead-letter/DeadLetterManager.js.map +1 -1
  16. package/dist/internal/delay/DelayManager.js +2 -2
  17. package/dist/internal/delay/DelayManager.js.map +1 -1
  18. package/dist/internal/drivers/kafka/classes/KafkaMessageBus.js +3 -3
  19. package/dist/internal/drivers/kafka/classes/KafkaMessageBus.js.map +1 -1
  20. package/dist/internal/drivers/kafka/classes/KafkaRpcClient.js +4 -4
  21. package/dist/internal/drivers/kafka/classes/KafkaRpcClient.js.map +1 -1
  22. package/dist/internal/drivers/kafka/classes/KafkaStreamPipeline.js +3 -3
  23. package/dist/internal/drivers/kafka/classes/KafkaStreamPipeline.js.map +1 -1
  24. package/dist/internal/drivers/kafka/classes/KafkaWorkerQueue.js +2 -2
  25. package/dist/internal/drivers/kafka/classes/KafkaWorkerQueue.js.map +1 -1
  26. package/dist/internal/drivers/kafka/utils/create-kafka-consumer.js +3 -3
  27. package/dist/internal/drivers/kafka/utils/create-kafka-consumer.js.map +1 -1
  28. package/dist/internal/drivers/memory/classes/MemoryMessageBus.js +2 -2
  29. package/dist/internal/drivers/memory/classes/MemoryMessageBus.js.map +1 -1
  30. package/dist/internal/drivers/memory/classes/MemoryRpcClient.js +2 -2
  31. package/dist/internal/drivers/memory/classes/MemoryRpcClient.js.map +1 -1
  32. package/dist/internal/drivers/memory/classes/MemoryStreamPipeline.js +2 -2
  33. package/dist/internal/drivers/memory/classes/MemoryStreamPipeline.js.map +1 -1
  34. package/dist/internal/drivers/memory/classes/MemoryWorkerQueue.js +2 -2
  35. package/dist/internal/drivers/memory/classes/MemoryWorkerQueue.js.map +1 -1
  36. package/dist/internal/drivers/nats/classes/NatsMessageBus.d.ts.map +1 -1
  37. package/dist/internal/drivers/nats/classes/NatsMessageBus.js +3 -2
  38. package/dist/internal/drivers/nats/classes/NatsMessageBus.js.map +1 -1
  39. package/dist/internal/drivers/nats/classes/NatsStreamPipeline.d.ts.map +1 -1
  40. package/dist/internal/drivers/nats/classes/NatsStreamPipeline.js +3 -3
  41. package/dist/internal/drivers/nats/classes/NatsStreamPipeline.js.map +1 -1
  42. package/dist/internal/drivers/nats/classes/NatsWorkerQueue.d.ts.map +1 -1
  43. package/dist/internal/drivers/nats/classes/NatsWorkerQueue.js +2 -2
  44. package/dist/internal/drivers/nats/classes/NatsWorkerQueue.js.map +1 -1
  45. package/dist/internal/drivers/nats/utils/create-nats-consumer.js +2 -2
  46. package/dist/internal/drivers/nats/utils/create-nats-consumer.js.map +1 -1
  47. package/dist/internal/drivers/rabbit/classes/RabbitRpcClient.js +2 -2
  48. package/dist/internal/drivers/rabbit/classes/RabbitRpcClient.js.map +1 -1
  49. package/dist/internal/drivers/redis/classes/RedisMessageBus.js +2 -2
  50. package/dist/internal/drivers/redis/classes/RedisMessageBus.js.map +1 -1
  51. package/dist/internal/drivers/redis/classes/RedisRpcClient.js +4 -4
  52. package/dist/internal/drivers/redis/classes/RedisRpcClient.js.map +1 -1
  53. package/dist/internal/drivers/redis/classes/RedisStreamPipeline.js +3 -3
  54. package/dist/internal/drivers/redis/classes/RedisStreamPipeline.js.map +1 -1
  55. package/dist/internal/drivers/redis/classes/RedisWorkerQueue.js +2 -2
  56. package/dist/internal/drivers/redis/classes/RedisWorkerQueue.js.map +1 -1
  57. package/dist/internal/drivers/redis/utils/create-consumer-loop.js +2 -2
  58. package/dist/internal/drivers/redis/utils/create-consumer-loop.js.map +1 -1
  59. package/dist/internal/message/metadata/validate-generated.d.ts.map +1 -1
  60. package/dist/internal/message/metadata/validate-generated.js +20 -0
  61. package/dist/internal/message/metadata/validate-generated.js.map +1 -1
  62. package/dist/internal/message/types/metadata.d.ts +3 -1
  63. package/dist/internal/message/types/metadata.d.ts.map +1 -1
  64. package/dist/internal/message/types/types.d.ts +1 -1
  65. package/dist/internal/message/types/types.d.ts.map +1 -1
  66. package/dist/internal/message/utils/generate-fields.d.ts.map +1 -1
  67. package/dist/internal/message/utils/generate-fields.js +10 -1
  68. package/dist/internal/message/utils/generate-fields.js.map +1 -1
  69. package/package.json +9 -9
@@ -5,8 +5,22 @@ const STRATEGY_TYPES = {
5
5
  string: "string",
6
6
  integer: "integer",
7
7
  float: "float",
8
+ lindorm_id: "string",
8
9
  };
10
+ const ROLE_MARKERS = new Set(["IdentifierField", "CorrelationField", "TimestampField"]);
9
11
  export const validateGenerated = (targetName, generated, fields) => {
12
+ const seen = new Set();
13
+ for (const gen of generated) {
14
+ if (seen.has(gen.key)) {
15
+ throw new IrisMetadataError("Duplicate @Generated for field", {
16
+ code: "duplicate_generated_field",
17
+ title: "Duplicate Generated Field",
18
+ details: "Two @Generated decorators target the same property. A field can only have a single generator. Remove the duplicate @Generated decorator.",
19
+ debug: { target: targetName, field: gen.key },
20
+ });
21
+ }
22
+ seen.add(gen.key);
23
+ }
10
24
  for (const gen of generated) {
11
25
  const field = fields.find((f) => f.key === gen.key);
12
26
  if (!field) {
@@ -17,7 +31,13 @@ export const validateGenerated = (targetName, generated, fields) => {
17
31
  debug: { target: targetName, field: gen.key },
18
32
  });
19
33
  }
34
+ if (gen.generator)
35
+ continue;
20
36
  const expectedType = STRATEGY_TYPES[gen.strategy];
37
+ if (ROLE_MARKERS.has(field.decorator)) {
38
+ field.type = expectedType;
39
+ continue;
40
+ }
21
41
  if (field.type !== expectedType) {
22
42
  throw new IrisMetadataError("Invalid @Generated strategy for field type", {
23
43
  code: "invalid_generated_strategy",
@@ -1 +1 @@
1
- {"version":3,"file":"validate-generated.js","sourceRoot":"","sources":["../../../../src/internal/message/metadata/validate-generated.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAKzE,MAAM,cAAc,GAAiD;IACnE,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;CACf,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,UAAkB,EAClB,SAA+B,EAC/B,MAAwB,EAClB,EAAE;IACR,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;QAEpD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,iBAAiB,CAAC,2BAA2B,EAAE;gBACvD,IAAI,EAAE,2BAA2B;gBACjC,KAAK,EAAE,2BAA2B;gBAClC,OAAO,EACL,kIAAkI;gBACpI,KAAK,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,CAAC,GAAG,EAAE;aAC9C,CAAC,CAAC;QACL,CAAC;QAED,MAAM,YAAY,GAAG,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAElD,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAChC,MAAM,IAAI,iBAAiB,CAAC,4CAA4C,EAAE;gBACxE,IAAI,EAAE,4BAA4B;gBAClC,KAAK,EAAE,4BAA4B;gBACnC,OAAO,EACL,4JAA4J;gBAC9J,KAAK,EAAE;oBACL,MAAM,EAAE,UAAU;oBAClB,KAAK,EAAE,KAAK,CAAC,GAAG;oBAChB,QAAQ,EAAE,GAAG,CAAC,QAAQ;oBACtB,IAAI,EAAE,KAAK,CAAC,IAAI;iBACjB;aACF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"validate-generated.js","sourceRoot":"","sources":["../../../../src/internal/message/metadata/validate-generated.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAKzE,MAAM,cAAc,GAAiD;IACnE,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,UAAU,EAAE,QAAQ;CACrB,CAAC;AAIF,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,iBAAiB,EAAE,kBAAkB,EAAE,gBAAgB,CAAC,CAAC,CAAC;AAExF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,UAAkB,EAClB,SAA+B,EAC/B,MAAwB,EAClB,EAAE;IACR,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAE/B,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC5B,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,iBAAiB,CAAC,gCAAgC,EAAE;gBAC5D,IAAI,EAAE,2BAA2B;gBACjC,KAAK,EAAE,2BAA2B;gBAClC,OAAO,EACL,0IAA0I;gBAC5I,KAAK,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,CAAC,GAAG,EAAE;aAC9C,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;QAEpD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,iBAAiB,CAAC,2BAA2B,EAAE;gBACvD,IAAI,EAAE,2BAA2B;gBACjC,KAAK,EAAE,2BAA2B;gBAClC,OAAO,EACL,kIAAkI;gBACpI,KAAK,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,CAAC,GAAG,EAAE;aAC9C,CAAC,CAAC;QACL,CAAC;QAED,IAAI,GAAG,CAAC,SAAS;YAAE,SAAS;QAE5B,MAAM,YAAY,GAAG,cAAc,CAAC,GAAG,CAAC,QAAiC,CAAC,CAAC;QAK3E,IAAI,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YACtC,KAAK,CAAC,IAAI,GAAG,YAAY,CAAC;YAC1B,SAAS;QACX,CAAC;QAGD,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAChC,MAAM,IAAI,iBAAiB,CAAC,4CAA4C,EAAE;gBACxE,IAAI,EAAE,4BAA4B;gBAClC,KAAK,EAAE,4BAA4B;gBACnC,OAAO,EACL,4JAA4J;gBAC9J,KAAK,EAAE;oBACL,MAAM,EAAE,UAAU;oBAClB,KAAK,EAAE,KAAK,CAAC,GAAG;oBAChB,QAAQ,EAAE,GAAG,CAAC,QAAQ;oBACtB,IAAI,EAAE,KAAK,CAAC,IAAI;iBACjB;aACF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;AACH,CAAC,CAAC"}
@@ -27,10 +27,12 @@ export type MetaHook = {
27
27
  };
28
28
  export type MetaGenerated = {
29
29
  key: string;
30
+ generator: (() => unknown) | null;
30
31
  length: number | null;
31
32
  max: number | null;
32
33
  min: number | null;
33
- strategy: MetaGeneratedStrategy;
34
+ namespace: string | null;
35
+ strategy: MetaGeneratedStrategy | null;
34
36
  };
35
37
  export type MetaTopic = {
36
38
  callback: (message: any) => string;
@@ -1 +1 @@
1
- {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../../../src/internal/message/types/metadata.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../../../src/internal/message/types/metadata.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  export type MetaFieldType = "array" | "bigint" | "boolean" | "date" | "email" | "enum" | "float" | "integer" | "object" | "string" | "url" | "uuid";
2
2
  export type MetaFieldDecorator = "Field" | "CorrelationField" | "IdentifierField" | "MandatoryField" | "PersistentField" | "TimestampField";
3
3
  export type MetaHookDecorator = "OnCreate" | "OnHydrate" | "OnValidate" | "BeforePublish" | "AfterPublish" | "BeforeConsume" | "AfterConsume" | "OnConsumeError";
4
- export type MetaGeneratedStrategy = "uuid" | "date" | "string" | "integer" | "float";
4
+ export type MetaGeneratedStrategy = "uuid" | "date" | "string" | "integer" | "float" | "lindorm_id";
5
5
  export type FieldDefaultPrimitive = bigint | boolean | Date | number | string | null;
6
6
  export type FieldDefaultComplex = Array<FieldDefaultPrimitive> | Record<string, FieldDefaultPrimitive> | FieldDefaultPrimitive;
7
7
  export type MetaFieldDefault = (() => FieldDefaultComplex) | FieldDefaultComplex;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/internal/message/types/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GACrB,OAAO,GACP,QAAQ,GACR,SAAS,GACT,MAAM,GACN,OAAO,GACP,MAAM,GACN,OAAO,GACP,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,KAAK,GACL,MAAM,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAC1B,OAAO,GACP,kBAAkB,GAClB,iBAAiB,GACjB,gBAAgB,GAChB,iBAAiB,GACjB,gBAAgB,CAAC;AAErB,MAAM,MAAM,iBAAiB,GACzB,UAAU,GACV,WAAW,GACX,YAAY,GACZ,eAAe,GACf,cAAc,GACd,eAAe,GACf,cAAc,GACd,gBAAgB,CAAC;AAErB,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAC;AAErF,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;AACrF,MAAM,MAAM,mBAAmB,GAC3B,KAAK,CAAC,qBAAqB,CAAC,GAC5B,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,GACrC,qBAAqB,CAAC;AAC1B,MAAM,MAAM,gBAAgB,GAAG,CAAC,MAAM,mBAAmB,CAAC,GAAG,mBAAmB,CAAC;AAEjF,MAAM,MAAM,aAAa,GAAG;IAC1B,EAAE,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;IAChC,IAAI,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC;CACjC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/internal/message/types/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GACrB,OAAO,GACP,QAAQ,GACR,SAAS,GACT,MAAM,GACN,OAAO,GACP,MAAM,GACN,OAAO,GACP,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,KAAK,GACL,MAAM,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAC1B,OAAO,GACP,kBAAkB,GAClB,iBAAiB,GACjB,gBAAgB,GAChB,iBAAiB,GACjB,gBAAgB,CAAC;AAErB,MAAM,MAAM,iBAAiB,GACzB,UAAU,GACV,WAAW,GACX,YAAY,GACZ,eAAe,GACf,cAAc,GACd,eAAe,GACf,cAAc,GACd,gBAAgB,CAAC;AAErB,MAAM,MAAM,qBAAqB,GAC7B,MAAM,GACN,MAAM,GACN,QAAQ,GACR,SAAS,GACT,OAAO,GACP,YAAY,CAAC;AAEjB,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;AACrF,MAAM,MAAM,mBAAmB,GAC3B,KAAK,CAAC,qBAAqB,CAAC,GAC5B,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,GACrC,qBAAqB,CAAC;AAC1B,MAAM,MAAM,gBAAgB,GAAG,CAAC,MAAM,mBAAmB,CAAC,GAAG,mBAAmB,CAAC;AAEjF,MAAM,MAAM,aAAa,GAAG;IAC1B,EAAE,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;IAChC,IAAI,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC;CACjC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"generate-fields.d.ts","sourceRoot":"","sources":["../../../../src/internal/message/utils/generate-fields.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAiC5D,eAAO,MAAM,cAAc,GAAI,UAAU,eAAe,EAAE,SAAS,GAAG,KAAG,IAKxE,CAAC"}
1
+ {"version":3,"file":"generate-fields.d.ts","sourceRoot":"","sources":["../../../../src/internal/message/utils/generate-fields.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAkD5D,eAAO,MAAM,cAAc,GAAI,UAAU,eAAe,EAAE,SAAS,GAAG,KAAG,IAKxE,CAAC"}
@@ -1,9 +1,18 @@
1
- import { randomUUID } from "@lindorm/random";
1
+ import { randomId, randomUUID } from "@lindorm/random";
2
2
  import { randomInt, randomBytes } from "crypto";
3
3
  const generateValue = (gen) => {
4
+ if (gen.generator)
5
+ return gen.generator();
4
6
  switch (gen.strategy) {
5
7
  case "uuid":
6
8
  return randomUUID();
9
+ case "lindorm_id":
10
+ return gen.namespace != null || gen.length != null
11
+ ? randomId({
12
+ namespace: gen.namespace ?? undefined,
13
+ length: (gen.length ?? undefined),
14
+ })
15
+ : randomId();
7
16
  case "date":
8
17
  return new Date();
9
18
  case "string": {
@@ -1 +1 @@
1
- {"version":3,"file":"generate-fields.js","sourceRoot":"","sources":["../../../../src/internal/message/utils/generate-fields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAIhD,MAAM,aAAa,GAAG,CAAC,GAAkB,EAAW,EAAE;IACpD,QAAQ,GAAG,CAAC,QAAQ,EAAE,CAAC;QACrB,KAAK,MAAM;YACT,OAAO,UAAU,EAAE,CAAC;QAEtB,KAAK,MAAM;YACT,OAAO,IAAI,IAAI,EAAE,CAAC;QAEpB,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1C,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QACnE,CAAC;QAED,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;YACzB,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,MAAM,CAAC;YAC9B,OAAO,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC7B,CAAC;QAED,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;YACzB,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,MAAM,CAAC;YAC9B,OAAO,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QAC3C,CAAC;QAED;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,QAAyB,EAAE,OAAY,EAAQ,EAAE;IAC9E,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;QACrC,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI;YAAE,SAAS;QACvC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IACxC,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"generate-fields.js","sourceRoot":"","sources":["../../../../src/internal/message/utils/generate-fields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAWhD,MAAM,aAAa,GAAG,CAAC,GAAkB,EAAW,EAAE;IACpD,IAAI,GAAG,CAAC,SAAS;QAAE,OAAO,GAAG,CAAC,SAAS,EAAE,CAAC;IAE1C,QAAQ,GAAG,CAAC,QAAQ,EAAE,CAAC;QACrB,KAAK,MAAM;YACT,OAAO,UAAU,EAAE,CAAC;QAEtB,KAAK,YAAY;YACf,OAAO,GAAG,CAAC,SAAS,IAAI,IAAI,IAAI,GAAG,CAAC,MAAM,IAAI,IAAI;gBAChD,CAAC,CAAC,QAAQ,CAAC;oBACP,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,SAAS;oBACrC,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,SAAS,CAA+B;iBAChE,CAAC;gBACJ,CAAC,CAAC,QAAQ,EAAE,CAAC;QAEjB,KAAK,MAAM;YACT,OAAO,IAAI,IAAI,EAAE,CAAC;QAEpB,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1C,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QACnE,CAAC;QAED,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;YACzB,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,MAAM,CAAC;YAC9B,OAAO,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC7B,CAAC;QAED,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;YACzB,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,MAAM,CAAC;YAC9B,OAAO,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QAC3C,CAAC;QAED;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,QAAyB,EAAE,OAAY,EAAQ,EAAE;IAC9E,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;QACrC,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI;YAAE,SAAS;QACvC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IACxC,CAAC;AACH,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lindorm/iris",
3
- "version": "0.5.0",
3
+ "version": "0.6.0",
4
4
  "license": "AGPL-3.0-or-later",
5
5
  "author": "Jonn Nilsson",
6
6
  "repository": {
@@ -51,13 +51,13 @@
51
51
  },
52
52
  "dependencies": {
53
53
  "@inquirer/prompts": "^8.3.0",
54
- "@lindorm/aes": "^0.8.0",
55
- "@lindorm/errors": "^0.3.0",
54
+ "@lindorm/aes": "^0.8.1",
55
+ "@lindorm/errors": "^0.4.0",
56
56
  "@lindorm/is": "^0.2.3",
57
57
  "@lindorm/json-kit": "^0.6.3",
58
- "@lindorm/random": "^0.3.2",
58
+ "@lindorm/random": "^0.4.0",
59
59
  "@lindorm/retry": "^0.3.3",
60
- "@lindorm/scanner": "^0.5.4",
60
+ "@lindorm/scanner": "^0.5.5",
61
61
  "@lindorm/types": "^0.8.0",
62
62
  "commander": "^14.0.3",
63
63
  "zod": "^4.3.6"
@@ -88,14 +88,14 @@
88
88
  }
89
89
  },
90
90
  "devDependencies": {
91
- "@lindorm/amphora": "^0.6.0",
92
- "@lindorm/kryptos": "^0.9.0",
93
- "@lindorm/logger": "^0.6.4",
91
+ "@lindorm/amphora": "^0.6.1",
92
+ "@lindorm/kryptos": "^0.10.0",
93
+ "@lindorm/logger": "^0.6.5",
94
94
  "@types/amqplib": "^0.10.8",
95
95
  "amqplib": "^0.10.9",
96
96
  "ioredis": "^5.10.0",
97
97
  "kafkajs": "^2.2.4",
98
98
  "nats": "^2.29.3"
99
99
  },
100
- "gitHead": "fa9e8b77d1d8074f1092955ad8e79376145478bb"
100
+ "gitHead": "d77dfd6c3259d01d2e037f4a68b314511fe33861"
101
101
  }