@voyantjs/products-react 0.3.0 → 0.3.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.
Files changed (40) hide show
  1. package/dist/hooks/index.d.ts +8 -0
  2. package/dist/hooks/index.d.ts.map +1 -1
  3. package/dist/hooks/index.js +8 -0
  4. package/dist/hooks/use-product-day-mutation.d.ts +41 -0
  5. package/dist/hooks/use-product-day-mutation.d.ts.map +1 -0
  6. package/dist/hooks/use-product-day-mutation.js +41 -0
  7. package/dist/hooks/use-product-day-service-mutation.d.ts +63 -0
  8. package/dist/hooks/use-product-day-service-mutation.d.ts.map +1 -0
  9. package/dist/hooks/use-product-day-service-mutation.js +41 -0
  10. package/dist/hooks/use-product-day-services.d.ts +20 -0
  11. package/dist/hooks/use-product-day-services.d.ts.map +1 -0
  12. package/dist/hooks/use-product-day-services.js +12 -0
  13. package/dist/hooks/use-product-days.d.ts +16 -0
  14. package/dist/hooks/use-product-days.d.ts.map +1 -0
  15. package/dist/hooks/use-product-days.js +12 -0
  16. package/dist/hooks/use-product-media-mutation.d.ts +98 -0
  17. package/dist/hooks/use-product-media-mutation.d.ts.map +1 -0
  18. package/dist/hooks/use-product-media-mutation.js +69 -0
  19. package/dist/hooks/use-product-media.d.ts +26 -0
  20. package/dist/hooks/use-product-media.d.ts.map +1 -0
  21. package/dist/hooks/use-product-media.js +12 -0
  22. package/dist/hooks/use-product-version-mutation.d.ts +16 -0
  23. package/dist/hooks/use-product-version-mutation.d.ts.map +1 -0
  24. package/dist/hooks/use-product-version-mutation.js +22 -0
  25. package/dist/hooks/use-product-versions.d.ts +15 -0
  26. package/dist/hooks/use-product-versions.d.ts.map +1 -0
  27. package/dist/hooks/use-product-versions.js +12 -0
  28. package/dist/index.d.ts +1 -1
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js +1 -1
  31. package/dist/query-keys.d.ts +12 -0
  32. package/dist/query-keys.d.ts.map +1 -1
  33. package/dist/query-keys.js +6 -0
  34. package/dist/query-options.d.ts +260 -0
  35. package/dist/query-options.d.ts.map +1 -1
  36. package/dist/query-options.js +62 -1
  37. package/dist/schemas.d.ts +216 -0
  38. package/dist/schemas.d.ts.map +1 -1
  39. package/dist/schemas.js +60 -0
  40. package/package.json +5 -5
package/dist/schemas.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { insertDaySchema, insertDayServiceSchema, insertProductMediaSchema, insertVersionSchema, reorderProductMediaSchema, updateDaySchema, updateDayServiceSchema, updateProductMediaSchema, } from "@voyantjs/products";
1
2
  import { z } from "zod";
