| export {}; | ||
| //# sourceMappingURL=index.d.ts.map |
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/event-bus/index.ts"],"names":[],"mappings":""} |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| //# sourceMappingURL=index.js.map |
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/event-bus/index.ts"],"names":[],"mappings":""} |
| export {}; | ||
| //# sourceMappingURL=interfaces.d.ts.map |
| {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/event-bus/interfaces.ts"],"names":[],"mappings":""} |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| //# sourceMappingURL=interfaces.js.map |
| {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/event-bus/interfaces.ts"],"names":[],"mappings":""} |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"domainEntity.d.ts","sourceRoot":"","sources":["../src/domainEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D,MAAM,WAAW,aAAa;IAC5B,EAAE,IAAI,MAAM,CAAC;IACb,SAAS,IAAI,OAAO,CAAC;IACrB,YAAY,CAAC,SAAS,EAAE,eAAe,CAAC,OAAO,CAAC,GAAG,IAAI,CAAA;CACxD;AAED,qBAAa,YAAY,CAAC,KAAK,CAAE,YAAW,aAAa;;IAGvD,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;gBAEX,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE;IAO3E,EAAE,IAAI,MAAM;IAIZ,SAAS,IAAI,KAAK;IAKlB,YAAY,CAAC,SAAS,EAAE,eAAe,CAAC,KAAK,CAAC;IAI9C,OAAO,CAAC,eAAe;CAOxB"} | ||
| {"version":3,"file":"domainEntity.d.ts","sourceRoot":"","sources":["../src/domainEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D,MAAM,WAAW,aAAa;IAC5B,EAAE,IAAI,MAAM,CAAC;IACb,SAAS,IAAI,OAAO,CAAC;IACrB,YAAY,CAAC,SAAS,EAAE,eAAe,CAAC,OAAO,CAAC,GAAG,IAAI,CAAA;CACxD;AAED,qBAAa,YAAY,CAAC,KAAK,CAAE,YAAW,aAAa;;IAGvD,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;gBAEX,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE;IAO3E,EAAE,IAAI,MAAM;IAIZ,SAAS,IAAI,KAAK;IAKlB,YAAY,CAAC,SAAS,EAAE,eAAe,CAAC,KAAK,CAAC;IAI9C,OAAO,CAAC,eAAe;CASxB"} |
@@ -27,3 +27,5 @@ "use strict"; | ||
| if (!isValid) { | ||
| throw new Error('Corrupted state detected'); | ||
| throw new Error('Corrupted state detected', { | ||
| cause: this.state | ||
| }); | ||
| } | ||
@@ -30,0 +32,0 @@ } |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"domainEntity.js","sourceRoot":"","sources":["../src/domainEntity.ts"],"names":[],"mappings":";;;AAQA,MAAa,YAAY;IACvB,GAAG,CAAS;IACZ,WAAW,CAA2B;IAC5B,KAAK,CAAQ;IAEvB,YAAY,EAAU,EAAE,KAAY,EAAE,UAAqC;QACzE,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,uCAAuC;QAC5E,IAAI,CAAC,WAAW,GAAG,UAAU,IAAI,EAAE,CAAC;QACpC,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED,EAAE;QACA,OAAO,IAAI,CAAC,GAAG,CAAC;IAClB,CAAC;IAED,SAAS;QACP,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,OAAO,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,YAAY,CAAC,SAAiC;QAC5C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;IAEO,eAAe;QACrB,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,CAAC;QAElG,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAA;QAC7C,CAAC;IACH,CAAC;CACF;AAhCD,oCAgCC"} | ||
| {"version":3,"file":"domainEntity.js","sourceRoot":"","sources":["../src/domainEntity.ts"],"names":[],"mappings":";;;AAQA,MAAa,YAAY;IACvB,GAAG,CAAS;IACZ,WAAW,CAA2B;IAC5B,KAAK,CAAQ;IAEvB,YAAY,EAAU,EAAE,KAAY,EAAE,UAAqC;QACzE,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,uCAAuC;QAC5E,IAAI,CAAC,WAAW,GAAG,UAAU,IAAI,EAAE,CAAC;QACpC,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED,EAAE;QACA,OAAO,IAAI,CAAC,GAAG,CAAC;IAClB,CAAC;IAED,SAAS;QACP,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,OAAO,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,YAAY,CAAC,SAAiC;QAC5C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;IAEO,eAAe;QACrB,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,CAAC;QAElG,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,0BAA0B,EAAC;gBACzC,KAAK,EAAC,IAAI,CAAC,KAAK;aACjB,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;CACF;AAlCD,oCAkCC"} |
@@ -1,2 +0,5 @@ | ||
| import { Result, DomainEntity, DomainEventInterface, Repository } from "../../src"; | ||
| import { Result } from "../result"; | ||
| import { DomainEntity } from "../domainEntity"; | ||
| import { DomainEventInterface } from "../domainEvent"; | ||
| import { EventWithMetadata, Repository } from "../repository"; | ||
| export declare class InMemoryRepository<Entity extends DomainEntity<ReturnType<Entity["readState"]>>> implements Repository<Entity> { | ||
@@ -6,3 +9,3 @@ #private; | ||
| protected readonly store: Map<string, ReturnType<Entity["readState"]>>; | ||
| protected readonly eventStore: Map<string, DomainEventInterface[]>; | ||
| protected readonly eventStore: Map<string, EventWithMetadata[]>; | ||
| save(entity: Entity): Promise<Result<void, Error>>; | ||
@@ -22,4 +25,5 @@ saveWithEvents(entity: Entity, domainEvents: DomainEventInterface | DomainEventInterface[]): Promise<Result<void, Error>>; | ||
| offset: number; | ||
| }): Promise<Result<DomainEventInterface[], Error>>; | ||
| }): Promise<Result<EventWithMetadata[], Error>>; | ||
| on(handler: (entityId: string) => void): void; | ||
| } | ||
| //# sourceMappingURL=index.d.ts.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/inMemoryRepository/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,MAAM,EAAE,YAAY,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvF,qBAAa,kBAAkB,CAC7B,MAAM,SAAS,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAC5D,YAAW,UAAU,CAAC,MAAM,CAAC;;gBAI3B,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,KAAK,MAAM;IAKxE,SAAS,CAAC,QAAQ,CAAC,KAAK,+CAAsD;IAC9E,SAAS,CAAC,QAAQ,CAAC,UAAU,sCAA6C;IAEpE,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAKlD,cAAc,CAClB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,oBAAoB,GAAG,oBAAoB,EAAE,GAC1D,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAc/B,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,EAAE,KAAK,CAAC,CAAC;IAU/D,IAAI,CAAC,MAAM,EAAE;QACX,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CACT,MAAM,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,KAAK,CAAC,CACjE;IAqBD,SAAS,CACP,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAC1C,OAAO,CAAC,MAAM,CAAC,oBAAoB,EAAE,EAAE,KAAK,CAAC,CAAC;CAYlD"} | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/inMemoryRepository/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAM,MAAM,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE9D,qBAAa,kBAAkB,CAC7B,MAAM,SAAS,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAC5D,YAAW,UAAU,CAAC,MAAM,CAAC;;gBAO3B,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,KAAK,MAAM;IAKxE,SAAS,CAAC,QAAQ,CAAC,KAAK,+CAAsD;IAC9E,SAAS,CAAC,QAAQ,CAAC,UAAU,mCAA0C;IAEjE,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAKlD,cAAc,CAClB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,oBAAoB,GAAG,oBAAoB,EAAE,GAC1D,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IA8B/B,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,EAAE,KAAK,CAAC,CAAC;IAU/D,IAAI,CAAC,MAAM,EAAE;QACX,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CACT,MAAM,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,KAAK,CAAC,CACjE;IAqBD,SAAS,CACP,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAC1C,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,EAAE,KAAK,CAAC,CAAC;IAa9C,EAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;CAG9C"} |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.InMemoryRepository = void 0; | ||
| const src_1 = require("../../src"); | ||
| const node_events_1 = require("node:events"); | ||
| const result_1 = require("../result"); | ||
| class InMemoryRepository { | ||
| #mapper; | ||
| #emitter = new node_events_1.EventEmitter({ | ||
| captureRejections: true | ||
| }); | ||
| constructor(mapper) { | ||
@@ -14,3 +18,3 @@ this.#mapper = mapper; | ||
| this.store.set(entity.id(), entity.readState()); | ||
| return Promise.resolve((0, src_1.ok)()); | ||
| return Promise.resolve((0, result_1.ok)()); | ||
| } | ||
@@ -20,5 +24,18 @@ async saveWithEvents(entity, domainEvents) { | ||
| const events = this.eventStore.get(entity.id()) || []; | ||
| events.push(...(Array.isArray(domainEvents) ? domainEvents : [domainEvents])); | ||
| if (!Array.isArray(domainEvents)) { | ||
| domainEvents = [domainEvents]; | ||
| } | ||
| const integrationEvents = domainEvents.map((event, index) => { | ||
| return { | ||
| event, | ||
| metadata: { | ||
| createdAt: new Date().toISOString(), | ||
| offset: events.length + index, | ||
| } | ||
| }; | ||
| }); | ||
| events.push(...integrationEvents); | ||
| this.eventStore.set(entity.id(), events); | ||
| return Promise.resolve((0, src_1.ok)()); | ||
| this.#emitter.emit("domainEventsSaved", entity.id()); | ||
| return Promise.resolve((0, result_1.ok)()); | ||
| } | ||
@@ -28,5 +45,5 @@ getById(id) { | ||
| if (state === undefined) { | ||
| return Promise.resolve((0, src_1.ok)(undefined)); | ||
| return Promise.resolve((0, result_1.ok)(undefined)); | ||
| } | ||
| return Promise.resolve((0, src_1.ok)(this.#mapper(id, state))); | ||
| return Promise.resolve((0, result_1.ok)(this.#mapper(id, state))); | ||
| } | ||
@@ -39,3 +56,3 @@ list(params) { | ||
| const paginatedEntities = entities.slice(params.offset, params.offset + params.limit); | ||
| return Promise.resolve((0, src_1.ok)({ | ||
| return Promise.resolve((0, result_1.ok)({ | ||
| limit: params.limit, | ||
@@ -50,6 +67,9 @@ offset: params.offset, | ||
| const paginatedEvents = events.slice(paginationOptions.offset, paginationOptions.offset + paginationOptions.limit); | ||
| return Promise.resolve((0, src_1.ok)(paginatedEvents)); | ||
| return Promise.resolve((0, result_1.ok)(paginatedEvents)); | ||
| } | ||
| on(handler) { | ||
| this.#emitter.on("domainEventsSaved", handler); | ||
| } | ||
| } | ||
| exports.InMemoryRepository = InMemoryRepository; | ||
| //# sourceMappingURL=index.js.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/inMemoryRepository/index.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/inMemoryRepository/index.ts"],"names":[],"mappings":"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"} |
| import { Result } from "./result/index"; | ||
| import { DomainEntity } from "./domainEntity"; | ||
| import { DomainEventInterface } from "./domainEvent"; | ||
| export interface EventWithMetadata { | ||
| event: DomainEventInterface; | ||
| metadata: { | ||
| offset: number; | ||
| createdAt: string; | ||
| }; | ||
| } | ||
| export interface Repository<Entity extends DomainEntity<ReturnType<Entity["readState"]>>> { | ||
@@ -19,4 +26,5 @@ save(entity: Entity): Promise<Result<void, Error>>; | ||
| offset: number; | ||
| }): Promise<Result<DomainEventInterface[], Error>>; | ||
| }): Promise<Result<EventWithMetadata[], Error>>; | ||
| on(handler: (entityId: string) => void): void; | ||
| } | ||
| //# sourceMappingURL=repository.d.ts.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../src/repository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAErD,MAAM,WAAW,UAAU,CACzB,MAAM,SAAS,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAE5D,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAEnD,cAAc,CACZ,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,oBAAoB,GAAG,oBAAoB,EAAE,GAC1D,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAEhC,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IAEhE,IAAI,CAAC,MAAM,EAAE;QACX,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,MAAM,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,KAAK,CAAC,CAAC,CAAC;IAE9E,SAAS,CACP,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAC1C,OAAO,CAAC,MAAM,CAAC,oBAAoB,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;CACnD"} | ||
| {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../src/repository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAErD,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,oBAAoB,CAAC;IAC5B,QAAQ,EAAE;QACR,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;KACnB,CAAA;CACF;AAED,MAAM,WAAW,UAAU,CACzB,MAAM,SAAS,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAE5D,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAEnD,cAAc,CACZ,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,oBAAoB,GAAG,oBAAoB,EAAE,GAC1D,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAEhC,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IAEhE,IAAI,CAAC,MAAM,EAAE;QACX,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,MAAM,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,KAAK,CAAC,CAAC,CAAC;IAE9E,SAAS,CACP,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAC1C,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;IAE/C,EAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;CAC/C"} |
+1
-1
| { | ||
| "name": "ontologic", | ||
| "version": "1.0.4", | ||
| "version": "1.1.0", | ||
| "description": "", | ||
@@ -5,0 +5,0 @@ "main": "dist/index.js", |
49212
6.01%79
11.27%637
6.7%