Skip to content

Commit

Permalink
Remove legacy filter code (#6323)
Browse files Browse the repository at this point in the history
  • Loading branch information
emmatown authored Aug 17, 2021
1 parent 5b86069 commit 3904a9c
Show file tree
Hide file tree
Showing 16 changed files with 18 additions and 449 deletions.
8 changes: 8 additions & 0 deletions .changeset/brave-paws-sneeze.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
"@keystone-next/cloudinary": major
"@keystone-next/fields": major
"@keystone-next/keystone": major
"@keystone-next/types": major
---

Removed unused legacy filter code
16 changes: 1 addition & 15 deletions packages/cloudinary/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ import {
jsonFieldTypePolyfilledForSQLite,
schema,
FieldDefaultValue,
legacyFilters,
} from '@keystone-next/types';
import { FileUpload } from 'graphql-upload';
import cuid from 'cuid';
Expand Down Expand Up @@ -174,19 +173,6 @@ export const cloudinaryImage =
path.dirname(require.resolve('@keystone-next/cloudinary/package.json')),
'views'
),
__legacy: {
isRequired,
defaultValue,
filters: {
fields: {
...legacyFilters.fields.equalityInputFields(meta.fieldKey, schema.String),
...legacyFilters.fields.inInputFields(meta.fieldKey, schema.String),
},
impls: {
...legacyFilters.impls.equalityConditions(meta.fieldKey),
...legacyFilters.impls.inConditions(meta.fieldKey),
},
},
},
__legacy: { isRequired, defaultValue },
});
};
33 changes: 0 additions & 33 deletions packages/fields/src/types/autoIncrement/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ import {
fieldType,
FieldTypeFunc,
CommonFieldConfig,
legacyFilters,
orderDirectionEnum,
schema,
filters,
Expand Down Expand Up @@ -54,38 +53,6 @@ export const autoIncrement =
__legacy: {
isRequired,
defaultValue,
filters: {
fields: {
...legacyFilters.fields.equalityInputFields(meta.fieldKey, schema.Int),
...legacyFilters.fields.orderingInputFields(meta.fieldKey, schema.Int),
...legacyFilters.fields.inInputFields(meta.fieldKey, schema.Int),
},
impls: {
...equalityConditions(meta.fieldKey, x => Number(x) || -1),
...legacyFilters.impls.orderingConditions(meta.fieldKey, x => Number(x) || -1),
...inConditions(meta.fieldKey, x => x.map((xx: any) => Number(xx) || -1)),
},
},
},
});
};

function equalityConditions<T>(fieldKey: string, f: (a: any) => any) {
return {
[fieldKey]: (value: T) => ({ [fieldKey]: f(value) }),
[`${fieldKey}_not`]: (value: T) => ({ NOT: { [fieldKey]: f(value) } }),
};
}

