@flowselections/floriday-voorraad 1.0.12 → 1.0.14

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 (123) hide show
  1. package/dist-lib/assets/floriday-logo.png.asset.json +11 -0
  2. package/dist-lib/components/voorraad/ArtikelWizard.d.ts +5 -0
  3. package/dist-lib/components/voorraad/ArtikelWizard.d.ts.map +1 -0
  4. package/dist-lib/components/voorraad/ArtikelWizard.js +1229 -0
  5. package/dist-lib/components/voorraad/ConnectionBadge.d.ts +6 -0
  6. package/dist-lib/components/voorraad/ConnectionBadge.d.ts.map +1 -0
  7. package/dist-lib/components/voorraad/ConnectionBadge.js +12 -0
  8. package/dist-lib/components/voorraad/EditArtikelPage.d.ts +4 -0
  9. package/dist-lib/components/voorraad/EditArtikelPage.d.ts.map +1 -0
  10. package/dist-lib/components/voorraad/EditArtikelPage.js +51 -0
  11. package/dist-lib/components/voorraad/NieuwArtikelPage.d.ts +2 -0
  12. package/dist-lib/components/voorraad/NieuwArtikelPage.d.ts.map +1 -0
  13. package/dist-lib/components/voorraad/NieuwArtikelPage.js +5 -0
  14. package/dist-lib/components/voorraad/StockBulkButtons.d.ts +7 -0
  15. package/dist-lib/components/voorraad/StockBulkButtons.d.ts.map +1 -0
  16. package/dist-lib/components/voorraad/StockBulkButtons.js +356 -0
  17. package/dist-lib/components/voorraad/ValidationOverviewTable.d.ts +7 -0
  18. package/dist-lib/components/voorraad/ValidationOverviewTable.d.ts.map +1 -0
  19. package/dist-lib/components/voorraad/ValidationOverviewTable.js +87 -0
  20. package/dist-lib/components/voorraad/ValidationPage.d.ts +2 -0
  21. package/dist-lib/components/voorraad/ValidationPage.d.ts.map +1 -0
  22. package/dist-lib/components/voorraad/ValidationPage.js +12 -0
  23. package/dist-lib/components/voorraad/VoorraadDashboard.d.ts +6 -0
  24. package/dist-lib/components/voorraad/VoorraadDashboard.d.ts.map +1 -0
  25. package/dist-lib/components/voorraad/VoorraadDashboard.js +42 -0
  26. package/dist-lib/components/voorraad/VoorraadPage.d.ts.map +1 -1
  27. package/dist-lib/components/voorraad/VoorraadPage.js +78 -11
  28. package/dist-lib/components/voorraad/VoorraadPagination.d.ts +10 -0
  29. package/dist-lib/components/voorraad/VoorraadPagination.d.ts.map +1 -0
  30. package/dist-lib/components/voorraad/VoorraadPagination.js +12 -0
  31. package/dist-lib/components/voorraad/VoorraadStockCard.d.ts +8 -0
  32. package/dist-lib/components/voorraad/VoorraadStockCard.d.ts.map +1 -0
  33. package/dist-lib/components/voorraad/VoorraadStockCard.js +33 -0
  34. package/dist-lib/components/voorraad/VoorraadTable.d.ts.map +1 -1
  35. package/dist-lib/components/voorraad/VoorraadTable.js +21 -2
  36. package/dist-lib/hooks/useFloriday.d.ts +55 -0
  37. package/dist-lib/hooks/useFloriday.d.ts.map +1 -0
  38. package/dist-lib/hooks/useFloriday.js +298 -0
  39. package/dist-lib/hooks/useFloridayConnection.d.ts +9 -4
  40. package/dist-lib/hooks/useFloridayConnection.d.ts.map +1 -1
  41. package/dist-lib/hooks/useFloridayConnection.js +23 -23
  42. package/dist-lib/hooks/useFlorydayCustomers.d.ts +17 -0
  43. package/dist-lib/hooks/useFlorydayCustomers.d.ts.map +1 -0
  44. package/dist-lib/hooks/useFlorydayCustomers.js +65 -0
  45. package/dist-lib/hooks/useLocalTradeItems.d.ts +38 -0
  46. package/dist-lib/hooks/useLocalTradeItems.d.ts.map +1 -0
  47. package/dist-lib/hooks/useLocalTradeItems.js +144 -0
  48. package/dist-lib/hooks/useTradeItemSpec.d.ts +42 -0
  49. package/dist-lib/hooks/useTradeItemSpec.d.ts.map +1 -0
  50. package/dist-lib/hooks/useTradeItemSpec.js +448 -0
  51. package/dist-lib/hooks/useTradeItemStock.d.ts +19 -0
  52. package/dist-lib/hooks/useTradeItemStock.d.ts.map +1 -0
  53. package/dist-lib/hooks/useTradeItemStock.js +78 -0
  54. package/dist-lib/hooks/useVbnRegulatoryFeatures.d.ts +3 -0
  55. package/dist-lib/hooks/useVbnRegulatoryFeatures.d.ts.map +1 -0
  56. package/dist-lib/hooks/useVbnRegulatoryFeatures.js +19 -0
  57. package/dist-lib/hooks/useVoorraadData.d.ts +6 -0
  58. package/dist-lib/hooks/useVoorraadData.d.ts.map +1 -1
  59. package/dist-lib/hooks/useVoorraadData.js +65 -10
  60. package/dist-lib/index.d.ts +4 -0
  61. package/dist-lib/index.d.ts.map +1 -1
  62. package/dist-lib/index.js +6 -5
  63. package/dist-lib/integrations/supabase/auth-middleware.d.ts +9085 -1645
  64. package/dist-lib/integrations/supabase/auth-middleware.d.ts.map +1 -1
  65. package/dist-lib/integrations/supabase/client.d.ts +9085 -1645
  66. package/dist-lib/integrations/supabase/client.d.ts.map +1 -1
  67. package/dist-lib/integrations/supabase/client.server.d.ts +9085 -1645
  68. package/dist-lib/integrations/supabase/client.server.d.ts.map +1 -1
  69. package/dist-lib/integrations/supabase/types.d.ts +9298 -1655
  70. package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
  71. package/dist-lib/integrations/supabase/types.js +20 -1
  72. package/dist-lib/lib/__tests__/floricode-required-features.test.d.ts +2 -0
  73. package/dist-lib/lib/__tests__/floricode-required-features.test.d.ts.map +1 -0
  74. package/dist-lib/lib/__tests__/floricode-required-features.test.js +186 -0
  75. package/dist-lib/lib/floricode-client.d.ts +15 -1
  76. package/dist-lib/lib/floricode-client.d.ts.map +1 -1
  77. package/dist-lib/lib/floricode-client.js +42 -4
  78. package/dist-lib/lib/floricode-required-features.functions.d.ts +10026 -0
  79. package/dist-lib/lib/floricode-required-features.functions.d.ts.map +1 -0
  80. package/dist-lib/lib/floricode-required-features.functions.js +170 -0
  81. package/dist-lib/lib/floriday-client.d.ts +45 -19
  82. package/dist-lib/lib/floriday-client.d.ts.map +1 -1
  83. package/dist-lib/lib/floriday-client.js +236 -38
  84. package/dist-lib/lib/floriday-env.d.ts +29 -0
  85. package/dist-lib/lib/floriday-env.d.ts.map +1 -0
  86. package/dist-lib/lib/floriday-env.js +42 -0
  87. package/dist-lib/lib/floriday-env.server.d.ts +15 -0
  88. package/dist-lib/lib/floriday-env.server.d.ts.map +1 -0
  89. package/dist-lib/lib/floriday-env.server.js +13 -0
  90. package/dist-lib/lib/floriday-field-sources.d.ts +18 -0
  91. package/dist-lib/lib/floriday-field-sources.d.ts.map +1 -0
  92. package/dist-lib/lib/floriday-field-sources.js +45 -0
  93. package/dist-lib/lib/floriday-gateway-entities.d.ts +44 -0
  94. package/dist-lib/lib/floriday-gateway-entities.d.ts.map +1 -0
  95. package/dist-lib/lib/floriday-gateway-entities.js +51 -0
  96. package/dist-lib/lib/floriday-gateway.functions.d.ts +39999 -0
  97. package/dist-lib/lib/floriday-gateway.functions.d.ts.map +1 -0
  98. package/dist-lib/lib/floriday-gateway.functions.js +68 -0
  99. package/dist-lib/lib/floriday-gateway.server.d.ts +122 -0
  100. package/dist-lib/lib/floriday-gateway.server.d.ts.map +1 -0
  101. package/dist-lib/lib/floriday-gateway.server.js +230 -0
  102. package/dist-lib/lib/floriday-import-validator.d.ts +26 -0
  103. package/dist-lib/lib/floriday-import-validator.d.ts.map +1 -0
  104. package/dist-lib/lib/floriday-import-validator.js +41 -0
  105. package/dist-lib/lib/floriday-payload.d.ts +47 -3
  106. package/dist-lib/lib/floriday-payload.d.ts.map +1 -1
  107. package/dist-lib/lib/floriday-payload.js +179 -7
  108. package/dist-lib/lib/floriday-schema-to-zod.d.ts +9 -0
  109. package/dist-lib/lib/floriday-schema-to-zod.d.ts.map +1 -0
  110. package/dist-lib/lib/floriday-schema-to-zod.js +53 -0
  111. package/dist-lib/lib/floriday-writes.functions.d.ts +19998 -0
  112. package/dist-lib/lib/floriday-writes.functions.d.ts.map +1 -0
  113. package/dist-lib/lib/floriday-writes.functions.js +74 -0
  114. package/dist-lib/lib/image-resize.d.ts +43 -0
  115. package/dist-lib/lib/image-resize.d.ts.map +1 -0
  116. package/dist-lib/lib/image-resize.js +212 -0
  117. package/dist-lib/lib/normalize-errors-middleware.d.ts +2 -0
  118. package/dist-lib/lib/normalize-errors-middleware.d.ts.map +1 -0
  119. package/dist-lib/lib/normalize-errors-middleware.js +24 -0
  120. package/dist-lib/lib/wizard-step-fields.d.ts +15 -0
  121. package/dist-lib/lib/wizard-step-fields.d.ts.map +1 -0
  122. package/dist-lib/lib/wizard-step-fields.js +51 -0
  123. package/package.json +29 -14