2
3
  export const paginatedEnvelope = (item) => z.object({
3
4
  data: z.array(item),
@@ -6,6 +7,7 @@ export const paginatedEnvelope = (item) => z.object({
6
7
  offset: z.number().int(),
7
8
  });
8
9
  export const singleEnvelope = (item) => z.object({ data: item });
10
+ export const arrayEnvelope = (item) => z.object({ data: z.array(item) });
9
11
  export const successEnvelope = z.object({ success: z.boolean() });
10
12
  export const productRecordSchema = z.object({
11
13
  id: z.string(),
@@ -91,6 +93,55 @@ export const optionUnitRecordSchema = z.object({
91
93
  isHidden: z.boolean(),
92
94
  sortOrder: z.number().int(),
93
95
  });
96
+ export const productDayRecordSchema = z.object({
97
+ id: z.string(),
98
+ productId: z.string(),
99
+ dayNumber: z.number().int(),
100
+ title: z.string().nullable(),
101
+ description: z.string().nullable(),
102
+ location: z.string().nullable(),
103
+ createdAt: z.string(),
104
+ updatedAt: z.string(),
105
+ });
106
+ export const productDayServiceRecordSchema = z.object({
107
+ id: z.string(),
108
+ dayId: z.string(),
109
+ supplierServiceId: z.string().nullable(),
110
+ serviceType: z.enum(["accommodation", "transfer", "experience", "guide", "meal", "other"]),
111
+ name: z.string(),
112
+ description: z.string().nullable(),
113
+ costCurrency: z.string(),
114
+ costAmountCents: z.number().int(),
115
+ quantity: z.number().int(),
116
+ sortOrder: z.number().int().nullable(),
117
+ notes: z.string().nullable(),
118
+ createdAt: z.string(),
119
+ });
120
+ export const productVersionRecordSchema = z.object({
121
+ id: z.string(),
122
+ productId: z.string(),
123
+ versionNumber: z.number().int(),
124
+ snapshot: z.unknown(),
125
+ authorId: z.string(),
126
+ notes: z.string().nullable(),
127
+ createdAt: z.string(),
128
+ });
129
+ export const productMediaRecordSchema = z.object({
130
+ id: z.string(),
131
+ productId: z.string(),
132
+ dayId: z.string().nullable(),
133
+ mediaType: z.enum(["image", "video", "document"]),
134
+ name: z.string(),
135
+ url: z.string(),
136
+ storageKey: z.string().nullable(),
137
+ mimeType: z.string().nullable(),
138
+ fileSize: z.number().int().nullable(),
139
+ altText: z.string().nullable(),
140
+ sortOrder: z.number().int(),
141
+ isCover: z.boolean(),
142
+ createdAt: z.string(),
143
+ updatedAt: z.string(),
144
+ });
94
145
  export const productListResponse = paginatedEnvelope(productRecordSchema);
95
146
  export const productSingleResponse = singleEnvelope(productRecordSchema);
96
147
  export const productTypeListResponse = paginatedEnvelope(productTypeRecordSchema);
@@ -103,3 +154,12 @@ export const productOptionListResponse = paginatedEnvelope(productOptionRecordSc
103
154
  export const productOptionSingleResponse = singleEnvelope(productOptionRecordSchema);
104
155
  export const optionUnitListResponse = paginatedEnvelope(optionUnitRecordSchema);
105
156
  export const optionUnitSingleResponse = singleEnvelope(optionUnitRecordSchema);
157
+ export const productDaysResponse = arrayEnvelope(productDayRecordSchema);
158
+ export const productDayResponse = singleEnvelope(productDayRecordSchema);
159
+ export const productDayServicesResponse = arrayEnvelope(productDayServiceRecordSchema);
160
+ export const productDayServiceResponse = singleEnvelope(productDayServiceRecordSchema);
161
+ export const productVersionsResponse = arrayEnvelope(productVersionRecordSchema);
162
+ export const productVersionResponse = singleEnvelope(productVersionRecordSchema);
163
+ export const productMediaListResponse = paginatedEnvelope(productMediaRecordSchema);
164
+ export const productMediaResponse = singleEnvelope(productMediaRecordSchema);
165
+ export { insertDaySchema, insertDayServiceSchema, insertProductMediaSchema, insertVersionSchema, reorderProductMediaSchema, updateDaySchema, updateDayServiceSchema, updateProductMediaSchema, };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@voyantjs/products-react",
3
- "version": "0.3.0",
3
+ "version": "0.3.1",
4
4
  "license": "FSL-1.1-Apache-2.0",
5
5
  "repository": {
6
6
  "type": "git",
@@ -35,7 +35,7 @@
35
35
  "react": "^19.0.0",
36
36
  "react-dom": "^19.0.0",
37
37
  "zod": "^4.0.0",
38
- "@voyantjs/products": "0.3.0"
38
+ "@voyantjs/products": "0.3.1"
39
39
  },
40
40
  "devDependencies": {
41
41
  "@tanstack/react-query": "^5.96.2",
@@ -46,12 +46,12 @@
46
46
  "typescript": "^6.0.2",
47
47
  "vitest": "^4.1.2",
48
48
  "zod": "^4.3.6",
49
- "@voyantjs/products": "0.3.0",
50
- "@voyantjs/react": "0.3.0",
49
+ "@voyantjs/products": "0.3.1",
50
+ "@voyantjs/react": "0.3.1",
51
51
  "@voyantjs/voyant-typescript-config": "0.1.0"
52
52
  },
53
53
  "dependencies": {
54
- "@voyantjs/react": "0.3.0"
54
+ "@voyantjs/react": "0.3.1"
55
55
  },
56
56
  "files": [
57
57
  "dist"