function inConditions<T>(fieldKey: string, f: (a: any) => any) {
return {
[`${fieldKey}_in`]: (value: (T | null)[]) =>
value.includes(null)
? { [fieldKey]: { in: f(value.filter(x => x !== null)) } }
: { [fieldKey]: { in: f(value) } },
[`${fieldKey}_not_in`]: (value: (T | null)[]) =>
value.includes(null)
? { AND: [{ NOT: { [fieldKey]: { in: f(value.filter(x => x !== null)) } } }] }
: { NOT: { [fieldKey]: { in: f(value) } } },
};
}
10 changes: 1 addition & 9 deletions packages/fields/src/types/checkbox/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ import {
CommonFieldConfig,
fieldType,
FieldTypeFunc,
legacyFilters,
orderDirectionEnum,
schema,
filters,
Expand Down Expand Up @@ -43,13 +42,6 @@ export const checkbox =
type: schema.Boolean,
}),
views: resolveView('checkbox/views'),
__legacy: {
filters: {
fields: legacyFilters.fields.equalityInputFields(meta.fieldKey, schema.Boolean),
impls: legacyFilters.impls.equalityConditions(meta.fieldKey),
},
isRequired,
defaultValue,
},
__legacy: { isRequired, defaultValue },
});
};
16 changes: 1 addition & 15 deletions packages/fields/src/types/decimal/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ import {
schema,
orderDirectionEnum,
Decimal,
legacyFilters,
FieldDefaultValue,
filters,
} from '@keystone-next/types';
Expand Down Expand Up @@ -99,19 +98,6 @@ export const decimal =
precision,
scale,
}),
__legacy: {
filters: {
fields: {
...legacyFilters.fields.equalityInputFields(meta.fieldKey, schema.String),
...legacyFilters.fields.orderingInputFields(meta.fieldKey, schema.String),
},
impls: {
...legacyFilters.impls.equalityConditions(meta.fieldKey),
...legacyFilters.impls.orderingConditions(meta.fieldKey),
},
},
isRequired,
defaultValue,
},
__legacy: { isRequired, defaultValue },
});
};
18 changes: 1 addition & 17 deletions packages/fields/src/types/float/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ import {
fieldType,
schema,
orderDirectionEnum,
legacyFilters,
FieldDefaultValue,
filters,
} from '@keystone-next/types';
Expand Down Expand Up @@ -47,20 +46,5 @@ export const float =
},
output: schema.field({ type: schema.Float }),
views: resolveView('float/views'),
__legacy: {
filters: {
fields: {
...legacyFilters.fields.equalityInputFields(meta.fieldKey, schema.Float),
...legacyFilters.fields.orderingInputFields(meta.fieldKey, schema.Float),
...legacyFilters.fields.inInputFields(meta.fieldKey, schema.Float),
},
impls: {
...legacyFilters.impls.equalityConditions(meta.fieldKey),
...legacyFilters.impls.orderingConditions(meta.fieldKey),
...legacyFilters.impls.inConditions(meta.fieldKey),
},
},
isRequired,
defaultValue,
},
__legacy: { isRequired, defaultValue },
});
18 changes: 1 addition & 17 deletions packages/fields/src/types/integer/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ import {
fieldType,
FieldTypeFunc,
CommonFieldConfig,
legacyFilters,
orderDirectionEnum,
schema,
filters,
Expand Down Expand Up @@ -48,20 +47,5 @@ export const integer =
},
output: schema.field({ type: schema.Int }),
views: resolveView('integer/views'),
__legacy: {
filters: {
fields: {
...legacyFilters.fields.equalityInputFields(meta.fieldKey, schema.Int),
...legacyFilters.fields.orderingInputFields(meta.fieldKey, schema.Int),
...legacyFilters.fields.inInputFields(meta.fieldKey, schema.Int),
},
impls: {
...legacyFilters.impls.equalityConditions(meta.fieldKey),
...legacyFilters.impls.orderingConditions(meta.fieldKey),
...legacyFilters.impls.inConditions(meta.fieldKey),
},
},
isRequired,
defaultValue,
},
__legacy: { isRequired, defaultValue },
});
9 changes: 0 additions & 9 deletions packages/fields/src/types/password/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -138,15 +138,6 @@ export const password =
},
}),
__legacy: {
filters: {
fields: {
[`${meta.fieldKey}_is_set`]: schema.arg({ type: schema.Boolean }),
},
impls: {
[`${meta.fieldKey}_is_set`]: value =>
value ? { NOT: { [meta.fieldKey]: null } } : { [meta.fieldKey]: null },
},
},
isRequired,
defaultValue,
},
Expand Down
29 changes: 0 additions & 29 deletions packages/fields/src/types/relationship/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -141,10 +141,6 @@ export const relationship =
}
const listTypes = meta.lists[foreignListKey].types;
if (many) {
const whereInputResolve =
(key: string) => async (value: any, resolve?: (val: any) => Promise<any>) => {
return { [meta.fieldKey]: { [key]: await resolve!(value) } };
};
return fieldType({
kind: 'relation',
mode: 'many',
Expand Down Expand Up @@ -199,18 +195,6 @@ export const relationship =
}
: {},
__legacy: {
filters: {
fields: {
[`${meta.fieldKey}_every`]: schema.arg({ type: listTypes.where }),
[`${meta.fieldKey}_some`]: schema.arg({ type: listTypes.where }),
[`${meta.fieldKey}_none`]: schema.arg({ type: listTypes.where }),
},
impls: {
[`${meta.fieldKey}_every`]: whereInputResolve('every'),
[`${meta.fieldKey}_some`]: whereInputResolve('some'),
[`${meta.fieldKey}_none`]: whereInputResolve('none'),
},
},
defaultValue,
},
});
Expand Down Expand Up @@ -249,19 +233,6 @@ export const relationship =
},
}),
__legacy: {
filters: {
fields: {
[meta.fieldKey]: schema.arg({ type: listTypes.where }),
[`${meta.fieldKey}_is_null`]: schema.arg({ type: schema.Boolean }),
},
impls: {
[meta.fieldKey]: async (value: any, resolve?: (val: any) => Promise<any>) => {
return { [meta.fieldKey]: await resolve!(value) };
},
[`${meta.fieldKey}_is_null`]: value =>
value ? { [meta.fieldKey]: null } : { NOT: { [meta.fieldKey]: null } },
},
},
defaultValue,
},
});
Expand Down
19 changes: 3 additions & 16 deletions packages/fields/src/types/select/index.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,9 @@
import {
BaseGeneratedListTypes,
FieldData,
FieldDefaultValue,
fieldType,
FieldTypeFunc,
CommonFieldConfig,
legacyFilters,
orderDirectionEnum,
schema,
filters,
Expand Down Expand Up @@ -78,7 +76,7 @@ export const select =
orderBy: { arg: schema.arg({ type: orderDirectionEnum }) },
},
output: schema.field({ type: schema.Int }),
__legacy: { filters: getFilters(meta, schema.Int), defaultValue, isRequired },
__legacy: { defaultValue, isRequired },
});
}
if (config.dataType === 'enum') {
Expand Down Expand Up @@ -112,7 +110,7 @@ export const select =
output: schema.field({
type: graphQLType,
}),
__legacy: { filters: getFilters(meta, graphQLType), defaultValue, isRequired },
__legacy: { defaultValue, isRequired },
});
}
return fieldType({ kind: 'scalar', scalar: 'String', mode: 'optional', index })({
Expand All @@ -129,17 +127,6 @@ export const select =
output: schema.field({
type: schema.String,
}),
__legacy: { filters: getFilters(meta, schema.String), defaultValue, isRequired },
__legacy: { defaultValue, isRequired },
});
};

