Skip to content

Commit

Permalink
feat(core): Update codegen errors plugin to use object inputs
Browse files Browse the repository at this point in the history
BREAKING CHANGE: The internal ErrorResult classes now take all constructors arguments
as a single input object.

feat(core): Update codegen errors plugin to use object inputs

BREAKING CHANGE: The internal ErrorResult classes now take all constructors arguments
as a single input object.
  • Loading branch information
michaelbromley committed Feb 24, 2022
1 parent 13c3dc1 commit 6b9b2a4
Show file tree
Hide file tree
Showing 89 changed files with 7,815 additions and 7,221 deletions.
5 changes: 0 additions & 5 deletions packages/admin-ui/src/lib/core/src/common/generated-types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3220,12 +3220,10 @@ export type OrderAddress = {
export type OrderFilterParameter = {
active?: InputMaybe<BooleanOperators>;
code?: InputMaybe<StringOperators>;
couponCodes?: InputMaybe<StringOperators>;
createdAt?: InputMaybe<DateOperators>;
currencyCode?: InputMaybe<StringOperators>;
customerLastName?: InputMaybe<StringOperators>;
id?: InputMaybe<IdOperators>;
nextStates?: InputMaybe<StringOperators>;
orderPlacedAt?: InputMaybe<DateOperators>;
shipping?: InputMaybe<NumberOperators>;
shippingWithTax?: InputMaybe<NumberOperators>;
Expand Down Expand Up @@ -3397,11 +3395,9 @@ export type OrderProcessState = {

export type OrderSortParameter = {
code?: InputMaybe<SortOrder>;
couponCodes?: InputMaybe<SortOrder>;
createdAt?: InputMaybe<SortOrder>;
customerLastName?: InputMaybe<SortOrder>;
id?: InputMaybe<SortOrder>;
nextStates?: InputMaybe<SortOrder>;
orderPlacedAt?: InputMaybe<SortOrder>;
shipping?: InputMaybe<SortOrder>;
shippingWithTax?: InputMaybe<SortOrder>;
Expand Down Expand Up @@ -4496,7 +4492,6 @@ export type RoleFilterParameter = {
createdAt?: InputMaybe<DateOperators>;
description?: InputMaybe<StringOperators>;
id?: InputMaybe<IdOperators>;
permissions?: InputMaybe<StringOperators>;
updatedAt?: InputMaybe<DateOperators>;
};

Expand Down
40 changes: 23 additions & 17 deletions packages/asset-server-plugin/e2e/asset-server-plugin.e2e-spec.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
/* tslint:disable:no-non-null-assertion */
import { DefaultLogger, LogLevel, mergeConfig } from '@vendure/core';
import { AssetFragment } from '@vendure/core/e2e/graphql/generated-e2e-admin-types';
import { createTestEnvironment } from '@vendure/testing';
import fs from 'fs-extra';
import gql from 'graphql-tag';
Expand All @@ -10,13 +11,18 @@ import { initialData } from '../../../e2e-common/e2e-initial-data';
import { testConfig, TEST_SETUP_TIMEOUT_MS } from '../../../e2e-common/test-config';
import { AssetServerPlugin } from '../src/plugin';

import { CreateAssets, DeleteAsset, DeletionResult } from './graphql/generated-e2e-asset-server-plugin-types';
import {
CreateAssetsMutation,
DeleteAssetMutation,
DeleteAssetMutationVariables,
DeletionResult,
} from './graphql/generated-e2e-asset-server-plugin-types';

const TEST_ASSET_DIR = 'test-assets';
const IMAGE_BASENAME = 'derick-david-409858-unsplash';

describe('AssetServerPlugin', () => {
let asset: CreateAssets.CreateAssets;
let asset: AssetFragment;
const sourceFilePath = path.join(__dirname, TEST_ASSET_DIR, `source/b6/${IMAGE_BASENAME}.jpg`);
const previewFilePath = path.join(__dirname, TEST_ASSET_DIR, `preview/71/${IMAGE_BASENAME}__preview.jpg`);

Expand Down Expand Up @@ -51,16 +57,16 @@ describe('AssetServerPlugin', () => {

it('names the Asset correctly', async () => {
const filesToUpload = [path.join(__dirname, `fixtures/assets/${IMAGE_BASENAME}.jpg`)];
const { createAssets }: CreateAssets.Mutation = await adminClient.fileUploadMutation({
const { createAssets }: CreateAssetsMutation = await adminClient.fileUploadMutation({
mutation: CREATE_ASSETS,
filePaths: filesToUpload,
mapVariables: filePaths => ({
input: filePaths.map(p => ({ file: null })),
}),
});

expect(createAssets[0].name).toBe(`${IMAGE_BASENAME}.jpg`);
asset = createAssets[0];
asset = createAssets[0] as AssetFragment;
expect(asset.name).toBe(`${IMAGE_BASENAME}.jpg`);
});

it('creates the expected asset files', async () => {
Expand All @@ -87,7 +93,7 @@ describe('AssetServerPlugin', () => {
it('can handle non-latin filenames', async () => {
const FILE_NAME_ZH = '白飯';
const filesToUpload = [path.join(__dirname, `fixtures/assets/${FILE_NAME_ZH}.jpg`)];
const { createAssets }: CreateAssets.Mutation = await adminClient.fileUploadMutation({
const { createAssets }: { createAssets: AssetFragment[] } = await adminClient.fileUploadMutation({
mutation: CREATE_ASSETS,
filePaths: filesToUpload,
mapVariables: filePaths => ({
Expand Down Expand Up @@ -190,15 +196,15 @@ describe('AssetServerPlugin', () => {

describe('deletion', () => {
it('deleting Asset deletes binary file', async () => {
const { deleteAsset } = await adminClient.query<DeleteAsset.Mutation, DeleteAsset.Variables>(
DELETE_ASSET,
{
input: {
assetId: asset.id,
force: true,
},
const { deleteAsset } = await adminClient.query<
DeleteAssetMutation,
DeleteAssetMutationVariables
>(DELETE_ASSET, {
input: {
assetId: asset.id,
force: true,
},
);
});

expect(deleteAsset.result).toBe(DeletionResult.DELETED);

Expand All @@ -208,7 +214,7 @@ describe('AssetServerPlugin', () => {
});

describe('MIME type detection', () => {
let testImages: CreateAssets.CreateAssets[] = [];
let testImages: AssetFragment[] = [];

async function testMimeTypeOfAssetWithExt(ext: string, expectedMimeType: string) {
const testImage = testImages.find(i => i.source.endsWith(ext))!;
Expand All @@ -222,15 +228,15 @@ describe('AssetServerPlugin', () => {
const formats = ['gif', 'jpg', 'png', 'svg', 'tiff', 'webp'];

const filesToUpload = formats.map(ext => path.join(__dirname, `fixtures/assets/test.${ext}`));
const { createAssets }: CreateAssets.Mutation = await adminClient.fileUploadMutation({
const { createAssets }: CreateAssetsMutation = await adminClient.fileUploadMutation({
mutation: CREATE_ASSETS,
filePaths: filesToUpload,
mapVariables: filePaths => ({
input: filePaths.map(p => ({ file: null })),
}),
});

testImages = createAssets;
testImages = createAssets as AssetFragment[];
});

it('gif', async () => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3001,12 +3001,10 @@ export type OrderAddress = {
export type OrderFilterParameter = {
active?: InputMaybe<BooleanOperators>;
code?: InputMaybe<StringOperators>;
couponCodes?: InputMaybe<StringOperators>;
createdAt?: InputMaybe<DateOperators>;
currencyCode?: InputMaybe<StringOperators>;
customerLastName?: InputMaybe<StringOperators>;
id?: InputMaybe<IdOperators>;
nextStates?: InputMaybe<StringOperators>;
orderPlacedAt?: InputMaybe<DateOperators>;
shipping?: InputMaybe<NumberOperators>;
shippingWithTax?: InputMaybe<NumberOperators>;
Expand Down Expand Up @@ -3171,11 +3169,9 @@ export type OrderProcessState = {

export type OrderSortParameter = {
code?: InputMaybe<SortOrder>;
couponCodes?: InputMaybe<SortOrder>;
createdAt?: InputMaybe<SortOrder>;
customerLastName?: InputMaybe<SortOrder>;
id?: InputMaybe<SortOrder>;
nextStates?: InputMaybe<SortOrder>;
orderPlacedAt?: InputMaybe<SortOrder>;
shipping?: InputMaybe<SortOrder>;
shippingWithTax?: InputMaybe<SortOrder>;
Expand Down Expand Up @@ -4197,7 +4193,6 @@ export type RoleFilterParameter = {
createdAt?: InputMaybe<DateOperators>;
description?: InputMaybe<StringOperators>;
id?: InputMaybe<IdOperators>;
permissions?: InputMaybe<StringOperators>;
updatedAt?: InputMaybe<DateOperators>;
};

Expand Down
2 changes: 1 addition & 1 deletion packages/asset-server-plugin/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
"@vendure/core": "^1.4.7",
"aws-sdk": "^2.856.0",
"express": "^4.17.1",
"node-fetch": "^3.2.0",
"node-fetch": "^2.6.7",
"rimraf": "^3.0.2",
"typescript": "4.5.5"
},
Expand Down
2 changes: 0 additions & 2 deletions packages/common/src/generated-shop-types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1908,7 +1908,6 @@ export type OrderAddress = {
export type OrderFilterParameter = {
active?: InputMaybe<BooleanOperators>;
code?: InputMaybe<StringOperators>;
couponCodes?: InputMaybe<StringOperators>;
createdAt?: InputMaybe<DateOperators>;
currencyCode?: InputMaybe<StringOperators>;
id?: InputMaybe<IdOperators>;
Expand Down Expand Up @@ -2065,7 +2064,6 @@ export type OrderPaymentStateError = ErrorResult & {

export type OrderSortParameter = {
code?: InputMaybe<SortOrder>;
couponCodes?: InputMaybe<SortOrder>;
createdAt?: InputMaybe<SortOrder>;
id?: InputMaybe<SortOrder>;
orderPlacedAt?: InputMaybe<SortOrder>;
Expand Down
5 changes: 0 additions & 5 deletions packages/common/src/generated-types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3157,12 +3157,10 @@ export type OrderAddress = {
export type OrderFilterParameter = {
active?: InputMaybe<BooleanOperators>;
code?: InputMaybe<StringOperators>;
couponCodes?: InputMaybe<StringOperators>;
createdAt?: InputMaybe<DateOperators>;
currencyCode?: InputMaybe<StringOperators>;
customerLastName?: InputMaybe<StringOperators>;
id?: InputMaybe<IdOperators>;
nextStates?: InputMaybe<StringOperators>;
orderPlacedAt?: InputMaybe<DateOperators>;
shipping?: InputMaybe<NumberOperators>;
shippingWithTax?: InputMaybe<NumberOperators>;
Expand Down Expand Up @@ -3334,11 +3332,9 @@ export type OrderProcessState = {

export type OrderSortParameter = {
code?: InputMaybe<SortOrder>;
couponCodes?: InputMaybe<SortOrder>;
createdAt?: InputMaybe<SortOrder>;
customerLastName?: InputMaybe<SortOrder>;
id?: InputMaybe<SortOrder>;
nextStates?: InputMaybe<SortOrder>;
orderPlacedAt?: InputMaybe<SortOrder>;
shipping?: InputMaybe<SortOrder>;
shippingWithTax?: InputMaybe<SortOrder>;
Expand Down Expand Up @@ -4429,7 +4425,6 @@ export type RoleFilterParameter = {
createdAt?: InputMaybe<DateOperators>;
description?: InputMaybe<StringOperators>;
id?: InputMaybe<IdOperators>;
permissions?: InputMaybe<StringOperators>;
updatedAt?: InputMaybe<DateOperators>;
};

Expand Down
Loading

0 comments on commit 6b9b2a4

Please sign in to comment.