@crystaldesign/diva-backoffice 26.13.0-beta.33 → 26.13.0-beta.35
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.
- package/build/esm/index.js +7061 -5737
- package/build/types/backoffice/src/index.d.ts.map +1 -1
- package/build/types/backoffice/src/layout/ProductOnboarding/Navigation.d.ts.map +1 -1
- package/build/types/backoffice/src/layout/ProductOnboarding/views.d.ts.map +1 -1
- package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/index.d.ts.map +1 -1
- package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/mediaToolset.d.ts.map +1 -1
- package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/navigationToolset.d.ts +25 -0
- package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/navigationToolset.d.ts.map +1 -1
- package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/pageReload.d.ts +46 -0
- package/build/types/backoffice/src/layout/Toolbar/Tools/DivaAgent/pageReload.d.ts.map +1 -0
- package/build/types/backoffice/src/store/RootStore.d.ts +11 -1
- package/build/types/backoffice/src/store/RootStore.d.ts.map +1 -1
- package/build/types/backoffice/src/store/index.d.ts +3 -1
- package/build/types/backoffice/src/store/index.d.ts.map +1 -1
- package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/locateRowNotUnique.test.d.ts +2 -0
- package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/locateRowNotUnique.test.d.ts.map +1 -0
- package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/openCatalogFacts.test.d.ts +2 -0
- package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/openCatalogFacts.test.d.ts.map +1 -0
- package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/pageReload.test.d.ts +2 -0
- package/build/types/backoffice/src/tests/unit/layout/Toolbar/Tools/DivaAgent/pageReload.test.d.ts.map +1 -0
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/components/ArticleSubTable/index.d.ts +4 -1
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/components/ArticleSubTable/index.d.ts.map +1 -1
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/components/ArticleTable/index.d.ts +3 -0
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/components/ArticleTable/index.d.ts.map +1 -1
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/components/ClassificationPanel/ClassificationGroups/index.d.ts +3 -1
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/components/ClassificationPanel/ClassificationGroups/index.d.ts.map +1 -1
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/components/ClassificationPanel/ClassificationReady/index.d.ts +3 -1
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/components/ClassificationPanel/ClassificationReady/index.d.ts.map +1 -1
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/components/ClassificationPanel/CopyActions/index.d.ts +15 -0
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/components/ClassificationPanel/CopyActions/index.d.ts.map +1 -0
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/components/ClassificationPanel/RequiredFieldsAlert/index.d.ts +9 -0
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/components/ClassificationPanel/RequiredFieldsAlert/index.d.ts.map +1 -0
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/components/ClassificationPanel/SapNrListInput/index.d.ts +15 -0
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/components/ClassificationPanel/SapNrListInput/index.d.ts.map +1 -0
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/components/ClassificationPanel/SapNrListResult/index.d.ts +13 -0
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/components/ClassificationPanel/SapNrListResult/index.d.ts.map +1 -0
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/components/ClassificationPanel/findSapNrList.d.ts +9 -0
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/components/ClassificationPanel/findSapNrList.d.ts.map +1 -0
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/components/ClassificationPanel/index.d.ts +9 -1
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/components/ClassificationPanel/index.d.ts.map +1 -1
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/hooks/useAllowedFieldValues.d.ts +3 -2
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/hooks/useAllowedFieldValues.d.ts.map +1 -1
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/hooks/useHeaderProducts.d.ts +4 -3
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/hooks/useHeaderProducts.d.ts.map +1 -1
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/hooks/usePlanningTransfer.d.ts.map +1 -1
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/index.d.ts.map +1 -1
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/logic/classificationRequiredFields.d.ts +14 -0
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/logic/classificationRequiredFields.d.ts.map +1 -0
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/logic/classificationSelection.d.ts +8 -0
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/logic/classificationSelection.d.ts.map +1 -1
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/logic/finalDeletes.d.ts +28 -0
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/logic/finalDeletes.d.ts.map +1 -0
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/logic/sapNrList.d.ts +28 -0
- package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/logic/sapNrList.d.ts.map +1 -0
- package/build/types/backoffice/src/ui/AssortmentManager/ColliData/components/ColliTable/index.d.ts +3 -0
- package/build/types/backoffice/src/ui/AssortmentManager/ColliData/components/ColliTable/index.d.ts.map +1 -1
- package/build/types/backoffice/src/ui/AssortmentManager/ColliData/index.d.ts.map +1 -1
- package/build/types/backoffice/src/ui/AssortmentManager/HeaderData/components/Content/index.d.ts.map +1 -1
- package/build/types/backoffice/src/ui/AssortmentManager/HeaderData/index.d.ts.map +1 -1
- package/build/types/backoffice/src/ui/AssortmentManager/SupplierColors/index.d.ts +13 -0
- package/build/types/backoffice/src/ui/AssortmentManager/SupplierColors/index.d.ts.map +1 -0
- package/build/types/backoffice/src/ui/AssortmentManager/SupplierColors/logic/supplierColorsFile.d.ts +20 -0
- package/build/types/backoffice/src/ui/AssortmentManager/SupplierColors/logic/supplierColorsFile.d.ts.map +1 -0
- package/build/types/backoffice/src/ui/AssortmentManager/SupplierColors/logic/supplierColorsImport.d.ts +9 -0
- package/build/types/backoffice/src/ui/AssortmentManager/SupplierColors/logic/supplierColorsImport.d.ts.map +1 -0
- package/build/types/backoffice/src/ui/AssortmentManager/hooks/useApi2Sync.d.ts +12 -4
- package/build/types/backoffice/src/ui/AssortmentManager/hooks/useApi2Sync.d.ts.map +1 -1
- package/build/types/backoffice/src/ui/AssortmentManager/index.d.ts +1 -0
- package/build/types/backoffice/src/ui/AssortmentManager/index.d.ts.map +1 -1
- package/build/types/backoffice/src/ui/AssortmentManager/tests/finalDeletes.test.d.ts +2 -0
- package/build/types/backoffice/src/ui/AssortmentManager/tests/finalDeletes.test.d.ts.map +1 -0
- package/build/types/backoffice/src/ui/AssortmentManager/tests/sapNrList.test.d.ts +2 -0
- package/build/types/backoffice/src/ui/AssortmentManager/tests/sapNrList.test.d.ts.map +1 -0
- package/build/types/backoffice/src/ui/AssortmentManager/tests/supplierColors.test.d.ts +2 -0
- package/build/types/backoffice/src/ui/AssortmentManager/tests/supplierColors.test.d.ts.map +1 -0
- package/package.json +12 -12
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/** An entry of a bulk answer's error lists, naming the row by its position in the request list. */
|
|
2
|
+
interface BulkErrorEntry {
|
|
3
|
+
index?: number;
|
|
4
|
+
resolved?: boolean;
|
|
5
|
+
}
|
|
6
|
+
/** The parts of the catalog's bulk answer (`POST /v1/products/bulk`) read and written here; the rest passes through. */
|
|
7
|
+
interface BulkAnswer {
|
|
8
|
+
errors?: {
|
|
9
|
+
remove?: BulkErrorEntry[];
|
|
10
|
+
[list: string]: unknown;
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
/** The bulk request the answer belongs to: lists of rows per operation, the deletes as their ids. */
|
|
14
|
+
interface BulkRequest {
|
|
15
|
+
remove?: unknown[];
|
|
16
|
+
[list: string]: unknown;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Makes the deletes of a bulk answer final for the grid (its `reviewBulkResponse`): every delete the catalog confirmed
|
|
20
|
+
* gets a `resolved` entry — the grid's word for "saved, but not undoable" — so the grid books the row as deleted, drops
|
|
21
|
+
* its whole undo history (an undo of an older edit of the row would restore it as well) and announces the delete
|
|
22
|
+
* without the revert button. A delete cannot be undone here: the legacy SM removes the article with it and API2
|
|
23
|
+
* archives the catalog product on top (`../hooks/useApi2Sync`), a restored article would come back archived. Refused
|
|
24
|
+
* deletes keep their error.
|
|
25
|
+
*/
|
|
26
|
+
export declare function withFinalDeletes<T extends BulkAnswer>(response: T, request: BulkRequest): T;
|
|
27
|
+
export {};
|
|
28
|
+
//# sourceMappingURL=finalDeletes.d.ts.map
|
package/build/types/backoffice/src/ui/AssortmentManager/ArticleData/logic/finalDeletes.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"finalDeletes.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ui/AssortmentManager/ArticleData/logic/finalDeletes.ts"],"names":[],"mappings":"AAAA,mGAAmG;AACnG,UAAU,cAAc;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,wHAAwH;AACxH,UAAU,UAAU;IAClB,MAAM,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;QAAC,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;CACjE;AAED,qGAAqG;AACrG,UAAU,WAAW;IACnB,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC;IACnB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;CACzB;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,WAAW,GAAG,CAAC,CAQ3F"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/** An article found for a pasted SAP number — what the lookup projects to. */
|
|
2
|
+
export interface SapNrProduct {
|
|
3
|
+
_id: unknown;
|
|
4
|
+
retailerArticleNr?: unknown;
|
|
5
|
+
}
|
|
6
|
+
/** The outcome of a pasted SAP number list: the articles to classify, and the numbers no article has. */
|
|
7
|
+
export interface SapNrListMatch {
|
|
8
|
+
/** The found articles' ids, in the order of the list. */
|
|
9
|
+
ids: string[];
|
|
10
|
+
/** The numbers of the list without an article, in the order of the list. */
|
|
11
|
+
notFound: string[];
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* The distinct SAP numbers of a pasted list. Anything between them separates: line breaks (an Excel column), tabs
|
|
15
|
+
* (an Excel row), `;` (the article search's separator), `,` and spaces.
|
|
16
|
+
*/
|
|
17
|
+
export declare function parseSapNrList(input: string): string[];
|
|
18
|
+
/**
|
|
19
|
+
* The query grammar filter for the articles of a SAP number list: exactly by `retailerArticleNr` — the SAP number the
|
|
20
|
+
* catalog mirrors from `SAP_MARA_MATNR`, as the product list's SAP number classification matches — among the articles
|
|
21
|
+
* the article table shows the user: the organization's SM articles (supplier and EK group set), not archived, no
|
|
22
|
+
* header rows, not deleted, within the user's allowed values. Returns undefined when nothing can match: no number
|
|
23
|
+
* fits the grammar, or a restricted field allows no value at all (the table shows nothing then either).
|
|
24
|
+
*/
|
|
25
|
+
export declare function sapNrListFilter(organizationId: string, sapNrs: string[], allowedValues: Record<string, string[] | undefined>): string | undefined;
|
|
26
|
+
/** Pairs the list with the articles found for it: every article of a number (a number may have several), else the number as unfound. */
|
|
27
|
+
export declare function matchSapNrList(sapNrs: string[], products: SapNrProduct[]): SapNrListMatch;
|
|
28
|
+
//# sourceMappingURL=sapNrList.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sapNrList.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ui/AssortmentManager/ArticleData/logic/sapNrList.ts"],"names":[],"mappings":"AAGA,8EAA8E;AAC9E,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,OAAO,CAAC;IACb,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,yGAAyG;AACzG,MAAM,WAAW,cAAc;IAC7B,yDAAyD;IACzD,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,4EAA4E;IAC5E,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAEtD;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,MAAM,GAAG,SAAS,CAsBjJ;AAED,wIAAwI;AACxI,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,cAAc,CASzF"}
|
package/build/types/backoffice/src/ui/AssortmentManager/ColliData/components/ColliTable/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import type { NotificationInstance } from 'antd/es/notification/interface';
|
|
2
3
|
import { DivaSpreadsheetHooks, SpreadsheetRefProps } from '@crystaldesign/spreadsheet';
|
|
3
4
|
import { AssortmentManagerViewCondition } from '../../../types';
|
|
4
5
|
interface ColliTableProps {
|
|
@@ -8,6 +9,8 @@ interface ColliTableProps {
|
|
|
8
9
|
hooks?: DivaSpreadsheetHooks<Record<string, unknown>>;
|
|
9
10
|
/** The conditions of the active predefined views — joined into the pre filter. */
|
|
10
11
|
viewConditions?: AssortmentManagerViewCondition[];
|
|
12
|
+
/** The page's notifications — a failed load reports while the table still shows its spinner. */
|
|
13
|
+
notify: NotificationInstance;
|
|
11
14
|
}
|
|
12
15
|
/**
|
|
13
16
|
* The articles of the Kollidaten page as a server-side grid: the same articles and saves as the article table
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/ui/AssortmentManager/ColliData/components/ColliTable/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAEhE,OAAO,EAAiB,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAGtG,OAAO,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAC;AAchE,UAAU,eAAe;IACvB,6GAA6G;IAC7G,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yDAAyD;IACzD,KAAK,CAAC,EAAE,oBAAoB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACtD,kFAAkF;IAClF,cAAc,CAAC,EAAE,8BAA8B,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/ui/AssortmentManager/ColliData/components/ColliTable/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAEhE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAiB,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAGtG,OAAO,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAC;AAchE,UAAU,eAAe;IACvB,6GAA6G;IAC7G,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yDAAyD;IACzD,KAAK,CAAC,EAAE,oBAAoB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACtD,kFAAkF;IAClF,cAAc,CAAC,EAAE,8BAA8B,EAAE,CAAC;IAClD,gGAAgG;IAChG,MAAM,EAAE,oBAAoB,CAAC;CAC9B;AAED;;;;;;GAMG;AACH,QAAA,MAAM,UAAU,sHAyEd,CAAC;AAEH,eAAe,UAAU,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/AssortmentManager/ColliData/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiD,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/AssortmentManager/ColliData/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiD,MAAM,OAAO,CAAC;AAkBtE;;;;;;GAMG;AACH,iBAAS,SAAS,sBAoFjB;;;;AAED,wBAAmC"}
|
package/build/types/backoffice/src/ui/AssortmentManager/HeaderData/components/Content/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/ui/AssortmentManager/HeaderData/components/Content/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAUnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAGxE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/ui/AssortmentManager/HeaderData/components/Content/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAUnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAGxE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAiDhD,UAAU,YAAY;IACpB,4EAA4E;IAC5E,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,gGAAgG;IAChG,QAAQ,EAAE,qBAAqB,CAAC;IAChC,4GAA4G;IAC5G,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB;;;;OAIG;IACH,aAAa,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAChD,uGAAuG;IACvG,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACxD;;;OAGG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,sGAAsG;IACtG,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IACzC,6EAA6E;IAC7E,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB;AAED;;;;;GAKG;AACH,iBAAS,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,eAAe,EAAE,aAAa,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,YAAY,qBA6MnI;AAED,eAAe,OAAO,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/AssortmentManager/HeaderData/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4D,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/AssortmentManager/HeaderData/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4D,MAAM,OAAO,CAAC;AA2CjF,iBAAS,UAAU,sBA2XlB;;;;AAED,wBAAoC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* The Lieferantenfarben page of the assortment manager: imports a supplier's colors file (XML) through the legacy
|
|
4
|
+
* API2 import (`logic/supplierColorsImport.ts`). Choose the supplier, add the file, start — the file is checked first
|
|
5
|
+
* (`logic/supplierColorsFile.ts`), since API2 replaces all colors of the supplier with the file's. The import runs in
|
|
6
|
+
* the background and mails its outcome; the page only reports the start. No EKG: API2 keeps the colors per supplier.
|
|
7
|
+
*/
|
|
8
|
+
declare function SupplierColors(): React.JSX.Element;
|
|
9
|
+
declare const _default: typeof SupplierColors & {
|
|
10
|
+
displayName: string;
|
|
11
|
+
};
|
|
12
|
+
export default _default;
|
|
13
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/AssortmentManager/SupplierColors/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAWxC;;;;;GAKG;AACH,iBAAS,cAAc,sBA8HtB;;;;AAED,wBAAwC"}
|
package/build/types/backoffice/src/ui/AssortmentManager/SupplierColors/logic/supplierColorsFile.d.ts
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/** What keeps a supplier colors file from being imported. */
|
|
2
|
+
export type SupplierColorsFileIssue = {
|
|
3
|
+
reason: 'invalidXml';
|
|
4
|
+
} | {
|
|
5
|
+
reason: 'noColors';
|
|
6
|
+
}
|
|
7
|
+
/** The `SupplierNumber`s of the file that differ from the chosen supplier — a missing one as the empty string. */
|
|
8
|
+
| {
|
|
9
|
+
reason: 'otherSupplier';
|
|
10
|
+
supplierNumbers: string[];
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Checks a supplier colors file before it goes to API2. `importsuppliercolors` deletes every color of the supplier and
|
|
14
|
+
* inserts the file's `<COLOR>` elements, so a file it reads as empty — no `<COLOR>`, or all of them in a namespace
|
|
15
|
+
* (the XSD declares `targetNamespace="SupplierColors"`) — would wipe the supplier's colors. The file is read the way
|
|
16
|
+
* API2 reads it: `<COLOR>` elements without namespace, their `SupplierNumber` a direct child without namespace,
|
|
17
|
+
* compared verbatim (`00554` is not `554`). Returns undefined for a file that may be imported.
|
|
18
|
+
*/
|
|
19
|
+
export declare function checkSupplierColorsFile(xml: string, supplierNr: string): SupplierColorsFileIssue | undefined;
|
|
20
|
+
//# sourceMappingURL=supplierColorsFile.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"supplierColorsFile.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ui/AssortmentManager/SupplierColors/logic/supplierColorsFile.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,MAAM,MAAM,uBAAuB,GAC/B;IAAE,MAAM,EAAE,YAAY,CAAA;CAAE,GACxB;IAAE,MAAM,EAAE,UAAU,CAAA;CAAE;AACxB,kHAAkH;GAChH;IAAE,MAAM,EAAE,eAAe,CAAC;IAAC,eAAe,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAE3D;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS,CAc5G"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Starts the legacy supplier colors import of API2 — the endpoint the legacy SM's "Lieferantenfarben importieren" used,
|
|
3
|
+
* on the EK server, where the classification reads the colors (`getjsonsuppliercolors`). `function=upload` stores the
|
|
4
|
+
* file in the session's inbox under its name, `function=importsuppliercolors` imports it from there in the background:
|
|
5
|
+
* it replaces all colors of the supplier with the file's and renames them in the classification of the supplier's
|
|
6
|
+
* articles. The outcome is mailed to the session's user; this only reports whether the import started.
|
|
7
|
+
*/
|
|
8
|
+
export declare function startSupplierColorsImport(api2Url: string, sessionGuid: string, file: File, supplierNr: string): Promise<void>;
|
|
9
|
+
//# sourceMappingURL=supplierColorsImport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"supplierColorsImport.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ui/AssortmentManager/SupplierColors/logic/supplierColorsImport.ts"],"names":[],"mappings":"AAaA;;;;;;GAMG;AACH,wBAAsB,yBAAyB,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAUnI"}
|
|
@@ -16,13 +16,21 @@ export interface Api2SyncFailure {
|
|
|
16
16
|
*/
|
|
17
17
|
export declare function syncProductsToApi2(root: RootStore, productIds: string[]): Promise<Api2SyncFailure[]>;
|
|
18
18
|
/**
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
* a
|
|
22
|
-
*
|
|
19
|
+
* Removes deleted products from the legacy SM one by one: `DELETE {pfister-article}/v1/pfisterproducts/smarticle`
|
|
20
|
+
* per product (query parameters). The service deletes the flat articles API2 keeps for the product — so its supplier
|
|
21
|
+
* article number is free for a new article — and refuses a product the catalog still serves; switched off like the
|
|
22
|
+
* sync. Returns the products that failed instead of throwing.
|
|
23
|
+
*/
|
|
24
|
+
export declare function deleteProductsFromApi2(root: RootStore, productIds: string[]): Promise<Api2SyncFailure[]>;
|
|
25
|
+
/**
|
|
26
|
+
* The page's API2 sync: fire-and-forget after a confirmed save or delete, failures as toasts like the bulk actions'.
|
|
27
|
+
* A product whose call is still running is not started again but remembers the latest request to run afterwards — a
|
|
28
|
+
* save landing while the previous sync runs (the grid commits some edits twice, e.g. a label companion reset) ends
|
|
29
|
+
* with the latest state in API2 without parallel writes of the same flat article.
|
|
23
30
|
*/
|
|
24
31
|
export default function useApi2Sync(root: RootStore): {
|
|
25
32
|
syncToApi2: (productIds: string[]) => void;
|
|
33
|
+
deleteFromApi2: (productIds: string[]) => void;
|
|
26
34
|
api2SyncNotifications: React.ReactNode;
|
|
27
35
|
};
|
|
28
36
|
//# sourceMappingURL=useApi2Sync.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useApi2Sync.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/AssortmentManager/hooks/useApi2Sync.ts"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAGnD,OAAO,SAAS,MAAM,0BAA0B,CAAC;AAIjD,2EAA2E;AAC3E,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB;
|
|
1
|
+
{"version":3,"file":"useApi2Sync.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/AssortmentManager/hooks/useApi2Sync.ts"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAGnD,OAAO,SAAS,MAAM,0BAA0B,CAAC;AAIjD,2EAA2E;AAC3E,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB;AAkBD;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAmB1G;AAED;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAiB9G;AAED;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,IAAI,EAAE,SAAS,GAAG;IACpD,UAAU,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC3C,cAAc,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC/C,qBAAqB,EAAE,KAAK,CAAC,SAAS,CAAC;CACxC,CAqCA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { default as AssortmentManagerHeaderData } from './HeaderData';
|
|
2
2
|
export { default as AssortmentManagerArticleData } from './ArticleData';
|
|
3
3
|
export { default as AssortmentManagerColliData } from './ColliData';
|
|
4
|
+
export { default as AssortmentManagerSupplierColors } from './SupplierColors';
|
|
4
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/AssortmentManager/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,2BAA2B,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/AssortmentManager/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,2BAA2B,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,+BAA+B,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"finalDeletes.test.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/AssortmentManager/tests/finalDeletes.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sapNrList.test.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/AssortmentManager/tests/sapNrList.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"supplierColors.test.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/AssortmentManager/tests/supplierColors.test.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@crystaldesign/diva-backoffice",
|
|
3
|
-
"version": "26.13.0-beta.
|
|
3
|
+
"version": "26.13.0-beta.35",
|
|
4
4
|
"description": "Ant Design backoffice shell (configuration modules), the Diva Data Engine component hosting the IDM and enricher editors, and the Produkt Onboarding component hosting the Assortment Manager.",
|
|
5
5
|
"license": "COMMERCIAL",
|
|
6
6
|
"devDependencies": {
|
|
@@ -16,16 +16,16 @@
|
|
|
16
16
|
"dependencies": {
|
|
17
17
|
"@ant-design/icons": "6.3.4",
|
|
18
18
|
"@babel/runtime": "7.24.7",
|
|
19
|
-
"@crystaldesign/classification": "26.13.0-beta.
|
|
20
|
-
"@crystaldesign/content-box": "26.13.0-beta.
|
|
21
|
-
"@crystaldesign/content-item": "26.13.0-beta.
|
|
22
|
-
"@crystaldesign/diva-agent": "26.13.0-beta.
|
|
23
|
-
"@crystaldesign/diva-core": "26.13.0-beta.
|
|
24
|
-
"@crystaldesign/diva-utils": "26.13.0-beta.
|
|
25
|
-
"@crystaldesign/mass-configurator": "26.13.0-beta.
|
|
26
|
-
"@crystaldesign/media-upload": "26.13.0-beta.
|
|
27
|
-
"@crystaldesign/rtf-editor": "26.13.0-beta.
|
|
28
|
-
"@crystaldesign/spreadsheet": "26.13.0-beta.
|
|
19
|
+
"@crystaldesign/classification": "26.13.0-beta.35",
|
|
20
|
+
"@crystaldesign/content-box": "26.13.0-beta.35",
|
|
21
|
+
"@crystaldesign/content-item": "26.13.0-beta.35",
|
|
22
|
+
"@crystaldesign/diva-agent": "26.13.0-beta.35",
|
|
23
|
+
"@crystaldesign/diva-core": "26.13.0-beta.35",
|
|
24
|
+
"@crystaldesign/diva-utils": "26.13.0-beta.35",
|
|
25
|
+
"@crystaldesign/mass-configurator": "26.13.0-beta.35",
|
|
26
|
+
"@crystaldesign/media-upload": "26.13.0-beta.35",
|
|
27
|
+
"@crystaldesign/rtf-editor": "26.13.0-beta.35",
|
|
28
|
+
"@crystaldesign/spreadsheet": "26.13.0-beta.35",
|
|
29
29
|
"@dnd-kit/core": "^6.1.0",
|
|
30
30
|
"@dnd-kit/sortable": "^8.0.0",
|
|
31
31
|
"@dnd-kit/utilities": "^3.2.2",
|
|
@@ -63,5 +63,5 @@
|
|
|
63
63
|
"suiteName": "diva-backoffice",
|
|
64
64
|
"outputDirectory": "./test-reports"
|
|
65
65
|
},
|
|
66
|
-
"gitHead": "
|
|
66
|
+
"gitHead": "c75def8c69e7d8e86d8d2abdb418b62f8cc624fd"
|
|
67
67
|
}
|