@rvoh/dream 0.43.2 → 0.44.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.
- package/dist/cjs/src/helpers/cli/generateSerializerContent.js +1 -1
- package/dist/cjs/src/serializer/SerializerRenderer.js +2 -2
- package/dist/cjs/src/serializer/builders/DreamSerializerBuilder.js +0 -8
- package/dist/cjs/src/serializer/builders/ObjectSerializerBuilder.js +0 -8
- package/dist/esm/src/helpers/cli/generateSerializerContent.js +1 -1
- package/dist/esm/src/serializer/SerializerRenderer.js +2 -2
- package/dist/esm/src/serializer/builders/DreamSerializerBuilder.js +0 -8
- package/dist/esm/src/serializer/builders/ObjectSerializerBuilder.js +0 -8
- package/dist/types/src/serializer/builders/DreamSerializerBuilder.d.ts +3 -4
- package/dist/types/src/serializer/builders/ObjectSerializerBuilder.d.ts +0 -1
- package/dist/types/src/types/dream.d.ts +4 -1
- package/dist/types/src/types/dream.ts +9 -4
- package/dist/types/src/types/serializer.d.ts +2 -0
- package/dist/types/src/types/serializer.ts +2 -0
- package/docs/assets/search.js +1 -1
- package/docs/classes/Benchmark.html +2 -2
- package/docs/classes/CalendarDate.html +2 -2
- package/docs/classes/CreateOrFindByFailedToCreateAndFind.html +3 -3
- package/docs/classes/Decorators.html +20 -20
- package/docs/classes/Dream.html +138 -138
- package/docs/classes/DreamApp.html +4 -4
- package/docs/classes/DreamBin.html +2 -2
- package/docs/classes/DreamCLI.html +4 -4
- package/docs/classes/DreamImporter.html +2 -2
- package/docs/classes/DreamLogos.html +2 -2
- package/docs/classes/DreamMigrationHelpers.html +7 -7
- package/docs/classes/DreamSerializerBuilder.html +2 -3
- package/docs/classes/DreamTransaction.html +2 -2
- package/docs/classes/Encrypt.html +2 -2
- package/docs/classes/Env.html +2 -2
- package/docs/classes/GlobalNameNotSet.html +3 -3
- package/docs/classes/NonLoadedAssociation.html +3 -3
- package/docs/classes/ObjectSerializerBuilder.html +2 -3
- package/docs/classes/Query.html +52 -52
- package/docs/classes/Range.html +2 -2
- package/docs/classes/RecordNotFound.html +3 -3
- package/docs/classes/ValidationError.html +3 -3
- package/docs/functions/DreamSerializer.html +1 -1
- package/docs/functions/ObjectSerializer.html +1 -1
- package/docs/functions/ReplicaSafe.html +1 -1
- package/docs/functions/STI.html +1 -1
- package/docs/functions/SoftDelete.html +1 -1
- package/docs/functions/camelize.html +1 -1
- package/docs/functions/capitalize.html +1 -1
- package/docs/functions/cloneDeepSafe.html +1 -1
- package/docs/functions/closeAllDbConnections.html +1 -1
- package/docs/functions/compact.html +1 -1
- package/docs/functions/dreamDbConnections.html +1 -1
- package/docs/functions/dreamPath.html +1 -1
- package/docs/functions/expandStiClasses.html +1 -1
- package/docs/functions/generateDream.html +1 -1
- package/docs/functions/globalClassNameFromFullyQualifiedModelName.html +1 -1
- package/docs/functions/groupBy.html +1 -1
- package/docs/functions/hyphenize.html +1 -1
- package/docs/functions/inferSerializerFromDreamOrViewModel.html +1 -1
- package/docs/functions/inferSerializersFromDreamClassOrViewModelClass.html +1 -1
- package/docs/functions/intersection.html +1 -1
- package/docs/functions/isDreamSerializer.html +1 -1
- package/docs/functions/isEmpty.html +1 -1
- package/docs/functions/loadRepl.html +1 -1
- package/docs/functions/lookupClassByGlobalName.html +1 -1
- package/docs/functions/normalizeUnicode.html +1 -1
- package/docs/functions/pascalize.html +1 -1
- package/docs/functions/pgErrorType.html +1 -1
- package/docs/functions/range-1.html +1 -1
- package/docs/functions/relativeDreamPath.html +1 -1
- package/docs/functions/round.html +1 -1
- package/docs/functions/serializerNameFromFullyQualifiedModelName.html +1 -1
- package/docs/functions/sharedPathPrefix.html +1 -1
- package/docs/functions/snakeify.html +1 -1
- package/docs/functions/sort.html +1 -1
- package/docs/functions/sortBy.html +1 -1
- package/docs/functions/sortObjectByKey.html +1 -1
- package/docs/functions/sortObjectByValue.html +1 -1
- package/docs/functions/standardizeFullyQualifiedModelName.html +1 -1
- package/docs/functions/uncapitalize.html +1 -1
- package/docs/functions/uniq.html +1 -1
- package/docs/functions/untypedDb.html +1 -1
- package/docs/functions/validateColumn.html +1 -1
- package/docs/functions/validateTable.html +1 -1
- package/docs/interfaces/BelongsToStatement.html +2 -2
- package/docs/interfaces/DecoratorContext.html +2 -2
- package/docs/interfaces/DreamAppInitOptions.html +2 -2
- package/docs/interfaces/DreamAppOpts.html +2 -2
- package/docs/interfaces/EncryptOptions.html +2 -2
- package/docs/interfaces/InternalAnyTypedSerializerRendersMany.html +2 -2
- package/docs/interfaces/InternalAnyTypedSerializerRendersOne.html +2 -2
- package/docs/interfaces/OpenapiDescription.html +2 -2
- package/docs/interfaces/OpenapiSchemaProperties.html +1 -1
- package/docs/interfaces/OpenapiSchemaPropertiesShorthand.html +1 -1
- package/docs/interfaces/OpenapiTypeFieldObject.html +1 -1
- package/docs/interfaces/SerializerRendererOpts.html +2 -2
- package/docs/types/Camelized.html +1 -1
- package/docs/types/CommonOpenapiSchemaObjectFields.html +1 -1
- package/docs/types/DateTime.html +1 -1
- package/docs/types/DbConnectionType.html +1 -1
- package/docs/types/DbTypes.html +1 -1
- package/docs/types/DreamAssociationMetadata.html +1 -1
- package/docs/types/DreamAttributes.html +1 -1
- package/docs/types/DreamClassColumn.html +1 -1
- package/docs/types/DreamColumn.html +1 -1
- package/docs/types/DreamColumnNames.html +1 -1
- package/docs/types/DreamLogLevel.html +1 -1
- package/docs/types/DreamLogger.html +1 -1
- package/docs/types/DreamModelSerializerType.html +1 -1
- package/docs/types/DreamOrViewModelClassSerializerKey.html +1 -1
- package/docs/types/DreamOrViewModelSerializerKey.html +1 -1
- package/docs/types/DreamParamSafeAttributes.html +1 -1
- package/docs/types/DreamParamSafeColumnNames.html +1 -1
- package/docs/types/DreamSerializable.html +1 -1
- package/docs/types/DreamSerializableArray.html +1 -1
- package/docs/types/DreamSerializerKey.html +1 -1
- package/docs/types/DreamSerializers.html +1 -1
- package/docs/types/DreamTableSchema.html +1 -1
- package/docs/types/DreamVirtualColumns.html +1 -1
- package/docs/types/EncryptAlgorithm.html +1 -1
- package/docs/types/HasManyStatement.html +1 -1
- package/docs/types/HasOneStatement.html +1 -1
- package/docs/types/Hyphenized.html +1 -1
- package/docs/types/IdType.html +1 -1
- package/docs/types/OpenapiAllTypes.html +1 -1
- package/docs/types/OpenapiFormats.html +1 -1
- package/docs/types/OpenapiNumberFormats.html +1 -1
- package/docs/types/OpenapiPrimitiveBaseTypes.html +1 -1
- package/docs/types/OpenapiPrimitiveTypes.html +1 -1
- package/docs/types/OpenapiSchemaArray.html +1 -1
- package/docs/types/OpenapiSchemaArrayShorthand.html +1 -1
- package/docs/types/OpenapiSchemaBase.html +1 -1
- package/docs/types/OpenapiSchemaBody.html +1 -1
- package/docs/types/OpenapiSchemaBodyShorthand.html +1 -1
- package/docs/types/OpenapiSchemaCommonFields.html +1 -1
- package/docs/types/OpenapiSchemaExpressionAllOf.html +1 -1
- package/docs/types/OpenapiSchemaExpressionAnyOf.html +1 -1
- package/docs/types/OpenapiSchemaExpressionOneOf.html +1 -1
- package/docs/types/OpenapiSchemaExpressionRef.html +1 -1
- package/docs/types/OpenapiSchemaExpressionRefSchemaShorthand.html +1 -1
- package/docs/types/OpenapiSchemaInteger.html +1 -1
- package/docs/types/OpenapiSchemaNull.html +1 -1
- package/docs/types/OpenapiSchemaNumber.html +1 -1
- package/docs/types/OpenapiSchemaObject.html +1 -1
- package/docs/types/OpenapiSchemaObjectAllOf.html +1 -1
- package/docs/types/OpenapiSchemaObjectAllOfShorthand.html +1 -1
- package/docs/types/OpenapiSchemaObjectAnyOf.html +1 -1
- package/docs/types/OpenapiSchemaObjectAnyOfShorthand.html +1 -1
- package/docs/types/OpenapiSchemaObjectBase.html +1 -1
- package/docs/types/OpenapiSchemaObjectBaseShorthand.html +1 -1
- package/docs/types/OpenapiSchemaObjectOneOf.html +1 -1
- package/docs/types/OpenapiSchemaObjectOneOfShorthand.html +1 -1
- package/docs/types/OpenapiSchemaObjectShorthand.html +1 -1
- package/docs/types/OpenapiSchemaPrimitiveGeneric.html +1 -1
- package/docs/types/OpenapiSchemaShorthandExpressionAllOf.html +1 -1
- package/docs/types/OpenapiSchemaShorthandExpressionAnyOf.html +1 -1
- package/docs/types/OpenapiSchemaShorthandExpressionOneOf.html +1 -1
- package/docs/types/OpenapiSchemaShorthandExpressionSerializableRef.html +1 -1
- package/docs/types/OpenapiSchemaShorthandExpressionSerializerRef.html +1 -1
- package/docs/types/OpenapiSchemaShorthandPrimitiveGeneric.html +1 -1
- package/docs/types/OpenapiSchemaString.html +1 -1
- package/docs/types/OpenapiShorthandAllTypes.html +1 -1
- package/docs/types/OpenapiShorthandPrimitiveBaseTypes.html +1 -1
- package/docs/types/OpenapiShorthandPrimitiveTypes.html +1 -1
- package/docs/types/OpenapiTypeField.html +1 -1
- package/docs/types/Pascalized.html +1 -1
- package/docs/types/PrimaryKeyType.html +1 -1
- package/docs/types/RoundingPrecision.html +1 -1
- package/docs/types/SerializerCasing.html +1 -1
- package/docs/types/SimpleObjectSerializerType.html +1 -1
- package/docs/types/Snakeified.html +1 -1
- package/docs/types/Timestamp.html +1 -1
- package/docs/types/UpdateableAssociationProperties.html +1 -1
- package/docs/types/UpdateableProperties.html +1 -1
- package/docs/types/ValidationType.html +1 -1
- package/docs/types/ViewModel.html +1 -1
- package/docs/types/ViewModelClass.html +1 -1
- package/docs/types/WhereStatementForDream.html +1 -1
- package/docs/types/WhereStatementForDreamClass.html +1 -1
- package/docs/variables/DateTime-1.html +1 -1
- package/docs/variables/DreamConst.html +1 -1
- package/docs/variables/TRIGRAM_OPERATORS.html +1 -1
- package/docs/variables/openapiPrimitiveTypes-1.html +1 -1
- package/docs/variables/openapiShorthandPrimitiveTypes-1.html +1 -1
- package/docs/variables/ops.html +1 -1
- package/docs/variables/primaryKeyTypes.html +1 -1
- package/package.json +1 -1
|
@@ -63,7 +63,7 @@ function attribute(name, type, attr) {
|
|
|
63
63
|
case 'jsonb':
|
|
64
64
|
case 'json[]':
|
|
65
65
|
case 'jsonb[]':
|
|
66
|
-
return `.
|
|
66
|
+
return `.attribute('${(0, camelize_js_1.default)(name)}', { openapi: { type: 'object', properties: { } } })`;
|
|
67
67
|
default:
|
|
68
68
|
return `.attribute('${(0, camelize_js_1.default)(name)}'${attributeOptionsSpecifier(type, attr)})`;
|
|
69
69
|
}
|
|
@@ -40,7 +40,7 @@ class SerializerRenderer {
|
|
|
40
40
|
////////////////
|
|
41
41
|
case 'attribute': {
|
|
42
42
|
const outputAttributeName = this.setCase(attribute.options?.as ?? attribute.name);
|
|
43
|
-
const value = data[attribute.name];
|
|
43
|
+
const value = data[attribute.name] ?? attribute.options?.default;
|
|
44
44
|
accumulator[outputAttributeName] = applyRenderingOptionsToAttribute(value, attribute.options, this.passthroughData, this.renderOpts);
|
|
45
45
|
return accumulator;
|
|
46
46
|
}
|
|
@@ -53,7 +53,7 @@ class SerializerRenderer {
|
|
|
53
53
|
case 'delegatedAttribute': {
|
|
54
54
|
const outputAttributeName = this.setCase(attribute.options?.as ?? attribute.name);
|
|
55
55
|
const target = data[attribute.targetName];
|
|
56
|
-
const value = target[attribute.name];
|
|
56
|
+
const value = target[attribute.name] ?? attribute.options?.default;
|
|
57
57
|
accumulator[outputAttributeName] = applyRenderingOptionsToAttribute(value, attribute.options, this.passthroughData, this.renderOpts);
|
|
58
58
|
return accumulator;
|
|
59
59
|
}
|
|
@@ -31,14 +31,6 @@ class DreamSerializerBuilder {
|
|
|
31
31
|
});
|
|
32
32
|
return this;
|
|
33
33
|
}
|
|
34
|
-
jsonAttribute(name, options) {
|
|
35
|
-
this.attributes.push({
|
|
36
|
-
type: 'attribute',
|
|
37
|
-
name,
|
|
38
|
-
options,
|
|
39
|
-
});
|
|
40
|
-
return this;
|
|
41
|
-
}
|
|
42
34
|
customAttribute(name, fn, options) {
|
|
43
35
|
this.attributes.push({
|
|
44
36
|
type: 'customAttribute',
|
|
@@ -29,14 +29,6 @@ class ObjectSerializerBuilder {
|
|
|
29
29
|
});
|
|
30
30
|
return this;
|
|
31
31
|
}
|
|
32
|
-
jsonAttribute(name, options) {
|
|
33
|
-
this.attributes.push({
|
|
34
|
-
type: 'attribute',
|
|
35
|
-
name,
|
|
36
|
-
options,
|
|
37
|
-
});
|
|
38
|
-
return this;
|
|
39
|
-
}
|
|
40
32
|
customAttribute(name, fn, options) {
|
|
41
33
|
this.attributes.push({
|
|
42
34
|
type: 'customAttribute',
|
|
@@ -60,7 +60,7 @@ function attribute(name, type, attr) {
|
|
|
60
60
|
case 'jsonb':
|
|
61
61
|
case 'json[]':
|
|
62
62
|
case 'jsonb[]':
|
|
63
|
-
return `.
|
|
63
|
+
return `.attribute('${camelize(name)}', { openapi: { type: 'object', properties: { } } })`;
|
|
64
64
|
default:
|
|
65
65
|
return `.attribute('${camelize(name)}'${attributeOptionsSpecifier(type, attr)})`;
|
|
66
66
|
}
|
|
@@ -38,7 +38,7 @@ export default class SerializerRenderer {
|
|
|
38
38
|
////////////////
|
|
39
39
|
case 'attribute': {
|
|
40
40
|
const outputAttributeName = this.setCase(attribute.options?.as ?? attribute.name);
|
|
41
|
-
const value = data[attribute.name];
|
|
41
|
+
const value = data[attribute.name] ?? attribute.options?.default;
|
|
42
42
|
accumulator[outputAttributeName] = applyRenderingOptionsToAttribute(value, attribute.options, this.passthroughData, this.renderOpts);
|
|
43
43
|
return accumulator;
|
|
44
44
|
}
|
|
@@ -51,7 +51,7 @@ export default class SerializerRenderer {
|
|
|
51
51
|
case 'delegatedAttribute': {
|
|
52
52
|
const outputAttributeName = this.setCase(attribute.options?.as ?? attribute.name);
|
|
53
53
|
const target = data[attribute.targetName];
|
|
54
|
-
const value = target[attribute.name];
|
|
54
|
+
const value = target[attribute.name] ?? attribute.options?.default;
|
|
55
55
|
accumulator[outputAttributeName] = applyRenderingOptionsToAttribute(value, attribute.options, this.passthroughData, this.renderOpts);
|
|
56
56
|
return accumulator;
|
|
57
57
|
}
|
|
@@ -29,14 +29,6 @@ export default class DreamSerializerBuilder {
|
|
|
29
29
|
});
|
|
30
30
|
return this;
|
|
31
31
|
}
|
|
32
|
-
jsonAttribute(name, options) {
|
|
33
|
-
this.attributes.push({
|
|
34
|
-
type: 'attribute',
|
|
35
|
-
name,
|
|
36
|
-
options,
|
|
37
|
-
});
|
|
38
|
-
return this;
|
|
39
|
-
}
|
|
40
32
|
customAttribute(name, fn, options) {
|
|
41
33
|
this.attributes.push({
|
|
42
34
|
type: 'customAttribute',
|
|
@@ -27,14 +27,6 @@ export default class ObjectSerializerBuilder {
|
|
|
27
27
|
});
|
|
28
28
|
return this;
|
|
29
29
|
}
|
|
30
|
-
jsonAttribute(name, options) {
|
|
31
|
-
this.attributes.push({
|
|
32
|
-
type: 'attribute',
|
|
33
|
-
name,
|
|
34
|
-
options,
|
|
35
|
-
});
|
|
36
|
-
return this;
|
|
37
|
-
}
|
|
38
30
|
customAttribute(name, fn, options) {
|
|
39
31
|
this.attributes.push({
|
|
40
32
|
type: 'customAttribute',
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Dream from '../../Dream.js';
|
|
2
|
-
import { DreamOrViewModelSerializerKey, ViewModel, ViewModelClass } from '../../types/dream.js';
|
|
2
|
+
import { DreamOrViewModelSerializerKey, NonJsonDreamColumnNames, ViewModel, ViewModelClass } from '../../types/dream.js';
|
|
3
3
|
import { AutomaticSerializerAttributeOptions, InternalAnyTypedSerializerAttribute, InternalAnyTypedSerializerCustomAttribute, InternalAnyTypedSerializerDelegatedAttribute, InternalAnyTypedSerializerRendersMany, InternalAnyTypedSerializerRendersOne, NonAutomaticSerializerAttributeOptions, NonAutomaticSerializerAttributeOptionsWithPossibleDecimalRenderOption, SerializerType } from '../../types/serializer.js';
|
|
4
4
|
import { SerializerRendererOpts } from '../SerializerRenderer.js';
|
|
5
5
|
export default class DreamSerializerBuilder<DataTypeForOpenapi extends typeof Dream, MaybeNullDataType extends Dream | null, PassthroughDataType, DataType extends Exclude<MaybeNullDataType, null> = Exclude<MaybeNullDataType, null>> {
|
|
@@ -9,10 +9,9 @@ export default class DreamSerializerBuilder<DataTypeForOpenapi extends typeof Dr
|
|
|
9
9
|
protected attributes: (InternalAnyTypedSerializerAttribute | InternalAnyTypedSerializerDelegatedAttribute | InternalAnyTypedSerializerCustomAttribute | InternalAnyTypedSerializerRendersOne<DataType> | InternalAnyTypedSerializerRendersMany<DataType>)[];
|
|
10
10
|
get isSerializer(): boolean;
|
|
11
11
|
constructor($typeForOpenapi: DataTypeForOpenapi, data: MaybeNullDataType, passthroughData?: PassthroughDataType);
|
|
12
|
-
attribute<
|
|
13
|
-
attribute<
|
|
12
|
+
attribute<MaybeAttributeName extends NonJsonDreamColumnNames<DataType> | (keyof DataType & string), AttributeName extends MaybeAttributeName extends NonJsonDreamColumnNames<DataType> ? never : keyof DataType & string, Options extends NonAutomaticSerializerAttributeOptionsWithPossibleDecimalRenderOption>(name: AttributeName, options: Options): DreamSerializerBuilder<DataTypeForOpenapi, MaybeNullDataType, PassthroughDataType, DataType>;
|
|
13
|
+
attribute<AttributeName extends NonJsonDreamColumnNames<DataType> & keyof DataType & string, Options extends AutomaticSerializerAttributeOptions<DataType, AttributeName>>(name: AttributeName, options?: Options): DreamSerializerBuilder<DataTypeForOpenapi, MaybeNullDataType, PassthroughDataType, DataType>;
|
|
14
14
|
delegatedAttribute<TargetName extends keyof DataType & string, TargetObject extends DataType[TargetName], AttributeName extends TargetObject extends object ? keyof TargetObject & string : never, Options extends NonAutomaticSerializerAttributeOptionsWithPossibleDecimalRenderOption>(targetName: TargetName, name: AttributeName, options: Options): this;
|
|
15
|
-
jsonAttribute<AttributeName extends keyof DataType & string, Options extends NonAutomaticSerializerAttributeOptions>(name: AttributeName, options: Options): this;
|
|
16
15
|
customAttribute<Options extends Omit<NonAutomaticSerializerAttributeOptions, 'as'> & {
|
|
17
16
|
flatten?: boolean;
|
|
18
17
|
}, CallbackFn extends () => unknown>(name: string, fn: CallbackFn, options: Options): this;
|
|
@@ -10,7 +10,6 @@ export default class ObjectSerializerBuilder<MaybeNullDataType extends object |
|
|
|
10
10
|
constructor(data: MaybeNullDataType, passthroughData?: PassthroughDataType);
|
|
11
11
|
attribute<AttributeName extends keyof DataType & string, Options extends NonAutomaticSerializerAttributeOptionsWithPossibleDecimalRenderOption>(name: AttributeName, options: Options): this;
|
|
12
12
|
delegatedAttribute<TargetName extends keyof DataType & string, TargetObject extends DataType[TargetName], AttributeName extends TargetObject extends object ? keyof TargetObject & string : never, Options extends NonAutomaticSerializerAttributeOptionsWithPossibleDecimalRenderOption>(targetName: TargetName, name: AttributeName, options: Options): this;
|
|
13
|
-
jsonAttribute<AttributeName extends keyof DataType & string, Options extends NonAutomaticSerializerAttributeOptions>(name: AttributeName, options: Options): this;
|
|
14
13
|
customAttribute<Options extends Omit<NonAutomaticSerializerAttributeOptions, 'as'> & {
|
|
15
14
|
flatten?: boolean;
|
|
16
15
|
}, CallbackFn extends () => unknown>(name: string, fn: CallbackFn, options: Options): this;
|
|
@@ -21,7 +21,10 @@ export interface SortableOptions<T extends Dream> {
|
|
|
21
21
|
scope?: keyof DreamBelongsToAssociationMetadata<T> | DreamColumnNames<T> | (keyof DreamBelongsToAssociationMetadata<T> | DreamColumnNames<T>)[];
|
|
22
22
|
}
|
|
23
23
|
export type PrimaryKeyForFind<I extends Dream, Schema extends I['schema'] = I['schema'], TableName extends keyof Schema = I['table'] & keyof Schema> = Schema[TableName]['columns'][I['primaryKey'] & keyof Schema[TableName]['columns']]['coercedType'] | string | null | undefined;
|
|
24
|
-
export type DreamColumnNames<DreamInstance extends Dream,
|
|
24
|
+
export type DreamColumnNames<DreamInstance extends Dream, Schema extends DreamInstance['schema'] = DreamInstance['schema'], TableName extends DreamInstance['table'] & keyof Schema = DreamInstance['table'] & keyof Schema, AttributeName extends keyof Schema[TableName]['columns'] & string = keyof Schema[TableName]['columns'] & string> = AttributeName;
|
|
25
|
+
export type NonJsonDreamColumnNames<DreamInstance extends Dream, T = DreamAttributeDbTypes<DreamInstance>> = {
|
|
26
|
+
[K in keyof T]: T[K] extends 'json' | 'jsonb' | 'json[]' | 'jsonb[]' ? never : K;
|
|
27
|
+
}[keyof T];
|
|
25
28
|
export type DreamParamSafeColumnNames<DreamInstance extends Dream, BelongsToForeignKeys = DreamBelongsToForeignKeys<DreamInstance>, Schema = DreamInstance['schema'], TableSchema = Schema[DreamInstance['table'] & keyof Schema]> = Exclude<DreamColumnNames<DreamInstance>, BelongsToForeignKeys | DreamVirtualColumns<DreamInstance> | TableSchema['primaryKey' & keyof TableSchema] | TableSchema['createdAtField' & keyof TableSchema] | TableSchema['updatedAtField' & keyof TableSchema] | TableSchema['deletedAtField' & keyof TableSchema]>;
|
|
26
29
|
export type DreamBelongsToForeignKeys<DreamInstance extends Dream, Schema = DreamInstance['schema'], TableSchema = Schema[DreamInstance['table'] & keyof Schema], AssociationSchema = TableSchema['associations' & keyof TableSchema], BelongsToAssociationSchema = AssociationSchema[keyof DreamBelongsToAssociationMetadata<DreamInstance> & keyof AssociationSchema], BelongsToForeignKeys = Exclude<BelongsToAssociationSchema['foreignKey' & keyof BelongsToAssociationSchema], null>> = BelongsToForeignKeys;
|
|
27
30
|
export type TableColumnNames<DB, TableName extends keyof DB, Table extends DB[keyof DB] = DB[TableName]> = keyof Table & string;
|
|
@@ -45,10 +45,15 @@ export type PrimaryKeyForFind<
|
|
|
45
45
|
|
|
46
46
|
export type DreamColumnNames<
|
|
47
47
|
DreamInstance extends Dream,
|
|
48
|
-
|
|
49
|
-
TableName extends keyof
|
|
50
|
-
|
|
51
|
-
|
|
48
|
+
Schema extends DreamInstance['schema'] = DreamInstance['schema'],
|
|
49
|
+
TableName extends DreamInstance['table'] & keyof Schema = DreamInstance['table'] & keyof Schema,
|
|
50
|
+
AttributeName extends keyof Schema[TableName]['columns'] & string = keyof Schema[TableName]['columns'] &
|
|
51
|
+
string,
|
|
52
|
+
> = AttributeName
|
|
53
|
+
|
|
54
|
+
export type NonJsonDreamColumnNames<DreamInstance extends Dream, T = DreamAttributeDbTypes<DreamInstance>> = {
|
|
55
|
+
[K in keyof T]: T[K] extends 'json' | 'jsonb' | 'json[]' | 'jsonb[]' ? never : K
|
|
56
|
+
}[keyof T]
|
|
52
57
|
|
|
53
58
|
export type DreamParamSafeColumnNames<
|
|
54
59
|
DreamInstance extends Dream,
|
|
@@ -47,11 +47,13 @@ export interface InternalAnyTypedSerializerRendersMany<DataType, AttributeName e
|
|
|
47
47
|
}
|
|
48
48
|
export type AutomaticSerializerAttributeOptions<DreamInstance extends Dream, AttributeName extends keyof DreamInstance & string> = {
|
|
49
49
|
as?: string;
|
|
50
|
+
default?: any;
|
|
50
51
|
openapi?: OpenapiDescription;
|
|
51
52
|
precision?: DreamAttributeDbTypes<DreamInstance>[AttributeName] extends DecimalOpenapiTypesIncludingDbTypes ? RoundingPrecision : never;
|
|
52
53
|
};
|
|
53
54
|
export type NonAutomaticSerializerAttributeOptions = {
|
|
54
55
|
as?: string;
|
|
56
|
+
default?: any;
|
|
55
57
|
openapi: OpenapiSchemaBodyShorthand | OpenapiShorthandPrimitiveTypes;
|
|
56
58
|
};
|
|
57
59
|
export type NonAutomaticSerializerAttributeOptionsWithPossibleDecimalRenderOption = NonAutomaticSerializerAttributeOptions & {
|
|
@@ -67,6 +67,7 @@ export type AutomaticSerializerAttributeOptions<
|
|
|
67
67
|
AttributeName extends keyof DreamInstance & string,
|
|
68
68
|
> = {
|
|
69
69
|
as?: string
|
|
70
|
+
default?: any
|
|
70
71
|
openapi?: OpenapiDescription
|
|
71
72
|
precision?: DreamAttributeDbTypes<DreamInstance>[AttributeName] extends DecimalOpenapiTypesIncludingDbTypes
|
|
72
73
|
? RoundingPrecision
|
|
@@ -75,6 +76,7 @@ export type AutomaticSerializerAttributeOptions<
|
|
|
75
76
|
|
|
76
77
|
export type NonAutomaticSerializerAttributeOptions = {
|
|
77
78
|
as?: string
|
|
79
|
+
default?: any
|
|
78
80
|
openapi: OpenapiSchemaBodyShorthand | OpenapiShorthandPrimitiveTypes
|
|
79
81
|
}
|
|
80
82
|
|
package/docs/assets/search.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
window.searchData = "data:application/octet-stream;base64,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";
|
|
1
|
+
window.searchData = "data:application/octet-stream;base64,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";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!DOCTYPE html><html class="default" lang="en"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>Benchmark | @rvoh/dream</title><meta name="description" content="Documentation for @rvoh/dream"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><div class="table-cell" id="tsd-search" data-base=".."><div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-search"></use></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div><div class="field"><div id="tsd-toolbar-links"></div></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">@rvoh/dream</a></div><div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb"><li><a href="../modules.html">@rvoh/dream</a></li><li><a href="Benchmark.html">Benchmark</a></li></ul><h1>Class Benchmark</h1></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/rvohealth/dream/blob/
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>Benchmark | @rvoh/dream</title><meta name="description" content="Documentation for @rvoh/dream"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><div class="table-cell" id="tsd-search" data-base=".."><div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-search"></use></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div><div class="field"><div id="tsd-toolbar-links"></div></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">@rvoh/dream</a></div><div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb"><li><a href="../modules.html">@rvoh/dream</a></li><li><a href="Benchmark.html">Benchmark</a></li></ul><h1>Class Benchmark</h1></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/rvohealth/dream/blob/561caf13dd8ce24bdd16e9525987c466a50c042d/src/helpers/benchmark.ts#L6">src/helpers/benchmark.ts:6</a></li></ul></aside><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><h5 class="tsd-index-heading uppercase" role="button" aria-expanded="false" tabIndex="0"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-chevronSmall"></use></svg> Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Constructors</h3><div class="tsd-index-list"><a href="Benchmark.html#constructor" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a>
|
|
2
2
|
</div></section><section class="tsd-index-section"><h3 class="tsd-index-heading">Methods</h3><div class="tsd-index-list"><a href="Benchmark.html#mark" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>mark</span></a>
|
|
3
3
|
<a href="Benchmark.html#start" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>start</span></a>
|
|
4
|
-
</div></section></div></details></section></section><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Constructors"><h2><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg> Constructors</h2></summary><section><section class="tsd-panel tsd-member"><a id="constructor" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>constructor</span><a href="#constructor" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="constructor.new_Benchmark" class="tsd-anchor"></a><span class="tsd-kind-constructor-signature">new <wbr/>Benchmark</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="Benchmark.html" class="tsd-signature-type tsd-kind-class">Benchmark</a><a href="#constructor.new_Benchmark" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><h4 class="tsd-returns-title">Returns <a href="Benchmark.html" class="tsd-signature-type tsd-kind-class">Benchmark</a></h4></li></ul></section></section></details><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Methods"><h2><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg> Methods</h2></summary><section><section class="tsd-panel tsd-member"><a id="mark" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>mark</span><a href="#mark" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="mark.mark-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">mark</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">message</span>, <span class="tsd-kind-parameter">level</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#mark.mark-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">message</span>: <span class="tsd-signature-type">string</span></span></li><li><span><span class="tsd-kind-parameter">level</span>: <span class="tsd-signature-type">BenchmarkLogLevel</span><span class="tsd-signature-symbol"> = 'log'</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/rvohealth/dream/blob/
|
|
4
|
+
</div></section></div></details></section></section><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Constructors"><h2><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg> Constructors</h2></summary><section><section class="tsd-panel tsd-member"><a id="constructor" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>constructor</span><a href="#constructor" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="constructor.new_Benchmark" class="tsd-anchor"></a><span class="tsd-kind-constructor-signature">new <wbr/>Benchmark</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="Benchmark.html" class="tsd-signature-type tsd-kind-class">Benchmark</a><a href="#constructor.new_Benchmark" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><h4 class="tsd-returns-title">Returns <a href="Benchmark.html" class="tsd-signature-type tsd-kind-class">Benchmark</a></h4></li></ul></section></section></details><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Methods"><h2><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg> Methods</h2></summary><section><section class="tsd-panel tsd-member"><a id="mark" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>mark</span><a href="#mark" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="mark.mark-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">mark</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">message</span>, <span class="tsd-kind-parameter">level</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#mark.mark-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">message</span>: <span class="tsd-signature-type">string</span></span></li><li><span><span class="tsd-kind-parameter">level</span>: <span class="tsd-signature-type">BenchmarkLogLevel</span><span class="tsd-signature-symbol"> = 'log'</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/rvohealth/dream/blob/561caf13dd8ce24bdd16e9525987c466a50c042d/src/helpers/benchmark.ts#L12">src/helpers/benchmark.ts:12</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member"><a id="start" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>start</span><a href="#start" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="start.start-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">start</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#start.start-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/rvohealth/dream/blob/561caf13dd8ce24bdd16e9525987c466a50c042d/src/helpers/benchmark.ts#L8">src/helpers/benchmark.ts:8</a></li></ul></aside></li></ul></section></section></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="tsd-otp-Constructors"><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Constructors</summary><div><a href="#constructor" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a></div></details><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="tsd-otp-Methods"><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Methods</summary><div><a href="#mark" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>mark</span></a><a href="#start" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>start</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1"></use></svg><span>@rvoh/dream</span></a><ul class="tsd-small-nested-navigation" id="tsd-nav-container" data-base=".."><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
|