@@ -1,30 +1,85 @@
1
1
  import { useCallback, useEffect, useState } from "react";
2
- import { floriday } from "../lib/floriday-client";
2
+ import { supabase } from "../integrations/supabase/client";
3
+ import { normaliseTradeItem } from "../lib/floriday-client";
4
+ import { useLocalTradeItems } from "./useLocalTradeItems";
5
+ import { fetchStockMap } from "./useTradeItemStock";
6
+ function applyStock(item, s) {
7
+ if (!s)
8
+ return item;
9
+ const physical = s.physical_stock;
10
+ const reserved = s.reserved_stock;
11
+ const available = Math.max(0, physical - reserved);
12
+ return {
13
+ ...item,
14
+ quantity: physical,
15
+ minQuantity: s.minimum_stock,
16
+ reservedQuantity: reserved,
17
+ incomingQuantity: s.incoming_stock,
18
+ availableQuantity: available,
19
+ economicQuantity: available + s.incoming_stock,
20
+ };
21
+ }
22
+ /**
23
+ * Reads trade items from the shared `floriday_trade_items_cache` (gepubliceerd,
24
+ * gevuld door de Auth-module elke 5 min) en merget lokale, niet-gepubliceerde
25
+ * producten uit `trade_item_drafts`. Voorraadwaarden uit `trade_item_stock`
26
+ * overschrijven de cache-waarden (lokale bron van waarheid voor stock).
27
+ */
3
28
  export function useVoorraadData(connectionId) {
4
- const [items, setItems] = useState([]);
29
+ const [publishedItems, setPublishedItems] = useState([]);
30
+ const [stockMap, setStockMap] = useState(new Map());
5
31
  const [loading, setLoading] = useState(false);
6
32
  const [error, setError] = useState(null);
7
- const load = useCallback(async () => {
33
+ const { items: localItems, loading: localLoading, reload: reloadLocal, } = useLocalTradeItems(connectionId);
34
+ const loadPublished = useCallback(async () => {
8
35
  if (!connectionId) {
9
- setItems([]);
36
+ setPublishedItems([]);
37
+ setStockMap(new Map());
10
38
  return;
11
39
  }
12
40
  setLoading(true);
13
41
  setError(null);
14
42
  try {
15
- const data = await floriday.listTradeItems(connectionId);
16
- setItems(data);
43
+ const [pubRes, stock] = await Promise.all([
44
+ supabase
45
+ .from("floriday_trade_items_cache")
46
+ .select("data,floriday_id,is_deleted")
47
+ .eq("connection_id", connectionId)
48
+ .eq("is_deleted", false)
49
+ .limit(1000),
50
+ fetchStockMap(connectionId),
51
+ ]);
52
+ if (pubRes.error)
53
+ throw pubRes.error;
54
+ const normalised = (pubRes.data ?? [])
55
+ .map((row) => normaliseTradeItem({ ...row.data, id: row.floriday_id }))
56
+ .filter((i) => i.id)
57
+ .map((i) => ({ ...i, published: true }));
58
+ setPublishedItems(normalised);
59
+ setStockMap(stock);
17
60
  }
18
61
  catch (e) {
19
62
  setError(e.message);
20
- setItems([]);
63
+ setPublishedItems([]);
21
64
  }
22
65
  finally {
23
66
  setLoading(false);
24
67
  }
25
68
  }, [connectionId]);
26
69
  useEffect(() => {
27
- load();
28
- }, [load]);
29
- return { items, loading, error, reload: load };
70
+ loadPublished();
71
+ }, [loadPublished]);
72
+ const reload = useCallback(async () => {
73
+ await Promise.all([loadPublished(), reloadLocal()]);
74
+ }, [loadPublished, reloadLocal]);
75
+ const merged = [
76
+ ...localItems.map((i) => applyStock(i, stockMap.get(i.localId ? `draft:${i.localId}` : ""))),
77
+ ...publishedItems.map((i) => applyStock(i, stockMap.get(i.id))),
78
+ ];
79
+ return {
80
+ items: merged,
81
+ loading: loading || localLoading,
82
+ error,
83
+ reload,
84
+ };
30
85
  }
