@ingenx-io/valets-schema-mcp-server 0.1.1 → 0.1.3

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 (43) hide show
  1. package/data/docs/collections/firestore-paths.md +49 -0
  2. package/data/docs/decisions/migrations.md +56 -0
  3. package/data/docs/decisions/summary.md +78 -0
  4. package/data/docs/enums/booking-status.md +26 -0
  5. package/data/docs/enums/customer-payment-status.md +26 -0
  6. package/data/docs/enums/customer-payment-target-type.md +23 -0
  7. package/data/docs/enums/delivery-type.md +23 -0
  8. package/data/docs/enums/event-status.md +30 -0
  9. package/data/docs/enums/fulfillment-status.md +32 -0
  10. package/data/docs/enums/loyalty-transaction-type.md +32 -0
  11. package/data/docs/enums/order-status.md +65 -0
  12. package/data/docs/enums/payment-method.md +36 -0
  13. package/data/docs/enums/payment-proof-status.md +23 -0
  14. package/data/docs/enums/payment-status.md +34 -0
  15. package/data/docs/enums/return-status.md +32 -0
  16. package/data/docs/enums/session-status.md +32 -0
  17. package/data/docs/enums/ticket-status.md +29 -0
  18. package/data/docs/index.md +102 -0
  19. package/data/docs/models/booking-version.md +295 -0
  20. package/data/docs/models/booking.md +1754 -0
  21. package/data/docs/models/customer-payment-allocation.md +336 -0
  22. package/data/docs/models/customer-payment.md +392 -0
  23. package/data/docs/models/customer.md +475 -0
  24. package/data/docs/models/event.md +386 -0
  25. package/data/docs/models/loyalty-config.md +317 -0
  26. package/data/docs/models/loyalty-reward.md +236 -0
  27. package/data/docs/models/loyalty-status.md +328 -0
  28. package/data/docs/models/loyalty-transaction.md +326 -0
  29. package/data/docs/models/metrics-current.md +532 -0
  30. package/data/docs/models/metrics-daily.md +548 -0
  31. package/data/docs/models/metrics-monthly.md +548 -0
  32. package/data/docs/models/order-item.md +361 -0
  33. package/data/docs/models/order.md +1637 -0
  34. package/data/docs/models/payment-summary.md +123 -0
  35. package/data/docs/models/sale.md +540 -0
  36. package/data/docs/models/ticket.md +405 -0
  37. package/data/docs/triggers/event-ticket-triggers.md +204 -0
  38. package/data/docs/triggers/loyalty-automation.md +123 -0
  39. package/data/static/decisions.json +966 -0
  40. package/data/static/llms.txt +1056 -0
  41. package/data/static/openapi.yaml +3090 -0
  42. package/data/static/schemas.json +4055 -0
  43. package/package.json +1 -1
