@spinajs/orm 2.0.38 → 2.0.39

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/lib/orm.js CHANGED
@@ -33,13 +33,13 @@ var __metadata = (this && this.__metadata) || function (k, v) {
33
33
  };
34
34
  Object.defineProperty(exports, "__esModule", { value: true });
35
35
  exports.Orm = void 0;
36
+ const interfaces_1 = require("./interfaces");
36
37
  /* eslint-disable prettier/prettier */
37
38
  const configuration_1 = require("@spinajs/configuration");
38
39
  const di_1 = require("@spinajs/di");
39
40
  const log_1 = require("@spinajs/log");
40
- const reflection_1 = require("@spinajs/reflection");
41
41
  const _ = __importStar(require("lodash"));
42
- const interfaces_1 = require("./interfaces");
42
+ const interfaces_2 = require("./interfaces");
43
43
  const model_1 = require("./model");
44
44
  const decorators_1 = require("./decorators");
45
45
  const exceptions_1 = require("@spinajs/exceptions");
@@ -51,9 +51,11 @@ const luxon_1 = require("luxon");
51
51
  const CFG_PROPS = ['Database', 'User', 'Host', 'Port', 'Filename', 'Driver', 'Name'];
52
52
  const MIGRATION_TABLE_NAME = 'spinajs_migration';
53
53
  const MIGRATION_FILE_REGEXP = /(.*)_([0-9]{4}_[0-9]{2}_[0-9]{2}_[0-9]{2}_[0-9]{2}_[0-9]{2})/;
