@plumile/backoffice-core 0.1.103 → 0.1.105

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.
@@ -1,7 +1,88 @@
1
- import type { BackofficeDetailLayoutFacetConfig, BackofficeDetailPageFacetConfig, BackofficeEntityManifestItem, BackofficeListDetailFacetLoaderMap, BackofficeListFacetConfig, BackofficePickerFacetConfig, BackofficeToolFacetConfig, BackofficeToolFacetLoaderMap, BackofficeToolEntityConfig } from './types.js';
1
+ import type { OperationType } from 'relay-runtime';
2
+ import type { BackofficeConnectionListConfig, BackofficeDetailLayoutFacetConfig, BackofficeDetailPageFacetConfig, BackofficeEntityListConfig, BackofficeEntityManifestItem, BackofficeEntityPickerConfig, BackofficeFilterPlacement, BackofficeFilterSpec, BackofficeListDetailFacetLoaderMap, BackofficeListFacetConfig, BackofficeListQueryInput, BackofficeOperationSort, BackofficeOperationWhere, BackofficePickerFacetConfig, BackofficePickerQueryInput, BackofficeRecordListConfig, BackofficeRelationFilterSpec, BackofficeSortSpec, BackofficeToolEntityConfig, BackofficeToolFacetConfig, BackofficeToolFacetLoaderMap, I18nLabel } from './types.js';
3
+ type FieldKeyOfType<Where, Value> = Extract<{
4
+ [Key in keyof Where]: NonNullable<Where[Key]> extends Value ? Key : never;
5
+ }[keyof Where], string>;
6
+ type StringFieldKey<Where> = FieldKeyOfType<Where, string>;
7
+ type BooleanFieldKey<Where> = FieldKeyOfType<Where, boolean>;
8
+ type NumberFieldKey<Where> = FieldKeyOfType<Where, number>;
9
+ type StandardListVariables<TOperation extends OperationType, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>, TSort extends string = BackofficeOperationSort<TOperation>> = {
10
+ where?: TWhere | null | undefined;
11
+ sort?: TSort | null | undefined;
12
+ count: number;
13
+ cursor?: string | null | undefined;
14
+ };
15
+ type StandardPickerVariables<TOperation extends OperationType, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>> = {
16
+ where?: TWhere | null | undefined;
17
+ count: number;
18
+ cursor?: string | null | undefined;
19
+ };
20
+ type StrictStandardListOperation<TOperation extends OperationType> = TOperation['variables'] extends StandardListVariables<TOperation> ? TOperation : never;
21
+ type StrictStandardPickerOperation<TOperation extends OperationType> = TOperation['variables'] extends StandardPickerVariables<TOperation> ? TOperation : never;
22
+ export type DefineBackofficeConnectionListInput<TOperation extends OperationType, RowRef, RowView, ListFragmentData, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>, TSort extends string = BackofficeOperationSort<TOperation>> = Omit<BackofficeConnectionListConfig<TOperation, RowRef, RowView, ListFragmentData, TWhere, TSort>, 'kind' | 'buildQueryVariables'> & {
23
+ buildQueryVariables?: (input: BackofficeListQueryInput<TOperation, TWhere, TSort>) => TOperation['variables'];
24
+ };
25
+ export type DefineBackofficeRecordListInput<TOperation extends OperationType, RowRef, RowView, ListFragmentData, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>, TSort extends string = BackofficeOperationSort<TOperation>> = Omit<BackofficeRecordListConfig<TOperation, RowRef, RowView, ListFragmentData, TWhere, TSort>, 'buildQueryVariables'> & {
26
+ buildQueryVariables?: (input: BackofficeListQueryInput<TOperation, TWhere, TSort>) => TOperation['variables'];
27
+ };
28
+ export type DefineBackofficeListFacetInput<TOperation extends OperationType, RowRef, RowView, ListFragmentData, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>, TSort extends string = BackofficeOperationSort<TOperation>> = Omit<BackofficeListFacetConfig<TOperation, RowRef, RowView, ListFragmentData, TWhere, TSort>, 'list'> & {
29
+ list: BackofficeEntityListConfig<TOperation, RowRef, RowView, ListFragmentData, TWhere, TSort>;
30
+ };
31
+ export type DefineBackofficePickerInput<TOperation extends OperationType, RowRef, RowView, PickerFragmentData, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>> = Omit<BackofficeEntityPickerConfig<TOperation, RowRef, RowView, PickerFragmentData, TWhere>, 'buildQueryVariables'> & {
32
+ buildQueryVariables?: (input: BackofficePickerQueryInput<TOperation, TWhere>) => TOperation['variables'];
33
+ };
34
+ export declare const defineBackofficeConnectionList: <TOperation extends OperationType>() => <RowRef, RowView, ListFragmentData>(config: DefineBackofficeConnectionListInput<StrictStandardListOperation<TOperation>, RowRef, RowView, ListFragmentData>) => BackofficeConnectionListConfig<StrictStandardListOperation<TOperation>, RowRef, RowView, ListFragmentData>;
35
+ export declare const defineBackofficeCustomConnectionList: <TOperation extends OperationType, TWhere extends Record<string, unknown>, TSort extends string = BackofficeOperationSort<TOperation>>() => <RowRef, RowView, ListFragmentData>(config: DefineBackofficeConnectionListInput<TOperation, RowRef, RowView, ListFragmentData, TWhere, TSort> & {
36
+ buildQueryVariables: (input: BackofficeListQueryInput<TOperation, TWhere, TSort>) => TOperation["variables"];
37
+ }) => BackofficeConnectionListConfig<TOperation, RowRef, RowView, ListFragmentData, TWhere, TSort>;
38
+ export declare const defineBackofficeRecordList: <TOperation extends OperationType>() => <RowRef, RowView, ListFragmentData>(config: DefineBackofficeRecordListInput<StrictStandardListOperation<TOperation>, RowRef, RowView, ListFragmentData>) => BackofficeRecordListConfig<StrictStandardListOperation<TOperation>, RowRef, RowView, ListFragmentData>;
39
+ export declare const defineBackofficeCustomRecordList: <TOperation extends OperationType, TWhere extends Record<string, unknown>, TSort extends string = BackofficeOperationSort<TOperation>>() => <RowRef, RowView, ListFragmentData>(config: DefineBackofficeRecordListInput<TOperation, RowRef, RowView, ListFragmentData, TWhere, TSort> & {
40
+ buildQueryVariables: (input: BackofficeListQueryInput<TOperation, TWhere, TSort>) => TOperation["variables"];
41
+ }) => BackofficeRecordListConfig<TOperation, RowRef, RowView, ListFragmentData, TWhere, TSort>;
42
+ export declare const defineBackofficeListFacet: <TOperation extends OperationType>() => <RowRef, RowView, ListFragmentData>(config: DefineBackofficeListFacetInput<StrictStandardListOperation<TOperation>, RowRef, RowView, ListFragmentData>) => BackofficeListFacetConfig<StrictStandardListOperation<TOperation>, RowRef, RowView, ListFragmentData>;
43
+ export declare const defineBackofficeCustomListFacet: <TOperation extends OperationType, TWhere extends Record<string, unknown>, TSort extends string = BackofficeOperationSort<TOperation>>() => <RowRef, RowView, ListFragmentData>(config: DefineBackofficeListFacetInput<TOperation, RowRef, RowView, ListFragmentData, TWhere, TSort>) => BackofficeListFacetConfig<TOperation, RowRef, RowView, ListFragmentData, TWhere, TSort>;
44
+ export declare const defineBackofficePicker: <TOperation extends OperationType>() => <RowRef, RowView, PickerFragmentData>(config: DefineBackofficePickerInput<StrictStandardPickerOperation<TOperation>, RowRef, RowView, PickerFragmentData>) => BackofficeEntityPickerConfig<StrictStandardPickerOperation<TOperation>, RowRef, RowView, PickerFragmentData>;
45
+ export declare const defineBackofficeCustomPicker: <TOperation extends OperationType, TWhere extends Record<string, unknown>>() => <RowRef, RowView, PickerFragmentData>(config: DefineBackofficePickerInput<TOperation, RowRef, RowView, PickerFragmentData, TWhere> & {
46
+ buildQueryVariables: (input: BackofficePickerQueryInput<TOperation, TWhere>) => TOperation["variables"];
47
+ }) => BackofficeEntityPickerConfig<TOperation, RowRef, RowView, PickerFragmentData, TWhere>;
48
+ export declare const defineBackofficePickerFacet: <TOperation extends OperationType>() => <RowRef, RowView, PickerFragmentData>(config: BackofficePickerFacetConfig<StrictStandardPickerOperation<TOperation>, RowRef, RowView, PickerFragmentData>) => BackofficePickerFacetConfig<StrictStandardPickerOperation<TOperation>, RowRef, RowView, PickerFragmentData>;
49
+ export declare const defineBackofficeCustomPickerFacet: <TOperation extends OperationType, TWhere extends Record<string, unknown>>() => <RowRef, RowView, PickerFragmentData>(config: BackofficePickerFacetConfig<TOperation, RowRef, RowView, PickerFragmentData, TWhere>) => BackofficePickerFacetConfig<TOperation, RowRef, RowView, PickerFragmentData, TWhere>;
50
+ export declare const defineBackofficeRelationFilter: <TOperation extends OperationType, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>>() => (relation: BackofficeRelationFilterSpec<TOperation, TWhere>) => BackofficeRelationFilterSpec<TOperation, TWhere>;
51
+ export declare const defineBackofficeFilters: <TOperation extends OperationType, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>>() => <const Filters extends readonly BackofficeFilterSpec<TWhere>[]>(filters: Filters) => Filters;
52
+ export declare const defineBackofficeSorts: <TOperation extends OperationType, TSort extends string = BackofficeOperationSort<TOperation>>() => <const Sorts extends readonly BackofficeSortSpec<TSort>[]>(sorts: Sorts) => Sorts;
53
+ type FilterConfig = {
54
+ label: I18nLabel;
55
+ placement?: BackofficeFilterPlacement;
56
+ path?: readonly string[];
57
+ };
58
+ export declare const entityIdFilter: <Where, Key extends StringFieldKey<Where>>(key: Key, config: FilterConfig & {
59
+ entity: string;
60
+ }) => BackofficeFilterSpec<Where>;
61
+ export declare const textFilter: <Where, Key extends StringFieldKey<Where>>(key: Key, config: FilterConfig & {
62
+ placeholderLabel?: I18nLabel;
63
+ placeholderText?: I18nLabel;
64
+ }) => BackofficeFilterSpec<Where>;
65
+ export declare const datetimeFilter: <Where, Key extends StringFieldKey<Where>>(key: Key, config: FilterConfig & {
66
+ mode?: "from" | "to" | "exact";
67
+ placeholderLabel?: I18nLabel;
68
+ placeholderText?: I18nLabel;
69
+ }) => BackofficeFilterSpec<Where>;
70
+ export declare const numberFilter: <Where, Key extends NumberFieldKey<Where>>(key: Key, config: FilterConfig & {
71
+ placeholderLabel?: I18nLabel;
72
+ placeholderText?: I18nLabel;
73
+ inputMode?: "numeric" | "decimal";
74
+ }) => BackofficeFilterSpec<Where>;
75
+ export declare const enumFilter: <Where, Key extends StringFieldKey<Where>>(key: Key, config: FilterConfig & {
76
+ options: readonly Extract<NonNullable<Where[Key]>, string>[];
77
+ }) => BackofficeFilterSpec<Where>;
78
+ export declare const booleanFilter: <Where, Key extends BooleanFieldKey<Where>>(key: Key, config: FilterConfig & {
79
+ trueLabel?: I18nLabel;
80
+ falseLabel?: I18nLabel;
81
+ }) => BackofficeFilterSpec<Where>;
82
+ export declare const customFilter: <Where, Value>(filter: BackofficeFilterSpec<Where> & {
83
+ toGraphQL: (value: Value) => Partial<Where>;
84
+ }) => BackofficeFilterSpec<Where>;
2
85
  export declare const defineBackofficeToolEntity: <T extends BackofficeToolEntityConfig>(config: T) => T;
