@flowselections/layout-maker 1.63.5 → 1.66.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 (62) hide show
  1. package/README.md +10 -4
  2. package/dist-lib/components/BedrijfsgegevensKaart.d.ts +3 -0
  3. package/dist-lib/components/BedrijfsgegevensKaart.d.ts.map +1 -0
  4. package/dist-lib/components/BedrijfsgegevensKaart.js +58 -0
  5. package/dist-lib/components/KlaarOmTePrintenBlok.d.ts +3 -0
  6. package/dist-lib/components/KlaarOmTePrintenBlok.d.ts.map +1 -0
  7. package/dist-lib/components/KlaarOmTePrintenBlok.js +69 -0
  8. package/dist-lib/components/LayoutsPage.d.ts.map +1 -1
  9. package/dist-lib/components/LayoutsPage.js +23 -3
  10. package/dist-lib/components/PakbonPreview.d.ts.map +1 -1
  11. package/dist-lib/components/PakbonPreview.js +10 -7
  12. package/dist-lib/components/PrintenPage.d.ts.map +1 -1
  13. package/dist-lib/components/PrintenPage.js +8 -2
  14. package/dist-lib/components/StandaardLayoutActies.d.ts +19 -0
  15. package/dist-lib/components/StandaardLayoutActies.d.ts.map +1 -0
  16. package/dist-lib/components/StandaardLayoutActies.js +105 -0
  17. package/dist-lib/index.d.ts +9 -2
  18. package/dist-lib/index.d.ts.map +1 -1
  19. package/dist-lib/index.js +10 -3
  20. package/dist-lib/integrations/supabase/types.d.ts +1078 -0
  21. package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
  22. package/dist-lib/lib/bedrijfsgegevens.d.ts +41 -0
  23. package/dist-lib/lib/bedrijfsgegevens.d.ts.map +1 -0
  24. package/dist-lib/lib/bedrijfsgegevens.functions.d.ts +41 -0
  25. package/dist-lib/lib/bedrijfsgegevens.functions.d.ts.map +1 -0
  26. package/dist-lib/lib/bedrijfsgegevens.functions.js +75 -0
  27. package/dist-lib/lib/bedrijfsgegevens.js +126 -0
  28. package/dist-lib/lib/documentTypes.d.ts +10 -0
  29. package/dist-lib/lib/documentTypes.d.ts.map +1 -1
  30. package/dist-lib/lib/documentTypes.js +8 -0
  31. package/dist-lib/lib/klaarOmTePrinten.d.ts +39 -0
  32. package/dist-lib/lib/klaarOmTePrinten.d.ts.map +1 -0
  33. package/dist-lib/lib/klaarOmTePrinten.js +65 -0
  34. package/dist-lib/lib/layoutStandaarden.d.ts +19 -0
  35. package/dist-lib/lib/layoutStandaarden.d.ts.map +1 -0
  36. package/dist-lib/lib/layoutStandaarden.js +23 -0
  37. package/dist-lib/lib/orderData.server.d.ts.map +1 -1
  38. package/dist-lib/lib/orderData.server.js +163 -0
  39. package/dist-lib/lib/pakbonBuilder.d.ts +30 -0
  40. package/dist-lib/lib/pakbonBuilder.d.ts.map +1 -1
  41. package/dist-lib/lib/pakbonBuilder.js +90 -2
  42. package/dist-lib/lib/pakbonContent.d.ts.map +1 -1
  43. package/dist-lib/lib/pakbonContent.js +15 -8
  44. package/dist-lib/lib/pakbonHtml.d.ts.map +1 -1
  45. package/dist-lib/lib/pakbonHtml.js +24 -7
  46. package/dist-lib/lib/printQueue.server.d.ts.map +1 -1
  47. package/dist-lib/lib/printQueue.server.js +33 -2
  48. package/dist-lib/lib/printService.functions.d.ts +1 -1
  49. package/dist-lib/lib/printnodeWebhookBeheer.server.d.ts +1 -1
  50. package/dist-lib/lib/shellPoort.d.ts +2 -2
  51. package/dist-lib/lib/shellPoort.d.ts.map +1 -1
  52. package/dist-lib/lib/shellPoort.js +3 -2
  53. package/dist-lib/lib/standaardLayouts.server.d.ts +7 -1
  54. package/dist-lib/lib/standaardLayouts.server.d.ts.map +1 -1
  55. package/dist-lib/lib/standaardLayouts.server.js +52 -54
  56. package/dist-lib/lib/useDocumentData.d.ts.map +1 -1
  57. package/dist-lib/lib/useDocumentData.js +9 -5
  58. package/dist-lib/lib/versie.generated.d.ts +2 -0
  59. package/dist-lib/lib/versie.generated.d.ts.map +1 -0
  60. package/dist-lib/lib/versie.generated.js +2 -0
  61. package/package.json +9 -4
  62. package/sql/print-schema.sql +3205 -0
