diff --git a/examples/6-scaffolding-ts-hasura/src/models/ChoicesAggregateFieldsModel.base.ts b/examples/6-scaffolding-ts-hasura/src/models/ChoicesAggregateFieldsModel.base.ts index 0e74209e..b2b9646b 100644 --- a/examples/6-scaffolding-ts-hasura/src/models/ChoicesAggregateFieldsModel.base.ts +++ b/examples/6-scaffolding-ts-hasura/src/models/ChoicesAggregateFieldsModel.base.ts @@ -57,16 +57,16 @@ export const ChoicesAggregateFieldsModelBase = ModelBase export class ChoicesAggregateFieldsModelSelector extends QueryBuilder { get count() { return this.__attr(`count`) } - avg(builder: string | ChoicesAvgFieldsModelSelector | ((selector: ChoicesAvgFieldsModelSelector) => ChoicesAvgFieldsModelSelector) | undefined) { return this.__child(`avg`, ChoicesAvgFieldsModelSelector, builder) } - max(builder: string | ChoicesMaxFieldsModelSelector | ((selector: ChoicesMaxFieldsModelSelector) => ChoicesMaxFieldsModelSelector) | undefined) { return this.__child(`max`, ChoicesMaxFieldsModelSelector, builder) } - min(builder: string | ChoicesMinFieldsModelSelector | ((selector: ChoicesMinFieldsModelSelector) => ChoicesMinFieldsModelSelector) | undefined) { return this.__child(`min`, ChoicesMinFieldsModelSelector, builder) } - stddev(builder: string | ChoicesStddevFieldsModelSelector | ((selector: ChoicesStddevFieldsModelSelector) => ChoicesStddevFieldsModelSelector) | undefined) { return this.__child(`stddev`, ChoicesStddevFieldsModelSelector, builder) } - stddev_pop(builder: string | ChoicesStddevPopFieldsModelSelector | ((selector: ChoicesStddevPopFieldsModelSelector) => ChoicesStddevPopFieldsModelSelector) | undefined) { return this.__child(`stddev_pop`, ChoicesStddevPopFieldsModelSelector, builder) } - stddev_samp(builder: string | ChoicesStddevSampFieldsModelSelector | ((selector: ChoicesStddevSampFieldsModelSelector) => ChoicesStddevSampFieldsModelSelector) | undefined) { return this.__child(`stddev_samp`, ChoicesStddevSampFieldsModelSelector, builder) } - sum(builder: string | ChoicesSumFieldsModelSelector | ((selector: ChoicesSumFieldsModelSelector) => ChoicesSumFieldsModelSelector) | undefined) { return this.__child(`sum`, ChoicesSumFieldsModelSelector, builder) } - var_pop(builder: string | ChoicesVarPopFieldsModelSelector | ((selector: ChoicesVarPopFieldsModelSelector) => ChoicesVarPopFieldsModelSelector) | undefined) { return this.__child(`var_pop`, ChoicesVarPopFieldsModelSelector, builder) } - var_samp(builder: string | ChoicesVarSampFieldsModelSelector | ((selector: ChoicesVarSampFieldsModelSelector) => ChoicesVarSampFieldsModelSelector) | undefined) { return this.__child(`var_samp`, ChoicesVarSampFieldsModelSelector, builder) } - variance(builder: string | ChoicesVarianceFieldsModelSelector | ((selector: ChoicesVarianceFieldsModelSelector) => ChoicesVarianceFieldsModelSelector) | undefined) { return this.__child(`variance`, ChoicesVarianceFieldsModelSelector, builder) } + avg(builder: string | ChoicesAvgFieldsModelSelector | ((selector: ChoicesAvgFieldsModelSelector) => ChoicesAvgFieldsModelSelector) | undefined = undefined) { return this.__child(`avg`, ChoicesAvgFieldsModelSelector, builder) } + max(builder: string | ChoicesMaxFieldsModelSelector | ((selector: ChoicesMaxFieldsModelSelector) => ChoicesMaxFieldsModelSelector) | undefined = undefined) { return this.__child(`max`, ChoicesMaxFieldsModelSelector, builder) } + min(builder: string | ChoicesMinFieldsModelSelector | ((selector: ChoicesMinFieldsModelSelector) => ChoicesMinFieldsModelSelector) | undefined = undefined) { return this.__child(`min`, ChoicesMinFieldsModelSelector, builder) } + stddev(builder: string | ChoicesStddevFieldsModelSelector | ((selector: ChoicesStddevFieldsModelSelector) => ChoicesStddevFieldsModelSelector) | undefined = undefined) { return this.__child(`stddev`, ChoicesStddevFieldsModelSelector, builder) } + stddev_pop(builder: string | ChoicesStddevPopFieldsModelSelector | ((selector: ChoicesStddevPopFieldsModelSelector) => ChoicesStddevPopFieldsModelSelector) | undefined = undefined) { return this.__child(`stddev_pop`, ChoicesStddevPopFieldsModelSelector, builder) } + stddev_samp(builder: string | ChoicesStddevSampFieldsModelSelector | ((selector: ChoicesStddevSampFieldsModelSelector) => ChoicesStddevSampFieldsModelSelector) | undefined = undefined) { return this.__child(`stddev_samp`, ChoicesStddevSampFieldsModelSelector, builder) } + sum(builder: string | ChoicesSumFieldsModelSelector | ((selector: ChoicesSumFieldsModelSelector) => ChoicesSumFieldsModelSelector) | undefined = undefined) { return this.__child(`sum`, ChoicesSumFieldsModelSelector, builder) } + var_pop(builder: string | ChoicesVarPopFieldsModelSelector | ((selector: ChoicesVarPopFieldsModelSelector) => ChoicesVarPopFieldsModelSelector) | undefined = undefined) { return this.__child(`var_pop`, ChoicesVarPopFieldsModelSelector, builder) } + var_samp(builder: string | ChoicesVarSampFieldsModelSelector | ((selector: ChoicesVarSampFieldsModelSelector) => ChoicesVarSampFieldsModelSelector) | undefined = undefined) { return this.__child(`var_samp`, ChoicesVarSampFieldsModelSelector, builder) } + variance(builder: string | ChoicesVarianceFieldsModelSelector | ((selector: ChoicesVarianceFieldsModelSelector) => ChoicesVarianceFieldsModelSelector) | undefined = undefined) { return this.__child(`variance`, ChoicesVarianceFieldsModelSelector, builder) } } export function selectFromChoicesAggregateFields() { return new ChoicesAggregateFieldsModelSelector() diff --git a/examples/6-scaffolding-ts-hasura/src/models/ChoicesAggregateModel.base.ts b/examples/6-scaffolding-ts-hasura/src/models/ChoicesAggregateModel.base.ts index 05a4a786..eb1831f0 100644 --- a/examples/6-scaffolding-ts-hasura/src/models/ChoicesAggregateModel.base.ts +++ b/examples/6-scaffolding-ts-hasura/src/models/ChoicesAggregateModel.base.ts @@ -36,8 +36,8 @@ export const ChoicesAggregateModelBase = withTypedRefs()(ModelBase }))) export class ChoicesAggregateModelSelector extends QueryBuilder { - aggregate(builder: string | ChoicesAggregateFieldsModelSelector | ((selector: ChoicesAggregateFieldsModelSelector) => ChoicesAggregateFieldsModelSelector) | undefined) { return this.__child(`aggregate`, ChoicesAggregateFieldsModelSelector, builder) } - nodes(builder: string | ChoicesModelSelector | ((selector: ChoicesModelSelector) => ChoicesModelSelector) | undefined) { return this.__child(`nodes`, ChoicesModelSelector, builder) } + aggregate(builder: string | ChoicesAggregateFieldsModelSelector | ((selector: ChoicesAggregateFieldsModelSelector) => ChoicesAggregateFieldsModelSelector) | undefined = undefined) { return this.__child(`aggregate`, ChoicesAggregateFieldsModelSelector, builder) } + nodes(builder: string | ChoicesModelSelector | ((selector: ChoicesModelSelector) => ChoicesModelSelector) | undefined = undefined) { return this.__child(`nodes`, ChoicesModelSelector, builder) } } export function selectFromChoicesAggregate() { return new ChoicesAggregateModelSelector() diff --git a/examples/6-scaffolding-ts-hasura/src/models/ChoicesModel.base.ts b/examples/6-scaffolding-ts-hasura/src/models/ChoicesModel.base.ts index 3bfa68bb..ae53a6bd 100644 --- a/examples/6-scaffolding-ts-hasura/src/models/ChoicesModel.base.ts +++ b/examples/6-scaffolding-ts-hasura/src/models/ChoicesModel.base.ts @@ -38,7 +38,7 @@ export class ChoicesModelSelector extends QueryBuilder { get id() { return this.__attr(`id`) } get poll_id() { return this.__attr(`poll_id`) } get text() { return this.__attr(`text`) } - poll(builder: string | PollsModelSelector | ((selector: PollsModelSelector) => PollsModelSelector) | undefined) { return this.__child(`poll`, PollsModelSelector, builder) } + poll(builder: string | PollsModelSelector | ((selector: PollsModelSelector) => PollsModelSelector) | undefined = undefined) { return this.__child(`poll`, PollsModelSelector, builder) } } export function selectFromChoices() { return new ChoicesModelSelector() diff --git a/examples/6-scaffolding-ts-hasura/src/models/ChoicesMutationResponseModel.base.ts b/examples/6-scaffolding-ts-hasura/src/models/ChoicesMutationResponseModel.base.ts index 67c157a8..20818a94 100644 --- a/examples/6-scaffolding-ts-hasura/src/models/ChoicesMutationResponseModel.base.ts +++ b/examples/6-scaffolding-ts-hasura/src/models/ChoicesMutationResponseModel.base.ts @@ -35,7 +35,7 @@ export const ChoicesMutationResponseModelBase = withTypedRefs()(ModelBase export class ChoicesMutationResponseModelSelector extends QueryBuilder { get affected_rows() { return this.__attr(`affected_rows`) } - returning(builder: string | ChoicesModelSelector | ((selector: ChoicesModelSelector) => ChoicesModelSelector) | undefined) { return this.__child(`returning`, ChoicesModelSelector, builder) } + returning(builder: string | ChoicesModelSelector | ((selector: ChoicesModelSelector) => ChoicesModelSelector) | undefined = undefined) { return this.__child(`returning`, ChoicesModelSelector, builder) } } export function selectFromChoicesMutationResponse() { return new ChoicesMutationResponseModelSelector() diff --git a/examples/6-scaffolding-ts-hasura/src/models/MutationRootModel.base.ts b/examples/6-scaffolding-ts-hasura/src/models/MutationRootModel.base.ts index 98b1cea9..1c435498 100644 --- a/examples/6-scaffolding-ts-hasura/src/models/MutationRootModel.base.ts +++ b/examples/6-scaffolding-ts-hasura/src/models/MutationRootModel.base.ts @@ -35,12 +35,12 @@ export const MutationRootModelBase = ModelBase })) export class MutationRootModelSelector extends QueryBuilder { - delete_choices(builder: string | ChoicesMutationResponseModelSelector | ((selector: ChoicesMutationResponseModelSelector) => ChoicesMutationResponseModelSelector) | undefined, args: { where: ChoicesBoolExp }) { return this.__child(`delete_choices`+ (args ? '('+['where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesMutationResponseModelSelector, builder) } - delete_polls(builder: string | PollsMutationResponseModelSelector | ((selector: PollsMutationResponseModelSelector) => PollsMutationResponseModelSelector) | undefined, args: { where: PollsBoolExp }) { return this.__child(`delete_polls`+ (args ? '('+['where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), PollsMutationResponseModelSelector, builder) } - insert_choices(builder: string | ChoicesMutationResponseModelSelector | ((selector: ChoicesMutationResponseModelSelector) => ChoicesMutationResponseModelSelector) | undefined, args: { objects: ChoicesInsertInput[], onConflict?: (ChoicesOnConflict | null) }) { return this.__child(`insert_choices`+ (args ? '('+['objects', 'onConflict'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesMutationResponseModelSelector, builder) } - insert_polls(builder: string | PollsMutationResponseModelSelector | ((selector: PollsMutationResponseModelSelector) => PollsMutationResponseModelSelector) | undefined, args: { objects: PollsInsertInput[], onConflict?: (PollsOnConflict | null) }) { return this.__child(`insert_polls`+ (args ? '('+['objects', 'onConflict'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), PollsMutationResponseModelSelector, builder) } - update_choices(builder: string | ChoicesMutationResponseModelSelector | ((selector: ChoicesMutationResponseModelSelector) => ChoicesMutationResponseModelSelector) | undefined, args: { inc?: (ChoicesIncInput | null), set?: (ChoicesSetInput | null), where: ChoicesBoolExp }) { return this.__child(`update_choices`+ (args ? '('+['inc', 'set', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesMutationResponseModelSelector, builder) } - update_polls(builder: string | PollsMutationResponseModelSelector | ((selector: PollsMutationResponseModelSelector) => PollsMutationResponseModelSelector) | undefined, args: { inc?: (PollsIncInput | null), set?: (PollsSetInput | null), where: PollsBoolExp }) { return this.__child(`update_polls`+ (args ? '('+['inc', 'set', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), PollsMutationResponseModelSelector, builder) } + delete_choices(builder: string | ChoicesMutationResponseModelSelector | ((selector: ChoicesMutationResponseModelSelector) => ChoicesMutationResponseModelSelector) | undefined = undefined, args: { where: ChoicesBoolExp }) { return this.__child(`delete_choices`+ (args ? '('+['where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesMutationResponseModelSelector, builder) } + delete_polls(builder: string | PollsMutationResponseModelSelector | ((selector: PollsMutationResponseModelSelector) => PollsMutationResponseModelSelector) | undefined = undefined, args: { where: PollsBoolExp }) { return this.__child(`delete_polls`+ (args ? '('+['where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), PollsMutationResponseModelSelector, builder) } + insert_choices(builder: string | ChoicesMutationResponseModelSelector | ((selector: ChoicesMutationResponseModelSelector) => ChoicesMutationResponseModelSelector) | undefined = undefined, args: { objects: ChoicesInsertInput[], onConflict?: (ChoicesOnConflict | null) }) { return this.__child(`insert_choices`+ (args ? '('+['objects', 'onConflict'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesMutationResponseModelSelector, builder) } + insert_polls(builder: string | PollsMutationResponseModelSelector | ((selector: PollsMutationResponseModelSelector) => PollsMutationResponseModelSelector) | undefined = undefined, args: { objects: PollsInsertInput[], onConflict?: (PollsOnConflict | null) }) { return this.__child(`insert_polls`+ (args ? '('+['objects', 'onConflict'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), PollsMutationResponseModelSelector, builder) } + update_choices(builder: string | ChoicesMutationResponseModelSelector | ((selector: ChoicesMutationResponseModelSelector) => ChoicesMutationResponseModelSelector) | undefined = undefined, args: { inc?: (ChoicesIncInput | null), set?: (ChoicesSetInput | null), where: ChoicesBoolExp }) { return this.__child(`update_choices`+ (args ? '('+['inc', 'set', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesMutationResponseModelSelector, builder) } + update_polls(builder: string | PollsMutationResponseModelSelector | ((selector: PollsMutationResponseModelSelector) => PollsMutationResponseModelSelector) | undefined = undefined, args: { inc?: (PollsIncInput | null), set?: (PollsSetInput | null), where: PollsBoolExp }) { return this.__child(`update_polls`+ (args ? '('+['inc', 'set', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), PollsMutationResponseModelSelector, builder) } } export function selectFromMutationRoot() { return new MutationRootModelSelector() diff --git a/examples/6-scaffolding-ts-hasura/src/models/PollsAggregateFieldsModel.base.ts b/examples/6-scaffolding-ts-hasura/src/models/PollsAggregateFieldsModel.base.ts index 31dcd0d7..1acb6643 100644 --- a/examples/6-scaffolding-ts-hasura/src/models/PollsAggregateFieldsModel.base.ts +++ b/examples/6-scaffolding-ts-hasura/src/models/PollsAggregateFieldsModel.base.ts @@ -57,16 +57,16 @@ export const PollsAggregateFieldsModelBase = ModelBase export class PollsAggregateFieldsModelSelector extends QueryBuilder { get count() { return this.__attr(`count`) } - avg(builder: string | PollsAvgFieldsModelSelector | ((selector: PollsAvgFieldsModelSelector) => PollsAvgFieldsModelSelector) | undefined) { return this.__child(`avg`, PollsAvgFieldsModelSelector, builder) } - max(builder: string | PollsMaxFieldsModelSelector | ((selector: PollsMaxFieldsModelSelector) => PollsMaxFieldsModelSelector) | undefined) { return this.__child(`max`, PollsMaxFieldsModelSelector, builder) } - min(builder: string | PollsMinFieldsModelSelector | ((selector: PollsMinFieldsModelSelector) => PollsMinFieldsModelSelector) | undefined) { return this.__child(`min`, PollsMinFieldsModelSelector, builder) } - stddev(builder: string | PollsStddevFieldsModelSelector | ((selector: PollsStddevFieldsModelSelector) => PollsStddevFieldsModelSelector) | undefined) { return this.__child(`stddev`, PollsStddevFieldsModelSelector, builder) } - stddev_pop(builder: string | PollsStddevPopFieldsModelSelector | ((selector: PollsStddevPopFieldsModelSelector) => PollsStddevPopFieldsModelSelector) | undefined) { return this.__child(`stddev_pop`, PollsStddevPopFieldsModelSelector, builder) } - stddev_samp(builder: string | PollsStddevSampFieldsModelSelector | ((selector: PollsStddevSampFieldsModelSelector) => PollsStddevSampFieldsModelSelector) | undefined) { return this.__child(`stddev_samp`, PollsStddevSampFieldsModelSelector, builder) } - sum(builder: string | PollsSumFieldsModelSelector | ((selector: PollsSumFieldsModelSelector) => PollsSumFieldsModelSelector) | undefined) { return this.__child(`sum`, PollsSumFieldsModelSelector, builder) } - var_pop(builder: string | PollsVarPopFieldsModelSelector | ((selector: PollsVarPopFieldsModelSelector) => PollsVarPopFieldsModelSelector) | undefined) { return this.__child(`var_pop`, PollsVarPopFieldsModelSelector, builder) } - var_samp(builder: string | PollsVarSampFieldsModelSelector | ((selector: PollsVarSampFieldsModelSelector) => PollsVarSampFieldsModelSelector) | undefined) { return this.__child(`var_samp`, PollsVarSampFieldsModelSelector, builder) } - variance(builder: string | PollsVarianceFieldsModelSelector | ((selector: PollsVarianceFieldsModelSelector) => PollsVarianceFieldsModelSelector) | undefined) { return this.__child(`variance`, PollsVarianceFieldsModelSelector, builder) } + avg(builder: string | PollsAvgFieldsModelSelector | ((selector: PollsAvgFieldsModelSelector) => PollsAvgFieldsModelSelector) | undefined = undefined) { return this.__child(`avg`, PollsAvgFieldsModelSelector, builder) } + max(builder: string | PollsMaxFieldsModelSelector | ((selector: PollsMaxFieldsModelSelector) => PollsMaxFieldsModelSelector) | undefined = undefined) { return this.__child(`max`, PollsMaxFieldsModelSelector, builder) } + min(builder: string | PollsMinFieldsModelSelector | ((selector: PollsMinFieldsModelSelector) => PollsMinFieldsModelSelector) | undefined = undefined) { return this.__child(`min`, PollsMinFieldsModelSelector, builder) } + stddev(builder: string | PollsStddevFieldsModelSelector | ((selector: PollsStddevFieldsModelSelector) => PollsStddevFieldsModelSelector) | undefined = undefined) { return this.__child(`stddev`, PollsStddevFieldsModelSelector, builder) } + stddev_pop(builder: string | PollsStddevPopFieldsModelSelector | ((selector: PollsStddevPopFieldsModelSelector) => PollsStddevPopFieldsModelSelector) | undefined = undefined) { return this.__child(`stddev_pop`, PollsStddevPopFieldsModelSelector, builder) } + stddev_samp(builder: string | PollsStddevSampFieldsModelSelector | ((selector: PollsStddevSampFieldsModelSelector) => PollsStddevSampFieldsModelSelector) | undefined = undefined) { return this.__child(`stddev_samp`, PollsStddevSampFieldsModelSelector, builder) } + sum(builder: string | PollsSumFieldsModelSelector | ((selector: PollsSumFieldsModelSelector) => PollsSumFieldsModelSelector) | undefined = undefined) { return this.__child(`sum`, PollsSumFieldsModelSelector, builder) } + var_pop(builder: string | PollsVarPopFieldsModelSelector | ((selector: PollsVarPopFieldsModelSelector) => PollsVarPopFieldsModelSelector) | undefined = undefined) { return this.__child(`var_pop`, PollsVarPopFieldsModelSelector, builder) } + var_samp(builder: string | PollsVarSampFieldsModelSelector | ((selector: PollsVarSampFieldsModelSelector) => PollsVarSampFieldsModelSelector) | undefined = undefined) { return this.__child(`var_samp`, PollsVarSampFieldsModelSelector, builder) } + variance(builder: string | PollsVarianceFieldsModelSelector | ((selector: PollsVarianceFieldsModelSelector) => PollsVarianceFieldsModelSelector) | undefined = undefined) { return this.__child(`variance`, PollsVarianceFieldsModelSelector, builder) } } export function selectFromPollsAggregateFields() { return new PollsAggregateFieldsModelSelector() diff --git a/examples/6-scaffolding-ts-hasura/src/models/PollsAggregateModel.base.ts b/examples/6-scaffolding-ts-hasura/src/models/PollsAggregateModel.base.ts index c1a4d1b7..68b1ba5e 100644 --- a/examples/6-scaffolding-ts-hasura/src/models/PollsAggregateModel.base.ts +++ b/examples/6-scaffolding-ts-hasura/src/models/PollsAggregateModel.base.ts @@ -36,8 +36,8 @@ export const PollsAggregateModelBase = withTypedRefs()(ModelBase }))) export class PollsAggregateModelSelector extends QueryBuilder { - aggregate(builder: string | PollsAggregateFieldsModelSelector | ((selector: PollsAggregateFieldsModelSelector) => PollsAggregateFieldsModelSelector) | undefined) { return this.__child(`aggregate`, PollsAggregateFieldsModelSelector, builder) } - nodes(builder: string | PollsModelSelector | ((selector: PollsModelSelector) => PollsModelSelector) | undefined) { return this.__child(`nodes`, PollsModelSelector, builder) } + aggregate(builder: string | PollsAggregateFieldsModelSelector | ((selector: PollsAggregateFieldsModelSelector) => PollsAggregateFieldsModelSelector) | undefined = undefined) { return this.__child(`aggregate`, PollsAggregateFieldsModelSelector, builder) } + nodes(builder: string | PollsModelSelector | ((selector: PollsModelSelector) => PollsModelSelector) | undefined = undefined) { return this.__child(`nodes`, PollsModelSelector, builder) } } export function selectFromPollsAggregate() { return new PollsAggregateModelSelector() diff --git a/examples/6-scaffolding-ts-hasura/src/models/PollsModel.base.ts b/examples/6-scaffolding-ts-hasura/src/models/PollsModel.base.ts index 371e2fc9..88f2d387 100644 --- a/examples/6-scaffolding-ts-hasura/src/models/PollsModel.base.ts +++ b/examples/6-scaffolding-ts-hasura/src/models/PollsModel.base.ts @@ -56,8 +56,8 @@ export class PollsModelSelector extends QueryBuilder { get question() { return this.__attr(`question`) } get updated_at() { return this.__attr(`updated_at`) } get updated_by() { return this.__attr(`updated_by`) } - choices(builder: string | ChoicesModelSelector | ((selector: ChoicesModelSelector) => ChoicesModelSelector) | undefined, args?: { distinctOn?: ChoicesSelectColumn[], limit?: (number | null), offset?: (number | null), orderBy?: ChoicesOrderBy[], where?: (ChoicesBoolExp | null) }) { return this.__child(`choices`+ (args ? '('+['distinctOn', 'limit', 'offset', 'orderBy', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesModelSelector, builder) } - choices_aggregate(builder: string | ChoicesAggregateModelSelector | ((selector: ChoicesAggregateModelSelector) => ChoicesAggregateModelSelector) | undefined, args?: { distinctOn?: ChoicesSelectColumn[], limit?: (number | null), offset?: (number | null), orderBy?: ChoicesOrderBy[], where?: (ChoicesBoolExp | null) }) { return this.__child(`choices_aggregate`+ (args ? '('+['distinctOn', 'limit', 'offset', 'orderBy', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesAggregateModelSelector, builder) } + choices(builder: string | ChoicesModelSelector | ((selector: ChoicesModelSelector) => ChoicesModelSelector) | undefined = undefined, args?: { distinctOn?: ChoicesSelectColumn[], limit?: (number | null), offset?: (number | null), orderBy?: ChoicesOrderBy[], where?: (ChoicesBoolExp | null) }) { return this.__child(`choices`+ (args ? '('+['distinctOn', 'limit', 'offset', 'orderBy', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesModelSelector, builder) } + choices_aggregate(builder: string | ChoicesAggregateModelSelector | ((selector: ChoicesAggregateModelSelector) => ChoicesAggregateModelSelector) | undefined = undefined, args?: { distinctOn?: ChoicesSelectColumn[], limit?: (number | null), offset?: (number | null), orderBy?: ChoicesOrderBy[], where?: (ChoicesBoolExp | null) }) { return this.__child(`choices_aggregate`+ (args ? '('+['distinctOn', 'limit', 'offset', 'orderBy', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesAggregateModelSelector, builder) } } export function selectFromPolls() { return new PollsModelSelector() diff --git a/examples/6-scaffolding-ts-hasura/src/models/PollsMutationResponseModel.base.ts b/examples/6-scaffolding-ts-hasura/src/models/PollsMutationResponseModel.base.ts index 13234854..e94e6b4c 100644 --- a/examples/6-scaffolding-ts-hasura/src/models/PollsMutationResponseModel.base.ts +++ b/examples/6-scaffolding-ts-hasura/src/models/PollsMutationResponseModel.base.ts @@ -35,7 +35,7 @@ export const PollsMutationResponseModelBase = withTypedRefs()(ModelBase export class PollsMutationResponseModelSelector extends QueryBuilder { get affected_rows() { return this.__attr(`affected_rows`) } - returning(builder: string | PollsModelSelector | ((selector: PollsModelSelector) => PollsModelSelector) | undefined) { return this.__child(`returning`, PollsModelSelector, builder) } + returning(builder: string | PollsModelSelector | ((selector: PollsModelSelector) => PollsModelSelector) | undefined = undefined) { return this.__child(`returning`, PollsModelSelector, builder) } } export function selectFromPollsMutationResponse() { return new PollsMutationResponseModelSelector() diff --git a/examples/6-scaffolding-ts-hasura/src/models/QueryRootModel.base.ts b/examples/6-scaffolding-ts-hasura/src/models/QueryRootModel.base.ts index 6e6fa7f4..c61a1348 100644 --- a/examples/6-scaffolding-ts-hasura/src/models/QueryRootModel.base.ts +++ b/examples/6-scaffolding-ts-hasura/src/models/QueryRootModel.base.ts @@ -50,12 +50,12 @@ export const QueryRootModelBase = withTypedRefs()(ModelBase }))) export class QueryRootModelSelector extends QueryBuilder { - choices(builder: string | ChoicesModelSelector | ((selector: ChoicesModelSelector) => ChoicesModelSelector) | undefined, args?: { distinctOn?: ChoicesSelectColumn[], limit?: (number | null), offset?: (number | null), orderBy?: ChoicesOrderBy[], where?: (ChoicesBoolExp | null) }) { return this.__child(`choices`+ (args ? '('+['distinctOn', 'limit', 'offset', 'orderBy', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesModelSelector, builder) } - choices_aggregate(builder: string | ChoicesAggregateModelSelector | ((selector: ChoicesAggregateModelSelector) => ChoicesAggregateModelSelector) | undefined, args?: { distinctOn?: ChoicesSelectColumn[], limit?: (number | null), offset?: (number | null), orderBy?: ChoicesOrderBy[], where?: (ChoicesBoolExp | null) }) { return this.__child(`choices_aggregate`+ (args ? '('+['distinctOn', 'limit', 'offset', 'orderBy', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesAggregateModelSelector, builder) } - choices_by_pk(builder: string | ChoicesModelSelector | ((selector: ChoicesModelSelector) => ChoicesModelSelector) | undefined, args: { id: any }) { return this.__child(`choices_by_pk`+ (args ? '('+['id'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesModelSelector, builder) } - polls(builder: string | PollsModelSelector | ((selector: PollsModelSelector) => PollsModelSelector) | undefined, args?: { distinctOn?: PollsSelectColumn[], limit?: (number | null), offset?: (number | null), orderBy?: PollsOrderBy[], where?: (PollsBoolExp | null) }) { return this.__child(`polls`+ (args ? '('+['distinctOn', 'limit', 'offset', 'orderBy', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), PollsModelSelector, builder) } - polls_aggregate(builder: string | PollsAggregateModelSelector | ((selector: PollsAggregateModelSelector) => PollsAggregateModelSelector) | undefined, args?: { distinctOn?: PollsSelectColumn[], limit?: (number | null), offset?: (number | null), orderBy?: PollsOrderBy[], where?: (PollsBoolExp | null) }) { return this.__child(`polls_aggregate`+ (args ? '('+['distinctOn', 'limit', 'offset', 'orderBy', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), PollsAggregateModelSelector, builder) } - polls_by_pk(builder: string | PollsModelSelector | ((selector: PollsModelSelector) => PollsModelSelector) | undefined, args: { id: any }) { return this.__child(`polls_by_pk`+ (args ? '('+['id'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), PollsModelSelector, builder) } + choices(builder: string | ChoicesModelSelector | ((selector: ChoicesModelSelector) => ChoicesModelSelector) | undefined = undefined, args?: { distinctOn?: ChoicesSelectColumn[], limit?: (number | null), offset?: (number | null), orderBy?: ChoicesOrderBy[], where?: (ChoicesBoolExp | null) }) { return this.__child(`choices`+ (args ? '('+['distinctOn', 'limit', 'offset', 'orderBy', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesModelSelector, builder) } + choices_aggregate(builder: string | ChoicesAggregateModelSelector | ((selector: ChoicesAggregateModelSelector) => ChoicesAggregateModelSelector) | undefined = undefined, args?: { distinctOn?: ChoicesSelectColumn[], limit?: (number | null), offset?: (number | null), orderBy?: ChoicesOrderBy[], where?: (ChoicesBoolExp | null) }) { return this.__child(`choices_aggregate`+ (args ? '('+['distinctOn', 'limit', 'offset', 'orderBy', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesAggregateModelSelector, builder) } + choices_by_pk(builder: string | ChoicesModelSelector | ((selector: ChoicesModelSelector) => ChoicesModelSelector) | undefined = undefined, args: { id: any }) { return this.__child(`choices_by_pk`+ (args ? '('+['id'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesModelSelector, builder) } + polls(builder: string | PollsModelSelector | ((selector: PollsModelSelector) => PollsModelSelector) | undefined = undefined, args?: { distinctOn?: PollsSelectColumn[], limit?: (number | null), offset?: (number | null), orderBy?: PollsOrderBy[], where?: (PollsBoolExp | null) }) { return this.__child(`polls`+ (args ? '('+['distinctOn', 'limit', 'offset', 'orderBy', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), PollsModelSelector, builder) } + polls_aggregate(builder: string | PollsAggregateModelSelector | ((selector: PollsAggregateModelSelector) => PollsAggregateModelSelector) | undefined = undefined, args?: { distinctOn?: PollsSelectColumn[], limit?: (number | null), offset?: (number | null), orderBy?: PollsOrderBy[], where?: (PollsBoolExp | null) }) { return this.__child(`polls_aggregate`+ (args ? '('+['distinctOn', 'limit', 'offset', 'orderBy', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), PollsAggregateModelSelector, builder) } + polls_by_pk(builder: string | PollsModelSelector | ((selector: PollsModelSelector) => PollsModelSelector) | undefined = undefined, args: { id: any }) { return this.__child(`polls_by_pk`+ (args ? '('+['id'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), PollsModelSelector, builder) } } export function selectFromQueryRoot() { return new QueryRootModelSelector() diff --git a/examples/6-scaffolding-ts-hasura/src/models/SubscriptionRootModel.base.ts b/examples/6-scaffolding-ts-hasura/src/models/SubscriptionRootModel.base.ts index ee05ecd7..41bbb6af 100644 --- a/examples/6-scaffolding-ts-hasura/src/models/SubscriptionRootModel.base.ts +++ b/examples/6-scaffolding-ts-hasura/src/models/SubscriptionRootModel.base.ts @@ -50,12 +50,12 @@ export const SubscriptionRootModelBase = withTypedRefs()(ModelBase }))) export class SubscriptionRootModelSelector extends QueryBuilder { - choices(builder: string | ChoicesModelSelector | ((selector: ChoicesModelSelector) => ChoicesModelSelector) | undefined, args?: { distinctOn?: ChoicesSelectColumn[], limit?: (number | null), offset?: (number | null), orderBy?: ChoicesOrderBy[], where?: (ChoicesBoolExp | null) }) { return this.__child(`choices`+ (args ? '('+['distinctOn', 'limit', 'offset', 'orderBy', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesModelSelector, builder) } - choices_aggregate(builder: string | ChoicesAggregateModelSelector | ((selector: ChoicesAggregateModelSelector) => ChoicesAggregateModelSelector) | undefined, args?: { distinctOn?: ChoicesSelectColumn[], limit?: (number | null), offset?: (number | null), orderBy?: ChoicesOrderBy[], where?: (ChoicesBoolExp | null) }) { return this.__child(`choices_aggregate`+ (args ? '('+['distinctOn', 'limit', 'offset', 'orderBy', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesAggregateModelSelector, builder) } - choices_by_pk(builder: string | ChoicesModelSelector | ((selector: ChoicesModelSelector) => ChoicesModelSelector) | undefined, args: { id: any }) { return this.__child(`choices_by_pk`+ (args ? '('+['id'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesModelSelector, builder) } - polls(builder: string | PollsModelSelector | ((selector: PollsModelSelector) => PollsModelSelector) | undefined, args?: { distinctOn?: PollsSelectColumn[], limit?: (number | null), offset?: (number | null), orderBy?: PollsOrderBy[], where?: (PollsBoolExp | null) }) { return this.__child(`polls`+ (args ? '('+['distinctOn', 'limit', 'offset', 'orderBy', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), PollsModelSelector, builder) } - polls_aggregate(builder: string | PollsAggregateModelSelector | ((selector: PollsAggregateModelSelector) => PollsAggregateModelSelector) | undefined, args?: { distinctOn?: PollsSelectColumn[], limit?: (number | null), offset?: (number | null), orderBy?: PollsOrderBy[], where?: (PollsBoolExp | null) }) { return this.__child(`polls_aggregate`+ (args ? '('+['distinctOn', 'limit', 'offset', 'orderBy', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), PollsAggregateModelSelector, builder) } - polls_by_pk(builder: string | PollsModelSelector | ((selector: PollsModelSelector) => PollsModelSelector) | undefined, args: { id: any }) { return this.__child(`polls_by_pk`+ (args ? '('+['id'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), PollsModelSelector, builder) } + choices(builder: string | ChoicesModelSelector | ((selector: ChoicesModelSelector) => ChoicesModelSelector) | undefined = undefined, args?: { distinctOn?: ChoicesSelectColumn[], limit?: (number | null), offset?: (number | null), orderBy?: ChoicesOrderBy[], where?: (ChoicesBoolExp | null) }) { return this.__child(`choices`+ (args ? '('+['distinctOn', 'limit', 'offset', 'orderBy', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesModelSelector, builder) } + choices_aggregate(builder: string | ChoicesAggregateModelSelector | ((selector: ChoicesAggregateModelSelector) => ChoicesAggregateModelSelector) | undefined = undefined, args?: { distinctOn?: ChoicesSelectColumn[], limit?: (number | null), offset?: (number | null), orderBy?: ChoicesOrderBy[], where?: (ChoicesBoolExp | null) }) { return this.__child(`choices_aggregate`+ (args ? '('+['distinctOn', 'limit', 'offset', 'orderBy', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesAggregateModelSelector, builder) } + choices_by_pk(builder: string | ChoicesModelSelector | ((selector: ChoicesModelSelector) => ChoicesModelSelector) | undefined = undefined, args: { id: any }) { return this.__child(`choices_by_pk`+ (args ? '('+['id'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), ChoicesModelSelector, builder) } + polls(builder: string | PollsModelSelector | ((selector: PollsModelSelector) => PollsModelSelector) | undefined = undefined, args?: { distinctOn?: PollsSelectColumn[], limit?: (number | null), offset?: (number | null), orderBy?: PollsOrderBy[], where?: (PollsBoolExp | null) }) { return this.__child(`polls`+ (args ? '('+['distinctOn', 'limit', 'offset', 'orderBy', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), PollsModelSelector, builder) } + polls_aggregate(builder: string | PollsAggregateModelSelector | ((selector: PollsAggregateModelSelector) => PollsAggregateModelSelector) | undefined = undefined, args?: { distinctOn?: PollsSelectColumn[], limit?: (number | null), offset?: (number | null), orderBy?: PollsOrderBy[], where?: (PollsBoolExp | null) }) { return this.__child(`polls_aggregate`+ (args ? '('+['distinctOn', 'limit', 'offset', 'orderBy', 'where'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), PollsAggregateModelSelector, builder) } + polls_by_pk(builder: string | PollsModelSelector | ((selector: PollsModelSelector) => PollsModelSelector) | undefined = undefined, args: { id: any }) { return this.__child(`polls_by_pk`+ (args ? '('+['id'].map((argName) => ((args as any)[argName] ? `${argName}: ${JSON.stringify((args as any)[argName])}` : null) ).filter((v) => v!=null).join(', ') + ')': ''), PollsModelSelector, builder) } } export function selectFromSubscriptionRoot() { return new SubscriptionRootModelSelector() diff --git a/generator/generate.js b/generator/generate.js index 064b97e5..bec067f9 100644 --- a/generator/generate.js +++ b/generator/generate.js @@ -590,7 +590,7 @@ ${generateFragments(name, primitiveFields, nonPrimitiveFields)} const selector = `${fieldName}ModelSelector` let p = ` ${field}(builder` p += ifTS( - `: string | ${selector} | ((selector: ${selector}) => ${selector}) | undefined` + `: string | ${selector} | ((selector: ${selector}) => ${selector}) | undefined = undefined` ) if (fieldArgs && fieldArgs.length) { const required = fieldArgs.find( diff --git a/tests/generator/__snapshots__/generate.test.js.snap b/tests/generator/__snapshots__/generate.test.js.snap index a7fb6777..82801cbb 100644 --- a/tests/generator/__snapshots__/generate.test.js.snap +++ b/tests/generator/__snapshots__/generate.test.js.snap @@ -225,7 +225,7 @@ export class MyUserModelSelector extends QueryBuilder { get id() { return this.__attr(\`id\`) } get name() { return this.__attr(\`name\`) } get avatar() { return this.__attr(\`avatar\`) } - emptyBoxes(builder: string | PossiblyEmptyBoxModelSelector | ((selector: PossiblyEmptyBoxModelSelector) => PossiblyEmptyBoxModelSelector) | undefined) { return this.__child(\`emptyBoxes\`, PossiblyEmptyBoxModelSelector, builder) } + emptyBoxes(builder: string | PossiblyEmptyBoxModelSelector | ((selector: PossiblyEmptyBoxModelSelector) => PossiblyEmptyBoxModelSelector) | undefined = undefined) { return this.__child(\`emptyBoxes\`, PossiblyEmptyBoxModelSelector, builder) } } export function selectFromMyUser() { return new MyUserModelSelector() @@ -362,7 +362,7 @@ export const QueryRootModelBase = withTypedRefs()(ModelBase }))) export class QueryRootModelSelector extends QueryBuilder { - me(builder: string | MyUserModelSelector | ((selector: MyUserModelSelector) => MyUserModelSelector) | undefined) { return this.__child(\`me\`, MyUserModelSelector, builder) } + me(builder: string | MyUserModelSelector | ((selector: MyUserModelSelector) => MyUserModelSelector) | undefined = undefined) { return this.__child(\`me\`, MyUserModelSelector, builder) } } export function selectFromQueryRoot() { return new QueryRootModelSelector() @@ -1357,7 +1357,7 @@ export const RepoModelBase = ModelBase export class RepoModelSelector extends QueryBuilder { get id() { return this.__attr(\`id\`) } - owner(builder: string | OwnerModelSelector | ((selector: OwnerModelSelector) => OwnerModelSelector) | undefined) { return this.__child(\`owner\`, OwnerModelSelector, builder) } + owner(builder: string | OwnerModelSelector | ((selector: OwnerModelSelector) => OwnerModelSelector) | undefined = undefined) { return this.__child(\`owner\`, OwnerModelSelector, builder) } } export function selectFromRepo() { return new RepoModelSelector() @@ -3228,7 +3228,7 @@ export const SearchResultModelBase = ModelBase export class SearchResultModelSelector extends QueryBuilder { get inputQuery() { return this.__attr(\`inputQuery\`) } - items(builder: string | SearchItemModelSelector | ((selector: SearchItemModelSelector) => SearchItemModelSelector) | undefined) { return this.__child(\`items\`, SearchItemModelSelector, builder) } + items(builder: string | SearchItemModelSelector | ((selector: SearchItemModelSelector) => SearchItemModelSelector) | undefined = undefined) { return this.__child(\`items\`, SearchItemModelSelector, builder) } } export function selectFromSearchResult() { return new SearchResultModelSelector()