3
- export declare const createListFacet: <T extends BackofficeListFacetConfig>(config: T) => T;
4
- export declare const createPickerFacet: <T extends BackofficePickerFacetConfig>(config: T) => T;
5
86
  export declare const createDetailLayoutFacet: <T extends BackofficeDetailLayoutFacetConfig>(config: T) => T;
6
87
  export declare const createDetailPageFacet: <T extends BackofficeDetailPageFacetConfig>(config: T) => T;
7
88
  export declare const createToolFacet: <T extends BackofficeToolFacetConfig>(config: T) => T;
@@ -11,4 +92,5 @@ export declare const createListDetailManifest: <TFacets extends BackofficeListDe
11
92
  export declare const createToolManifest: <TFacets extends BackofficeToolFacetLoaderMap>(config: Omit<BackofficeEntityManifestItem, "kind" | "hasList" | "detailPages" | "defaultDetailPageId" | "facets"> & {
12
93
  facets: TFacets;
13
94
  }) => BackofficeEntityManifestItem;
95
+ export {};
14
96
  //# sourceMappingURL=builders.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"builders.d.ts","sourceRoot":"","sources":["../../src/builders.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iCAAiC,EACjC,+BAA+B,EAC/B,4BAA4B,EAC5B,kCAAkC,EAClC,yBAAyB,EACzB,2BAA2B,EAC3B,yBAAyB,EACzB,4BAA4B,EAC5B,0BAA0B,EAC3B,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,0BAA0B,GACrC,CAAC,SAAS,0BAA0B,EAEpC,QAAQ,CAAC,KACR,CAEF,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,yBAAyB,EACjE,QAAQ,CAAC,KACR,CAEF,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,2BAA2B,EACrE,QAAQ,CAAC,KACR,CAEF,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAClC,CAAC,SAAS,iCAAiC,EAE3C,QAAQ,CAAC,KACR,CAEF,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAChC,CAAC,SAAS,+BAA+B,EAEzC,QAAQ,CAAC,KACR,CAEF,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,yBAAyB,EACjE,QAAQ,CAAC,KACR,CAEF,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,OAAO,SAAS,kCAAkC,EAElD,QAAQ,IAAI,CAAC,4BAA4B,EAAE,MAAM,GAAG,QAAQ,CAAC,GAAG;IAC9D,MAAM,EAAE,OAAO,CAAC;CACjB,KACA,4BAKF,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,OAAO,SAAS,4BAA4B,EAE5C,QAAQ,IAAI,CACV,4BAA4B,EAC5B,MAAM,GAAG,SAAS,GAAG,aAAa,GAAG,qBAAqB,GAAG,QAAQ,CACtE,GAAG;IACF,MAAM,EAAE,OAAO,CAAC;CACjB,KACA,4BAQF,CAAC"}