@@ -1,5 +1,9 @@
1
1
  import type { FlowModule } from "@flowselections/core";
2
2
  export * from './_core-safelist';
3
3
  export { VoorraadPage } from './components/voorraad/VoorraadPage';
4
+ export { NieuwArtikelPage } from './components/voorraad/NieuwArtikelPage';
5
+ export { EditArtikelPage } from './components/voorraad/EditArtikelPage';
6
+ export { ValidationPage } from './components/voorraad/ValidationPage';
7
+ export { ArtikelWizard } from './components/voorraad/ArtikelWizard';
4
8
  export declare const floridayVoorraadModule: FlowModule;
5
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvD,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAIlE,eAAO,MAAM,sBAAsB,EAAE,UAYpC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvD,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAEpE,eAAO,MAAM,sBAAsB,EAAE,UAUpC,CAAC"}
package/dist-lib/index.js CHANGED
@@ -4,17 +4,18 @@
4
4
  import { Package } from "lucide-react";
5
5
  export * from './_core-safelist';
6
6
  export { VoorraadPage } from './components/voorraad/VoorraadPage';
7
- import { VoorraadSettingsCard } from "./components/settings/VoorraadSettingsCard";
7
+ export { NieuwArtikelPage } from './components/voorraad/NieuwArtikelPage';
8
+ export { EditArtikelPage } from './components/voorraad/EditArtikelPage';
9
+ export { ValidationPage } from './components/voorraad/ValidationPage';
10
+ export { ArtikelWizard } from './components/voorraad/ArtikelWizard';
8
11
  export const floridayVoorraadModule = {
9
12
  id: "voorraad",
10
13
  name: "Voorraad",
11
14
  version: "1.0.0",
12
15
  nav: {
13
16
  label: "Voorraad",
14
- href: "/floriday-voorraad",
17
+ href: "/voorraad",
15
18
  icon: Package,
16
19
  },
17
- settingsCards: [
18
- { component: VoorraadSettingsCard, order: 10 },
19
- ],
20
+ settingsCards: [],
20
21
  };