@robbeverhelst/do 1.38.0 → 1.39.0

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 (2) hide show
  1. package/dist/do.js +25 -4
  2. package/package.json +1 -1
package/dist/do.js CHANGED
@@ -4503,9 +4503,15 @@ var pushSubscriptions = pgTable("push_subscriptions", {
4503
4503
  var shoppingLists = pgTable("shopping_lists", {
4504
4504
  id: text("id").primaryKey().references(() => nodes.id),
4505
4505
  tenantId: text("tenant_id").notNull().references(() => tenants.id),
4506
- notes: text("notes")
4506
+ notes: text("notes"),
4507
+ groupByStore: boolean("group_by_store").notNull().default(false),
4508
+ recurrenceUnit: text("recurrence_unit").$type(),
4509
+ recurrenceInterval: integer("recurrence_interval").notNull().default(1),
4510
+ nextRestockAt: timestamp("next_restock_at", { withTimezone: true }),
4511
+ lastRestockedAt: timestamp("last_restocked_at", { withTimezone: true })
4507
4512
  }, (t) => [
4508
- index("shopping_lists_tenant_idx").on(t.tenantId)
4513
+ index("shopping_lists_tenant_idx").on(t.tenantId),
4514
+ index("shopping_lists_next_restock_idx").on(t.nextRestockAt)
4509
4515
  ]);
4510
4516
  var shoppingItems = pgTable("shopping_items", {
4511
4517
  id: text("id").primaryKey(),
@@ -4517,6 +4523,7 @@ var shoppingItems = pgTable("shopping_items", {
4517
4523
  isChecked: boolean("is_checked").notNull().default(false),
4518
4524
  sortOrder: integer("sort_order").notNull().default(0),
4519
4525
  notes: text("notes"),
4526
+ store: text("store"),
4520
4527
  facet: jsonb("facet").$type(),
4521
4528
  createdAt: timestamp("created_at", { withTimezone: true }).notNull().defaultNow()
4522
4529
  }, (t) => [
@@ -20041,7 +20048,16 @@ var reviewDayStatSchema = exports_external.object({
20041
20048
  });
20042
20049
  var reviewStatsSchema = exports_external.array(reviewDayStatSchema);
20043
20050
  // ../../packages/schema/src/contracts/shopping.ts
20044
- var shoppingListSchema = createSelectSchema(shoppingLists);
20051
+ var shoppingRecurrenceUnitSchema = exports_external.enum(["day", "week", "month"]);
20052
+ var shoppingListSchema = createSelectSchema(shoppingLists, {
20053
+ recurrenceUnit: shoppingRecurrenceUnitSchema.nullable(),
20054
+ nextRestockAt: exports_external.coerce.date().nullable(),
20055
+ lastRestockedAt: exports_external.coerce.date().nullable()
20056
+ });
20057
+ var shoppingRecurrenceInputSchema = exports_external.object({
20058
+ unit: shoppingRecurrenceUnitSchema,
20059
+ interval: exports_external.number().int().positive().default(1)
20060
+ }).strict();
20045
20061
  var itemFacetSchema = exports_external.record(exports_external.string(), exports_external.unknown());
20046
20062
  var shoppingItemSchema = createSelectSchema(shoppingItems, {
20047
20063
  createdAt: exports_external.coerce.date(),
@@ -20055,6 +20071,7 @@ var shoppingItemInputSchema = exports_external.object({
20055
20071
  isChecked: exports_external.boolean().optional(),
20056
20072
  sortOrder: exports_external.number().int().min(0).optional(),
20057
20073
  notes: exports_external.string().nullish(),
20074
+ store: exports_external.string().nullish(),
20058
20075
  facet: itemFacetSchema.nullish()
20059
20076
  });
20060
20077
  var createShoppingListInputSchema = exports_external.object({
@@ -20063,12 +20080,16 @@ var createShoppingListInputSchema = exports_external.object({
20063
20080
  parentId: ulidSchema.nullish(),
20064
20081
  notes: exports_external.string().nullish(),
20065
20082
  displayKind: exports_external.string().min(1).optional(),
20083
+ groupByStore: exports_external.boolean().optional(),
20084
+ recurrence: shoppingRecurrenceInputSchema.nullish(),
20066
20085
  items: exports_external.array(shoppingItemInputSchema).optional()
20067
20086
  });
20068
20087
  var updateShoppingListInputSchema = exports_external.object({
20069
20088
  title: exports_external.string().min(1).optional(),
20070
20089
  parentId: ulidSchema.nullish(),
20071
20090
  notes: exports_external.string().nullish(),
20091
+ groupByStore: exports_external.boolean().optional(),
20092
+ recurrence: shoppingRecurrenceInputSchema.nullish(),
20072
20093
  items: exports_external.array(shoppingItemInputSchema).optional()
20073
20094
  }).strict();
20074
20095
  var shoppingListViewSchema = shoppingListSchema.extend({
@@ -23067,7 +23088,7 @@ function parseCapture2(input) {
23067
23088
 
23068
23089
  // src/meta.ts
23069
23090
  var CLI_NAME = "do";
23070
- var VERSION = "1.38.0";
23091
+ var VERSION = "1.39.0";
23071
23092
  var API_PREFIX = "/api/v1";
23072
23093
  var DEFAULT_API_URL = "http://localhost:3001";
23073
23094
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@robbeverhelst/do",
3
- "version": "1.38.0",
3
+ "version": "1.39.0",
4
4
  "private": false,
5
5
  "description": "do — the agent-drivable CLI over the public /api/v1 surface",
6
6
  "type": "module",