diff --git a/.changeset/dirty-pumpkins-cheat.md b/.changeset/dirty-pumpkins-cheat.md new file mode 100644 index 000000000..edec473f9 --- /dev/null +++ b/.changeset/dirty-pumpkins-cheat.md @@ -0,0 +1,5 @@ +--- +"@shopware-ag/meteor-admin-sdk": patch +--- + +Update api context to match shopware administration diff --git a/packages/admin-sdk/src/_internals/data/EntityCollection.ts b/packages/admin-sdk/src/_internals/data/EntityCollection.ts index c5dbac31b..8e2ad502c 100644 --- a/packages/admin-sdk/src/_internals/data/EntityCollection.ts +++ b/packages/admin-sdk/src/_internals/data/EntityCollection.ts @@ -1,36 +1,20 @@ import Criteria from '../../data/Criteria'; import type { Entity } from './Entity'; +import type { ApiContext } from '../../context'; -type ApiAuthToken = { - access: string, - expiry: number, - refresh: string, -} +/** + * @deprecated Use {@link ApiContext} instead. + */ +interface DeprecatedApiContext extends ApiContext {}; + +export type { DeprecatedApiContext as ApiContext }; type Aggregations = { [key: string]: { name: string, [key: string]: unknown, }, -} - -export interface ApiContext { - apiPath: null | string, - apiResourcePath: null | string, - assetsPath: null | string, - authToken: null | ApiAuthToken, - basePath: null | string, - pathInfo: null | string, - inheritance: null | boolean, - installationPath: null | string, - languageId: null | string, - language: null | { - name: string, - }, - apiVersion: null | string, - liveVersionId: null | string, - systemLanguageId: null | string, -} +}; type Entities = EntitySchema.Entities; diff --git a/packages/admin-sdk/src/_internals/serializer/entity-collection-serializer.spec.ts b/packages/admin-sdk/src/_internals/serializer/entity-collection-serializer.spec.ts index ba70045ed..8440f4dbe 100644 --- a/packages/admin-sdk/src/_internals/serializer/entity-collection-serializer.spec.ts +++ b/packages/admin-sdk/src/_internals/serializer/entity-collection-serializer.spec.ts @@ -1,8 +1,9 @@ -import EntityCollection, {ApiContext} from '../data/EntityCollection'; +import EntityCollection from '../data/EntityCollection'; import Criteria from '../../data/Criteria'; import Entity from '../data/Entity'; import SerializerFactory from './index'; import { handle, send } from '../../channel'; +import type { ApiContext } from '../../context'; import Vue from 'vue'; const { serialize, deserialize } = SerializerFactory({ diff --git a/packages/admin-sdk/src/context/index.ts b/packages/admin-sdk/src/context/index.ts index 69358bf5e..b1b945a8b 100644 --- a/packages/admin-sdk/src/context/index.ts +++ b/packages/admin-sdk/src/context/index.ts @@ -1,5 +1,32 @@ import { createSender, createSubscriber } from '../channel'; +export type ApiAuthToken = { + access: string, + expiry: number, + refresh: string, +} + +export interface ApiContext { + apiPath: null | string, + apiResourcePath: null | string, + assetsPath: null | string, + authToken: null | ApiAuthToken, + basePath: null | string, + pathInfo: null | string, + inheritance: null | boolean, + installationPath: null | string, + languageId: null | string, + language: null | { + name: string, + parentId?: string, + }, + apiVersion: null | string, + liveVersionId: null | string, + systemLanguageId: null | string, + currencyId: null | string, + versionId: null | string, +} + export const getLanguage = createSender('contextLanguage', {}); export const subscribeLanguage = createSubscriber('contextLanguage'); export const getEnvironment = createSender('contextEnvironment', {}); diff --git a/packages/admin-sdk/src/data/repository.ts b/packages/admin-sdk/src/data/repository.ts index 06ab1a74c..5ca614fde 100644 --- a/packages/admin-sdk/src/data/repository.ts +++ b/packages/admin-sdk/src/data/repository.ts @@ -1,6 +1,6 @@ import { send } from '../channel'; import type Criteria from './Criteria'; -import type { ApiContext } from '../_internals/data/EntityCollection'; +import type { ApiContext } from '../context'; import type EntityCollection from '../_internals/data/EntityCollection'; import type { Entity } from '../_internals/data/Entity';