@@ -0,0 +1,361 @@
1
+ ---
2
+ title: "OrderItem"
3
+ sidebar_label: "OrderItem"
4
+ sidebar_position: 15
5
+ ---
6
+
7
+ # OrderItem
8
+
9
+ <details>
10
+ <summary>Example JSON</summary>
11
+
12
+ ```json
13
+ {
14
+ "name": "Shea Butter Body Lotion",
15
+ "quantity": 3,
16
+ "price": 15000,
17
+ "productId": null,
18
+ "increment": null,
19
+ "variantId": null,
20
+ "supplierId": null,
21
+ "supplierName": null,
22
+ "sentAt": "sentAt",
23
+ "startedCookingAt": "startedCookingAt",
24
+ "readyAt": "readyAt",
25
+ "servedAt": "servedAt"
26
+ }
27
+ ```
28
+
29
+ </details>
30
+
31
+
32
+ - [1. Property `name`](#name)
33
+ - [2. Property `quantity`](#quantity)
34
+ - [3. Property `price`](#price)
35
+ - [4. Property `productId`](#productId)
36
+ - [5. Property `increment`](#increment)
37
+ - [6. Property `variantId`](#variantId)
38
+ - [7. Property `supplierId`](#supplierId)
39
+ - [8. Property `supplierName`](#supplierName)
40
+ - [9. Property `sentAt`](#sentAt)
41
+ - [9.1. Property `firestore-timestamp`](#sentAt_anyOf_i0)
42
+ - [9.1.1. Property `_seconds`](#sentAt_anyOf_i0__seconds)
43
+ - [9.1.2. Property `_nanoseconds`](#sentAt_anyOf_i0__nanoseconds)
44
+ - [9.2. Property `item 1`](#sentAt_anyOf_i1)
45
+ - [10. Property `startedCookingAt`](#startedCookingAt)
46
+ - [10.1. Property `firestore-timestamp`](#startedCookingAt_anyOf_i0)
47
+ - [10.2. Property `item 1`](#startedCookingAt_anyOf_i1)
48
+ - [11. Property `readyAt`](#readyAt)
49
+ - [11.1. Property `firestore-timestamp`](#readyAt_anyOf_i0)
50
+ - [11.2. Property `item 1`](#readyAt_anyOf_i1)
51
+ - [12. Property `servedAt`](#servedAt)
52
+ - [12.1. Property `firestore-timestamp`](#servedAt_anyOf_i0)
53
+ - [12.2. Property `item 1`](#servedAt_anyOf_i1)
54
+
55
+ | | |
56
+ | ------------------------- | ------------------------ |
57
+ | **Type** | `object` |
58
+ | **Required** | No |
59
+ | **Additional properties** | Not allowed |
60
+ | **Defined in** | #/definitions/order-item |
61
+
62
+ **Description:** Line item within an Order or Sale/Purchase. Canonical fields: name, quantity, price, productId. Optional commerce fields (increment, variantId, supplierId, supplierName) and kitchen tracking fields (sentAt, startedCookingAt, readyAt, servedAt) are TBD/WIP pending cross-platform alignment.
63
+
64
+ | Property | Pattern | Type | Deprecated | Definition | Title/Description |
65
+ | ---------------------------------------- | ------- | -------------- | ---------- | ---------- | ------------------------------------------------------------------------------------------------- |
66
+ | + [name](#name ) | No | string | No | - | Display name of the product or service. |
67
+ | + [quantity](#quantity ) | No | number | No | - | Number of units ordered. |
68
+ | + [price](#price ) | No | number | No | - | Unit price. Canonical name per D11. |
69
+ | - [productId](#productId ) | No | string or null | No | - | FK → Product document ID. |
70
+ | - [increment](#increment ) | No | number or null | No | - | Quantity step for bundle/bulk items (e.g. 5 for a 5-pack). Dashboard/Firebase only. |
71
+ | - [variantId](#variantId ) | No | string or null | No | - | FK → ProductVariant ID within the product. Dashboard/Firebase only. |
72
+ | - [supplierId](#supplierId ) | No | string or null | No | - | FK → Supplier document ID. B2B orders only. |
73
+ | - [supplierName](#supplierName ) | No | string or null | No | - | (Denormalized) From Supplier.name at write time. B2B orders only. |
74
+ | - [sentAt](#sentAt ) | No | Combination | No | - | (Read-only) Timestamp when the item was sent to the kitchen. TBD/WIP — archived CBL flow. |
75
+ | - [startedCookingAt](#startedCookingAt ) | No | Combination | No | - | (Read-only) Timestamp when the kitchen started preparing this item. TBD/WIP — archived CBL flow. |
76
+ | - [readyAt](#readyAt ) | No | Combination | No | - | (Read-only) Timestamp when the item was ready for pickup or service. TBD/WIP — archived CBL flow. |
77
+ | - [servedAt](#servedAt ) | No | Combination | No | - | (Read-only) Timestamp when the item was served to the customer. TBD/WIP — archived CBL flow. |
78
+
79
+ ## <a name="name"></a>1. Property `name`
80
+
81
+ | | |
82
+ | ------------ | -------- |
83
+ | **Type** | `string` |
84
+ | **Required** | Yes |
85
+
86
+ **Description:** Display name of the product or service.
87
+
88
+ ## <a name="quantity"></a>2. Property `quantity`
89
+
90
+ | | |
91
+ | ------------ | -------- |
92
+ | **Type** | `number` |
93
+ | **Required** | Yes |
94
+
95
+ **Description:** Number of units ordered.
96
+
97
+ ## <a name="price"></a>3. Property `price`
98
+
99
+ | | |
100
+ | ------------ | -------- |
101
+ | **Type** | `number` |
102
+ | **Required** | Yes |
103
+
104
+ **Description:** Unit price. Canonical name per D11.
105
+
106
+ ## <a name="productId"></a>4. Property `productId`
107
+
108
+ | | |
109
+ | ------------ | ---------------- |
110
+ | **Type** | `string or null` |
111
+ | **Required** | No |
112
+
113
+ **Description:** FK → Product document ID.
114
+
115
+ ## <a name="increment"></a>5. Property `increment`
116
+
117
+ | | |
118
+ | ------------ | ---------------- |
119
+ | **Type** | `number or null` |
120
+ | **Required** | No |
121
+
122
+ **Description:** Quantity step for bundle/bulk items (e.g. 5 for a 5-pack). Dashboard/Firebase only.
123
+
124
+ :::note
125
+ TBD/WIP — Dashboard/Firebase only. Canonical status pending cross-platform alignment.
126
+ :::
127
+
128
+ ## <a name="variantId"></a>6. Property `variantId`
129
+
130
+ | | |
131
+ | ------------ | ---------------- |
132
+ | **Type** | `string or null` |
133
+ | **Required** | No |
134
+
135
+ **Description:** FK → ProductVariant ID within the product. Dashboard/Firebase only.
136
+
137
+ :::note
138
+ TBD/WIP — Dashboard/Firebase only. Canonical status pending cross-platform alignment.
139
+ :::
140
+
141
+ ## <a name="supplierId"></a>7. Property `supplierId`
142
+
143
+ | | |
144
+ | ------------ | ---------------- |
145
+ | **Type** | `string or null` |
146
+ | **Required** | No |
147
+
148
+ **Description:** FK → Supplier document ID. B2B orders only.
149
+
150
+ :::note
151
+ TBD/WIP — B2B orders only. Canonical status pending cross-platform alignment.
152
+ :::
153
+
154
+ ## <a name="supplierName"></a>8. Property `supplierName`
155
+
156
+ | | |
157
+ | ------------ | ---------------- |
158
+ | **Type** | `string or null` |
159
+ | **Required** | No |
160
+
161
+ **Description:** (Denormalized) From Supplier.name at write time. B2B orders only.
162
+
163
+ :::note
164
+ TBD/WIP — B2B orders only. Canonical status pending cross-platform alignment.
165
+ :::
166
+
167
+ ## <a name="sentAt"></a>9. Property `sentAt`
168
+
169
+ | | |
170
+ | ------------------------- | ---------------- |
171
+ | **Type** | `combining` |
172
+ | **Required** | No |
173
+ | **Additional properties** | Any type allowed |
174
+
175
+ **Description:** (Read-only) Timestamp when the item was sent to the kitchen. TBD/WIP — archived CBL flow.
176
+
177
+ | Any of(Option) |
178
+ | --------------------------------------- |
179
+ | [firestore-timestamp](#sentAt_anyOf_i0) |
180
+ | [item 1](#sentAt_anyOf_i1) |
181
+
182
+ ### <a name="sentAt_anyOf_i0"></a>9.1. Property `firestore-timestamp`
183
+
184
+ | | |
185
+ | ------------------------- | --------------------------------- |
186
+ | **Type** | `object` |
187
+ | **Required** | No |
188
+ | **Additional properties** | Not allowed |
189
+ | **Defined in** | #/definitions/firestore-timestamp |
190
+
191
+ **Description:** Firestore Timestamp serialized representation
192
+
193
+ | Property | Pattern | Type | Deprecated | Definition | Title/Description |
194
+ | ------------------------------------------------ | ------- | ------- | ---------- | ---------- | ----------------- |
195
+ | + [_seconds](#sentAt_anyOf_i0__seconds ) | No | integer | No | - | - |
196
+ | + [_nanoseconds](#sentAt_anyOf_i0__nanoseconds ) | No | integer | No | - | - |
197
+
198
+ #### <a name="sentAt_anyOf_i0__seconds"></a>9.1.1. Property `_seconds`
199
+
200
+ | | |
201
+ | ------------ | --------- |
202
+ | **Type** | `integer` |
203
+ | **Required** | Yes |
204
+
205
+ | Restrictions | |
206
+ | ------------ | ---------------------- |
207
+ | **Minimum** | &ge; -9007199254740991 |
208
+ | **Maximum** | &le; 9007199254740991 |
209
+
210
+ #### <a name="sentAt_anyOf_i0__nanoseconds"></a>9.1.2. Property `_nanoseconds`
211
+
212
+ | | |
213
+ | ------------ | --------- |
214
+ | **Type** | `integer` |
215
+ | **Required** | Yes |
216
+
217
+ | Restrictions | |
218
+ | ------------ | ---------------------- |
219
+ | **Minimum** | &ge; -9007199254740991 |
220
+ | **Maximum** | &le; 9007199254740991 |
221
+
222
+ ### <a name="sentAt_anyOf_i1"></a>9.2. Property `item 1`
223
+
224
+ | | |
225
+ | ------------ | ------ |
226
+ | **Type** | `null` |
227
+ | **Required** | No |
228
+
229
+ :::warning Server-set
230
+ Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
231
+ :::
232
+
233
+ :::note
234
+ TBD/WIP — Originally from the archived Couchbase Lite (CBL) restaurant flow. Canonical inclusion in Firestore model is pending review.
235
+ :::
236
+
237
+ ## <a name="startedCookingAt"></a>10. Property `startedCookingAt`
238
+
239
+ | | |
240
+ | ------------------------- | ---------------- |
241
+ | **Type** | `combining` |
242
+ | **Required** | No |
243
+ | **Additional properties** | Any type allowed |
244
+
245
+ **Description:** (Read-only) Timestamp when the kitchen started preparing this item. TBD/WIP — archived CBL flow.
246
+
247
+ | Any of(Option) |
248
+ | ------------------------------------------------- |
249
+ | [firestore-timestamp](#startedCookingAt_anyOf_i0) |
250
+ | [item 1](#startedCookingAt_anyOf_i1) |
251
+
252
+ ### <a name="startedCookingAt_anyOf_i0"></a>10.1. Property `firestore-timestamp`
253
+
254
+ | | |
255
+ | ------------------------- | ----------------------------------- |
256
+ | **Type** | `object` |
257
+ | **Required** | No |
258
+ | **Additional properties** | Not allowed |
259
+ | **Same definition as** | [sentAt_anyOf_i0](#sentAt_anyOf_i0) |
260
+
261
+ **Description:** Firestore Timestamp serialized representation
262
+
263
+ ### <a name="startedCookingAt_anyOf_i1"></a>10.2. Property `item 1`
264
+
265
+ | | |
266
+ | ------------ | ------ |
267
+ | **Type** | `null` |
268
+ | **Required** | No |
269
+
270
+ :::warning Server-set
271
+ Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
272
+ :::
273
+
274
+ :::note
275
+ TBD/WIP — Originally from the archived Couchbase Lite (CBL) restaurant flow. Canonical inclusion in Firestore model is pending review.
276
+ :::
277
+
278
+ ## <a name="readyAt"></a>11. Property `readyAt`
279
+
280
+ | | |
281
+ | ------------------------- | ---------------- |
282
+ | **Type** | `combining` |
283
+ | **Required** | No |
284
+ | **Additional properties** | Any type allowed |
285
+
286
+ **Description:** (Read-only) Timestamp when the item was ready for pickup or service. TBD/WIP — archived CBL flow.
287
+
288
+ | Any of(Option) |
289
+ | ---------------------------------------- |
290
+ | [firestore-timestamp](#readyAt_anyOf_i0) |
291
+ | [item 1](#readyAt_anyOf_i1) |
292
+
293
+ ### <a name="readyAt_anyOf_i0"></a>11.1. Property `firestore-timestamp`
294
+
295
+ | | |
296
+ | ------------------------- | ----------------------------------- |
297
+ | **Type** | `object` |
298
+ | **Required** | No |
299
+ | **Additional properties** | Not allowed |
300
+ | **Same definition as** | [sentAt_anyOf_i0](#sentAt_anyOf_i0) |
301
+
302
+ **Description:** Firestore Timestamp serialized representation
303
+
304
+ ### <a name="readyAt_anyOf_i1"></a>11.2. Property `item 1`
305
+
306
+ | | |
307
+ | ------------ | ------ |
308
+ | **Type** | `null` |
309
+ | **Required** | No |
310
+
311
+ :::warning Server-set
312
+ Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
313
+ :::
314
+
315
+ :::note
316
+ TBD/WIP — Originally from the archived Couchbase Lite (CBL) restaurant flow. Canonical inclusion in Firestore model is pending review.
317
+ :::
318
+
319
+ ## <a name="servedAt"></a>12. Property `servedAt`
320
+
321
+ | | |
322
+ | ------------------------- | ---------------- |
323
+ | **Type** | `combining` |
324
+ | **Required** | No |
325
+ | **Additional properties** | Any type allowed |
326
+
327
+ **Description:** (Read-only) Timestamp when the item was served to the customer. TBD/WIP — archived CBL flow.
328
+
329
+ | Any of(Option) |
330
+ | ----------------------------------------- |
331
+ | [firestore-timestamp](#servedAt_anyOf_i0) |
332
+ | [item 1](#servedAt_anyOf_i1) |
333
+
334
+ ### <a name="servedAt_anyOf_i0"></a>12.1. Property `firestore-timestamp`
335
+
336
+ | | |
337
+ | ------------------------- | ----------------------------------- |
338
+ | **Type** | `object` |
339
+ | **Required** | No |
340
+ | **Additional properties** | Not allowed |
341
+ | **Same definition as** | [sentAt_anyOf_i0](#sentAt_anyOf_i0) |
342
+
343
+ **Description:** Firestore Timestamp serialized representation
344
+
345
+ ### <a name="servedAt_anyOf_i1"></a>12.2. Property `item 1`
346
+
347
+ | | |
348
+ | ------------ | ------ |
349
+ | **Type** | `null` |
350
+ | **Required** | No |
351
+
352
+ ----------------------------------------------------------------------------------------------------------------------------
353
+ Generated using [json-schema-for-humans](https://github.com/coveooss/json-schema-for-humans) on 2026-04-06 at 19:27:48 +0000
354
+
355
+ :::warning Server-set
356
+ Do not include in write requests. This field is set exclusively by the server (Firestore trigger or Admin SDK). Clients that send it will have the value silently ignored or may receive a validation error.
357
+ :::
358
+
359
+ :::note
360
+ TBD/WIP — Originally from the archived Couchbase Lite (CBL) restaurant flow. Canonical inclusion in Firestore model is pending review.
361
+ :::