@ekwo-ai/core 0.21.3 → 0.23.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.
@@ -102,19 +102,7 @@ export interface Backend {
102
102
  remove(table: string, where: Filter[], schema?: string): Promise<void>;
103
103
  close(): Promise<void>;
104
104
  }
105
- /**
106
- * Where the socle lives: its own schema, and the one it is leaving.
107
- *
108
- * The socle was created in `public` and moves to `ekwo` (decision 0090). A
109
- * client of either layout finds it by one marker, the function that carries
110
- * the schema's version: present in `ekwo`, the socle is there; absent, it is
111
- * still in `public`. Nothing else is guessed, and no other schema is tried —
112
- * a database that has neither is not an Ekwo installation, and the first
113
- * query says so in the database's own words.
114
- */
115
- export declare const SOCLE_SCHEMA = "ekwo";
116
- export declare const FORMER_SOCLE_SCHEMA = "public";
117
- export declare const SOCLE_MARKER = "ekwo_schema_version";
105
+ export { FORMER_SOCLE_SCHEMA, SOCLE_MARKER, SOCLE_SCHEMA, socleMarkerInCatalogue, socleNamed } from './socle-names.js';
118
106
  /**
119
107
  * Answers whether the marker is in `schema`. Each route asks in its own way —
120
108
  * the catalogue over SQL, a call with a profile over PostgREST — and the
@@ -129,15 +117,6 @@ export type SocleProbe = (schema: string) => Promise<boolean>;
129
117
  * call asks again rather than living on an error.
130
118
  */
131
119
  export declare function socleSchemaResolver(probe: SocleProbe): () => Promise<string>;
132
- /**
133
- * Whether the marker is in `schema`, read from the catalogue of a direct
134
- * connection.
135
- *
136
- * Asked as the connection, before any role is set: `pg_proc` is readable by
137
- * everybody, and the question is where a function is, not whether this user
138
- * may call it. `query` is the driver's, whichever it is.
139
- */
140
- export declare function socleMarkerInCatalogue(query: (sql: string, params: unknown[]) => Promise<Array<Record<string, unknown>>>, schema: string): Promise<boolean>;
141
120
  /**
142
121
  * What a call of the marker over PostgREST says about the schema it named.
143
122
  *
@@ -1 +1 @@
1
- {"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../../src/books/backend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../../src/books/backend.ts"],"names":[],"mappings":"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"}
@@ -21,19 +21,8 @@
21
21
  */
22
22
  import { SCHEMA_FEATURES, supports } from '../schema.js';
23
23
  export const SESSION_POSTING = ['review', 'autopilot'];