54
- class Orm extends di_1.AsyncModule {
54
+ class Orm extends di_1.AsyncService {
55
55
  constructor() {
56
56
  super(...arguments);
57
+ this.Models = [];
58
+ this.Migrations = [];
57
59
  this.Connections = new Map();
58
60
  }
59
61
  /**
@@ -78,7 +80,7 @@ class Orm extends di_1.AsyncModule {
78
80
  });
79
81
  this.Log.info(`Migration ${migration.constructor.name}:up() success !`);
80
82
  };
81
- if (((_b = (_a = driver.Options.Migration) === null || _a === void 0 ? void 0 : _a.Transaction) === null || _b === void 0 ? void 0 : _b.Mode) === interfaces_1.MigrationTransactionMode.PerMigration) {
83
+ if (((_b = (_a = driver.Options.Migration) === null || _a === void 0 ? void 0 : _a.Transaction) === null || _b === void 0 ? void 0 : _b.Mode) === interfaces_2.MigrationTransactionMode.PerMigration) {
82
84
  await driver.transaction(trFunction);
83
85
  }
84
86
  else {
@@ -108,7 +110,7 @@ class Orm extends di_1.AsyncModule {
108
110
  });
109
111
  this.Log.info(`Migration down ${migration.constructor.name}:DOWN success !`);
110
112
  };
111
- if (((_b = (_a = driver.Options.Migration) === null || _a === void 0 ? void 0 : _a.Transaction) === null || _b === void 0 ? void 0 : _b.Mode) === interfaces_1.MigrationTransactionMode.PerMigration) {
113
+ if (((_b = (_a = driver.Options.Migration) === null || _a === void 0 ? void 0 : _a.Transaction) === null || _b === void 0 ? void 0 : _b.Mode) === interfaces_2.MigrationTransactionMode.PerMigration) {
112
114
  await driver.transaction(trFunction);
113
115
  }
114
116
  else {
@@ -127,6 +129,7 @@ class Orm extends di_1.AsyncModule {
127
129
  if (descriptor) {
128
130
  const connection = this.Connections.get(descriptor.Connection);
129
131
  if (connection) {
132
+ m.type[decorators_1.MODEL_DESCTRIPTION_SYMBOL].Driver = connection;
130
133
  const columns = await connection.tableInfo(descriptor.TableName, connection.Options.Database);
131
134
  if (columns) {
132
135
  m.type[decorators_1.MODEL_DESCTRIPTION_SYMBOL].Columns = _.uniqBy(_.map(columns, (c) => {
@@ -137,23 +140,23 @@ class Orm extends di_1.AsyncModule {
137
140
  for (const [key, val] of descriptor.Converters) {
138
141
  const column = m.type[decorators_1.MODEL_DESCTRIPTION_SYMBOL].Columns.find((c) => c.Name === key);
139
142
  if (column) {
140
- column.Converter = connection.Container.hasRegistered(val) ? connection.Container.resolve(val) : null;
143
+ column.Converter = connection.Container.hasRegistered(val.Class) ? connection.Container.resolve(val.Class) : null;
141
144
  }
142
145
  }
143
146
  }
144
147
  }
145
148
  }
146
149
  }
147
- async resolveAsync() {
150
+ async resolve() {
148
151
  await this.createConnections();
149
152
  // add all registered migrations via DI
150
- const migrations = di_1.DI.get(Array.ofType('__migrations__'));
153
+ const migrations = di_1.DI.getRegisteredTypes('__migrations__');
151
154
  if (migrations) {
152
155
  migrations.forEach((m) => {
153
156
  this.registerMigration(m);
154
157
  });
155
158
  }
156
- const models = di_1.DI.get(Array.ofType('__models__'));
159
+ const models = di_1.DI.getRegisteredTypes('__models__');
157
160
  if (models) {
158
161
  models.forEach((m) => {
159
162
  this.registerModel(m);
@@ -161,8 +164,13 @@ class Orm extends di_1.AsyncModule {
161
164
  }
162
165
  await this.migrateUp(undefined, false);
163
166
  await this.reloadTableInfo();
164
- await this.wireRelations();
167
+ this.wireRelations();
165
168
  this.applyModelMixins();
169
+ this.registerDefaultConverters();
170
+ }
171
+ registerDefaultConverters() {
172
+ this.Container.register(interfaces_1.DatetimeValueConverter).asMapValue('__orm_db_value_converters__', Date.name);
173
+ this.Container.register(interfaces_1.DatetimeValueConverter).asMapValue('__orm_db_value_converters__', luxon_1.DateTime.name);
166
174
  }
167
175
  wireRelations() {
168
176
  this.Models.forEach((x) => {
@@ -317,14 +325,6 @@ class Orm extends di_1.AsyncModule {
317
325
  }
318
326
  }
319
327
  }
320
- __decorate([
321
- (0, reflection_1.ListFromFiles)('/**/!(*.d).{ts,js}', 'system.dirs.models'),
322
- __metadata("design:type", Array)
323
- ], Orm.prototype, "Models", void 0);
324
- __decorate([
325
- (0, reflection_1.ListFromFiles)('/**/!(*.d).{ts,js}', 'system.dirs.migrations'),
326
- __metadata("design:type", Array)
327
- ], Orm.prototype, "Migrations", void 0);
328
328
  __decorate([
329
329
  (0, di_1.Autoinject)(),
330
330
  __metadata("design:type", di_1.Container)
package/lib/orm.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"orm.js","sourceRoot":"","sources":["../src/orm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orm.js","sourceRoot":"","sources":["../src/orm.ts"],"names":[],"mappings":"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"}
@@ -72,6 +72,10 @@ export declare class ManyToManyRelation extends OrmRelation {
72
72
  }
73
73
  export interface IRelation {
74
74
  TargetModelDescriptor: IModelDescriptor;
75
+ /**
76
+ * Indicates if data was fetched from db
77
+ */
78
+ Populated: boolean;
75
79
  }
76
80
  export declare class SingleRelation<R extends IModelBase> implements IRelation {
77
81
  protected _owner: ModelBase;
@@ -80,6 +84,7 @@ export declare class SingleRelation<R extends IModelBase> implements IRelation {
80
84
  TargetModelDescriptor: IModelDescriptor;
81
85
  protected Orm: Orm;
82
86
  Value: R;
87
+ Populated: boolean;
83
88
  constructor(_owner: ModelBase, model: Constructor<R> | ForwardRefFunction, Relation: IRelationDescriptor, object?: R);
84
89
  set(obj: R): Promise<void>;
85
90
  attach(obj: R): void;
@@ -92,13 +97,14 @@ export declare class SingleRelation<R extends IModelBase> implements IRelation {
92
97
  *
93
98
  * It allows to add / remove objects to relation
94
99
  */
95
- export declare abstract class Relation<R extends ModelBase> extends Array<R> implements IRelation {
96
- protected owner: ModelBase;
100
+ export declare abstract class Relation<R extends ModelBase, O extends ModelBase> extends Array<R> implements IRelation {
101
+ protected owner: O;
97
102
  protected model: Constructor<R> | ForwardRefFunction;
98
103
  protected Relation: IRelationDescriptor;
99
104
  TargetModelDescriptor: IModelDescriptor;
100
105
  protected Orm: Orm;
101
- constructor(owner: ModelBase, model: Constructor<R> | ForwardRefFunction, Relation: IRelationDescriptor, objects?: R[]);
106
+ Populated: boolean;
107
+ constructor(owner: O, model: Constructor<R> | ForwardRefFunction, Relation: IRelationDescriptor, objects?: R[]);
102
108
  /**
103
109
  * Removes from relation & deletes from db
104
110
  *
@@ -111,7 +117,7 @@ export declare abstract class Relation<R extends ModelBase> extends Array<R> imp
111
117
  *
112
118
  * @param obj - data to add
113
119
  */
114
- abstract add(obj: R | R[], mode?: InsertBehaviour): Promise<void>;
120
+ abstract add(obj: R | R[] | Partial<R> | Partial<R>[], mode?: InsertBehaviour): Promise<void>;
115
121
  /**
116
122
  * Delete all objects from relation
117
123
  */
@@ -126,7 +132,7 @@ export declare abstract class Relation<R extends ModelBase> extends Array<R> imp
126
132
  */
127
133
  populate(callback?: (this: SelectQueryBuilder<this>) => void): Promise<void>;
128
134
  }
129
- export declare class ManyToManyRelationList<T extends ModelBase> extends Relation<T> {
135
+ export declare class ManyToManyRelationList<T extends ModelBase, O extends ModelBase> extends Relation<T, O> {
130
136
  intersection(_obj: T[], _callback?: (a: T, b: T) => boolean): Promise<void>;
131
137
  union(_obj: T[], _mode?: InsertBehaviour): Promise<void>;
132
138
  diff(_obj: T[], _callback?: (a: T, b: T) => boolean): Promise<void>;
@@ -134,11 +140,11 @@ export declare class ManyToManyRelationList<T extends ModelBase> extends Relatio
134
140
  remove(obj: T | T[]): Promise<void>;
135
141
  add(obj: T | T[], mode?: InsertBehaviour): Promise<void>;
136
142
  }
137
- export declare class OneToManyRelationList<T extends ModelBase> extends Relation<T> {
143
+ export declare class OneToManyRelationList<T extends ModelBase, O extends ModelBase> extends Relation<T, O> {
138
144
  diff(obj: T[], callback?: (a: T, b: T) => boolean): Promise<void>;
139
145
  set(obj: T[]): Promise<void>;
140
146
  intersection(obj: T[], callback?: (a: T, b: T) => boolean): Promise<void>;
141
147
  union(obj: T[], mode?: InsertBehaviour): Promise<void>;
142
148
  remove(obj: T | T[]): Promise<void>;
143
- add(obj: T | T[], mode?: InsertBehaviour): Promise<void>;
149
+ add(obj: T | T[] | Partial<T> | Partial<T>[], mode?: InsertBehaviour): Promise<void>;
144
150
  }
package/lib/relations.js CHANGED
@@ -446,6 +446,7 @@ class SingleRelation {
446
446
  this._owner = _owner;
447
447
  this.model = model;
448
448
  this.Relation = Relation;
449
+ this.Populated = false;
449
450
  this.TargetModelDescriptor = (0, model_1.extractModelDescriptor)(model);
450
451
  this.Orm = di_1.DI.get(orm_1.Orm);
451
452
  this.Value = object;
@@ -482,6 +483,7 @@ class SingleRelation {
482
483
  if (result) {
483
484
  this.Value = result;
484
485
  }
486
+ this.Populated = true;
485
487
  }
486
488
  }
487
489
  exports.SingleRelation = SingleRelation;
@@ -496,6 +498,7 @@ class Relation extends Array {
496
498
  this.owner = owner;
497
499
  this.model = model;
498
500
  this.Relation = Relation;
501
+ this.Populated = false;
499
502
  if (objects) {
500
503
  this.push(...objects);
501
504
  }
@@ -515,12 +518,6 @@ class Relation extends Array {
515
518
  * Populates this relation
516
519
  */
517
520
  async populate(callback) {
518
- /**
519
- * Do little cheat - we construct query that loads initial model with given relation.
520
- * Then we only assign relation property.
521
- *
522
- * TODO: create only relation query without loading its owner.
523
- */
524
521
  const query = this.Relation.TargetModel.where(this.Relation.ForeignKey, this.owner.PrimaryKeyValue);
525
522
  if (callback) {
526
523
  callback.apply(query);
@@ -530,6 +527,7 @@ class Relation extends Array {
530
527
  this.length = 0;
531
528
  this.push(...result);
532
529
  }
530
+ this.Populated = true;
533
531
  }
534
532
  }
535
533
  exports.Relation = Relation;
@@ -656,6 +654,15 @@ class OneToManyRelationList extends Relation {
656
654
  }
657
655
  async add(obj, mode) {
658
656
  const data = Array.isArray(obj) ? obj : [obj];
657
+ const tInsert = data.map((x) => {
658
+ if (x instanceof model_1.ModelBase) {
659
+ return x;
660
+ }
661
+ if (_.isFunction(this.model)) {
662
+ return new (this.model())(x);
663
+ }
664
+ return new this.model(x);
665
+ });
659
666
  data.forEach((d) => {
660
667
  d[this.Relation.ForeignKey] = this.owner.PrimaryKeyValue;
661
668
  });
@@ -667,7 +674,7 @@ class OneToManyRelationList extends Relation {
667
674
  await m.insert(mode);
668
675
  }
669
676
  }
670
- this.push(...data);
677
+ this.push(...tInsert);
671
678
  }
672
679
  }
673
680
  exports.OneToManyRelationList = OneToManyRelationList;
@@ -1 +1 @@
1
- {"version":3,"file":"relations.js","sourceRoot":"","sources":["../src/relations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"relations.js","sourceRoot":"","sources":["../src/relations.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
+ import { ISelectQueryBuilder } from './interfaces';
1
2
  import { SelectQueryBuilder, WhereBuilder, RawQuery } from './builders';
2
3
  import { ColumnMethods, SqlOperator, JoinMethod } from './enums';
3
- import { Container, Class } from '@spinajs/di';
4
+ import { Container, Class, Constructor } from '@spinajs/di';
4
5
  import { IColumnDescriptor } from './interfaces';
6
+ import { ModelBase } from './model';
5
7
  export interface IQueryStatementResult {
6
8
  Statements: string[];
7
9
  Bindings: any[];
@@ -53,7 +55,8 @@ export declare abstract class WhereStatement extends QueryStatement {
53
55
  protected _operator: SqlOperator;
54
56
  protected _value: any;
55
57
  protected _container: Container;
56
- constructor(column: string, operator: SqlOperator, value: any, tableAlias: string, container: Container);
58
+ protected _model: Constructor<ModelBase>;
59
+ constructor(column: string, operator: SqlOperator, value: any, tableAlias: string, container: Container, model: Constructor<ModelBase>);
57
60
  abstract build(): IQueryStatementResult;
58
61
  }
59
62
  export declare class Wrap {
@@ -79,7 +82,12 @@ export declare abstract class JoinStatement extends QueryStatement {
79
82
  protected _query: RawQuery;
80
83
  protected _alias: string;
81
84
  protected _tableAlias: string;
82
- constructor(table: string | RawQuery, method: JoinMethod, foreignKey: string, primaryKey: string, alias: string, tableAlias: string);
85
+ protected _model: Constructor<ModelBase>;
86
+ protected _sourceModel: Constructor<ModelBase>;
87
+ protected _whereCallback: (this: ISelectQueryBuilder<any>) => void;
88
+ protected _builder: SelectQueryBuilder<any>;
89
+ protected _whereBuilder: SelectQueryBuilder<any>;
90
+ constructor(builder: SelectQueryBuilder<any>, sourceModel: Constructor<ModelBase>, table: string | RawQuery | Constructor<ModelBase>, method: JoinMethod, foreignKey: string | ((this: SelectQueryBuilder) => void), primaryKey: string, alias: string, tableAlias: string);
83
91
  abstract build(): IQueryStatementResult;
84
92
  }
85
93
  export declare abstract class InStatement extends QueryStatement {
package/lib/statements.js CHANGED
@@ -38,6 +38,8 @@ const builders_1 = require("./builders");
38
38
  const enums_1 = require("./enums");
39
39
  const di_1 = require("@spinajs/di");
40
40
  const _ = __importStar(require("lodash"));
41
+ const model_1 = require("./model");
42
+ const exceptions_1 = require("./exceptions");
41
43
  class QueryStatement {
42
44
  constructor(tableAlias) {
43
45
  this._tableAlias = tableAlias;
@@ -112,17 +114,18 @@ WhereQueryStatement = __decorate([
112
114
  ], WhereQueryStatement);
113
115
  exports.WhereQueryStatement = WhereQueryStatement;
114
116
  let WhereStatement = class WhereStatement extends QueryStatement {
115
- constructor(column, operator, value, tableAlias, container) {
117
+ constructor(column, operator, value, tableAlias, container, model) {
116
118
  super(tableAlias);
117
119
  this._column = column;
118
120
  this._operator = operator;
119
121
  this._value = value;
120
122
  this._container = container;
123
+ this._model = model;
121
124
  }
122
125
  };
123
126
  WhereStatement = __decorate([
124
127
  (0, di_1.NewInstance)(),
125
- __metadata("design:paramtypes", [String, String, Object, String, di_1.Container])
128
+ __metadata("design:paramtypes", [String, String, Object, String, di_1.Container, Object])
126
129
  ], WhereStatement);
127
130
  exports.WhereStatement = WhereStatement;
128
131
  class Wrap {
@@ -156,24 +159,55 @@ DateTimeWrapper = __decorate([
156
159
  ], DateTimeWrapper);
157
160
  exports.DateTimeWrapper = DateTimeWrapper;
158
161
  let JoinStatement = class JoinStatement extends QueryStatement {
159
- constructor(table, method, foreignKey, primaryKey, alias, tableAlias) {
162
+ constructor(builder, sourceModel, table, method, foreignKey, primaryKey, alias, tableAlias) {
160
163
  super(tableAlias);
161
164
  this._method = method;
165
+ this._builder = builder;
166
+ if (_.isString(foreignKey)) {
167
+ this._foreignKey = foreignKey;
168
+ }
162
169
  if (_.isString(table)) {
163
170
  this._table = table;
164
- this._foreignKey = foreignKey;
165
171
  this._primaryKey = primaryKey;
166
- this._alias = alias;
167
- this._tableAlias = tableAlias;
172
+ this._alias = tableAlias;
173
+ this._tableAlias = alias;
168
174
  }
169
- else {
175
+ else if (table instanceof builders_1.RawQuery) {
170
176
  this._query = table;
171
177
  }
178
+ else {
179
+ this._model = table;
180
+ this._sourceModel = sourceModel;
181
+ const sDesc = (0, model_1.extractModelDescriptor)(this._sourceModel);
182
+ const tDesc = (0, model_1.extractModelDescriptor)(this._model);
183
+ const sAlias = `${sDesc.Driver.Options.AliasSeparator}${sDesc.Name}${sDesc.Driver.Options.AliasSeparator}`;
184
+ this._tableAlias = `${sDesc.Driver.Options.AliasSeparator}${tDesc.Name}${sDesc.Driver.Options.AliasSeparator}`;
185
+ if (!this._builder.TableAlias) {
186
+ this._builder.setAlias(sAlias);
187
+ }
188
+ if (_.isFunction(foreignKey)) {
189
+ this._whereCallback = foreignKey;
190
+ const driver = this._builder.Driver;
191
+ const cnt = driver.Container;
192
+ this._whereBuilder = cnt.resolve(builders_1.SelectQueryBuilder, [driver, this._model, this]);
193
+ this._whereBuilder.setAlias(this._tableAlias);
194
+ this._whereCallback.call(this._whereBuilder, [this]);
195
+ this._builder.mergeStatements(this._whereBuilder);
196
+ }
197
+ const relation = Array.from(sDesc.Relations, ([key, value]) => ({ key, value })).find((x) => x.value.TargetModel.name === this._model.name);
198
+ if (!relation) {
199
+ throw new exceptions_1.OrmException(`Cannot find relation between ${this._model.name} and ${this._sourceModel.name}, thus cannot perform join statement`);
200
+ }
201
+ this._table = tDesc.TableName;
202
+ this._primaryKey = relation.value.ForeignKey;
203
+ this._alias = sAlias;
204
+ this._foreignKey = sDesc.PrimaryKey;
205
+ }
172
206
  }
173
207
  };
174
208
  JoinStatement = __decorate([
175
209
  (0, di_1.NewInstance)(),
176
- __metadata("design:paramtypes", [Object, String, String, String, String, String])
210
+ __metadata("design:paramtypes", [builders_1.SelectQueryBuilder, Object, Object, String, Object, String, String, String])
177
211
  ], JoinStatement);
178
212
  exports.JoinStatement = JoinStatement;
179
213
  let InStatement = class InStatement extends QueryStatement {
@@ -1 +1 @@
1
- {"version":3,"file":"statements.js","sourceRoot":"","sources":["../src/statements.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"statements.js","sourceRoot":"","sources":["../src/statements.ts"],"names":[],"mappings":"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"}
package/lib/types.d.ts CHANGED
@@ -1,3 +1,11 @@
1
1
  import { IWhereBuilder } from './interfaces';
2
+ import { Relation, SingleRelation } from './relations';
2
3
  export declare type WhereFunction<T> = (this: IWhereBuilder<T>) => void;
3
4
  export declare type Unbox<T> = T extends Array<infer U> ? U : T;
5
+ export declare type UnboxRelation<T> = T extends Relation<infer U, never> ? U : T;
6
+ export declare type PickRelations<T, Value> = {
7
+ [P in keyof T as T[P] extends Value | undefined ? P : never]: number | UnboxRelation<Value>;
8
+ };
9
+ export declare type PartialModel<T> = {
10
+ [P in keyof T]?: T[P] extends SingleRelation<infer W> ? W : T[P] | undefined;
11
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@spinajs/orm",
3
- "version": "2.0.38",
3
+ "version": "2.0.39",
4
4
  "description": "framework orm module",
5
5
  "main": "lib/index.js",
6
6
  "private": false,
@@ -46,17 +46,17 @@
46
46
  "@types/uuid": "8.3.4"
47
47
  },
48
48
  "dependencies": {
49
- "@spinajs/configuration": "^2.0.38",
50
- "@spinajs/di": "^2.0.38",
51
- "@spinajs/exceptions": "^2.0.12",
52
- "@spinajs/internal-logger": "^2.0.38",
53
- "@spinajs/log": "^2.0.38",
54
- "@spinajs/reflection": "^2.0.38",
49
+ "@spinajs/configuration": "^2.0.39",
50
+ "@spinajs/di": "^2.0.39",
51
+ "@spinajs/exceptions": "^2.0.39",
52
+ "@spinajs/internal-logger": "^2.0.39",
53
+ "@spinajs/log": "^2.0.39",
54
+ "@spinajs/reflection": "^2.0.39",
55
55
  "glob": "^7.1.4",
56
56
  "helmet": "^3.23.0",
57
57
  "lodash": "^4.17.14",
58
58
  "luxon": "^2.2.0",
59
59
  "uuid": "^8.3.2"
60
60
  },
61
- "gitHead": "5ea5440ee9db49595f531592ebdbc6d69f457082"
61
+ "gitHead": "002dc553b0ffffd72193d0121ac425a4083bc9ee"
62
62
  }
package/lib/cli.d.ts DELETED
@@ -1 +0,0 @@
1
- #!/usr/bin/env nod
package/lib/cli.js DELETED
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env nod
2
- //# sourceMappingURL=cli.js.map