@taloswork/ose-shared 0.1.0 → 0.1.2

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.
@@ -8027,7 +8027,7 @@ var require_src = __commonJS({
8027
8027
  var import_promises = require("node:fs/promises");
8028
8028
  var import_node_path = require("node:path");
8029
8029
 
8030
- // packages/core/dist/fs/ocr.js
8030
+ // packages/core/dist/document/ocr.js
8031
8031
  var LANG_RE = /^[a-z]{3}(\+[a-z]{3})*$/;
8032
8032
  async function ocrImage(image, opts = {}) {
8033
8033
  if (!image || image.length === 0)
@@ -22018,7 +22018,7 @@ var require_cjs = __commonJS({
22018
22018
  // apps/admin/data/skills.lib/document/bin-src/pdf-form.mjs
22019
22019
  var import_promises = require("node:fs/promises");
22020
22020
 
22021
- // packages/core/dist/fs/pdf-form.js
22021
+ // packages/core/dist/document/pdf-form.js
22022
22022
  var import_pdf_lib = __toESM(require_cjs(), 1);
22023
22023
  function fieldType(f) {
22024
22024
  return f.constructor.name.replace(/^PDF/, "").replace(/\d+$/, "");
@@ -5,7 +5,7 @@
5
5
  var import_promises = require("node:fs/promises");
6
6
  var import_node_path2 = require("node:path");
7
7
 
8
- // packages/core/dist/fs/pdf-extract.js
8
+ // packages/core/dist/document/pdf-extract.js
9
9
  var import_node_path = require("node:path");
10
10
  var import_node_url = require("node:url");
11
11
  var _mupdf = null;
@@ -22018,7 +22018,7 @@ var require_cjs = __commonJS({
22018
22018
  // apps/admin/data/skills.lib/document/bin-src/pdf-ops.mjs
22019
22019
  var import_promises = require("node:fs/promises");
22020
22020
 
22021
- // packages/core/dist/fs/pdf-ops.js
22021
+ // packages/core/dist/document/pdf-ops.js
22022
22022
  var import_pdf_lib = __toESM(require_cjs(), 1);
22023
22023
  async function mergePdfs(pdfs) {
22024
22024
  if (pdfs.length === 0)
@@ -22087,7 +22087,7 @@ async function watermarkPdf(bytes, text) {
22087
22087
  return doc.save();
22088
22088
  }
22089
22089
 
22090
- // packages/core/dist/fs/pdf-extract.js
22090
+ // packages/core/dist/document/pdf-extract.js
22091
22091
  var import_node_path = require("node:path");
22092
22092
  var import_node_url = require("node:url");
22093
22093
  var _mupdf = null;
@@ -5,7 +5,7 @@
5
5
  var import_promises = require("node:fs/promises");
6
6
  var import_node_path2 = require("node:path");
7
7
 
8
- // packages/core/dist/fs/pdf-extract.js
8
+ // packages/core/dist/document/pdf-extract.js
9
9
  var import_node_path = require("node:path");
10
10
  var import_node_url = require("node:url");
11
11
  var _mupdf = null;
@@ -5,7 +5,7 @@
5
5
  var import_promises = require("node:fs/promises");
6
6
  var import_node_path2 = require("node:path");
7
7
 
8
- // packages/core/dist/fs/pdf-extract.js
8
+ // packages/core/dist/document/pdf-extract.js
9
9
  var import_node_path = require("node:path");
10
10
  var import_node_url = require("node:url");
11
11
  var _mupdf = null;
@@ -9818,10 +9818,10 @@ var require_lib3 = __commonJS({
9818
9818
  // apps/admin/data/skills.lib/document/bin-src/pptx-clone.mjs
9819
9819
  var import_promises = require("node:fs/promises");
9820
9820
 
9821
- // packages/core/dist/fs/pptx-clone.js
9821
+ // packages/core/dist/document/pptx-clone.js
9822
9822
  var import_jszip = __toESM(require_lib3(), 1);
9823
9823
 
9824
- // packages/core/dist/fs/ooxml-util.js
9824
+ // packages/core/dist/document/ooxml-util.js
9825
9825
  function escXml(s) {
9826
9826
  return s.replace(/[&<>"']/g, (c) => ({ "&": "&amp;", "<": "&lt;", ">": "&gt;", '"': "&quot;", "'": "&apos;" })[c]);
9827
9827
  }
@@ -9936,7 +9936,7 @@ function replaceTextAcrossRuns(xml, find, replacement, opts) {
9936
9936
  return { xml: rewritten, count };
9937
9937
  }
9938
9938
 
9939
- // packages/core/dist/fs/pptx-clone.js
9939
+ // packages/core/dist/document/pptx-clone.js
9940
9940
  var SLIDE_CT = "application/vnd.openxmlformats-officedocument.presentationml.slide+xml";
9941
9941
  var SLIDE_REL_TYPE = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/slide";
9942
9942
  var EMU_PER_PT = 12700;
@@ -9818,7 +9818,7 @@ var require_lib3 = __commonJS({
9818
9818
  // apps/admin/data/skills.lib/document/bin-src/pptx-embed-fonts.mjs
9819
9819
  var import_promises = require("node:fs/promises");
9820
9820
 
9821
- // packages/core/dist/fs/pptx-fonts.js
9821
+ // packages/core/dist/document/pptx-fonts.js
9822
9822
  var import_jszip = __toESM(require_lib3(), 1);
9823
9823
  var FONT_REL_TYPE = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/font";
9824
9824
  function escXml(s) {
@@ -9819,10 +9819,10 @@ var require_lib3 = __commonJS({
9819
9819
  var import_promises = require("node:fs/promises");
9820
9820
  var import_node_path = require("node:path");
9821
9821
 
9822
- // packages/core/dist/fs/pptx-set-image.js
9822
+ // packages/core/dist/document/pptx-set-image.js
9823
9823
  var import_jszip = __toESM(require_lib3(), 1);
9824
9824
 
9825
- // packages/core/dist/fs/ooxml-util.js
9825
+ // packages/core/dist/document/ooxml-util.js
9826
9826
  function elementRe(tag) {
9827
9827
  const t = tag.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
9828
9828
  return new RegExp(`<${t}\\b[^>]*(?:/>|>[\\s\\S]*?</${t}>)`, "g");
@@ -9835,7 +9835,7 @@ function findElement(xml, tag, test) {
9835
9835
  return void 0;
9836
9836
  }
9837
9837
 
9838
- // packages/core/dist/fs/pptx-set-image.js
9838
+ // packages/core/dist/document/pptx-set-image.js
9839
9839
  var CONTENT_TYPE = {
9840
9840
  png: "image/png",
9841
9841
  jpg: "image/jpeg",
@@ -9818,7 +9818,7 @@ var require_lib3 = __commonJS({
9818
9818
  // apps/admin/data/skills.lib/document/bin-src/pptx-slide.mjs
9819
9819
  var import_promises = require("node:fs/promises");
9820
9820
 
9821
- // packages/core/dist/fs/pptx-slide.js
9821
+ // packages/core/dist/document/pptx-slide.js
9822
9822
  var import_jszip = __toESM(require_lib3(), 1);
9823
9823
  var SLIDE_CT = "application/vnd.openxmlformats-officedocument.presentationml.slide+xml";
9824
9824
  var SLIDE_REL_TYPE = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/slide";
@@ -9923,10 +9923,10 @@ async function reorderPptxSlides(bytes, order) {
9923
9923
  return { bytes: new Uint8Array(out2), order: [...order] };
9924
9924
  }
9925
9925
 
9926
- // packages/core/dist/fs/pptx-clone.js
9926
+ // packages/core/dist/document/pptx-clone.js
9927
9927
  var import_jszip2 = __toESM(require_lib3(), 1);
9928
9928
 
9929
- // packages/core/dist/fs/ooxml-util.js
9929
+ // packages/core/dist/document/ooxml-util.js
9930
9930
  function escXml(s) {
9931
9931
  return s.replace(/[&<>"']/g, (c) => ({ "&": "&amp;", "<": "&lt;", ">": "&gt;", '"': "&quot;", "'": "&apos;" })[c]);
9932
9932
  }
@@ -10041,7 +10041,7 @@ function replaceTextAcrossRuns(xml, find, replacement, opts) {
10041
10041
  return { xml: rewritten, count };
10042
10042
  }
10043
10043
 
10044
- // packages/core/dist/fs/pptx-clone.js
10044
+ // packages/core/dist/document/pptx-clone.js
10045
10045
  var SLIDE_CT2 = "application/vnd.openxmlformats-officedocument.presentationml.slide+xml";
10046
10046
  var SLIDE_REL_TYPE2 = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/slide";
10047
10047
  var EMU_PER_PT = 12700;
@@ -9818,7 +9818,7 @@ var require_lib3 = __commonJS({
9818
9818
  // apps/admin/data/skills.lib/document/bin-src/pptx-theme.mjs
9819
9819
  var import_promises = require("node:fs/promises");
9820
9820
 
9821
- // packages/core/dist/fs/pptx-theme.js
9821
+ // packages/core/dist/document/pptx-theme.js
9822
9822
  var import_jszip = __toESM(require_lib3(), 1);
9823
9823
  var SYS_CLR = { windowText: "000000", window: "FFFFFF" };
9824
9824
  function schemeColor(clrScheme, slot) {
@@ -9818,10 +9818,10 @@ var require_lib3 = __commonJS({
9818
9818
  // apps/admin/data/skills.lib/document/bin-src/pptx-tokenize.mjs
9819
9819
  var import_promises = require("node:fs/promises");
9820
9820
 
9821
- // packages/core/dist/fs/pptx-tokenize.js
9821
+ // packages/core/dist/document/pptx-tokenize.js
9822
9822
  var import_jszip = __toESM(require_lib3(), 1);
9823
9823
 
9824
- // packages/core/dist/fs/ooxml-util.js
9824
+ // packages/core/dist/document/ooxml-util.js
9825
9825
  function unescXml(s) {
9826
9826
  return s.replace(/&(amp|lt|gt|quot|apos|#x?[0-9a-fA-F]+);/g, (whole, code) => {
9827
9827
  switch (code) {
@@ -9863,7 +9863,7 @@ function visualWidth(text) {
9863
9863
  return w;
9864
9864
  }
9865
9865
 
9866
- // packages/core/dist/fs/pptx-tokenize.js
9866
+ // packages/core/dist/document/pptx-tokenize.js
9867
9867
  var RE = {
9868
9868
  slide: /^ppt\/slides\/slide(\d+)\.xml$/,
9869
9869
  sp: /<p:sp\b[^>]*>[\s\S]*?<\/p:sp>/g,
@@ -33251,7 +33251,7 @@ var require_xlsx = __commonJS({
33251
33251
  // apps/admin/data/skills.lib/document/bin-src/xlsx-query.mjs
33252
33252
  var import_promises = require("node:fs/promises");
33253
33253
 
33254
- // packages/core/dist/fs/xlsx-query.js
33254
+ // packages/core/dist/document/xlsx-query.js
33255
33255
  var XLSX = __toESM(require_xlsx(), 1);
33256
33256
  function parseWorkbook(buffer) {
33257
33257
  const data = buffer instanceof Uint8Array ? buffer : new Uint8Array(buffer);
@@ -81588,7 +81588,7 @@ var require_tiny_emitter = __commonJS({
81588
81588
  var import_promises = require("node:fs/promises");
81589
81589
  var import_node_path = require("node:path");
81590
81590
 
81591
- // packages/core/dist/fs/xlsx-recalc.js
81591
+ // packages/core/dist/document/xlsx-recalc.js
81592
81592
  var import_exceljs = __toESM(require_excel(), 1);
81593
81593
 
81594
81594
  // node_modules/hyperformula/es/parser/ColumnAddress.mjs
@@ -111706,7 +111706,7 @@ for (const pluginName of Object.getOwnPropertyNames(plugin_exports)) {
111706
111706
  }
111707
111707
  }
111708
111708
 
111709
- // packages/core/dist/fs/xlsx-recalc.js
111709
+ // packages/core/dist/document/xlsx-recalc.js
111710
111710
  function toPrimitive(v) {
111711
111711
  if (v == null)
111712
111712
  return { value: null };
@@ -205,6 +205,12 @@ Simple spec shapes:
205
205
  - **xlsx**: `{ "sheets": { "SheetName": [["h1","h2"], ["a", 1], ...] } }` (row 1 = bold header)
206
206
  - **pptx**: `{ "slides": [{ "title"?: "...", "bullets"?: ["...", ...] }] }`
207
207
 
208
+ `doc-gen` validates these shapes **strictly before rendering**: unknown fields are
209
+ errors, not ignored. For DOCX/PDF use `paragraphs` and/or `blocks`—never
210
+ `sections`. A title-only artifact also fails unless it is intentional and the
211
+ spec explicitly sets `"allowCoverOnly": true`; on `DOC_SPEC_INVALID`, correct
212
+ the reported JSON path and rerun rather than delivering the previous output.
213
+
208
214
  Rich spec shapes (use these for real documents, not just prose):
209
215
  - **docx** `blocks`: ordered list of
210
216
  - `{ "type": "heading", "text": "...", "level": 1..4 }`
package/mcp/.gitkeep DELETED
@@ -1,8 +0,0 @@
1
- # Placeholder for shared MCP servers.
2
- #
3
- # Each shared MCP package lives at `mcp/<pkg>/mcp.json` — the client extracts
4
- # this directory tree into `~/.talos/bundled/shared/mcp/` and every OSE
5
- # auto-merges the servers in without opt-in (P12b / docs/02-ose-and-prompt.md). The mcp.json
6
- # shape matches per-OSE `bundled/<id>/mcp.json`: `{ version, servers: { ... } }`.
7
- #
8
- # Delete this file once at least one real shared MCP package lands here.
package/skills/.gitkeep DELETED
@@ -1,7 +0,0 @@
1
- # Placeholder for shared skills.
2
- #
3
- # Each shared skill lives at `skills/<name>/SKILL.md` — the client extracts
4
- # this directory tree into `~/.talos/bundled/shared/skills/` and every OSE
5
- # auto-loads the skills without opt-in (P12b / docs/02-ose-and-prompt.md).
6
- #
7
- # Delete this file once at least one real shared skill lands here.