1
+ {"version":3,"file":"builders.d.ts","sourceRoot":"","sources":["../../src/builders.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/filters/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,YAAY,EACjB,KAAK,MAAM,EACZ,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAGxD,MAAM,MAAM,sBAAsB,CAAC,KAAK,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI;IACrE,MAAM,EAAE,CAAC,CAAC;IACV,OAAO,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,KAAK,GAAG,IAAI,CAAC;IACpD,SAAS,EAAE,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,CAAC;CACrD,CAAC;AAmEF,wBAAgB,4BAA4B,CAC1C,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAErC,OAAO,EAAE,SAAS,oBAAoB,CAAC,KAAK,CAAC,EAAE,GAC9C,sBAAsB,CAAC,KAAK,CAAC,CAkF/B"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/filters/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,KAAK,YAAY,EACjB,KAAK,MAAM,EACZ,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAGxD,MAAM,MAAM,sBAAsB,CAAC,KAAK,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI;IACrE,MAAM,EAAE,CAAC,CAAC;IACV,OAAO,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,KAAK,GAAG,IAAI,CAAC;IACpD,SAAS,EAAE,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,CAAC;CACrD,CAAC;AAmEF,wBAAgB,4BAA4B,CAC1C,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAErC,OAAO,EAAE,SAAS,oBAAoB,CAAC,KAAK,CAAC,EAAE,GAC9C,sBAAsB,CAAC,KAAK,CAAC,CAqF/B"}
@@ -1,11 +1,12 @@
1
- import type { BackofficeEntityManifestItem, BackofficeDetailLayoutFacetConfig, BackofficeDetailPageFacetConfig, BackofficeListFacetConfig, BackofficeLoadedEntityFacetModule, BackofficePickerFacetConfig, BackofficeToolEntityConfig, BackofficeToolFacetConfig, BackofficeResolvedToolFacetConfig, BackofficeResolvedDetailLayoutFacetConfig, BackofficeResolvedDetailPageFacetConfig, BackofficeResolvedEntityFacetModule, BackofficeResolvedListFacetConfig, BackofficeResolvedPickerFacetConfig } from './types.js';
1
+ import type { BackofficeOperationSort, BackofficeOperationWhere, BackofficeEntityManifestItem, BackofficeDetailLayoutFacetConfig, BackofficeDetailPageFacetConfig, BackofficeListFacetConfig, BackofficeLoadedEntityFacetModule, BackofficePickerFacetConfig, BackofficeToolEntityConfig, BackofficeToolFacetConfig, BackofficeResolvedToolFacetConfig, BackofficeResolvedDetailLayoutFacetConfig, BackofficeResolvedDetailPageFacetConfig, BackofficeResolvedEntityFacetModule, BackofficeResolvedListFacetConfig, BackofficeResolvedPickerFacetConfig } from './types.js';
2
+ import type { OperationType } from 'relay-runtime';
2
3
  export type ResolveBackofficeEntityOptions = {
3
4
  basePath: string;
4
5
  };
5
6
  export declare const resolveBackofficeToolRoute: (basePath: string, toolId: string, routeOverride?: string) => string;
6
7
  export declare function extractBackofficeToolFacetConfig(config: BackofficeToolEntityConfig): BackofficeToolFacetConfig;
7
- export declare function resolveBackofficeListFacetConfig<Where extends Record<string, unknown>, Sort extends string, RowRef, RowView, ListQueryData, ListFragmentData, ListQueryVariables>(config: BackofficeListFacetConfig<Where, Sort, RowRef, RowView, ListQueryData, ListFragmentData, ListQueryVariables>, manifest: BackofficeEntityManifestItem, _options: ResolveBackofficeEntityOptions): BackofficeResolvedListFacetConfig<Where, Sort, RowRef, RowView, ListQueryData, ListFragmentData, ListQueryVariables>;
8
- export declare function resolveBackofficePickerFacetConfig<RowRef, RowView, PickerQueryData, PickerFragmentData, PickerQueryVariables>(config: BackofficePickerFacetConfig<RowRef, RowView, PickerQueryData, PickerFragmentData, PickerQueryVariables>, manifest: BackofficeEntityManifestItem, _options: ResolveBackofficeEntityOptions): BackofficeResolvedPickerFacetConfig<RowRef, RowView, PickerQueryData, PickerFragmentData, PickerQueryVariables>;
8
+ export declare function resolveBackofficeListFacetConfig<TOperation extends OperationType, RowRef, RowView, ListFragmentData, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>, TSort extends string = BackofficeOperationSort<TOperation>>(config: BackofficeListFacetConfig<TOperation, RowRef, RowView, ListFragmentData, TWhere, TSort>, manifest: BackofficeEntityManifestItem, _options: ResolveBackofficeEntityOptions): BackofficeResolvedListFacetConfig<TOperation, RowRef, RowView, ListFragmentData, TWhere, TSort>;
9
+ export declare function resolveBackofficePickerFacetConfig<TOperation extends OperationType, RowRef, RowView, PickerFragmentData, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>>(config: BackofficePickerFacetConfig<TOperation, RowRef, RowView, PickerFragmentData, TWhere>, manifest: BackofficeEntityManifestItem, _options: ResolveBackofficeEntityOptions): BackofficeResolvedPickerFacetConfig<TOperation, RowRef, RowView, PickerFragmentData, TWhere>;
9
10
  export declare function resolveBackofficeDetailLayoutFacetConfig<LayoutRef, LayoutView, LayoutQueryData, LayoutFragmentRef, LayoutQueryVariables>(config: BackofficeDetailLayoutFacetConfig<LayoutRef, LayoutView, LayoutQueryData, LayoutFragmentRef, LayoutQueryVariables>, manifest: BackofficeEntityManifestItem, _options: ResolveBackofficeEntityOptions): BackofficeResolvedDetailLayoutFacetConfig<LayoutRef, LayoutView, LayoutQueryData, LayoutFragmentRef, LayoutQueryVariables>;
10
11
  export declare function resolveBackofficeDetailPageFacetConfig<LayoutView, DetailRef, DetailView, DetailQueryData, DetailFragmentRef, DetailQueryVariables>(config: BackofficeDetailPageFacetConfig<LayoutView, DetailRef, DetailView, DetailQueryData, DetailFragmentRef, DetailQueryVariables>, manifest: BackofficeEntityManifestItem, _options: ResolveBackofficeEntityOptions): BackofficeResolvedDetailPageFacetConfig<LayoutView, DetailRef, DetailView, DetailQueryData, DetailFragmentRef, DetailQueryVariables>;
11
12
  export declare function resolveBackofficeToolFacetConfig(config: BackofficeToolFacetConfig, manifest: BackofficeEntityManifestItem, options: ResolveBackofficeEntityOptions): BackofficeResolvedToolFacetConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../src/resolve.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,4BAA4B,EAC5B,iCAAiC,EACjC,+BAA+B,EAG/B,yBAAyB,EACzB,iCAAiC,EACjC,2BAA2B,EAC3B,0BAA0B,EAC1B,yBAAyB,EACzB,iCAAiC,EACjC,yCAAyC,EACzC,uCAAuC,EACvC,mCAAmC,EACnC,iCAAiC,EACjC,mCAAmC,EACpC,MAAM,YAAY,CAAC;AAIpB,MAAM,MAAM,8BAA8B,GAAG;IAC3C,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAwDF,eAAO,MAAM,0BAA0B,GACrC,UAAU,MAAM,EAChB,QAAQ,MAAM,EACd,gBAAgB,MAAM,KACrB,MASF,CAAC;AAqCF,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,0BAA0B,GACjC,yBAAyB,CAW3B;AAKD,wBAAgB,gCAAgC,CAC9C,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACrC,IAAI,SAAS,MAAM,EACnB,MAAM,EACN,OAAO,EACP,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EAElB,MAAM,EAAE,yBAAyB,CAC/B,KAAK,EACL,IAAI,EACJ,MAAM,EACN,OAAO,EACP,aAAa,EACb,gBAAgB,EAChB,kBAAkB,CACnB,EACD,QAAQ,EAAE,4BAA4B,EAEtC,QAAQ,EAAE,8BAA8B,GACvC,iCAAiC,CAClC,KAAK,EACL,IAAI,EACJ,MAAM,EACN,OAAO,EACP,aAAa,EACb,gBAAgB,EAChB,kBAAkB,CACnB,CAoBA;AAKD,wBAAgB,kCAAkC,CAChD,MAAM,EACN,OAAO,EACP,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EAEpB,MAAM,EAAE,2BAA2B,CACjC,MAAM,EACN,OAAO,EACP,eAAe,EACf,kBAAkB,EAClB,oBAAoB,CACrB,EACD,QAAQ,EAAE,4BAA4B,EAEtC,QAAQ,EAAE,8BAA8B,GACvC,mCAAmC,CACpC,MAAM,EACN,OAAO,EACP,eAAe,EACf,kBAAkB,EAClB,oBAAoB,CACrB,CAEA;AAKD,wBAAgB,wCAAwC,CACtD,SAAS,EACT,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EAEpB,MAAM,EAAE,iCAAiC,CACvC,SAAS,EACT,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,oBAAoB,CACrB,EACD,QAAQ,EAAE,4BAA4B,EAEtC,QAAQ,EAAE,8BAA8B,GACvC,yCAAyC,CAC1C,SAAS,EACT,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,oBAAoB,CACrB,CAEA;AAKD,wBAAgB,sCAAsC,CACpD,UAAU,EACV,SAAS,EACT,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EAEpB,MAAM,EAAE,+BAA+B,CACrC,UAAU,EACV,SAAS,EACT,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,oBAAoB,CACrB,EACD,QAAQ,EAAE,4BAA4B,EAEtC,QAAQ,EAAE,8BAA8B,GACvC,uCAAuC,CACxC,UAAU,EACV,SAAS,EACT,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,oBAAoB,CACrB,CAEA;AAKD,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,yBAAyB,EACjC,QAAQ,EAAE,4BAA4B,EACtC,OAAO,EAAE,8BAA8B,GACtC,iCAAiC,CAmBnC;AAKD,wBAAgB,kCAAkC,CAChD,QAAQ,EAAE,4BAA4B,EACtC,MAAM,EAAE,iCAAiC,EACzC,OAAO,EAAE,8BAA8B,GACtC,mCAAmC,CAmErC"}
1
+ {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../src/resolve.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"buildListHref.d.ts","sourceRoot":"","sources":["../../../src/state/buildListHref.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,mBAAmB,EACnB,qCAAqC,EACtC,MAAM,aAAa,CAAC;AAErB,MAAM,MAAM,4BAA4B,CAAC,KAAK,EAAE,IAAI,SAAS,MAAM,IAAI,OAAO,CAC5E,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,CACjC,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,OAAO,CAAC;CAChB,CAAC;AAKF,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,IAAI,SAAS,MAAM,EAClE,MAAM,EAAE,qCAAqC,EAC7C,SAAS,EAAE,4BAA4B,CAAC,KAAK,EAAE,IAAI,CAAC,GACnD,MAAM,CAWR;AAKD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,IAAI,SAAS,MAAM,EAChE,MAAM,EAAE,qCAAqC,EAC7C,SAAS,EAAE,4BAA4B,CAAC,KAAK,EAAE,IAAI,CAAC,GACnD;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAGtC;AAOD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,IAAI,SAAS,MAAM,EAChE,MAAM,EAAE,qCAAqC,EAC7C,SAAS,EAAE,4BAA4B,CAAC,KAAK,EAAE,IAAI,CAAC,GACnD,MAAM,CAOR;AAiED,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,EACjD,OAAO,CAAC,EAAE,SAAS,4BAA4B,EAAE,GAChD,MAAM,CAqBR"}
1
+ {"version":3,"file":"buildListHref.d.ts","sourceRoot":"","sources":["../../../src/state/buildListHref.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,mBAAmB,EACnB,qCAAqC,EACtC,MAAM,aAAa,CAAC;AAErB,MAAM,MAAM,4BAA4B,CAAC,KAAK,EAAE,IAAI,SAAS,MAAM,IAAI,OAAO,CAC5E,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,CACjC,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,OAAO,CAAC;CAChB,CAAC;AAKF,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,IAAI,SAAS,MAAM,EAClE,MAAM,EAAE,qCAAqC,EAC7C,SAAS,EAAE,4BAA4B,CAAC,KAAK,EAAE,IAAI,CAAC,GACnD,MAAM,CAkBR;AAKD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,IAAI,SAAS,MAAM,EAChE,MAAM,EAAE,qCAAqC,EAC7C,SAAS,EAAE,4BAA4B,CAAC,KAAK,EAAE,IAAI,CAAC,GACnD;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAGtC;AAOD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,IAAI,SAAS,MAAM,EAChE,MAAM,EAAE,qCAAqC,EAC7C,SAAS,EAAE,4BAA4B,CAAC,KAAK,EAAE,IAAI,CAAC,GACnD,MAAM,CAOR;AAiED,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,EACjD,OAAO,CAAC,EAAE,SAAS,4BAA4B,EAAE,GAChD,MAAM,CAqBR"}
@@ -0,0 +1,6 @@
1
+ import type { BackofficeDetailTitleMetaItem, BackofficeListResponsiveMetaItem } from '../types.js';
2
+ export declare const responsiveMeta: BackofficeListResponsiveMetaItem;
3
+ export declare const invalidResponsiveMeta: BackofficeListResponsiveMetaItem;
4
+ export declare const titleMeta: BackofficeDetailTitleMetaItem;
5
+ export declare const invalidTitleMeta: BackofficeDetailTitleMetaItem;
6
+ //# sourceMappingURL=operation-bound-config.test-d.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-bound-config.test-d.d.ts","sourceRoot":"","sources":["../../../src/type-tests/operation-bound-config.test-d.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,6BAA6B,EAC7B,gCAAgC,EAGjC,MAAM,aAAa,CAAC;AAuCrB,eAAO,MAAM,cAAc,EAAE,gCAI5B,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,gCAKnC,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,6BAIvB,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,6BAK9B,CAAC"}
@@ -11,7 +11,7 @@ export type BackofficeActionRenderNode = Exclude<ReactNode, Promise<unknown>>;
11
11
  export type BackofficeValueLabel = string | number | null | I18nLabel;
12
12
  export type BackofficeBadgeTone = 'neutral' | 'info' | 'success' | 'warning' | 'danger';
13
13
  export type BackofficeNumberFormat = 'number' | 'currency' | 'percent';
14
- export type BackofficeFieldSize = 'xs' | 's' | 'm' | 'l' | 'xl' | 'fluid';
14
+ export type BackofficeFieldSize = 'xs' | 's' | 'statusAction' | 'm' | 'l' | 'xl' | 'fluid';
15
15
  export type BackofficeActionVariant = 'primary' | 'secondary' | 'text' | 'success' | 'danger' | 'brand' | 'brandGhost' | 'tab' | 'icon';
16
16
  export type BackofficeActionSize = 'small' | 'medium' | 'large';
17
17
  export type BackofficeActionToastViewSpec<Node = unknown, Response = unknown> = {
@@ -137,6 +137,45 @@ export type BackofficeListVariables<Where, Sort extends string> = {
137
137
  count: number;
138
138
  cursor: string | null;
139
139
  };
140
+ export type BackofficeOperationVariables<TOperation extends OperationType> = TOperation['variables'];
141
+ export type BackofficeOperationResponse<TOperation extends OperationType> = TOperation['response'];
142
+ export type BackofficeOperationWhere<TOperation extends OperationType, TWhere extends Record<string, unknown> = TOperation['variables'] extends {
143
+ where?: infer Where | null | undefined;
144
+ } ? Extract<NonNullable<Where>, Record<string, unknown>> : never> = TWhere;
145
+ export type BackofficeOperationSort<TOperation extends OperationType, TSort = TOperation['variables'] extends {
146
+ sort?: infer Sort | null | undefined;
147
+ } ? Extract<NonNullable<Sort>, string> : never> = Extract<TSort, string>;
148
+ export type BackofficeDerivedOperationWhere<TOperation extends OperationType> = TOperation['variables'] extends {
149
+ where?: infer Where | null | undefined;
150
+ } ? Extract<NonNullable<Where>, Record<string, unknown>> : never;
151
+ export type BackofficeDerivedOperationSort<TOperation extends OperationType> = TOperation['variables'] extends {
152
+ sort?: infer Sort | null | undefined;
153
+ } ? Extract<NonNullable<Sort>, string> : never;
154
+ export type BackofficeListQueryInput<TOperation extends OperationType, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>, TSort extends string = BackofficeOperationSort<TOperation>> = {
155
+ where: TWhere | null;
156
+ sort: TSort | null;
157
+ count: number;
158
+ cursor: string | null;
159
+ };
160
+ export type BackofficePickerScope<Where> = Partial<{
161
+ [Key in keyof Where]: Extract<NonNullable<Where[Key]>, string>;
162
+ }>;
163
+ export type BackofficePickerQueryInput<TOperation extends OperationType, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>> = {
164
+ search: string;
165
+ scope?: BackofficePickerScope<TWhere>;
166
+ };
167
+ export type BackofficeRelationFilterSpec<TOperation extends OperationType, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>> = {
168
+ target: string;
169
+ filterId?: string;
170
+ whereKey: Extract<keyof TWhere, string>;
171
+ path?: readonly string[];
172
+ };
173
+ export type BackofficeRuntimeRelationFilterSpec = {
174
+ target: string;
175
+ filterId?: string;
176
+ whereKey: string;
177
+ path?: readonly string[];
178
+ };
140
179
  export type BackofficeEntityRoutes = {
141
180
  list: string;
142
181
  detail: (id: string) => string;
@@ -166,12 +205,22 @@ export type BackofficeDashboardConfig = {
166
205
  widgets: readonly BackofficeDashboardWidget[];
167
206
  };
168
207
  export type BackofficeDashboardWidgetSize = 's' | 'm' | 'l' | 'xl' | 'full';
208
+ export type BackofficeDashboardWidgetSpan = 3 | 4 | 6 | 8 | 12;
209
+ export type BackofficeDashboardWidgetTabletSpan = 3 | 6;
210
+ export type BackofficeDashboardWidgetZone = 'summary' | 'main' | 'aside' | 'secondary' | 'full';
211
+ export type BackofficeDashboardWidgetLayout = {
212
+ zone?: BackofficeDashboardWidgetZone;
213
+ span?: BackofficeDashboardWidgetSpan;
214
+ tabletSpan?: BackofficeDashboardWidgetTabletSpan;
215
+ order?: number;
216
+ };
169
217
  export type BackofficeDashboardWidgetPriority = 'critical' | 'high' | 'normal' | 'low' | 'primary' | 'secondary' | 'debug';
170
218
  export type BackofficeDashboardWidgetBase = {
171
219
  id: string;
172
220
  title?: I18nLabel;
173
221
  description?: I18nLabel;
174
222
  size?: BackofficeDashboardWidgetSize;
223
+ layout?: BackofficeDashboardWidgetLayout;
175
224
  priority?: BackofficeDashboardWidgetPriority;
176
225
  minHeight?: 'sm' | 'md' | 'lg';
177
226
  };
@@ -200,7 +249,7 @@ export type BackofficeDashboardWidget = (BackofficeDashboardWidgetBase & {
200
249
  query?: GraphQLTaggedNode;
201
250
  resolve: (data: unknown) => readonly {
202
251
  id: string;
203
- label: string;
252
+ label: I18nLabel;
204
253
  value: string | number | null;
205
254
  tone?: BackofficeBadgeTone;
206
255
  href?: string;
@@ -222,9 +271,9 @@ export type BackofficeDashboardWidget = (BackofficeDashboardWidgetBase & {
222
271
  query?: GraphQLTaggedNode;
223
272
  resolve: (data: unknown) => readonly {
224
273
  id: string;
225
- label: string;
274
+ label: I18nLabel;
226
275
  value: string | number | null;
227
- meta?: string;
276
+ meta?: I18nLabel;
228
277
  tone?: 'neutral' | 'info' | 'success' | 'warning' | 'danger';
229
278
  href?: string;
230
279
  }[];
@@ -328,7 +377,7 @@ export type BackofficeListUiConfig = {
328
377
  };
329
378
  export type BackofficeListResponsiveMetaItem = {
330
379
  id: string;
331
- label?: string;
380
+ label?: I18nLabel;
332
381
  value: string;
333
382
  tone?: BackofficeBadgeTone;
334
383
  };
@@ -352,12 +401,22 @@ type BackofficeFilterBase<Where, Value> = {
352
401
  fromGraphQL?: (where: Where) => Value | null;
353
402
  whereKey?: keyof Where;
354
403
  path?: readonly string[];
355
- pickerScope?: BackofficePickerScope | ((where: Where | null) => BackofficePickerScope);
404
+ pickerScope?: BackofficePickerScope<Where> | ((where: Where | null) => BackofficePickerScope<Where>);
356
405
  };
357
406
  export type BackofficeFilterSpec<Where> = (BackofficeFilterBase<Where, string> & {
358
407
  kind: 'text';
359
408
  placeholderLabel?: I18nLabel;
360
409
  placeholderText?: I18nLabel;
410
+ }) | (BackofficeFilterBase<Where, string> & {
411
+ kind: 'datetime';
412
+ mode?: 'from' | 'to' | 'exact';
413
+ placeholderLabel?: I18nLabel;
414
+ placeholderText?: I18nLabel;
415
+ }) | (BackofficeFilterBase<Where, number> & {
416
+ kind: 'number';
417
+ placeholderLabel?: I18nLabel;
418
+ placeholderText?: I18nLabel;
419
+ inputMode?: 'numeric' | 'decimal';
361
420
  }) | (BackofficeFilterBase<Where, string> & {
362
421
  kind: 'enum';
363
422
  options: readonly {
@@ -372,43 +431,42 @@ export type BackofficeFilterSpec<Where> = (BackofficeFilterBase<Where, string> &
372
431
  kind: 'entityId';
373
432
  entity: string;
374
433
  });
375
- export type BackofficeConnectionListConfig<Where, Sort extends string, RowRef, RowView, ListQueryData = unknown, ListFragmentData = unknown, ListQueryVariables = BackofficeListVariables<Where, Sort>> = {
376
- kind?: 'connection';
434
+ export type BackofficeConnectionListConfig<TOperation extends OperationType, RowRef, RowView, ListFragmentData = unknown, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>, TSort extends string = BackofficeOperationSort<TOperation>> = {
435
+ kind: 'connection';
377
436
  title: I18nLabel;
378
437
  query: GraphQLTaggedNode;
379
438
  fragment: GraphQLTaggedNode;
439
+ buildQueryVariables: (input: BackofficeListQueryInput<TOperation, TWhere, TSort>) => TOperation['variables'];
380
440
  getConnection: BivariantCallback<(data: ListFragmentData) => BackofficeConnection<RowRef>>;
381
441
  toRow: BivariantCallback<(rowRef: RowRef) => RowView>;
382
442
  getRowId: BivariantCallback<(row: RowView) => string>;
383
443
  columns: readonly BackofficeColumnSpec<RowView>[];
384
444
  rowFlags?: readonly BackofficeRowFlagSpec<RowView>[];
385
- sorts: readonly BackofficeSortSpec<Sort>[];
386
- filters: readonly BackofficeFilterSpec<Where>[];
445
+ sorts: readonly BackofficeSortSpec<TSort>[];
446
+ filters: readonly BackofficeFilterSpec<TWhere>[];
387
447
  responsive?: BackofficeListResponsiveProfile<RowView>;
388
448
  ui?: BackofficeListUiConfig;
389
- defaultState?: BackofficeListState<Where, Sort>;
390
- buildVariables?: BivariantCallback<(input: BackofficeListVariables<Where, Sort>) => ListQueryVariables>;
391
- __listQueryData?: ListQueryData;
449
+ defaultState?: BackofficeListState<TWhere, TSort>;
392
450
  };
393
- export type BackofficeRecordListConfig<Where, Sort extends string, RowRef, RowView, ListQueryData = unknown, ListFragmentData = unknown, ListQueryVariables = BackofficeListVariables<Where, Sort>> = {
451
+ export type BackofficeRecordListConfig<TOperation extends OperationType, RowRef, RowView, ListFragmentData = unknown, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>, TSort extends string = BackofficeOperationSort<TOperation>> = {
394
452
  kind: 'records';
395
453
  title: I18nLabel;
396
454
  query: GraphQLTaggedNode;
397
455
  fragment: GraphQLTaggedNode;
456
+ buildQueryVariables: (input: BackofficeListQueryInput<TOperation, TWhere, TSort>) => TOperation['variables'];
398
457
  getRows: BivariantCallback<(data: ListFragmentData) => readonly RowRef[]>;
399
458
  toRow: BivariantCallback<(rowRef: RowRef) => RowView>;
400
- getNextCursor?: BivariantCallback<(data: ListQueryData) => string | null>;
459
+ getNextCursor?: BivariantCallback<(data: BackofficeOperationResponse<TOperation>) => string | null>;
401
460
  getRowId: BivariantCallback<(row: RowView) => string>;
402
461
  columns: readonly BackofficeColumnSpec<RowView>[];
403
462
  rowFlags?: readonly BackofficeRowFlagSpec<RowView>[];
404
- sorts: readonly BackofficeSortSpec<Sort>[];
405
- filters: readonly BackofficeFilterSpec<Where>[];
463
+ sorts: readonly BackofficeSortSpec<TSort>[];
464
+ filters: readonly BackofficeFilterSpec<TWhere>[];
406
465
  responsive?: BackofficeListResponsiveProfile<RowView>;
407
466
  ui?: BackofficeListUiConfig;
408
- defaultState?: BackofficeListState<Where, Sort>;
409
- buildVariables?: BivariantCallback<(input: BackofficeListVariables<Where, Sort>) => ListQueryVariables>;
467
+ defaultState?: BackofficeListState<TWhere, TSort>;
410
468
  };
411
- export type BackofficeEntityListConfig<Where, Sort extends string, RowRef, RowView, ListQueryData = unknown, ListFragmentData = unknown, ListQueryVariables = BackofficeListVariables<Where, Sort>> = BackofficeConnectionListConfig<Where, Sort, RowRef, RowView, ListQueryData, ListFragmentData, ListQueryVariables> | BackofficeRecordListConfig<Where, Sort, RowRef, RowView, ListQueryData, ListFragmentData, ListQueryVariables>;
469
+ export type BackofficeEntityListConfig<TOperation extends OperationType, RowRef, RowView, ListFragmentData = unknown, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>, TSort extends string = BackofficeOperationSort<TOperation>> = BackofficeConnectionListConfig<TOperation, RowRef, RowView, ListFragmentData, TWhere, TSort> | BackofficeRecordListConfig<TOperation, RowRef, RowView, ListFragmentData, TWhere, TSort>;
412
470
  export type BackofficeBadgeItem = {
413
471
  id: string;
414
472
  label: string | I18nLabel;
@@ -547,11 +605,8 @@ export type BackofficeDetailFieldSpec<Node> = {
547
605
  type: 'relation';
548
606
  label: I18nLabel;
549
607
  size: BackofficeFieldSize;
550
- entity: string;
551
- filterId?: string;
552
- whereKey: string;
608
+ relation: BackofficeRuntimeRelationFilterSpec;
553
609
  value: BivariantCallback<(node: Node) => string>;
554
- path?: readonly string[];
555
610
  count?: BivariantCallback<(node: Node) => number | null>;
556
611
  presentation?: BackofficeDetailPresentation;
557
612
  } | {
@@ -598,10 +653,8 @@ export type BackofficeDetailBlockSpec<Node> = {
598
653
  kind: 'relationList';
599
654
  label: I18nLabel;
600
655
  description?: I18nLabel;
601
- target: string;
602
- whereKey: string;
656
+ relation: BackofficeRuntimeRelationFilterSpec;
603
657
  value: BivariantCallback<(node: Node) => string | null>;
604
- path?: readonly string[];
605
658
  placement?: BackofficeDetailPlacement;
606
659
  presentation?: BackofficeDetailPresentation;
607
660
  } | BackofficeDetailTableBlockSpec<Node, any> | {
@@ -678,7 +731,7 @@ export type BackofficeDetailPageDataSpec<DetailView, DetailData = DetailView, De
678
731
  export type BackofficeDetailStandardTab = 'overview' | 'relations' | 'activity' | 'billing' | 'technical' | 'raw';
679
732
  export type BackofficeDetailTitleMetaItem = {
680
733
  id: string;
681
- label?: string;
734
+ label?: I18nLabel;
682
735
  value: string;
683
736
  tone?: BackofficeBadgeTone;
684
737
  };
@@ -718,10 +771,10 @@ export type BackofficeEntityDetailConfig<LayoutData = any, LayoutView = any, Mai
718
771
  mainPage: BackofficeDetailPageSpec<MainView, LayoutView, MainData, MainQueryData, MainFragmentKey, MainQueryVariables>;
719
772
  subPages?: readonly BackofficeDetailPageSpec<SubView, LayoutView, SubData, SubQueryData, SubFragmentKey, SubQueryVariables>[];
720
773
  };
721
- export type BackofficePickerScope = Record<string, string | null | undefined>;
722
- export type BackofficeEntityPickerConfig<RowRef, RowView, PickerQueryData = unknown, PickerFragmentData = unknown, PickerQueryVariables = Record<string, unknown>> = {
774
+ export type BackofficeEntityPickerConfig<TOperation extends OperationType, RowRef, RowView, PickerFragmentData = unknown, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>> = {
723
775
  query: GraphQLTaggedNode;
724
776
  fragment: GraphQLTaggedNode;
777
+ buildQueryVariables: (input: BackofficePickerQueryInput<TOperation, TWhere>) => TOperation['variables'];
725
778
  value?: BackofficePickerValueConfig<RowRef, RowView>;
726
779
  getConnection: BivariantCallback<(data: PickerFragmentData) => BackofficeConnection<RowRef>>;
727
780
  toRow: BivariantCallback<(rowRef: RowRef) => RowView>;
@@ -729,11 +782,6 @@ export type BackofficeEntityPickerConfig<RowRef, RowView, PickerQueryData = unkn
729
782
  searchEnabled?: boolean;
730
783
  searchRequired?: boolean;
731
784
  searchPlaceholder?: I18nLabel;
732
- buildVariables?: (input: {
733
- search: string;
734
- scope?: BackofficePickerScope;
735
- }) => PickerQueryVariables;
736
- __pickerQueryData?: PickerQueryData;
737
785
  };
738
786
  export type BackofficeToolEntityConfig = {
739
787
  kind: 'tool';
@@ -746,18 +794,18 @@ export type BackofficeToolEntityConfig = {
746
794
  picker?: never;
747
795
  routes?: never;
748
796
  };
749
- export type BackofficeListFacetConfig<Where = Record<string, unknown>, Sort extends string = string, RowRef = any, RowView = any, ListQueryData = unknown, ListFragmentData = unknown, ListQueryVariables = Record<string, unknown>> = {
797
+ export type BackofficeListFacetConfig<TOperation extends OperationType, RowRef, RowView, ListFragmentData, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>, TSort extends string = BackofficeOperationSort<TOperation>> = {
750
798
  kind: 'list';
751
799
  id: string;
752
800
  label: I18nLabel;
753
- list: BackofficeEntityListConfig<Where, Sort, RowRef, RowView, ListQueryData, ListFragmentData, ListQueryVariables>;
801
+ list: BackofficeEntityListConfig<TOperation, RowRef, RowView, ListFragmentData, TWhere, TSort>;
754
802
  listActions?: readonly BackofficeListActionSpec[];
755
803
  };
756
- export type BackofficePickerFacetConfig<RowRef = any, RowView = any, PickerQueryData = unknown, PickerFragmentData = unknown, PickerQueryVariables = Record<string, unknown>> = {
804
+ export type BackofficePickerFacetConfig<TOperation extends OperationType, RowRef, RowView, PickerFragmentData, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>> = {
757
805
  kind: 'picker';
758
806
  id: string;
759
807
  label: I18nLabel;
760
- picker: BackofficeEntityPickerConfig<RowRef, RowView, PickerQueryData, PickerFragmentData, PickerQueryVariables>;
808
+ picker: BackofficeEntityPickerConfig<TOperation, RowRef, RowView, PickerFragmentData, TWhere>;
761
809
  };
762
810
  export type BackofficeDetailPagesSpec<LayoutView = unknown, Page extends BackofficeDetailPageRouteSpec<LayoutView> = BackofficeDetailPageRouteSpec<LayoutView>> = {
763
811
  title: I18nLabel;
@@ -817,6 +865,18 @@ export type BackofficeLoadedToolFacetModule = {
817
865
  id: string;
818
866
  config: BackofficeToolFacetConfig;
819
867
  };
868
+ export type BackofficeRuntimeOperation = OperationType & {
869
+ variables: {
870
+ [key: string]: unknown;
871
+ where?: Record<string, unknown> | null | undefined;
872
+ sort?: string | null | undefined;
873
+ count?: number;
874
+ cursor?: string | null | undefined;
875
+ };
876
+ response: unknown;
877
+ };
878
+ export type BackofficeRuntimeListFacetConfig = BackofficeListFacetConfig<any, any, any, any, Record<string, any>, any>;
879
+ export type BackofficeRuntimePickerFacetConfig = BackofficePickerFacetConfig<any, any, any, any, Record<string, any>>;
820
880
  export type BackofficeLoadedEntityFacetModule = BackofficeLoadedListFacetModule | BackofficeLoadedPickerFacetModule | BackofficeLoadedDetailLayoutFacetModule | BackofficeLoadedDetailPageFacetModule | BackofficeLoadedToolFacetModule;
821
881
  export type BackofficeListFacetLoader = () => Promise<BackofficeLoadedListFacetModule>;
822
882
  export type BackofficePickerFacetLoader = () => Promise<BackofficeLoadedPickerFacetModule>;
@@ -846,12 +906,12 @@ export type BackofficeEntityManifestItem = {
846
906
  facets: BackofficeEntityFacetLoaderMap;
847
907
  };
848
908
  export type BackofficeEntityManifestMap = Record<string, BackofficeEntityManifestItem>;
849
- export type BackofficeResolvedListFacetConfig<Where = Record<string, unknown>, Sort extends string = string, RowRef = any, RowView = any, ListQueryData = unknown, ListFragmentData = unknown, ListQueryVariables = Record<string, unknown>> = BackofficeListFacetConfig<Where, Sort, RowRef, RowView, ListQueryData, ListFragmentData, ListQueryVariables> & {
909
+ export type BackofficeResolvedListFacetConfig<TOperation extends OperationType, RowRef, RowView, ListFragmentData, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>, TSort extends string = BackofficeOperationSort<TOperation>> = BackofficeListFacetConfig<TOperation, RowRef, RowView, ListFragmentData, TWhere, TSort> & {
850
910
  routes: BackofficeEntityRoutes;
851
- listUrlCodec?: BackofficeListUrlCodec<Where, Sort>;
852
- listDefaults?: BackofficeListState<Where, Sort>;
911
+ listUrlCodec?: BackofficeListUrlCodec<TWhere, TSort>;
912
+ listDefaults?: BackofficeListState<TWhere, TSort>;
853
913
  };
854
- export type BackofficeResolvedPickerFacetConfig<RowRef = any, RowView = any, PickerQueryData = unknown, PickerFragmentData = unknown, PickerQueryVariables = Record<string, unknown>> = BackofficePickerFacetConfig<RowRef, RowView, PickerQueryData, PickerFragmentData, PickerQueryVariables> & {
914
+ export type BackofficeResolvedPickerFacetConfig<TOperation extends OperationType, RowRef, RowView, PickerFragmentData, TWhere extends Record<string, unknown> = BackofficeOperationWhere<TOperation>> = BackofficePickerFacetConfig<TOperation, RowRef, RowView, PickerFragmentData, TWhere> & {
855
915
  routes: BackofficeEntityRoutes;
856
916
  };
857
917
  export type BackofficeResolvedDetailLayoutFacetConfig<LayoutRef = any, LayoutView = any, LayoutQueryData = unknown, LayoutFragmentRef = unknown, LayoutQueryVariables = Record<string, unknown>> = BackofficeDetailLayoutFacetConfig<LayoutRef, LayoutView, LayoutQueryData, LayoutFragmentRef, LayoutQueryVariables> & {
@@ -897,14 +957,20 @@ export type BackofficeResolvedToolFacetModule = {
897
957
  config: BackofficeResolvedToolFacetConfig;
898
958
  };
899
959
  export type BackofficeResolvedEntityFacetModule = BackofficeResolvedListFacetModule | BackofficeResolvedPickerFacetModule | BackofficeResolvedDetailLayoutFacetModule | BackofficeResolvedDetailPageFacetModule | BackofficeResolvedToolFacetModule;
900
- export type BackofficeListFacetConfigBase = BackofficeListFacetConfig<any, any, any, any, any, any, any>;
901
- export type BackofficePickerFacetConfigBase = BackofficePickerFacetConfig<any, any, any, any, any>;
960
+ export type BackofficeListFacetConfigBase = BackofficeRuntimeListFacetConfig;
961
+ export type BackofficePickerFacetConfigBase = BackofficeRuntimePickerFacetConfig;
902
962
  export type BackofficeDetailLayoutFacetConfigBase = BackofficeDetailLayoutFacetConfig<any, any, any, any, any>;
903
963
  export type BackofficeDetailPageFacetConfigBase = BackofficeDetailPageFacetConfig<any, any, any, any, any, any>;
904
- export type BackofficeResolvedListFacetConfigBase = BackofficeResolvedListFacetConfig<any, any, any, any, any, any, any>;
905
- export type BackofficeResolvedPickerFacetConfigBase = BackofficeResolvedPickerFacetConfig<any, any, any, any, any>;
964
+ export type BackofficeResolvedListFacetConfigBase = BackofficeResolvedListFacetConfig<any, any, any, any, Record<string, any>, any>;
965
+ export type BackofficeResolvedPickerFacetConfigBase = BackofficeResolvedPickerFacetConfig<any, any, any, any, Record<string, any>>;
906
966
  export type BackofficeResolvedDetailLayoutFacetConfigBase = BackofficeResolvedDetailLayoutFacetConfig<any, any, any, any, any>;
907
967
  export type BackofficeResolvedDetailPageFacetConfigBase = BackofficeResolvedDetailPageFacetConfig<any, any, any, any, any, any>;
968
+ export type BackofficeRuntimeResolvedListFacetConfig = BackofficeResolvedListFacetConfigBase;
969
+ export type BackofficeRuntimeResolvedPickerFacetConfig = BackofficeResolvedPickerFacetConfigBase;
970
+ export type BackofficeRuntimeConnectionListConfig = BackofficeConnectionListConfig<any, any, any, any, Record<string, any>, any>;
971
+ export type BackofficeRuntimeRecordListConfig = BackofficeRecordListConfig<any, any, any, any, Record<string, any>, any>;
972
+ export type BackofficeRuntimeEntityListConfig = BackofficeEntityListConfig<any, any, any, any, Record<string, any>, any>;
973
+ export type BackofficeRuntimeEntityPickerConfig = BackofficeEntityPickerConfig<any, any, any, any, Record<string, any>>;
908
974
  export type BackofficeEntityFacetModuleCacheEntry = {
909
975
  status: BackofficeEntityModuleStatus;
910
976
  promise?: Promise<BackofficeResolvedEntityFacetModule>;