24
- /**
25
- * Where the socle lives: its own schema, and the one it is leaving.
26
- *
27
- * The socle was created in `public` and moves to `ekwo` (decision 0090). A
28
- * client of either layout finds it by one marker, the function that carries
29
- * the schema's version: present in `ekwo`, the socle is there; absent, it is
30
- * still in `public`. Nothing else is guessed, and no other schema is tried —
31
- * a database that has neither is not an Ekwo installation, and the first
32
- * query says so in the database's own words.
33
- */
34
- export const SOCLE_SCHEMA = 'ekwo';
35
- export const FORMER_SOCLE_SCHEMA = 'public';
36
- export const SOCLE_MARKER = 'ekwo_schema_version';
24
+ export { FORMER_SOCLE_SCHEMA, SOCLE_MARKER, SOCLE_SCHEMA, socleMarkerInCatalogue, socleNamed } from './socle-names.js';
25
+ import { FORMER_SOCLE_SCHEMA, SOCLE_MARKER, SOCLE_SCHEMA } from './socle-names.js';
37
26
  /**
38
27
  * The socle's schema, resolved once and kept.
39
28
  *
@@ -53,21 +42,6 @@ export function socleSchemaResolver(probe) {
53
42
  return resolved;
54
43
  };
55
44
  }
56
- /**
57
- * Whether the marker is in `schema`, read from the catalogue of a direct
58
- * connection.
59
- *
60
- * Asked as the connection, before any role is set: `pg_proc` is readable by
61
- * everybody, and the question is where a function is, not whether this user
62
- * may call it. `query` is the driver's, whichever it is.
63
- */
64
- export async function socleMarkerInCatalogue(query, schema) {
65
- const rows = await query(`select exists (
66
- select 1 from pg_proc p join pg_namespace n on n.oid = p.pronamespace
67
- where n.nspname = $1 and p.proname = $2 and p.pronargs = 0
68
- ) as found`, [schema, SOCLE_MARKER]);
69
- return rows[0]?.['found'] === true;
70
- }
71
45
  /**
72
46
  * What a call of the marker over PostgREST says about the schema it named.
73
47
  *
@@ -1 +1 @@
1
- {"version":3,"file":"backend.js","sourceRoot":"","sources":["../../src/books/backend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backend.js","sourceRoot":"","sources":["../../src/books/backend.ts"],"names":[],"mappings":"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"}
@@ -63,7 +63,11 @@ export declare function mergeContacts(backend: Backend, args: MergeContactsArgs)
63
63
  export interface SuggestDuplicateContactsArgs {
64
64
  company_id: string;
65
65
  }
66
- /** One probable pair, as `suggest_duplicate_contacts()` answers it, with the two names. */
66
+ /**
67
+ * One contact to absorb, as `suggest_duplicate_contacts()` answers it, with
68
+ * the two names. The rows of one group — the contacts a chain of pairs joins
69
+ * — share their `keep_id` and their `proposed_name`.
70
+ */
67
71
  export interface DuplicateContactPair {
68
72
  keep_id: string;
69
73
  keep_name: string;
@@ -73,12 +77,15 @@ export interface DuplicateContactPair {
73
77
  /** The kinds of evidence, strongest first: `vat_number`, `registration_number`, `account`, `name`. */
74
78
  evidence: string[];
75
79
  because: string;
80
+ /** The simplest name the group carries: a proposal for the kept contact, written by nobody but a person. */
81
+ proposed_name: string;
76
82
  }
77
83
  /**
78
84
  * The contacts of a company that are probably one party, through
79
- * `suggest_duplicate_contacts()` (decision 0075): one pair per row, strongest
80
- * first, with the contact to keep, the score and the evidence. The pairs, the
81
- * scores and which one to keep are the database's; this puts the two names
85
+ * `suggest_duplicate_contacts()` (decision 0075): one row per contact to
86
+ * absorb, strongest first, with the contact to keep, the score, the evidence
87
+ * and the name proposed for the group. The groups, the scores, which one to
88
+ * keep and the name proposed are the database's; this puts the two names
82
89
  * beside the ids. It writes nothing: `mergeContacts()` joins a pair once a
83
90
  * person has chosen it.
84
91
  */
@@ -1 +1 @@
1
- {"version":3,"file":"contacts.d.ts","sourceRoot":"","sources":["../../src/books/contacts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contacts.d.ts","sourceRoot":"","sources":["../../src/books/contacts.ts"],"names":[],"mappings":"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"}
@@ -99,9 +99,10 @@ export async function mergeContacts(backend, args) {
99
99
  }
100
100
  /**
101
101
  * The contacts of a company that are probably one party, through
102
- * `suggest_duplicate_contacts()` (decision 0075): one pair per row, strongest
103
- * first, with the contact to keep, the score and the evidence. The pairs, the
104
- * scores and which one to keep are the database's; this puts the two names
102
+ * `suggest_duplicate_contacts()` (decision 0075): one row per contact to
103
+ * absorb, strongest first, with the contact to keep, the score, the evidence
104
+ * and the name proposed for the group. The groups, the scores, which one to
105
+ * keep and the name proposed are the database's; this puts the two names
105
106
  * beside the ids. It writes nothing: `mergeContacts()` joins a pair once a
106
107
  * person has chosen it.
107
108
  */
@@ -120,11 +121,12 @@ export async function suggestDuplicateContacts(backend, args) {
120
121
  score: Number(row['score']),
121
122
  evidence: String(row['evidence']).split(','),
122
123
  because: String(row['because']),
124
+ proposed_name: String(row['proposed_name'] ?? nameOf.get(String(row['keep_id'])) ?? ''),
123
125
  }));