const getFilters = (meta: FieldData, type: schema.ScalarType<any> | schema.EnumType<any>) => ({
fields: {
...legacyFilters.fields.equalityInputFields(meta.fieldKey, type),
...legacyFilters.fields.inInputFields(meta.fieldKey, type),
},
impls: {
...legacyFilters.impls.equalityConditions(meta.fieldKey),
...legacyFilters.impls.inConditions(meta.fieldKey),
},
});
37 changes: 1 addition & 36 deletions packages/fields/src/types/text/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ import {
schema,
orderDirectionEnum,
FieldTypeFunc,
legacyFilters,
filters,
} from '@keystone-next/types';
import { resolveView } from '../../resolve-view';
Expand Down Expand Up @@ -57,39 +56,5 @@ export const text =
shouldUseModeInsensitive: meta.provider === 'postgresql',
};
},
__legacy: {
filters: {
fields: {
...legacyFilters.fields.equalityInputFields(meta.fieldKey, schema.String),
...(meta.provider === 'sqlite'
? legacyFilters.fields.containsInputFields(meta.fieldKey, schema.String)
: {
...legacyFilters.fields.stringInputFields(meta.fieldKey, schema.String),
...legacyFilters.fields.equalityInputFieldsInsensitive(
meta.fieldKey,
schema.String
),
...legacyFilters.fields.stringInputFieldsInsensitive(
meta.fieldKey,
schema.String
),
}),
...legacyFilters.fields.inInputFields(meta.fieldKey, schema.String),
},
impls: {
...legacyFilters.impls.equalityConditions(meta.fieldKey),
...(meta.provider === 'sqlite'
? legacyFilters.impls.containsConditions(meta.fieldKey)
: {
...legacyFilters.impls.stringConditions(meta.fieldKey),
...legacyFilters.impls.equalityConditionsInsensitive(meta.fieldKey),
...legacyFilters.impls.stringConditionsInsensitive(meta.fieldKey),
}),
// These have no case-insensitive counter parts
...legacyFilters.impls.inConditions(meta.fieldKey),
},
},
defaultValue,
isRequired,
},
__legacy: { defaultValue, isRequired },
});
18 changes: 1 addition & 17 deletions packages/fields/src/types/timestamp/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ import {
FieldTypeFunc,
CommonFieldConfig,
orderDirectionEnum,
legacyFilters,
FieldDefaultValue,
filters,
} from '@keystone-next/types';
Expand Down Expand Up @@ -59,21 +58,6 @@ export const timestamp =
},
}),
views: resolveView('timestamp/views'),
__legacy: {
filters: {
fields: {
...legacyFilters.fields.equalityInputFields(meta.fieldKey, schema.String),
...legacyFilters.fields.orderingInputFields(meta.fieldKey, schema.String),
...legacyFilters.fields.inInputFields(meta.fieldKey, schema.String),
},
impls: {
...legacyFilters.impls.equalityConditions(meta.fieldKey),
...legacyFilters.impls.orderingConditions(meta.fieldKey),
...legacyFilters.impls.inConditions(meta.fieldKey),
},
},
isRequired,
defaultValue,
},
__legacy: { isRequired, defaultValue },
});
};
Loading

0 comments on commit 3904a9c

Please sign in to comment.