@cheetah.js/orm 0.1.21 → 0.1.22

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.
@@ -5,6 +5,7 @@ export type PropertyOptions = {
5
5
  length?: number;
6
6
  hidden?: boolean;
7
7
  unique?: boolean;
8
+ index?: boolean;
8
9
  dbType?: 'varchar' | 'text' | 'int' | 'bigint' | 'float' | 'double' | 'decimal' | 'date' | 'datetime' | 'time' | 'timestamp' | 'boolean' | 'json' | 'jsonb' | 'enum' | 'array' | 'uuid';
9
10
  autoIncrement?: boolean;
10
11
  isEnum?: boolean;
@@ -1,6 +1,7 @@
1
1
  import { PROPERTIES, PROPERTIES_METADATA } from '../constants';
2
2
  import { getDefaultLength } from '../utils';
3
3
  import { Metadata } from '@cheetah.js/core';
4
+ import { Index } from '@cheetah.js/orm/decorators/index.decorator';
4
5
  export function Property(options) {
5
6
  return (target, propertyKey) => {
6
7
  const properties = Metadata.get(PROPERTIES, target.constructor) || [];
@@ -14,6 +15,9 @@ export function Property(options) {
14
15
  indexes.push({ name: `[TABLE]_pkey`, properties: [propertyKey] });
15
16
  Metadata.set('indexes', indexes, target.constructor);
16
17
  }
18
+ if (options.index) {
19
+ Index({ properties: [propertyKey] })(target, propertyKey);
20
+ }
17
21
  properties.forEach((property) => {
18
22
  const types = Metadata.get(PROPERTIES_METADATA, target.constructor) || {};
19
23
  const type = Metadata.getType(target, property.propertyKey);
@@ -1 +1 @@
1
- {"version":3,"file":"property.decorator.js","sourceRoot":"","sources":["../../src/decorators/property.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAmB5C,MAAM,UAAU,QAAQ,CAAC,OAAyB;IAChD,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE;QAC7B,MAAM,UAAU,GAAW,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QAC9E,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1E,OAAO,GAAG,EAAC,MAAM,EAAE,GAAG,OAAO,EAAC,CAAC;QAC/B,UAAU,CAAC,IAAI,CAAC,EAAC,WAAW,EAAE,OAAO,EAAC,CAAC,CAAC;QACxC,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QAEzD,IAAI,OAAO,CAAC,SAAS,EAAE;YACrB,MAAM,OAAO,GAA2C,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;YAC1G,OAAO,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,WAAqB,CAAC,EAAC,CAAC,CAAC;YAC1E,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;SACtD;QAED,UAAU,CAAC,OAAO,CAAC,CAAC,QAAc,EAAE,EAAE;YACpC,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,mBAAmB,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;YAC1E,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;YAC5D,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAC,CAAC;YAChE,QAAQ,CAAC,GAAG,CAAC,mBAAmB,EAAE,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"property.decorator.js","sourceRoot":"","sources":["../../src/decorators/property.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,4CAA4C,CAAC;AAoBnE,MAAM,UAAU,QAAQ,CAAC,OAAyB;IAChD,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE;QAC7B,MAAM,UAAU,GAAW,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QAC9E,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1E,OAAO,GAAG,EAAC,MAAM,EAAE,GAAG,OAAO,EAAC,CAAC;QAC/B,UAAU,CAAC,IAAI,CAAC,EAAC,WAAW,EAAE,OAAO,EAAC,CAAC,CAAC;QACxC,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QAEzD,IAAI,OAAO,CAAC,SAAS,EAAE;YACrB,MAAM,OAAO,GAA2C,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;YAC1G,OAAO,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,WAAqB,CAAC,EAAC,CAAC,CAAC;YAC1E,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;SACtD;QAED,IAAI,OAAO,CAAC,KAAK,EAAE;YACjB,KAAK,CAAC,EAAC,UAAU,EAAE,CAAC,WAAqB,CAAC,EAAC,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;SACnE;QAED,UAAU,CAAC,OAAO,CAAC,CAAC,QAAc,EAAE,EAAE;YACpC,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,mBAAmB,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;YAC1E,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;YAC5D,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAC,CAAC;YAChE,QAAQ,CAAC,GAAG,CAAC,mBAAmB,EAAE,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cheetah.js/orm",
3
- "version": "0.1.21",
3
+ "version": "0.1.22",
4
4
  "description": "A simple ORM for Cheetah.js",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",