124
126
  return {
125
127
  pairs,
126
128
  count: pairs.length,
127
- note: 'Probable pairs, strongest first; nothing was written. The contact to keep is the one more ledger lines and documents name, then the older. Show the user both contacts and merge a pair only once they confirm it, with the contact they choose to keep.',
129
+ note: 'Probable pairs, strongest first; nothing was written. The rows that share a keep_id are one group: the contacts a chain of pairs joins, with the contact to keep — the one more ledger lines and documents name, then the older — and proposed_name, the simplest name the group carries. Show the user the contacts of a group and merge a pair only once they confirm it, with the contact they choose to keep; rename the kept contact to the proposed name only if they want it.',
128
130
  };
129
131
  }
130
132
  //# sourceMappingURL=contacts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"contacts.js","sourceRoot":"","sources":["../../src/books/contacts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contacts.js","sourceRoot":"","sources":["../../src/books/contacts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Where the socle lives, in words a file with no dependency can carry.
3
+ *
4
+ * The constants, the catalogue question and the reading of a module's SQL
5
+ * for the socle's schema of the day live here, imported by `backend.ts` and
6
+ * by the test image builder alike — the latter runs under plain Node, so
7
+ * this file imports nothing.
8
+ */
9
+ /**
10
+ * Where the socle lives: its own schema, and the one it is leaving.
11
+ *
12
+ * The socle was created in `public` and moves to `ekwo` (decision 0090). A
13
+ * client of either layout finds it by one marker, the function that carries
14
+ * the schema's version: present in `ekwo`, the socle is there; absent, it is
15
+ * still in `public`. Nothing else is guessed, and no other schema is tried —
16
+ * a database that has neither is not an Ekwo installation, and the first
17
+ * query says so in the database's own words.
18
+ */
19
+ export declare const SOCLE_SCHEMA = "ekwo";
20
+ export declare const FORMER_SOCLE_SCHEMA = "public";
21
+ export declare const SOCLE_MARKER = "ekwo_schema_version";
22
+ /**
23
+ * Whether the marker is in `schema`, read from the catalogue of a direct
24
+ * connection.
25
+ *
26
+ * Asked as the connection, before any role is set: `pg_proc` is readable by
27
+ * everybody, and the question is where a function is, not whether this user
28
+ * may call it. `query` is the driver's, whichever it is.
29
+ */
30
+ export declare function socleMarkerInCatalogue(query: (sql: string, params: unknown[]) => Promise<Array<Record<string, unknown>>>, schema: string): Promise<boolean>;
31
+ /**
32
+ * The SQL of a module, read for the socle's schema of the day.
33
+ *
34
+ * A module names the socle: `references public.companies(id)`,
35
+ * `public.is_company_member(…)`, `set search_path = public, pg_temp`
36
+ * (decision 0051). Its migrations are published and never edited, and they
37
+ * run on a fresh installation after the socle has moved to `ekwo`
38
+ * (`20261028040000`, decision 0090). So whoever applies a module's file reads
39
+ * it for the socle's schema of the day: with the socle in `ekwo`, `public.`
40
+ * before a name becomes `ekwo.`, the string `'public'` becomes `'ekwo'` and a
41
+ * `search_path = public` names `ekwo` — the same three rewrites the move
42
+ * applied to the functions already installed. A file written for `ekwo`
43
+ * passes unchanged, and so does every file while the socle is in `public`. A
44
+ * sentence that ends with the word "public." is left alone: only a name
45
+ * follows the dot that is rewritten.
46
+ */
47
+ export declare function socleNamed(sql: string, schema: string): string;
48
+ //# sourceMappingURL=socle-names.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"socle-names.d.ts","sourceRoot":"","sources":["../../src/books/socle-names.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;;;;;GASG;AACH,eAAO,MAAM,YAAY,SAAS,CAAC;AACnC,eAAO,MAAM,mBAAmB,WAAW,CAAC;AAC5C,eAAO,MAAM,YAAY,wBAAwB,CAAC;AAElD;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,EAClF,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,CAAC,CASlB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAM9D"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Where the socle lives, in words a file with no dependency can carry.
3
+ *
4
+ * The constants, the catalogue question and the reading of a module's SQL
5
+ * for the socle's schema of the day live here, imported by `backend.ts` and
6
+ * by the test image builder alike — the latter runs under plain Node, so
7
+ * this file imports nothing.
8
+ */
9
+ /**
10
+ * Where the socle lives: its own schema, and the one it is leaving.
11
+ *
12
+ * The socle was created in `public` and moves to `ekwo` (decision 0090). A
13
+ * client of either layout finds it by one marker, the function that carries
14
+ * the schema's version: present in `ekwo`, the socle is there; absent, it is
15
+ * still in `public`. Nothing else is guessed, and no other schema is tried —
16
+ * a database that has neither is not an Ekwo installation, and the first
17
+ * query says so in the database's own words.
18
+ */
19
+ export const SOCLE_SCHEMA = 'ekwo';
20
+ export const FORMER_SOCLE_SCHEMA = 'public';
21
+ export const SOCLE_MARKER = 'ekwo_schema_version';
22
+ /**
23
+ * Whether the marker is in `schema`, read from the catalogue of a direct
24
+ * connection.
25
+ *
26
+ * Asked as the connection, before any role is set: `pg_proc` is readable by
27
+ * everybody, and the question is where a function is, not whether this user
28
+ * may call it. `query` is the driver's, whichever it is.
29
+ */
30
+ export async function socleMarkerInCatalogue(query, schema) {
31
+ const rows = await query(`select exists (
32
+ select 1 from pg_proc p join pg_namespace n on n.oid = p.pronamespace
33
+ where n.nspname = $1 and p.proname = $2 and p.pronargs = 0
34
+ ) as found`, [schema, SOCLE_MARKER]);
35
+ return rows[0]?.['found'] === true;
36
+ }
37
+ /**
38
+ * The SQL of a module, read for the socle's schema of the day.
39
+ *
40
+ * A module names the socle: `references public.companies(id)`,
41
+ * `public.is_company_member(…)`, `set search_path = public, pg_temp`
42
+ * (decision 0051). Its migrations are published and never edited, and they
43
+ * run on a fresh installation after the socle has moved to `ekwo`
44
+ * (`20261028040000`, decision 0090). So whoever applies a module's file reads
45
+ * it for the socle's schema of the day: with the socle in `ekwo`, `public.`
46
+ * before a name becomes `ekwo.`, the string `'public'` becomes `'ekwo'` and a
47
+ * `search_path = public` names `ekwo` — the same three rewrites the move
48
+ * applied to the functions already installed. A file written for `ekwo`
49
+ * passes unchanged, and so does every file while the socle is in `public`. A
50
+ * sentence that ends with the word "public." is left alone: only a name
51
+ * follows the dot that is rewritten.
52
+ */
53
+ export function socleNamed(sql, schema) {
54
+ if (schema === FORMER_SOCLE_SCHEMA)
55
+ return sql;
56
+ return sql
57
+ .replace(/\bpublic\.(?=[a-z_])/g, `${schema}.`)
58
+ .replace(/'public'/g, `'${schema}'`)
59
+ .replace(/(search_path\s*=\s*)public\b/g, `$1${schema}`);
60
+ }
61
+ //# sourceMappingURL=socle-names.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"socle-names.js","sourceRoot":"","sources":["../../src/books/socle-names.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC;AACnC,MAAM,CAAC,MAAM,mBAAmB,GAAG,QAAQ,CAAC;AAC5C,MAAM,CAAC,MAAM,YAAY,GAAG,qBAAqB,CAAC;AAElD;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,KAAkF,EAClF,MAAc;IAEd,MAAM,IAAI,GAAG,MAAM,KAAK,CACtB;;;gBAGY,EACZ,CAAC,MAAM,EAAE,YAAY,CAAC,CACvB,CAAC;IACF,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;AACrC,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,UAAU,CAAC,GAAW,EAAE,MAAc;IACpD,IAAI,MAAM,KAAK,mBAAmB;QAAE,OAAO,GAAG,CAAC;IAC/C,OAAO,GAAG;SACP,OAAO,CAAC,uBAAuB,EAAE,GAAG,MAAM,GAAG,CAAC;SAC9C,OAAO,CAAC,WAAW,EAAE,IAAI,MAAM,GAAG,CAAC;SACnC,OAAO,CAAC,+BAA+B,EAAE,KAAK,MAAM,EAAE,CAAC,CAAC;AAC7D,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ekwo-ai/core",
3
- "version": "0.21.3",
3
+ "version": "0.23.0",
4
4
  "description": "TypeScript row types and a typed Supabase client for the Ekwo OS accounting schema.",
