@sales-planner/react 0.2.0 → 0.2.1

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/README.md CHANGED
@@ -84,46 +84,96 @@ function ImportSuppliers() {
84
84
  }
85
85
  ```
86
86
 
87
- ## Available Hooks
87
+ ## API Reference
88
88
 
89
- ### Coded entities
89
+ ### Provider
90
90
 
91
- `brands`, `categories`, `groups`, `statuses`, `suppliers`, `warehouses`, `marketplaces`, `skus` — each provides:
92
-
93
- - `.useList(ctx, query?)` — paginated list
94
- - `.useById(ctx, id)` single entity
95
- - `.useByCode(ctx, code)` — lookup by code
96
- - `.useCreate(ctx)` — create mutation
97
- - `.useUpdate(ctx)` — update mutation (`{ id, data }`)
98
- - `.useDelete(ctx)` — delete mutation
99
- - `.useImportJson(ctx)` — JSON import mutation
100
- - `.useImportCsv(ctx)` — CSV import mutation
101
- - `.useExportJson(ctx)` — JSON export (manual trigger)
102
- - `.useExportCsv(ctx)` — CSV export (manual trigger)
103
-
104
- ### Shop-scoped entities
91
+ | Export | Description |
92
+ | --- | --- |
93
+ | `SalesPlannerProvider` | React context provider accepts `config` and `children` |
94
+ | `useSalesPlannerClient()` | Returns the underlying `SalesPlannerClient` for direct API access |
95
+ | `ClientConfig` | Type `{ baseUrl: string; apiKey?: string }` |
105
96
 
106
- `salesHistory`, `leftovers`, `seasonalCoefficients`, `skuCompetitorMappings`, `competitorProducts`, `competitorSales` — same as above minus `useByCode`.
97
+ ### Coded entity hooks
107
98
 
108
- ### Specialized
109
-
110
- - `useMe()` — current user
111
- - `useEntitiesMetadata()` — entity field metadata
112
- - `useSkuMetrics(ctx, query?)` — paginated SKU metrics
113
- - `useSkuMetricsById(ctx, id)` — single SKU metric
114
- - `useSkuMetricsByAbcClass(ctx, 'A' | 'B' | 'C')` — filter by ABC class
115
- - `useSkuMetricsExportCsv(ctx)` — CSV export
116
- - `useComputedViews(ctx)` — list materialized views
117
- - `useRefreshAllViews(ctx)` — refresh all views mutation
118
-
119
- ## Cache Invalidation
99
+ `brands`, `categories`, `groups`, `statuses`, `suppliers`, `warehouses`, `marketplaces`, `skus` — each provides:
120
100
 
121
- All mutations automatically invalidate related query caches. The `queryKeys` object is exported for custom cache management:
101
+ | Hook | Kind | Description |
102
+ | --- | --- | --- |
103
+ | `.useList(ctx, query?)` | query | Paginated list |
104
+ | `.useById(ctx, id)` | query | Single entity by ID |
105
+ | `.useByCode(ctx, code)` | query | Lookup by code |
106
+ | `.useExportJson(ctx)` | query | JSON export (`enabled: false`, manual trigger) |
107
+ | `.useExportCsv(ctx)` | query | CSV export (`enabled: false`, manual trigger) |
108
+ | `.useExampleJson()` | query | Example JSON (public, `staleTime: Infinity`) |
109
+ | `.useExampleCsv()` | query | Example CSV (public, `staleTime: Infinity`) |
110
+ | `.useCreate(ctx)` | mutation | Create entity |
111
+ | `.useUpdate(ctx)` | mutation | Update entity (`{ id, data }`) |
112
+ | `.useDelete(ctx)` | mutation | Delete entity by ID |
113
+ | `.useImportJson(ctx)` | mutation | Bulk import from JSON |
114
+ | `.useImportCsv(ctx)` | mutation | Bulk import from CSV |
115
+
116
+ `ctx` is `ShopContext` — `{ shopId: number; tenantId: number }`.
117
+
118
+ ### Shop-scoped entity hooks
119
+
120
+ `salesHistory`, `leftovers`, `seasonalCoefficients`, `skuCompetitorMappings`, `competitorProducts`, `competitorSales` — same as coded entities **without** `.useByCode`.
121
+
122
+ ### Specialized hooks
123
+
124
+ | Hook | Kind | Description |
125
+ | --- | --- | --- |
126
+ | `useMe(options?)` | query | Current user with roles and tenants |
127
+ | `useEntitiesMetadata(options?)` | query | Entity field metadata (`staleTime: Infinity`) |
128
+ | `useSkuMetrics(ctx, query?, options?)` | query | Paginated SKU metrics |
129
+ | `useSkuMetricsById(ctx, id, options?)` | query | Single SKU metric |
130
+ | `useSkuMetricsByAbcClass(ctx, 'A'\|'B'\|'C', options?)` | query | SKU metrics filtered by ABC class |
131
+ | `useSkuMetricsExportCsv(ctx, options?)` | query | CSV export (`enabled: false`, manual trigger) |
132
+ | `useComputedViews(ctx, options?)` | query | List materialized views |
133
+ | `useRefreshAllViews(ctx, options?)` | mutation | Refresh all views (auto-invalidates `skuMetrics`) |
134
+
135
+ ### Utilities
136
+
137
+ | Export | Description |
138
+ | --- | --- |
139
+ | `queryKeys` | Query key factory for custom cache management |
140
+ | `ShopContext` | Type — `{ shopId: number; tenantId: number }` |
141
+ | `toShopContextParams(ctx)` | Converts `ShopContext` to `ShopContextParams` |
142
+ | `createCodedEntityHooks(name, accessor)` | Factory — build your own coded entity hook set |
143
+ | `createShopScopedHooks(name, accessor)` | Factory — build your own shop-scoped hook set |
144
+
145
+ ### Query keys
146
+
147
+ All keys start with `'sales-planner'`. Use `queryKeys` for custom invalidation:
122
148
 
123
149
  ```tsx