@@ -63,7 +63,7 @@ export declare function weergaveStatus(k: Koppeling | null): "aan" | "uit" | "on
63
63
  /** Veilige status voor het scherm: nooit het geheim. */
64
64
  export declare function veiligeStatus(k: Koppeling | null): {
65
65
  aan: boolean;
66
- weergave: "aan" | "uit" | "onbekend";
66
+ weergave: "uit" | "aan" | "onbekend";
67
67
  nietBereikbaar: boolean;
68
68
  pnUrl: string | null;
69
69
  pnGeslaagd: number | null;
@@ -1,5 +1,5 @@
1
- /** Moduleversie van deze code. Gelijk houden aan package.json (test bewaakt dit). */
2
- export declare const MODULE_VERSIE = "1.63.4";
1
+ /** Moduleversie van deze code: uit package.json (gegenereerd bij build:lib; test bewaakt dit). */
2
+ export declare const MODULE_VERSIE: string;
3
3
  export declare function normaliseerAdres(u: unknown): string | null;
4
4
  /** -1 als a < b, 0 als gelijk, 1 als a > b (alleen cijfers, punt-gescheiden). */
5
5
  export declare function vergelijkVersie(a: string, b: string): number;
@@ -1 +1 @@
1
- {"version":3,"file":"shellPoort.d.ts","sourceRoot":"","sources":["../../src/lib/shellPoort.ts"],"names":[],"mappings":"AAMA,qFAAqF;AACrF,eAAO,MAAM,aAAa,WAAW,CAAC;AAEtC,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAG1D;AAED,iFAAiF;AACjF,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAQ5D;AAED,MAAM,MAAM,aAAa,GACrB;IAAE,GAAG,EAAE,IAAI,CAAA;CAAE,GACb;IAAE,GAAG,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,kBAAkB,GAAG,eAAe,GAAG,eAAe,GAAG,sBAAsB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1H,wBAAgB,cAAc,CAAC,KAAK,EAAE;IACpC,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,GAAG,aAAa,CAWhB;AAED,+DAA+D;AAC/D,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAI9C"}
1
+ {"version":3,"file":"shellPoort.d.ts","sourceRoot":"","sources":["../../src/lib/shellPoort.ts"],"names":[],"mappings":"AAQA,kGAAkG;AAClG,eAAO,MAAM,aAAa,EAAE,MAAsB,CAAC;AAEnD,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAG1D;AAED,iFAAiF;AACjF,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAQ5D;AAED,MAAM,MAAM,aAAa,GACrB;IAAE,GAAG,EAAE,IAAI,CAAA;CAAE,GACb;IAAE,GAAG,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,kBAAkB,GAAG,eAAe,GAAG,eAAe,GAAG,sBAAsB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1H,wBAAgB,cAAc,CAAC,KAAK,EAAE;IACpC,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,GAAG,aAAa,CAWhB;AAED,+DAA+D;AAC/D,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAI9C"}
@@ -3,8 +3,9 @@
3
3
  // de installatie waarvan het adres gelijk is aan shell_base_url uit de eigen
4
4
  // database. Niets vast in code; ontbreekt het adres, dan wordt er niet geprint.
5
5
  // ============================================================================
6
- /** Moduleversie van deze code. Gelijk houden aan package.json (test bewaakt dit). */
7
- export const MODULE_VERSIE = "1.63.4";
6
+ import { PAKKET_VERSIE } from "./versie.generated.js";
7
+ /** Moduleversie van deze code: uit package.json (gegenereerd bij build:lib; test bewaakt dit). */
8
+ export const MODULE_VERSIE = PAKKET_VERSIE;
8
9
  export function normaliseerAdres(u) {
9
10
  const s = String(u ?? "").trim().replace(/\/+$/, "").toLowerCase();
10
11
  return s || null;
@@ -1,6 +1,12 @@
1
1
  import type { SupabaseClient } from "@supabase/supabase-js";
2
2
  type Db = SupabaseClient<any, any, any>;
3
- /** Geeft het aantal aangemaakte layouts terug (0 als er al layouts waren). */
3
+ /** Geeft het aantal automatische acties terug. */
4
4
  export declare function zorgVoorStandaardLayoutsServer(db: Db): Promise<number>;
5
+ /**
6
+ * Eenmalig voorinvullen: eerst de eigen organisatie uit Floriday-auth
7
+ * (floriday_eigen_organisatie), anders invoice_branding_settings. Nooit als er
8
+ * al iets is ingevuld of als er al eens is voorgevuld.
9
+ */
10
+ export declare function zorgVoorBedrijfsgegevens(db: Db): Promise<boolean>;
5
11
  export {};
6
12
  //# sourceMappingURL=standaardLayouts.server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"standaardLayouts.server.d.ts","sourceRoot":"","sources":["../../src/lib/standaardLayouts.server.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAI5D,KAAK,EAAE,GAAG,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAOxC,8EAA8E;AAC9E,wBAAsB,8BAA8B,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CA+C5E"}
1
+ {"version":3,"file":"standaardLayouts.server.d.ts","sourceRoot":"","sources":["../../src/lib/standaardLayouts.server.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,KAAK,EAAE,GAAG,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAExC,kDAAkD;AAClD,wBAAsB,8BAA8B,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAU5E;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAqBvE"}
@@ -1,61 +1,59 @@
1
1
  // ============================================================================
2
- // src/lib/standaardLayouts.server.ts — standaardlayouts aanmaken met de
3
- // servicerol, alleen als er nog géén enkele layout bestaat (lege shell).
4
- // Pagina's schrijven hierdoor nooit met de gebruikerssessie bij het openen.
2
+ // src/lib/standaardLayouts.server.ts — aanvulronde met de servicerol.
3
+ // Pagina's schrijven hierdoor nooit met de gebruikerssessie.
4
+ //
5
+ // Alles staat in de databasefunctie layout_zorg_systeemlayouts():
6
+ // - Floriday-systeemlayouts per ontbrekende bron+soort;
7
+ // - Flow Selections-standaard per benodigd document (sleutel, nooit de naam),
8
+ // alleen als er geen enkele actieve eigen layout van die soort is;
9
+ // - precies één actieve layout zonder standaard → standaard (gelogd);
10
+ // - standaardprinter alleen als het eenduidig is (gelogd).
11
+ // Daarna: bedrijfsgegevens eenmalig voorinvullen als ze nog leeg zijn.
5
12
  // ============================================================================
6
- import { FLORIDAY_LAYOUT_TOELICHTING, FLORIDAY_SYSTEEM_LAYOUTS, STANDAARD_LAYOUTS } from "./documentTypes.js";
7
- import { standaardProductiebonConfig } from "./productiebonBuilder.js";
8
- const SEED_KEY = "standaard_layouts_geseed";
9
- const SEED_VERSIE = "2";
10
- let gedaan = false;
11
- /** Geeft het aantal aangemaakte layouts terug (0 als er al layouts waren). */
13
+ import { BEDRIJFSGEGEVENS_SLEUTEL, voorinvulBesluit } from "./bedrijfsgegevens.js";
14
+ /** Geeft het aantal automatische acties terug. */
12
15
  export async function zorgVoorStandaardLayoutsServer(db) {
13
- if (gedaan)
14
- return 0;
15
- const { count, error } = await db
16
- .from("document_layouts")
17
- .select("id", { count: "exact", head: true });
16
+ const { data, error: rpcFout } = await db.rpc("layout_zorg_systeemlayouts");
17
+ if (rpcFout)
18
+ throw new Error(`Standaardlayouts controleren mislukt: ${rpcFout.message}`);
19
+ let aantal = Number(data ?? 0) || 0;
20
+ try {
21
+ if (await zorgVoorBedrijfsgegevens(db))
22
+ aantal += 1;
23
+ }
24
+ catch {
25
+ /* voorinvullen is een gemak; nooit de aanvulronde laten mislukken */
26
+ }
27
+ return aantal;
28
+ }
29
+ /**
30
+ * Eenmalig voorinvullen: eerst de eigen organisatie uit Floriday-auth
31
+ * (floriday_eigen_organisatie), anders invoice_branding_settings. Nooit als er
32
+ * al iets is ingevuld of als er al eens is voorgevuld.
33
+ */
34
+ export async function zorgVoorBedrijfsgegevens(db) {
35
+ const { data: rij, error } = await db
36
+ .from("app_settings").select("value").eq("key", BEDRIJFSGEGEVENS_SLEUTEL).maybeSingle();
18
37
  if (error)
19
- throw new Error(`Layouts tellen mislukt: ${error.message}`);
20
- if ((count ?? 0) > 0) {
21
- gedaan = true;
22
- return 0;
38
+ return false;
39
+ let floriday = null;
40
+ let factuur = null;
41
+ const f = await db.rpc("floriday_eigen_organisatie");
42
+ if (!f.error)
43
+ floriday = Array.isArray(f.data) ? f.data[0] : f.data;
44
+ const besluitZonderFactuur = voorinvulBesluit(rij?.value ?? null, floriday, null);
45
+ if (besluitZonderFactuur === "overslaan")
46
+ return false;
47
+ if (!besluitZonderFactuur) {
48
+ const fr = await db.from("invoice_branding_settings").select("*").limit(1).maybeSingle();
49
+ if (!fr.error)
50
+ factuur = fr.data;
23
51
  }
24
- const rijen = [
25
- ...STANDAARD_LAYOUTS.map((l) => ({
26
- naam: l.naam,
27
- documenttype: l.documenttype,
28
- omschrijving: l.omschrijving,
29
- papierformaat: l.papierformaat,
30
- breedte_mm: l.breedte_mm,
31
- hoogte_mm: l.hoogte_mm,
32
- orientatie: "portrait",
33
- bron: "eigen",
34
- systeem: false,
35
- actief: true,
36
- config: l.documenttype === "productiebon"
37
- ? { productiebon: standaardProductiebonConfig() }
38
- : {},
39
- })),
40
- ...FLORIDAY_SYSTEEM_LAYOUTS.map((l) => ({
41
- naam: l.naam,
42
- documenttype: l.documenttype,
43
- omschrijving: FLORIDAY_LAYOUT_TOELICHTING,
44
- papierformaat: l.papierformaat,
45
- breedte_mm: l.breedte_mm,
46
- hoogte_mm: l.hoogte_mm,
47
- orientatie: "portrait",
48
- bron: "floriday",
49
- systeem: true,
50
- actief: true,
51
- })),
52
- ];
53
- const { error: insertFout } = await db.from("document_layouts").insert(rijen);
54
- if (insertFout)
55
- throw new Error(`Standaardlayouts aanmaken mislukt: ${insertFout.message}`);
56
- await db
52
+ const besluit = besluitZonderFactuur ?? voorinvulBesluit(rij?.value ?? null, null, factuur);
53
+ if (!besluit || besluit === "overslaan")
54
+ return false;
55
+ const { error: fout } = await db
57
56
  .from("app_settings")
58
- .upsert({ key: SEED_KEY, value: SEED_VERSIE }, { onConflict: "key" });
59
- gedaan = true;
60
- return rijen.length;
57
+ .upsert({ key: BEDRIJFSGEGEVENS_SLEUTEL, value: JSON.stringify(besluit) }, { onConflict: "key" });
58
+ return !fout;
61
59
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useDocumentData.d.ts","sourceRoot":"","sources":["../../src/lib/useDocumentData.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAI9C,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,+EAA+E;IAC/E,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,iEAAiE;IACjE,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,iFAAiF;IACjF,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,yEAAyE;IACzE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACzC,uEAAuE;IACvE,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,wBAAwB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,wFAAwF;IACxF,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AASD;;;GAGG;AACH,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,OAAO,CAAC,CAYhE;AAED,qEAAqE;AACrE,eAAO,MAAM,wBAAwB,gCAA0B,CAAC;AAEhE,wBAAgB,UAAU;;;;EAqBzB;AAED,wBAAsB,UAAU,CAAC,KAAK,EAAE;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,UAAU,GAAG,WAAW,CAAC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC,mBAQA;AAED,wBAAsB,eAAe,CAAC,EAAE,EAAE,MAAM,mBA2B/C;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,EAAE,EAAE,MAAM,iBAMnD;AAED,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,OAAO,EAAE,WAAW,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,4EAA4E;AAC5E,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,cAAc,EAAE,CA6BzE;AAED,wBAAsB,eAAe,CAAC,EAAE,EAAE,MAAM,iBAG/C;AAED,wBAAsB,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,iBAM5E;AAwBD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM;;;;;;;EAkD/C;AAED,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,kBAAkB,EAAE,EAC/B,YAAY,CAAC,EAAE,YAAY,iBA+C5B;AAED,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,EAAE,UAAU,EAAE,MAAM,mBAmBvG;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM;;YAEjC,MAAM;sBAAgB,MAAM;oBAAc,MAAM,GAAG,IAAI;oBAAc,MAAM;kBAAY,OAAO;;;EAcvG;AAID,wBAAgB,WAAW;;;;EAgB1B;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,EAAE,MAAM,iBAS9E;AAED,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,MAAM,iBAGhD;AAID,wBAAgB,YAAY;;;;EAsB3B;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,SAAS,CAyB7C;AAED,wBAAsB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,iBAS/D;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC,iBAkBA"}
1
+ {"version":3,"file":"useDocumentData.d.ts","sourceRoot":"","sources":["../../src/lib/useDocumentData.ts"],"names":[],"mappings":"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"}
@@ -10,24 +10,25 @@ const arr = (v) => (Array.isArray(v) ? v : []);
10
10
  * Zorgt dat de vaste Floriday-layouts altijd bestaan, ook in een verse shell
11
11
  * waar de seed-SQL nog niet is gedraaid. Idempotent en stil bij fouten.
12
12
  */
13
- let seedGevraagd = false;
13
+ let seedGevraagdOp = 0;
14
14
  /**
15
15
  * Vraagt de server (servicerol) om de standaardlayouts aan te maken als er nog
16
16
  * geen enkele layout bestaat. Schrijft nooit met de gebruikerssessie.
17
17
  */
18
18
  export async function zorgVoorFloridayLayouts() {
19
- if (seedGevraagd)
19
+ // Bij elk openen opnieuw, maar niet vaker dan eens per minuut.
20
+ if (Date.now() - seedGevraagdOp < 60000)
20
21
  return false;
21
- seedGevraagd = true;
22
+ seedGevraagdOp = Date.now();
22
23
  try {
23
24
  const { zorgVoorStandaardLayoutsFn } = await import("./printService.functions.js");
24
25
  const r = await zorgVoorStandaardLayoutsFn();
25
26
  if (!r?.ok)
26
- seedGevraagd = false;
27
+ seedGevraagdOp = 0;
27
28
  return Number(r?.aangemaakt ?? 0) > 0;
28
29
  }
29
30
  catch {
30
- seedGevraagd = false;
31
+ seedGevraagdOp = 0;
31
32
  return false;
32
33
  }
33
34
  }
@@ -72,6 +73,9 @@ export async function dupliceerLayout(id) {
72
73
  delete b.id;
73
74
  delete b.created_at;
74
75
  delete b.updated_at;
76
+ // Een kopie is geen Flow Selections-standaard meer (de sleutel is uniek).
77
+ delete b.standaard_sleutel;
78
+ delete b.standaard_versie;
75
79
  b.naam = `${String(b.naam)} (kopie)`;
76
80
  b.is_standaard = false;
77
81
  const { data: nieuw, error } = await supabase
@@ -0,0 +1,2 @@
1
+ export declare const PAKKET_VERSIE = "1.66.1";
2
+ //# sourceMappingURL=versie.generated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"versie.generated.d.ts","sourceRoot":"","sources":["../../src/lib/versie.generated.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,aAAa,WAAW,CAAC"}
@@ -0,0 +1,2 @@
1
+ // Gegenereerd door scripts/schrijf-versie.cjs uit package.json. Niet met de hand wijzigen.
2
+ export const PAKKET_VERSIE = "1.66.1";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flowselections/layout-maker",
3
- "version": "1.63.5",
3
+ "version": "1.66.1",
4
4
  "flowselections": {
5
5
  "moduleId": "layout-maker",
6
6
  "pages": [
@@ -75,7 +75,11 @@
75
75
  "POST"
76
76
  ]
77
77
  }
78
- ]
78
+ ],
79
+ "schema": {
80
+ "file": "sql/print-schema.sql",
81
+ "order": 50
82
+ }
79
83
  },
80
84
  "private": false,
81
85
  "sideEffects": false,
@@ -103,7 +107,8 @@
103
107
  },
104
108
  "files": [
105
109
  "dist-lib",
106
- "public"
110
+ "public",
111
+ "sql"
107
112
  ],
108
113
  "publishConfig": {
109
114
  "access": "public"
@@ -112,7 +117,7 @@
112
117
  "dev": "vite dev",
113
118
  "test": "bun test",
114
119
  "build": "vite build",
115
- "build:lib": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json --resolve-full-paths && node -e \"require('fs').writeFileSync('dist-lib/styles.css', '@source \\\"./\\\";\\n')\"",
120
+ "build:lib": "node scripts/schrijf-versie.cjs && tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json --resolve-full-paths && node -e \"require('fs').writeFileSync('dist-lib/styles.css', '@source \\\"./\\\";\\n')\"",
116
121
  "build:lib:watch": "tsc -p tsconfig.build.json --watch",
117
122
  "build:dev": "vite build --mode development",
118
123
  "preview": "vite preview",