5
5
  "keywords": [
6
6
  "accounting",
@@ -48,20 +48,20 @@
48
48
  "typecheck": "tsc -p tsconfig.json --noEmit"
49
49
  },
50
50
  "dependencies": {
51
- "@ekwo-ai/camt053": "^0.21.3",
52
- "@ekwo-ai/cfonb120": "^0.21.3",
53
- "@ekwo-ai/coda": "^0.21.3",
54
- "@ekwo-ai/factur-x": "^0.21.3",
55
- "@ekwo-ai/fec": "^0.21.3",
56
- "@ekwo-ai/invoice-pdf": "^0.21.3",
57
- "@ekwo-ai/journal-items": "^0.21.3",
58
- "@ekwo-ai/journal-report": "^0.21.3",
59
- "@ekwo-ai/myinvois": "^0.21.3",
60
- "@ekwo-ai/peppol-ubl": "^0.21.3",
61
- "@ekwo-ai/transaction-journal": "^0.21.3",
62
- "@ekwo-ai/trial-balance": "^0.21.3",
63
- "@ekwo-ai/verifactu": "^0.21.3",
64
- "@ekwo-ai/xaf": "^0.21.3"
51
+ "@ekwo-ai/camt053": "^0.23.0",
52
+ "@ekwo-ai/cfonb120": "^0.23.0",
53
+ "@ekwo-ai/coda": "^0.23.0",
54
+ "@ekwo-ai/factur-x": "^0.23.0",
55
+ "@ekwo-ai/fec": "^0.23.0",
56
+ "@ekwo-ai/invoice-pdf": "^0.23.0",
57
+ "@ekwo-ai/journal-items": "^0.23.0",
58
+ "@ekwo-ai/journal-report": "^0.23.0",
59
+ "@ekwo-ai/myinvois": "^0.23.0",
60
+ "@ekwo-ai/peppol-ubl": "^0.23.0",
61
+ "@ekwo-ai/transaction-journal": "^0.23.0",
62
+ "@ekwo-ai/trial-balance": "^0.23.0",
63
+ "@ekwo-ai/verifactu": "^0.23.0",
64
+ "@ekwo-ai/xaf": "^0.23.0"
65
65
  },
66
66
  "peerDependencies": {
67
67
  "@supabase/supabase-js": "^2.0.0"