124
150
  import { queryKeys } from '@sales-planner/react';
125
151
  import { useQueryClient } from '@tanstack/react-query';
126
152
 
127
- const queryClient = useQueryClient();
128
- queryClient.invalidateQueries({ queryKey: queryKeys.entity('skus', ctx) });
153
+ const qc = useQueryClient();
154
+
155
+ // Invalidate all SKU queries
156
+ qc.invalidateQueries({ queryKey: queryKeys.entity('skus', ctx) });
129
157
  ```
158
+
159
+ Available keys:
160
+
161
+ | Key | Arguments | Purpose |
162
+ | --- | --- | --- |
163
+ | `queryKeys.me()` | — | Current user |
164
+ | `queryKeys.metadata()` | — | Entity metadata |
165
+ | `queryKeys.entity(name, ctx)` | entity name, shop context | Root key for an entity |
166
+ | `queryKeys.entityList(name, ctx, query?)` | entity, ctx, pagination | Paginated list |
167
+ | `queryKeys.entityDetail(name, ctx, id)` | entity, ctx, id | Single entity |
168
+ | `queryKeys.entityByCode(name, ctx, code)` | entity, ctx, code | Code lookup |
169
+ | `queryKeys.entityExport(name, ctx, format)` | entity, ctx, `'json'\|'csv'` | Export |
170
+ | `queryKeys.entityExample(name, format)` | entity, `'json'\|'csv'` | Example (no ctx — public) |
171
+ | `queryKeys.skuMetrics(ctx)` | ctx | SKU metrics root |
172
+ | `queryKeys.skuMetricsList(ctx, query?)` | ctx, pagination | SKU metrics list |
173
+ | `queryKeys.skuMetricsDetail(ctx, id)` | ctx, id | Single SKU metric |
174
+ | `queryKeys.skuMetricsAbc(ctx, class)` | ctx, `'A'\|'B'\|'C'` | ABC class filter |
175
+ | `queryKeys.computed(ctx)` | ctx | Computed views root |
176
+
177
+ ## Cache Invalidation
178
+
179
+ All mutations automatically invalidate their related query caches. `useRefreshAllViews` additionally invalidates `skuMetrics`.
@@ -5,6 +5,8 @@ export declare const brands: {
5
5
  useByCode: (ctx: import("./keys.js").ShopContext, code: string, options?: Omit<import("@tanstack/react-query").UseQueryOptions<Brand, Error, Brand, readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<Brand, Error>;
6
6
  useExportJson: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseQueryOptions<import("@sales-planner/shared").CodedTitledItem[], Error, import("@sales-planner/shared").CodedTitledItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<import("@sales-planner/shared").CodedTitledItem[], Error>;
7
7
  useExportCsv: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
8
+ useExampleJson: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<import("@sales-planner/shared").CodedTitledItem[], Error, import("@sales-planner/shared").CodedTitledItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<import("@sales-planner/shared").CodedTitledItem[], Error>;
9
+ useExampleCsv: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
8
10
  useCreate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<Brand, Error, import("@sales-planner/shared").CodedTitledItem, unknown>, "mutationFn"> | undefined) => import("@tanstack/react-query").UseMutationResult<Brand, Error, import("@sales-planner/shared").CodedTitledItem, unknown>;
9
11
  useUpdate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<Brand, Error, {
10
12
  id: number;
@@ -23,6 +25,8 @@ export declare const categories: {
23
25
  useByCode: (ctx: import("./keys.js").ShopContext, code: string, options?: Omit<import("@tanstack/react-query").UseQueryOptions<Category, Error, Category, readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<Category, Error>;
24
26
  useExportJson: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseQueryOptions<import("@sales-planner/shared").CodedTitledItem[], Error, import("@sales-planner/shared").CodedTitledItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<import("@sales-planner/shared").CodedTitledItem[], Error>;
25
27
  useExportCsv: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
28
+ useExampleJson: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<import("@sales-planner/shared").CodedTitledItem[], Error, import("@sales-planner/shared").CodedTitledItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<import("@sales-planner/shared").CodedTitledItem[], Error>;
29
+ useExampleCsv: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
26
30
  useCreate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<Category, Error, import("@sales-planner/shared").CodedTitledItem, unknown>, "mutationFn"> | undefined) => import("@tanstack/react-query").UseMutationResult<Category, Error, import("@sales-planner/shared").CodedTitledItem, unknown>;
27
31
  useUpdate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<Category, Error, {
28
32
  id: number;
@@ -41,6 +45,8 @@ export declare const groups: {
41
45
  useByCode: (ctx: import("./keys.js").ShopContext, code: string, options?: Omit<import("@tanstack/react-query").UseQueryOptions<Group, Error, Group, readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<Group, Error>;
42
46
  useExportJson: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseQueryOptions<import("@sales-planner/shared").CodedTitledItem[], Error, import("@sales-planner/shared").CodedTitledItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<import("@sales-planner/shared").CodedTitledItem[], Error>;
43
47
  useExportCsv: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
48
+ useExampleJson: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<import("@sales-planner/shared").CodedTitledItem[], Error, import("@sales-planner/shared").CodedTitledItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<import("@sales-planner/shared").CodedTitledItem[], Error>;
49
+ useExampleCsv: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
44
50
  useCreate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<Group, Error, import("@sales-planner/shared").CodedTitledItem, unknown>, "mutationFn"> | undefined) => import("@tanstack/react-query").UseMutationResult<Group, Error, import("@sales-planner/shared").CodedTitledItem, unknown>;
45
51
  useUpdate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<Group, Error, {
46
52
  id: number;
@@ -59,6 +65,8 @@ export declare const statuses: {
59
65
  useByCode: (ctx: import("./keys.js").ShopContext, code: string, options?: Omit<import("@tanstack/react-query").UseQueryOptions<Status, Error, Status, readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<Status, Error>;
60
66
  useExportJson: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseQueryOptions<import("@sales-planner/shared").CodedTitledItem[], Error, import("@sales-planner/shared").CodedTitledItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<import("@sales-planner/shared").CodedTitledItem[], Error>;
61
67
  useExportCsv: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
68
+ useExampleJson: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<import("@sales-planner/shared").CodedTitledItem[], Error, import("@sales-planner/shared").CodedTitledItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<import("@sales-planner/shared").CodedTitledItem[], Error>;
69
+ useExampleCsv: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
62
70
  useCreate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<Status, Error, import("@sales-planner/shared").CodedTitledItem, unknown>, "mutationFn"> | undefined) => import("@tanstack/react-query").UseMutationResult<Status, Error, import("@sales-planner/shared").CodedTitledItem, unknown>;
63
71
  useUpdate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<Status, Error, {
64
72
  id: number;
@@ -77,6 +85,8 @@ export declare const suppliers: {
77
85
  useByCode: (ctx: import("./keys.js").ShopContext, code: string, options?: Omit<import("@tanstack/react-query").UseQueryOptions<Supplier, Error, Supplier, readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<Supplier, Error>;
78
86
  useExportJson: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseQueryOptions<import("@sales-planner/shared").CodedTitledItem[], Error, import("@sales-planner/shared").CodedTitledItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<import("@sales-planner/shared").CodedTitledItem[], Error>;
79
87
  useExportCsv: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
88
+ useExampleJson: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<import("@sales-planner/shared").CodedTitledItem[], Error, import("@sales-planner/shared").CodedTitledItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<import("@sales-planner/shared").CodedTitledItem[], Error>;
89
+ useExampleCsv: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
80
90
  useCreate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<Supplier, Error, import("@sales-planner/shared").CodedTitledItem, unknown>, "mutationFn"> | undefined) => import("@tanstack/react-query").UseMutationResult<Supplier, Error, import("@sales-planner/shared").CodedTitledItem, unknown>;
81
91
  useUpdate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<Supplier, Error, {
82
92
  id: number;
@@ -95,6 +105,8 @@ export declare const warehouses: {
95
105
  useByCode: (ctx: import("./keys.js").ShopContext, code: string, options?: Omit<import("@tanstack/react-query").UseQueryOptions<Warehouse, Error, Warehouse, readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<Warehouse, Error>;
96
106
  useExportJson: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseQueryOptions<import("@sales-planner/shared").CodedTitledItem[], Error, import("@sales-planner/shared").CodedTitledItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<import("@sales-planner/shared").CodedTitledItem[], Error>;
97
107
  useExportCsv: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
108
+ useExampleJson: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<import("@sales-planner/shared").CodedTitledItem[], Error, import("@sales-planner/shared").CodedTitledItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<import("@sales-planner/shared").CodedTitledItem[], Error>;
109
+ useExampleCsv: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
98
110
  useCreate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<Warehouse, Error, import("@sales-planner/shared").CodedTitledItem, unknown>, "mutationFn"> | undefined) => import("@tanstack/react-query").UseMutationResult<Warehouse, Error, import("@sales-planner/shared").CodedTitledItem, unknown>;
99
111
  useUpdate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<Warehouse, Error, {
100
112
  id: number;
@@ -113,6 +125,8 @@ export declare const marketplaces: {
113
125
  useByCode: (ctx: import("./keys.js").ShopContext, code: string, options?: Omit<import("@tanstack/react-query").UseQueryOptions<Marketplace, Error, Marketplace, readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<Marketplace, Error>;
114
126
  useExportJson: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseQueryOptions<import("@sales-planner/shared").CodedTitledItem[], Error, import("@sales-planner/shared").CodedTitledItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<import("@sales-planner/shared").CodedTitledItem[], Error>;
115
127
  useExportCsv: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
128
+ useExampleJson: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<import("@sales-planner/shared").CodedTitledItem[], Error, import("@sales-planner/shared").CodedTitledItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<import("@sales-planner/shared").CodedTitledItem[], Error>;
129
+ useExampleCsv: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
116
130
  useCreate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<Marketplace, Error, import("@sales-planner/shared").CodedTitledItem, unknown>, "mutationFn"> | undefined) => import("@tanstack/react-query").UseMutationResult<Marketplace, Error, import("@sales-planner/shared").CodedTitledItem, unknown>;
117
131
  useUpdate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<Marketplace, Error, {
118
132
  id: number;
@@ -1 +1 @@
1
- {"version":3,"file":"coded-entities.d.ts","sourceRoot":"","sources":["../src/coded-entities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,KAAK,EAKL,QAAQ,EAKR,KAAK,EAKL,MAAM,EAKN,QAAQ,EAKR,SAAS,EAKT,WAAW,EAKZ,MAAM,uBAAuB,CAAC;AAG/B,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;CAMS,CAAC;AAE7B,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;CAMa,CAAC;AAErC,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;CAMS,CAAC;AAE7B,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;CAMW,CAAC;AAEjC,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;CAMY,CAAC;AAEnC,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;CAMa,CAAC;AAErC,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;CAMe,CAAC"}
1
+ {"version":3,"file":"coded-entities.d.ts","sourceRoot":"","sources":["../src/coded-entities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,KAAK,EAKL,QAAQ,EAKR,KAAK,EAKL,MAAM,EAKN,QAAQ,EAKR,SAAS,EAKT,WAAW,EAKZ,MAAM,uBAAuB,CAAC;AAG/B,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;CAMS,CAAC;AAE7B,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;CAMa,CAAC;AAErC,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;CAMS,CAAC;AAE7B,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;CAMW,CAAC;AAEjC,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;CAMY,CAAC;AAEnC,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;CAMa,CAAC;AAErC,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;CAMe,CAAC"}
@@ -13,6 +13,8 @@ type CodedEntityClientLike<TEntity, TCreate, TUpdate, TImport, TExport> = {
13
13
  importCsv(ctx: ShopContextParams, csvContent: string): Promise<ImportResult>;
14
14
  exportJson(ctx: ShopContextParams): Promise<TExport[]>;
15
15
  exportCsv(ctx: ShopContextParams): Promise<string>;
16
+ getExampleJson(): Promise<TImport[]>;
17
+ getExampleCsv(): Promise<string>;
16
18
  };
17
19
  /**
18
20
  * Creates a set of React Query hooks for a coded entity (brands, categories, etc.)
@@ -23,6 +25,8 @@ export declare function createCodedEntityHooks<TEntity, TCreate, TUpdate, TImpor
23
25
  useByCode: (ctx: ShopContext, code: string, options?: Omit<UseQueryOptions<TEntity>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<import("@tanstack/react-query").NoInfer<TEntity>, Error>;
24
26
  useExportJson: (ctx: ShopContext, options?: Omit<UseQueryOptions<TExport[]>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<TExport[], Error>;
25
27
  useExportCsv: (ctx: ShopContext, options?: Omit<UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
28
+ useExampleJson: (options?: Omit<UseQueryOptions<TImport[]>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<TImport[], Error>;
29
+ useExampleCsv: (options?: Omit<UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
26
30
  useCreate: (ctx: ShopContext, options?: Omit<UseMutationOptions<TEntity, Error, TCreate>, "mutationFn">) => import("@tanstack/react-query").UseMutationResult<TEntity, Error, TCreate, unknown>;
27
31
  useUpdate: (ctx: ShopContext, options?: Omit<UseMutationOptions<TEntity, Error, {
28
32
  id: number;
@@ -1 +1 @@
1
- {"version":3,"file":"create-coded-entity-hooks.d.ts","sourceRoot":"","sources":["../src/create-coded-entity-hooks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,KAAK,EACV,iBAAiB,EACjB,eAAe,EACf,YAAY,EACZ,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,KAAK,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI;IACxE,MAAM,CAAC,GAAG,EAAE,iBAAiB,EAAE,KAAK,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7F,OAAO,CAAC,GAAG,EAAE,iBAAiB,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9D,SAAS,CAAC,GAAG,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAClE,MAAM,CAAC,GAAG,EAAE,iBAAiB,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnE,MAAM,CAAC,GAAG,EAAE,iBAAiB,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/E,MAAM,CAAC,GAAG,EAAE,iBAAiB,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,UAAU,CAAC,GAAG,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAC5E,SAAS,CAAC,GAAG,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAC7E,UAAU,CAAC,GAAG,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IACvD,SAAS,CAAC,GAAG,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACpD,CAAC;AAEF;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAChF,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,CACT,MAAM,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,KAC7C,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC;mBAGhE,WAAW,UACR,eAAe,YACb,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;mBAW9E,WAAW,MACZ,MAAM,YACA,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;qBAW3D,WAAW,QACV,MAAM,YACF,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;yBAW3D,WAAW,YACN,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;wBAY7D,WAAW,YACN,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;qBAY1D,WAAW,YACN,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,YAAY,CAAC;qBAcpE,WAAW,YACN,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,KAAK,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,CAAA;KAAE,CAAC,EAAE,YAAY,CAAC;YAK5D,MAAM;cAAQ,OAAO;;qBAUnD,WAAW,YACN,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,YAAY,CAAC;yBAchE,WAAW,YACN,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,YAAY,CAAC;wBAe3E,WAAW,YACN,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,YAAY,CAAC;EA0BhF"}
1
+ {"version":3,"file":"create-coded-entity-hooks.d.ts","sourceRoot":"","sources":["../src/create-coded-entity-hooks.ts"],"names":[],"mappings":"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"}
@@ -102,12 +102,32 @@ export function createCodedEntityHooks(entityName, getClient) {
102
102
  ...options,
103
103
  });
104
104
  }
105
+ function useExampleJson(options) {
106
+ const client = useSalesPlannerClient();
107
+ return useQuery({
108
+ queryKey: queryKeys.entityExample(entityName, 'json'),
109
+ queryFn: () => getClient(client).getExampleJson(),
110
+ staleTime: Number.POSITIVE_INFINITY,
111
+ ...options,
112
+ });
113
+ }
114
+ function useExampleCsv(options) {
115
+ const client = useSalesPlannerClient();
116
+ return useQuery({
117
+ queryKey: queryKeys.entityExample(entityName, 'csv'),
118
+ queryFn: () => getClient(client).getExampleCsv(),
119
+ staleTime: Number.POSITIVE_INFINITY,
120
+ ...options,
121
+ });
122
+ }
105
123
  return {
106
124
  useList,
107
125
  useById,
108
126
  useByCode,
109
127
  useExportJson,
110
128
  useExportCsv,
129
+ useExampleJson,
130
+ useExampleCsv,
111
131
  useCreate,
112
132
  useUpdate,
113
133
  useDelete,
@@ -12,6 +12,8 @@ type ShopScopedClientLike<TEntity, TCreate, TUpdate, TImport, TExport, TImportRe
12
12
  importCsv(ctx: ShopContextParams, csvContent: string): Promise<TImportResult>;
13
13
  exportJson(ctx: ShopContextParams, query?: TQuery): Promise<TExport[]>;
14
14
  exportCsv(ctx: ShopContextParams, query?: TQuery): Promise<string>;
15
+ getExampleJson(): Promise<TImport[]>;
16
+ getExampleCsv(): Promise<string>;
15
17
  };
16
18
  /**
17
19
  * Creates a set of React Query hooks for a shop-scoped entity
@@ -22,6 +24,8 @@ export declare function createShopScopedHooks<TEntity, TCreate, TUpdate, TImport
22
24
  useById: (ctx: ShopContext, id: number, options?: Omit<UseQueryOptions<TEntity>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<import("@tanstack/react-query").NoInfer<TEntity>, Error>;
23
25
  useExportJson: (ctx: ShopContext, query?: TQuery, options?: Omit<UseQueryOptions<TExport[]>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<TExport[], Error>;
24
26
  useExportCsv: (ctx: ShopContext, query?: TQuery, options?: Omit<UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
27
+ useExampleJson: (options?: Omit<UseQueryOptions<TImport[]>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<TImport[], Error>;
28
+ useExampleCsv: (options?: Omit<UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
25
29
  useCreate: (ctx: ShopContext, options?: Omit<UseMutationOptions<TEntity, Error, TCreate>, "mutationFn">) => import("@tanstack/react-query").UseMutationResult<TEntity, Error, TCreate, unknown>;
26
30
  useUpdate: (ctx: ShopContext, options?: Omit<UseMutationOptions<TEntity, Error, {
27
31
  id: number;
@@ -1 +1 @@
1
- {"version":3,"file":"create-shop-scoped-hooks.d.ts","sourceRoot":"","sources":["../src/create-shop-scoped-hooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-shop-scoped-hooks.d.ts","sourceRoot":"","sources":["../src/create-shop-scoped-hooks.ts"],"names":[],"mappings":"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"}
@@ -95,11 +95,31 @@ export function createShopScopedHooks(entityName, getClient) {
95
95
  ...options,
96
96
  });
97
97
  }
98
+ function useExampleJson(options) {
99
+ const client = useSalesPlannerClient();
100
+ return useQuery({
101
+ queryKey: queryKeys.entityExample(entityName, 'json'),
102
+ queryFn: () => getClient(client).getExampleJson(),
103
+ staleTime: Number.POSITIVE_INFINITY,
104
+ ...options,
105
+ });
106
+ }
107
+ function useExampleCsv(options) {
108
+ const client = useSalesPlannerClient();
109
+ return useQuery({
110
+ queryKey: queryKeys.entityExample(entityName, 'csv'),
111
+ queryFn: () => getClient(client).getExampleCsv(),
112
+ staleTime: Number.POSITIVE_INFINITY,
113
+ ...options,
114
+ });
115
+ }
98
116
  return {
99
117
  useList,
100
118
  useById,
101
119
  useExportJson,
102
120
  useExportCsv,
121
+ useExampleJson,
122
+ useExampleCsv,
103
123
  useCreate,
104
124
  useUpdate,
105
125
  useDelete,
package/dist/keys.d.ts CHANGED
@@ -18,6 +18,7 @@ export declare const queryKeys: {
18
18
  readonly entityDetail: (entity: string, ctx: ShopContext, id: number) => readonly ["sales-planner", string, number, number, number];
19
19
  readonly entityByCode: (entity: string, ctx: ShopContext, code: string) => readonly ["sales-planner", string, number, number, "code", string];
20
20
  readonly entityExport: (entity: string, ctx: ShopContext, format: "json" | "csv") => readonly ["sales-planner", string, number, number, "export", "json" | "csv"];
21
+ readonly entityExample: (entity: string, format: "json" | "csv") => readonly ["sales-planner", string, "example", "json" | "csv"];
21
22
  readonly skuMetrics: (ctx: ShopContext) => readonly ["sales-planner", "sku-metrics", number, number];
22
23
  readonly skuMetricsList: (ctx: ShopContext, query?: Record<string, unknown>) => readonly ["sales-planner", "sku-metrics", number, number, "list", Record<string, unknown>];
23
24
  readonly skuMetricsDetail: (ctx: ShopContext, id: number) => readonly ["sales-planner", "sku-metrics", number, number, number];
@@ -1 +1 @@
1
- {"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../src/keys.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,WAAW,GAAG,iBAAiB,CAEvE;AAED;;GAEG;AACH,eAAO,MAAM,SAAS;;;8BAIH,MAAM,OAAO,WAAW;kCAGpB,MAAM,OAAO,WAAW,UAAU,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;oCAGvD,MAAM,OAAO,WAAW,MAAM,MAAM;oCAGpC,MAAM,OAAO,WAAW,QAAQ,MAAM;oCAGtC,MAAM,OAAO,WAAW,UAAU,MAAM,GAAG,KAAK;+BAGrD,WAAW;mCAEP,WAAW,UAAU,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;qCAE1C,WAAW,MAAM,MAAM;kCAC1B,WAAW,YAAY,MAAM;6BAGlC,WAAW;CACnB,CAAC"}
1
+ {"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../src/keys.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,WAAW,GAAG,iBAAiB,CAEvE;AAED;;GAEG;AACH,eAAO,MAAM,SAAS;;;8BAIH,MAAM,OAAO,WAAW;kCAGpB,MAAM,OAAO,WAAW,UAAU,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;oCAGvD,MAAM,OAAO,WAAW,MAAM,MAAM;oCAGpC,MAAM,OAAO,WAAW,QAAQ,MAAM;oCAGtC,MAAM,OAAO,WAAW,UAAU,MAAM,GAAG,KAAK;qCAG/C,MAAM,UAAU,MAAM,GAAG,KAAK;+BAGpC,WAAW;mCAEP,WAAW,UAAU,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;qCAE1C,WAAW,MAAM,MAAM;kCAC1B,WAAW,YAAY,MAAM;6BAGlC,WAAW;CACnB,CAAC"}
package/dist/keys.js CHANGED
@@ -12,6 +12,7 @@ export const queryKeys = {
12
12
  entityDetail: (entity, ctx, id) => [...queryKeys.entity(entity, ctx), id],
13
13
  entityByCode: (entity, ctx, code) => [...queryKeys.entity(entity, ctx), 'code', code],
14
14
  entityExport: (entity, ctx, format) => [...queryKeys.entity(entity, ctx), 'export', format],
15
+ entityExample: (entity, format) => ['sales-planner', entity, 'example', format],
15
16
  skuMetrics: (ctx) => ['sales-planner', 'sku-metrics', ctx.shopId, ctx.tenantId],
16
17
  skuMetricsList: (ctx, query) => [...queryKeys.skuMetrics(ctx), 'list', query ?? {}],
17
18
  skuMetricsDetail: (ctx, id) => [...queryKeys.skuMetrics(ctx), id],
@@ -5,6 +5,8 @@ export declare const skus: {
5
5
  useByCode: (ctx: import("./keys.js").ShopContext, code: string, options?: Omit<import("@tanstack/react-query").UseQueryOptions<Sku, Error, Sku, readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<Sku, Error>;
6
6
  useExportJson: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseQueryOptions<SkuExportItem[], Error, SkuExportItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<SkuExportItem[], Error>;
7
7
  useExportCsv: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
8
+ useExampleJson: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<ImportSkuItem[], Error, ImportSkuItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<ImportSkuItem[], Error>;
9
+ useExampleCsv: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
8
10
  useCreate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<Sku, Error, CreateSkuRequest, unknown>, "mutationFn"> | undefined) => import("@tanstack/react-query").UseMutationResult<Sku, Error, CreateSkuRequest, unknown>;
9
11
  useUpdate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<Sku, Error, {
10
12
  id: number;
@@ -22,6 +24,8 @@ export declare const salesHistory: {
22
24
  useById: (ctx: import("./keys.js").ShopContext, id: number, options?: Omit<import("@tanstack/react-query").UseQueryOptions<SalesHistory, Error, SalesHistory, readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<SalesHistory, Error>;
23
25
  useExportJson: (ctx: import("./keys.js").ShopContext, query?: SalesHistoryQuery | undefined, options?: Omit<import("@tanstack/react-query").UseQueryOptions<SalesHistoryExportItem[], Error, SalesHistoryExportItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<SalesHistoryExportItem[], Error>;
24
26
  useExportCsv: (ctx: import("./keys.js").ShopContext, query?: SalesHistoryQuery | undefined, options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
27
+ useExampleJson: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<ImportSalesHistoryItem[], Error, ImportSalesHistoryItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<ImportSalesHistoryItem[], Error>;
28
+ useExampleCsv: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
25
29
  useCreate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<SalesHistory, Error, CreateSalesHistoryRequest, unknown>, "mutationFn"> | undefined) => import("@tanstack/react-query").UseMutationResult<SalesHistory, Error, CreateSalesHistoryRequest, unknown>;
26
30
  useUpdate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<SalesHistory, Error, {
27
31
  id: number;
@@ -39,6 +43,8 @@ export declare const leftovers: {
39
43
  useById: (ctx: import("./keys.js").ShopContext, id: number, options?: Omit<import("@tanstack/react-query").UseQueryOptions<Leftover, Error, Leftover, readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<Leftover, Error>;
40
44
  useExportJson: (ctx: import("./keys.js").ShopContext, query?: LeftoverQuery | undefined, options?: Omit<import("@tanstack/react-query").UseQueryOptions<LeftoverExportItem[], Error, LeftoverExportItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<LeftoverExportItem[], Error>;
41
45
  useExportCsv: (ctx: import("./keys.js").ShopContext, query?: LeftoverQuery | undefined, options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
46
+ useExampleJson: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<ImportLeftoverItem[], Error, ImportLeftoverItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<ImportLeftoverItem[], Error>;
47
+ useExampleCsv: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
42
48
  useCreate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<Leftover, Error, CreateLeftoverRequest, unknown>, "mutationFn"> | undefined) => import("@tanstack/react-query").UseMutationResult<Leftover, Error, CreateLeftoverRequest, unknown>;
43
49
  useUpdate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<Leftover, Error, {
44
50
  id: number;
@@ -56,6 +62,8 @@ export declare const seasonalCoefficients: {
56
62
  useById: (ctx: import("./keys.js").ShopContext, id: number, options?: Omit<import("@tanstack/react-query").UseQueryOptions<SeasonalCoefficient, Error, SeasonalCoefficient, readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<SeasonalCoefficient, Error>;
57
63
  useExportJson: (ctx: import("./keys.js").ShopContext, query?: PaginationQuery | undefined, options?: Omit<import("@tanstack/react-query").UseQueryOptions<SeasonalCoefficientExportItem[], Error, SeasonalCoefficientExportItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<SeasonalCoefficientExportItem[], Error>;
58
64
  useExportCsv: (ctx: import("./keys.js").ShopContext, query?: PaginationQuery | undefined, options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
65
+ useExampleJson: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<ImportSeasonalCoefficientItem[], Error, ImportSeasonalCoefficientItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<ImportSeasonalCoefficientItem[], Error>;
66
+ useExampleCsv: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
59
67
  useCreate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<SeasonalCoefficient, Error, CreateSeasonalCoefficientRequest, unknown>, "mutationFn"> | undefined) => import("@tanstack/react-query").UseMutationResult<SeasonalCoefficient, Error, CreateSeasonalCoefficientRequest, unknown>;
60
68
  useUpdate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<SeasonalCoefficient, Error, {
61
69
  id: number;
@@ -73,6 +81,8 @@ export declare const skuCompetitorMappings: {
73
81
  useById: (ctx: import("./keys.js").ShopContext, id: number, options?: Omit<import("@tanstack/react-query").UseQueryOptions<SkuCompetitorMapping, Error, SkuCompetitorMapping, readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<SkuCompetitorMapping, Error>;
74
82
  useExportJson: (ctx: import("./keys.js").ShopContext, query?: PaginationQuery | undefined, options?: Omit<import("@tanstack/react-query").UseQueryOptions<SkuCompetitorMappingExportItem[], Error, SkuCompetitorMappingExportItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<SkuCompetitorMappingExportItem[], Error>;
75
83
  useExportCsv: (ctx: import("./keys.js").ShopContext, query?: PaginationQuery | undefined, options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
84
+ useExampleJson: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<ImportSkuCompetitorMappingItem[], Error, ImportSkuCompetitorMappingItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<ImportSkuCompetitorMappingItem[], Error>;
85
+ useExampleCsv: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
76
86
  useCreate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<SkuCompetitorMapping, Error, CreateSkuCompetitorMappingRequest, unknown>, "mutationFn"> | undefined) => import("@tanstack/react-query").UseMutationResult<SkuCompetitorMapping, Error, CreateSkuCompetitorMappingRequest, unknown>;
77
87
  useUpdate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<SkuCompetitorMapping, Error, {
78
88
  id: number;
@@ -90,6 +100,8 @@ export declare const competitorProducts: {
90
100
  useById: (ctx: import("./keys.js").ShopContext, id: number, options?: Omit<import("@tanstack/react-query").UseQueryOptions<CompetitorProduct, Error, CompetitorProduct, readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<CompetitorProduct, Error>;
91
101
  useExportJson: (ctx: import("./keys.js").ShopContext, query?: CompetitorProductQuery | undefined, options?: Omit<import("@tanstack/react-query").UseQueryOptions<CompetitorProductExportItem[], Error, CompetitorProductExportItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<CompetitorProductExportItem[], Error>;
92
102
  useExportCsv: (ctx: import("./keys.js").ShopContext, query?: CompetitorProductQuery | undefined, options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
103
+ useExampleJson: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<ImportCompetitorProductItem[], Error, ImportCompetitorProductItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<ImportCompetitorProductItem[], Error>;
104
+ useExampleCsv: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
93
105
  useCreate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<CompetitorProduct, Error, CreateCompetitorProductRequest, unknown>, "mutationFn"> | undefined) => import("@tanstack/react-query").UseMutationResult<CompetitorProduct, Error, CreateCompetitorProductRequest, unknown>;
94
106
  useUpdate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<CompetitorProduct, Error, {
95
107
  id: number;
@@ -107,6 +119,8 @@ export declare const competitorSales: {
107
119
  useById: (ctx: import("./keys.js").ShopContext, id: number, options?: Omit<import("@tanstack/react-query").UseQueryOptions<CompetitorSale, Error, CompetitorSale, readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<CompetitorSale, Error>;
108
120
  useExportJson: (ctx: import("./keys.js").ShopContext, query?: CompetitorSaleQuery | undefined, options?: Omit<import("@tanstack/react-query").UseQueryOptions<CompetitorSaleExportItem[], Error, CompetitorSaleExportItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<CompetitorSaleExportItem[], Error>;
109
121
  useExportCsv: (ctx: import("./keys.js").ShopContext, query?: CompetitorSaleQuery | undefined, options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
122
+ useExampleJson: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<ImportCompetitorSaleItem[], Error, ImportCompetitorSaleItem[], readonly unknown[]>, "queryKey" | "queryFn"> | undefined) => import("@tanstack/react-query").UseQueryResult<ImportCompetitorSaleItem[], Error>;
123
+ useExampleCsv: (options?: Omit<import("@tanstack/react-query").UseQueryOptions<string>, "queryKey" | "queryFn">) => import("@tanstack/react-query").UseQueryResult<string, Error>;
110
124
  useCreate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<CompetitorSale, Error, CreateCompetitorSaleRequest, unknown>, "mutationFn"> | undefined) => import("@tanstack/react-query").UseMutationResult<CompetitorSale, Error, CreateCompetitorSaleRequest, unknown>;
111
125
  useUpdate: (ctx: import("./keys.js").ShopContext, options?: Omit<import("@tanstack/react-query").UseMutationOptions<CompetitorSale, Error, {
112
126
  id: number;
@@ -1 +1 @@
1
- {"version":3,"file":"shop-scoped-entities.d.ts","sourceRoot":"","sources":["../src/shop-scoped-entities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,GAAG,EACH,gBAAgB,EAEhB,aAAa,EACb,aAAa,EACb,eAAe,EACf,YAAY,EACZ,yBAAyB,EAEzB,sBAAsB,EACtB,sBAAsB,EACtB,wBAAwB,EACxB,iBAAiB,EACjB,QAAQ,EACR,qBAAqB,EAErB,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,mBAAmB,EACnB,gCAAgC,EAEhC,6BAA6B,EAC7B,6BAA6B,EAC7B,oBAAoB,EACpB,iCAAiC,EAEjC,8BAA8B,EAC9B,8BAA8B,EAC9B,iBAAiB,EACjB,8BAA8B,EAE9B,2BAA2B,EAC3B,2BAA2B,EAC3B,cAAc,EACd,2BAA2B,EAE3B,wBAAwB,EACxB,wBAAwB,EACxB,sBAAsB,EACtB,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAK/B,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;CAMO,CAAC;AAEzB,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;CAQgB,CAAC;AAE1C,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;CAQY,CAAC;AAEnC,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;CAQwB,CAAC;AAE1D,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;CAQ0B,CAAC;AAE7D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;CAQsB,CAAC;AAEtD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;CAQmB,CAAC"}
1
+ {"version":3,"file":"shop-scoped-entities.d.ts","sourceRoot":"","sources":["../src/shop-scoped-entities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,GAAG,EACH,gBAAgB,EAEhB,aAAa,EACb,aAAa,EACb,eAAe,EACf,YAAY,EACZ,yBAAyB,EAEzB,sBAAsB,EACtB,sBAAsB,EACtB,wBAAwB,EACxB,iBAAiB,EACjB,QAAQ,EACR,qBAAqB,EAErB,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,mBAAmB,EACnB,gCAAgC,EAEhC,6BAA6B,EAC7B,6BAA6B,EAC7B,oBAAoB,EACpB,iCAAiC,EAEjC,8BAA8B,EAC9B,8BAA8B,EAC9B,iBAAiB,EACjB,8BAA8B,EAE9B,2BAA2B,EAC3B,2BAA2B,EAC3B,cAAc,EACd,2BAA2B,EAE3B,wBAAwB,EACxB,wBAAwB,EACxB,sBAAsB,EACtB,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAK/B,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;CAMO,CAAC;AAEzB,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;CAQgB,CAAC;AAE1C,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;CAQY,CAAC;AAEnC,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;CAQwB,CAAC;AAE1D,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;CAQ0B,CAAC;AAE7D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;CAQsB,CAAC;AAEtD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;CAQmB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sales-planner/react",
3
- "version": "0.2.0",
3
+ "version": "0.2.1",
4
4
  "description": "React hooks for Sales Planner API powered by TanStack Query",
5
5
  "author": "Damir Manapov",
6
6
  "license": "MIT",