@overaihq/cli 0.13.1 → 0.13.3

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.
@@ -378,6 +378,10 @@ var screenshotResultPayloadSchema = external_exports.object({
378
378
  width: external_exports.number().optional(),
379
379
  height: external_exports.number().optional()
380
380
  });
381
+ var injectCodeMessageSchema = external_exports.object({
382
+ type: external_exports.literal("injectCode"),
383
+ code: external_exports.string()
384
+ });
381
385
 
382
386
  // ../common/src/webPage.ts
383
387
  var webPageLanguage = ["react"];
@@ -392,12 +396,22 @@ var webPageConfigSchema = external_exports.object({
392
396
  filter: itemFilterExpressionRootSchema.nullish().catch(null),
393
397
  /* Drops the iframe's sandbox attribute — needed for storage, cookies, forms. */
394
398
  noSandbox: configFlag,
395
- /* Renders the page fullscreen for guests by hiding the workspace top bar. */
396
- hideTopBar: configFlag
399
+ /* Renders the page fullscreen for end users by hiding the workspace top bar. */
400
+ hideTopBar: configFlag,
401
+ /*
402
+ * Which iframe runtime renders the page. "v1" is the sandboxed srcdoc
403
+ * iframe; "v2" serves the page from its own origin (separate renderer
404
+ * process, real localStorage). Absent or invalid reads as "v1" so a legacy
405
+ * config never fails to parse over the toggle.
406
+ */
407
+ runtime: external_exports.enum(["v1", "v2"]).catch("v1")
397
408
  });
398
409
  var webPageConfigWriteSchema = webPageConfigSchema.extend({
399
410
  noSandbox: external_exports.union([external_exports.boolean(), external_exports.enum(["true", "false"])]).nullish(),
400
- hideTopBar: external_exports.union([external_exports.boolean(), external_exports.enum(["true", "false"])]).nullish()
411
+ hideTopBar: external_exports.union([external_exports.boolean(), external_exports.enum(["true", "false"])]).nullish(),
412
+ // Without this override the read schema's .catch would silently push a typo
413
+ // ("V2", "2") as v1.
414
+ runtime: external_exports.enum(["v1", "v2"]).nullish()
401
415
  });
402
416
  var defaultWebPageTemplate = reactDefaultTemplate.replace(
403
417
  'className="page"',
package/dist/index.js CHANGED
@@ -5,7 +5,7 @@ import {
5
5
  import {
6
6
  itemFilterExpressionRootSchema,
7
7
  webPageConfigSchema
8
- } from "./chunk-56E4CWBE.js";
8
+ } from "./chunk-M2NX2CHG.js";
9
9
  import {
10
10
  external_exports
11
11
  } from "./chunk-XCJJTK3H.js";
@@ -20019,9 +20019,9 @@ var require_dist = __commonJS({
20019
20019
  }
20020
20020
  });
20021
20021
 
20022
- // ../../node_modules/.pnpm/@xmldom+xmldom@0.9.10/node_modules/@xmldom/xmldom/lib/conventions.js
20022
+ // ../../node_modules/.pnpm/@xmldom+xmldom@0.9.12/node_modules/@xmldom/xmldom/lib/conventions.js
20023
20023
  var require_conventions = __commonJS({
20024
- "../../node_modules/.pnpm/@xmldom+xmldom@0.9.10/node_modules/@xmldom/xmldom/lib/conventions.js"(exports) {
20024
+ "../../node_modules/.pnpm/@xmldom+xmldom@0.9.12/node_modules/@xmldom/xmldom/lib/conventions.js"(exports) {
20025
20025
  "use strict";
20026
20026
  function find2(list, predicate, ac) {
20027
20027
  if (ac === void 0) {
@@ -20228,9 +20228,9 @@ var require_conventions = __commonJS({
20228
20228
  }
20229
20229
  });
20230
20230
 
20231
- // ../../node_modules/.pnpm/@xmldom+xmldom@0.9.10/node_modules/@xmldom/xmldom/lib/errors.js
20231
+ // ../../node_modules/.pnpm/@xmldom+xmldom@0.9.12/node_modules/@xmldom/xmldom/lib/errors.js
20232
20232
  var require_errors = __commonJS({
20233
- "../../node_modules/.pnpm/@xmldom+xmldom@0.9.10/node_modules/@xmldom/xmldom/lib/errors.js"(exports) {
20233
+ "../../node_modules/.pnpm/@xmldom+xmldom@0.9.12/node_modules/@xmldom/xmldom/lib/errors.js"(exports) {
20234
20234
  "use strict";
20235
20235
  var conventions = require_conventions();
20236
20236
  function extendError(constructor, writableName) {
@@ -20373,9 +20373,10 @@ var require_errors = __commonJS({
20373
20373
  }
20374
20374
  var key;
20375
20375
  var i;
20376
- function ParseError2(message, locator) {
20376
+ function ParseError2(message, locator, cause) {
20377
20377
  this.message = message;
20378
20378
  this.locator = locator;
20379
+ this.cause = cause;
20379
20380
  if (Error.captureStackTrace) Error.captureStackTrace(this, ParseError2);
20380
20381
  }
20381
20382
  extendError(ParseError2);
@@ -20386,9 +20387,9 @@ var require_errors = __commonJS({
20386
20387
  }
20387
20388
  });
20388
20389
 
20389
- // ../../node_modules/.pnpm/@xmldom+xmldom@0.9.10/node_modules/@xmldom/xmldom/lib/grammar.js
20390
+ // ../../node_modules/.pnpm/@xmldom+xmldom@0.9.12/node_modules/@xmldom/xmldom/lib/grammar.js
20390
20391
  var require_grammar = __commonJS({
20391
- "../../node_modules/.pnpm/@xmldom+xmldom@0.9.10/node_modules/@xmldom/xmldom/lib/grammar.js"(exports) {
20392
+ "../../node_modules/.pnpm/@xmldom+xmldom@0.9.12/node_modules/@xmldom/xmldom/lib/grammar.js"(exports) {
20392
20393
  "use strict";
20393
20394
  function detectUnicodeSupport(RegExpImpl) {
20394
20395
  try {
@@ -20433,7 +20434,7 @@ var require_grammar = __commonJS({
20433
20434
  }
20434
20435
  return isStr ? part : part.source;
20435
20436
  }).join(""),
20436
- UNICODE_SUPPORT ? "mu" : "m"
20437
+ UNICODE_SUPPORT ? "u" : ""
20437
20438
  );
20438
20439
  }
20439
20440
  function regg(args) {
@@ -20459,6 +20460,7 @@ var require_grammar = __commonJS({
20459
20460
  var NameStartChar_s = chars(NameStartChar);
20460
20461
  var NameChar = reg("[", NameStartChar_s, chars(/[-.0-9\xB7]/), chars(/[\u0300-\u036F\u203F-\u2040]/), "]");
20461
20462
  var Name = reg(NameStartChar, NameChar, "*");
20463
+ var Name_exact = reg("^", Name, "$");
20462
20464
  var Nmtoken = reg(NameChar, "+");
20463
20465
  var EntityRef = reg("&", Name, ";");
20464
20466
  var CharRef = regg(/&#[0-9]+;|&#x[0-9a-fA-F]+;/);
@@ -20473,11 +20475,12 @@ var require_grammar = __commonJS({
20473
20475
  var NCNameStartChar = chars_without(NameStartChar, ":");
20474
20476
  var NCNameChar = chars_without(NameChar, ":");
20475
20477
  var NCName = reg(NCNameStartChar, NCNameChar, "*");
20478
+ var NCName_exact = reg("^", NCName, "$");
20476
20479
  var QName = reg(NCName, regg(":", NCName), "?");
20477
20480
  var QName_exact = reg("^", QName, "$");
20478
20481
  var QName_group = reg("(", QName, ")");
20479
20482
  var SystemLiteral = regg(/"[^"]*"|'[^']*'/);
20480
- var PI = reg(/^<\?/, "(", Name, ")", regg(S, "(", Char, "*?)"), "?", /\?>/);
20483
+ var PI = reg(/^<\?/, "(", Name, ")", regg(S, "(?!", _SChar, ")(", Char, "*?)"), "?", /\?>/);
20481
20484
  var PubidChar = /[\x20\x0D\x0Aa-zA-Z0-9-'()+,./:=?;!*#@$_%]/;
20482
20485
  var PubidLiteral = regg('"', PubidChar, '*"', "|", "'", chars_without(PubidChar, "'"), "*'");
20483
20486
  var COMMENT_START = "<!--";
@@ -20566,6 +20569,8 @@ var require_grammar = __commonJS({
20566
20569
  exports.ExternalID = ExternalID;
20567
20570
  exports.ExternalID_match = ExternalID_match;
20568
20571
  exports.Name = Name;
20572
+ exports.Name_exact = Name_exact;
20573
+ exports.NCName_exact = NCName_exact;
20569
20574
  exports.NotationDecl = NotationDecl;
20570
20575
  exports.Reference = Reference;
20571
20576
  exports.PEReference = PEReference;
@@ -20589,9 +20594,9 @@ var require_grammar = __commonJS({
20589
20594
  }
20590
20595
  });
20591
20596
 
20592
- // ../../node_modules/.pnpm/@xmldom+xmldom@0.9.10/node_modules/@xmldom/xmldom/lib/dom.js
20597
+ // ../../node_modules/.pnpm/@xmldom+xmldom@0.9.12/node_modules/@xmldom/xmldom/lib/dom.js
20593
20598
  var require_dom = __commonJS({
20594
- "../../node_modules/.pnpm/@xmldom+xmldom@0.9.10/node_modules/@xmldom/xmldom/lib/dom.js"(exports) {
20599
+ "../../node_modules/.pnpm/@xmldom+xmldom@0.9.12/node_modules/@xmldom/xmldom/lib/dom.js"(exports) {
20595
20600
  "use strict";
20596
20601
  var conventions = require_conventions();
20597
20602
  var find2 = conventions.find;
@@ -20857,6 +20862,8 @@ var require_dom = __commonJS({
20857
20862
  };
20858
20863
  _extends(LiveNodeList, NodeList);
20859
20864
  function NamedNodeMap() {
20865
+ this._nsIndex = /* @__PURE__ */ Object.create(null);
20866
+ this._noNsIndex = /* @__PURE__ */ Object.create(null);
20860
20867
  }
20861
20868
  function _findNodeIndex(list, node) {
20862
20869
  var i = 0;
@@ -20867,6 +20874,30 @@ var require_dom = __commonJS({
20867
20874
  i++;
20868
20875
  }
20869
20876
  }
20877
+ function _nnmBucket(map2, namespaceURI, create) {
20878
+ if (!namespaceURI) {
20879
+ return map2._noNsIndex;
20880
+ }
20881
+ var bucket = map2._nsIndex[namespaceURI];
20882
+ if (!bucket && create) {
20883
+ bucket = map2._nsIndex[namespaceURI] = /* @__PURE__ */ Object.create(null);
20884
+ }
20885
+ return bucket;
20886
+ }
20887
+ function _nnmIndexFind(map2, namespaceURI, localName) {
20888
+ var bucket = _nnmBucket(map2, namespaceURI, false);
20889
+ var found = bucket && bucket[localName];
20890
+ return found ? found : null;
20891
+ }
20892
+ function _nnmIndexAdd(map2, attr) {
20893
+ _nnmBucket(map2, attr.namespaceURI, true)[attr.localName] = attr;
20894
+ }
20895
+ function _nnmIndexRemove(map2, attr) {
20896
+ var bucket = _nnmBucket(map2, attr.namespaceURI, false);
20897
+ if (bucket) {
20898
+ delete bucket[attr.localName];
20899
+ }
20900
+ }
20870
20901
  function _addNamedNode(el, list, newAttr, oldAttr) {
20871
20902
  if (oldAttr) {
20872
20903
  list[_findNodeIndex(list, oldAttr)] = newAttr;
@@ -20874,6 +20905,7 @@ var require_dom = __commonJS({
20874
20905
  list[list.length] = newAttr;
20875
20906
  list.length++;
20876
20907
  }
20908
+ _nnmIndexAdd(list, newAttr);
20877
20909
  if (el) {
20878
20910
  newAttr.ownerElement = el;
20879
20911
  var doc = el.ownerDocument;
@@ -20891,6 +20923,7 @@ var require_dom = __commonJS({
20891
20923
  list[i] = list[++i];
20892
20924
  }
20893
20925
  list.length = lastIndex;
20926
+ _nnmIndexRemove(list, attr);
20894
20927
  if (el) {
20895
20928
  var doc = el.ownerDocument;
20896
20929
  if (doc) {
@@ -20946,7 +20979,7 @@ var require_dom = __commonJS({
20946
20979
  if (el && el !== this._ownerElement) {
20947
20980
  throw new DOMException(DOMException.INUSE_ATTRIBUTE_ERR);
20948
20981
  }
20949
- var oldAttr = this.getNamedItemNS(attr.namespaceURI, attr.localName);
20982
+ var oldAttr = _nnmIndexFind(this, attr.namespaceURI, attr.localName);
20950
20983
  if (oldAttr === attr) {
20951
20984
  return attr;
20952
20985
  }
@@ -21608,8 +21641,29 @@ var require_dom = __commonJS({
21608
21641
  while (child) {
21609
21642
  var next = child.nextSibling;
21610
21643
  if (next !== null && next.nodeType === TEXT_NODE && child.nodeType === TEXT_NODE) {
21611
- node.removeChild(next);
21612
- child.appendData(next.data);
21644
+ var tail = [];
21645
+ var sibling = next;
21646
+ while (sibling !== null && sibling.nodeType === TEXT_NODE) {
21647
+ tail.push(sibling.data);
21648
+ sibling = sibling.nextSibling;
21649
+ }
21650
+ var removed = child.nextSibling;
21651
+ while (removed !== sibling) {
21652
+ var following = removed.nextSibling;
21653
+ removed.parentNode = null;
21654
+ removed.previousSibling = null;
21655
+ removed.nextSibling = null;
21656
+ removed = following;
21657
+ }
21658
+ child.nextSibling = sibling;
21659
+ if (sibling !== null) {
21660
+ sibling.previousSibling = child;
21661
+ } else {
21662
+ node.lastChild = child;
21663
+ }
21664
+ child.appendData(tail.join(""));
21665
+ _onUpdateChild(node.ownerDocument, node);
21666
+ child = sibling;
21613
21667
  } else {
21614
21668
  child = next;
21615
21669
  }
@@ -22247,10 +22301,10 @@ var require_dom = __commonJS({
22247
22301
  * "InvalidCharacterError".
22248
22302
  *
22249
22303
  * Note: When the resulting document is serialized with `requireWellFormed: true`, the
22250
- * serializer throws `InvalidStateError` if `.target` contains `:` or is an ASCII
22251
- * case-insensitive match for `"xml"`, or if `.data` contains `?>` or characters outside the
22252
- * XML Char production (W3C DOM Parsing §3.2.1.7). Without that option the data is emitted
22253
- * verbatim.
22304
+ * serializer throws `InvalidStateError` if `.target` is not a valid XML `NCName` (a `Name`
22305
+ * with no colon) or is an ASCII case-insensitive match for `"xml"`, or if `.data` contains
22306
+ * `?>` or characters outside the XML Char production (W3C DOM Parsing §3.2.1.7). Without that
22307
+ * option the target and data are emitted verbatim.
22254
22308
  *
22255
22309
  * @param {string} target
22256
22310
  * @param {string} data
@@ -22305,19 +22359,29 @@ var require_dom = __commonJS({
22305
22359
  * The current implementation does not fill the `childNodes` with those of the corresponding
22306
22360
  * `Entity`
22307
22361
  *
22362
+ * The `name` is validated against the XML `Name` production at creation time; an invalid name
22363
+ * throws `InvalidCharacterError`. When the resulting node is serialized with
22364
+ * `requireWellFormed: true`, the serializer re-validates `nodeName` against the XML `Name`
22365
+ * production and throws `InvalidStateError` if a later `nodeName` mutation made it invalid;
22366
+ * without that option the name is emitted verbatim.
22367
+ *
22368
+ * __This implementation differs from the specification:__ xmldom does not expand entities —
22369
+ * the parser resolves entity references inline and never constructs `EntityReference` nodes,
22370
+ * so this method is the only producer.
22371
+ *
22308
22372
  * @deprecated
22309
22373
  * In DOM Level 4.
22310
22374
  * @param {string} name
22311
22375
  * The name of the entity to reference. No namespace well-formedness checks are performed.
22312
22376
  * @returns {EntityReference}
22313
22377
  * @throws {DOMException}
22314
- * With code `INVALID_CHARACTER_ERR` when `name` is not valid.
22378
+ * With code `INVALID_CHARACTER_ERR` when `name` is not a valid XML `Name`.
22315
22379
  * @throws {DOMException}
22316
22380
  * with code `NOT_SUPPORTED_ERR` when the document is of type `html`
22317
22381
  * @see https://www.w3.org/TR/DOM-Level-3-Core/core.html#ID-392B75AE
22318
22382
  */
22319
22383
  createEntityReference: function(name2) {
22320
- if (!g.Name.test(name2)) {
22384
+ if (!g.Name_exact.test(name2)) {
22321
22385
  throw new DOMException(DOMException.INVALID_CHARACTER_ERR, 'not a valid xml name "' + name2 + '"');
22322
22386
  }
22323
22387
  if (this.type === "html") {
@@ -22755,7 +22819,13 @@ var require_dom = __commonJS({
22755
22819
  }
22756
22820
  return true;
22757
22821
  }
22758
- function addSerializedAttribute(buf, qualifiedName, value) {
22822
+ function addSerializedAttribute(buf, qualifiedName, value, requireWellFormed) {
22823
+ if (requireWellFormed && !g.QName_exact.test(qualifiedName)) {
22824
+ throw new DOMException(
22825
+ 'The attribute name "' + qualifiedName + '" is not a valid XML QName',
22826
+ DOMExceptionName.InvalidStateError
22827
+ );
22828
+ }
22759
22829
  buf.push(" ", qualifiedName, '="', value.replace(/[<>&"\t\n\r]/g, _xmlEncoder), '"');
22760
22830
  }
22761
22831
  function serializeToString(node, buf, visibleNamespaces, opts) {
@@ -22819,6 +22889,12 @@ var require_dom = __commonJS({
22819
22889
  }
22820
22890
  }
22821
22891
  }
22892
+ if (requireWellFormed && !g.QName_exact.test(prefixedNodeName)) {
22893
+ throw new DOMException(
22894
+ 'The element name "' + prefixedNodeName + '" is not a valid XML QName',
22895
+ DOMExceptionName.InvalidStateError
22896
+ );
22897
+ }
22822
22898
  buf.push("<", prefixedNodeName);
22823
22899
  var childNamespaces = namespaces.slice();
22824
22900
  for (var i = 0; i < len; i++) {
@@ -22837,7 +22913,7 @@ var require_dom = __commonJS({
22837
22913
  if (needNamespaceDefine(attr, isHTML, childNamespaces)) {
22838
22914
  var attrPrefix = attr.prefix || "";
22839
22915
  var uri = attr.namespaceURI;
22840
- addSerializedAttribute(buf, attrPrefix ? "xmlns:" + attrPrefix : "xmlns", uri);
22916
+ addSerializedAttribute(buf, attrPrefix ? "xmlns:" + attrPrefix : "xmlns", uri, requireWellFormed);
22841
22917
  childNamespaces.push({ prefix: attrPrefix, namespace: uri });
22842
22918
  }
22843
22919
  var filteredAttr = nodeFilter ? nodeFilter(attr) : attr;
@@ -22845,14 +22921,14 @@ var require_dom = __commonJS({
22845
22921
  if (typeof filteredAttr === "string") {
22846
22922
  buf.push(filteredAttr);
22847
22923
  } else {
22848
- addSerializedAttribute(buf, filteredAttr.name, filteredAttr.value);
22924
+ addSerializedAttribute(buf, filteredAttr.name, filteredAttr.value, requireWellFormed);
22849
22925
  }
22850
22926
  }
22851
22927
  }
22852
22928
  if (nodeName === prefixedNodeName && needNamespaceDefine(n, isHTML, childNamespaces)) {
22853
22929
  var nodePrefix = n.prefix || "";
22854
22930
  var uri = n.namespaceURI;
22855
- addSerializedAttribute(buf, nodePrefix ? "xmlns:" + nodePrefix : "xmlns", uri);
22931
+ addSerializedAttribute(buf, nodePrefix ? "xmlns:" + nodePrefix : "xmlns", uri, requireWellFormed);
22856
22932
  childNamespaces.push({ prefix: nodePrefix, namespace: uri });
22857
22933
  }
22858
22934
  var canCloseTag = !n.firstChild;
@@ -22885,7 +22961,7 @@ var require_dom = __commonJS({
22885
22961
  }
22886
22962
  return { ns: namespaces };
22887
22963
  case ATTRIBUTE_NODE:
22888
- addSerializedAttribute(buf, n.name, n.value);
22964
+ addSerializedAttribute(buf, n.name, n.value, requireWellFormed);
22889
22965
  return null;
22890
22966
  case TEXT_NODE:
22891
22967
  if (requireWellFormed && g.InvalidChar.test(n.data)) {
@@ -22927,6 +23003,12 @@ var require_dom = __commonJS({
22927
23003
  var pubid = n.publicId;
22928
23004
  var sysid = n.systemId;
22929
23005
  if (requireWellFormed) {
23006
+ if (!g.Name_exact.test(n.name)) {
23007
+ throw new DOMException(
23008
+ 'The doctype name "' + n.name + '" is not a valid XML Name',
23009
+ DOMExceptionName.InvalidStateError
23010
+ );
23011
+ }
22930
23012
  if (pubid && !g.PubidLiteral_match.test(pubid)) {
22931
23013
  throw new DOMException("DocumentType publicId is not a valid PubidLiteral", DOMExceptionName.InvalidStateError);
22932
23014
  }
@@ -22953,8 +23035,11 @@ var require_dom = __commonJS({
22953
23035
  return null;
22954
23036
  case PROCESSING_INSTRUCTION_NODE:
22955
23037
  if (requireWellFormed) {
22956
- if (n.target.indexOf(":") !== -1 || n.target.toLowerCase() === "xml") {
22957
- throw new DOMException("The ProcessingInstruction target is not well-formed", DOMExceptionName.InvalidStateError);
23038
+ if (!g.NCName_exact.test(n.target) || n.target.toLowerCase() === "xml") {
23039
+ throw new DOMException(
23040
+ 'The processing instruction target "' + n.target + '" is not a valid XML NCName or is reserved',
23041
+ DOMExceptionName.InvalidStateError
23042
+ );
22958
23043
  }
22959
23044
  if (g.InvalidChar.test(n.data)) {
22960
23045
  throw new DOMException(
@@ -22969,6 +23054,12 @@ var require_dom = __commonJS({
22969
23054
  buf.push("<?", n.target, " ", n.data, "?>");
22970
23055
  return null;
22971
23056
  case ENTITY_REFERENCE_NODE:
23057
+ if (requireWellFormed && !g.Name_exact.test(n.nodeName)) {
23058
+ throw new DOMException(
23059
+ 'The entity reference name "' + n.nodeName + '" is not a valid XML Name',
23060
+ DOMExceptionName.InvalidStateError
23061
+ );
23062
+ }
22972
23063
  buf.push("&", n.nodeName, ";");
22973
23064
  return null;
22974
23065
  //case ENTITY_NODE:
@@ -23106,6 +23197,25 @@ var require_dom = __commonJS({
23106
23197
  }
23107
23198
  }
23108
23199
  });
23200
+ Object.defineProperty(CharacterData.prototype, "data", {
23201
+ get: function() {
23202
+ return this._data != null ? this._data : "";
23203
+ },
23204
+ set: function(v) {
23205
+ this._data = v;
23206
+ this.length = typeof v === "string" ? v.length : 0;
23207
+ }
23208
+ });
23209
+ Object.defineProperty(CharacterData.prototype, "nodeValue", {
23210
+ get: function() {
23211
+ return this.data;
23212
+ },
23213
+ set: function(v) {
23214
+ this.data = v;
23215
+ },
23216
+ enumerable: true,
23217
+ configurable: true
23218
+ });
23109
23219
  Object.defineProperty(Element.prototype, "children", {
23110
23220
  get: function() {
23111
23221
  return new LiveNodeList(this, childrenRefresh);
@@ -23151,9 +23261,9 @@ var require_dom = __commonJS({
23151
23261
  }
23152
23262
  });
23153
23263
 
23154
- // ../../node_modules/.pnpm/@xmldom+xmldom@0.9.10/node_modules/@xmldom/xmldom/lib/entities.js
23264
+ // ../../node_modules/.pnpm/@xmldom+xmldom@0.9.12/node_modules/@xmldom/xmldom/lib/entities.js
23155
23265
  var require_entities = __commonJS({
23156
- "../../node_modules/.pnpm/@xmldom+xmldom@0.9.10/node_modules/@xmldom/xmldom/lib/entities.js"(exports) {
23266
+ "../../node_modules/.pnpm/@xmldom+xmldom@0.9.12/node_modules/@xmldom/xmldom/lib/entities.js"(exports) {
23157
23267
  "use strict";
23158
23268
  var freeze = require_conventions().freeze;
23159
23269
  exports.XML_ENTITIES = freeze({
@@ -25294,9 +25404,9 @@ var require_entities = __commonJS({
25294
25404
  }
25295
25405
  });
25296
25406
 
25297
- // ../../node_modules/.pnpm/@xmldom+xmldom@0.9.10/node_modules/@xmldom/xmldom/lib/sax.js
25407
+ // ../../node_modules/.pnpm/@xmldom+xmldom@0.9.12/node_modules/@xmldom/xmldom/lib/sax.js
25298
25408
  var require_sax = __commonJS({
25299
- "../../node_modules/.pnpm/@xmldom+xmldom@0.9.10/node_modules/@xmldom/xmldom/lib/sax.js"(exports) {
25409
+ "../../node_modules/.pnpm/@xmldom+xmldom@0.9.12/node_modules/@xmldom/xmldom/lib/sax.js"(exports) {
25300
25410
  "use strict";
25301
25411
  var conventions = require_conventions();
25302
25412
  var g = require_grammar();
@@ -25419,9 +25529,26 @@ var require_sax = __commonJS({
25419
25529
  if (!tagNameRaw) {
25420
25530
  return errorHandler.fatalError("end tag name missing");
25421
25531
  }
25422
- var tagNameMatch = end > 0 && g.reg("^", g.QName_group, g.S_OPT, "$").exec(tagNameRaw);
25532
+ var endTagNameStrict = g.reg("^", g.QName_group, g.S_OPT, "$");
25533
+ var tagNameMatch = end > 0 && endTagNameStrict.exec(tagNameRaw);
25423
25534
  if (!tagNameMatch) {
25424
- return errorHandler.fatalError('end tag name contains invalid characters: "' + tagNameRaw + '"');
25535
+ var leadingTagNameMatch = end > 0 && g.reg("^", g.QName_group).exec(tagNameRaw);
25536
+ if (isHTML && leadingTagNameMatch) {
25537
+ errorHandler.warning('end tag name contains invalid trailing characters: "' + tagNameRaw + '"');
25538
+ tagNameMatch = leadingTagNameMatch;
25539
+ } else if (
25540
+ // Backward compatibility, remove this whole `else if` arm in the next breaking release
25541
+ // (XML then falls through to the `fatalError` below, for a clean mode split: XML fatal,
25542
+ // HTML warning). A valid end-tag name followed by a line break and trailing content was
25543
+ // silently accepted while `reg` still used the `m` flag; re-adding `m` here matches exactly
25544
+ // those inputs, kept recoverable and reported.
25545
+ leadingTagNameMatch && new RegExp(endTagNameStrict.source, endTagNameStrict.flags + "m").test(tagNameRaw)
25546
+ ) {
25547
+ errorHandler.error('end tag name is followed by a line break and trailing content: "' + tagNameRaw + '"');
25548
+ tagNameMatch = leadingTagNameMatch;
25549
+ } else {
25550
+ return errorHandler.fatalError('end tag name contains invalid characters: "' + tagNameRaw + '"');
25551
+ }
25425
25552
  }
25426
25553
  if (!domBuilder.currentElement && !domBuilder.doc.documentElement) {
25427
25554
  return;
@@ -25495,7 +25622,7 @@ var require_sax = __commonJS({
25495
25622
  if (e instanceof ParseError2) {
25496
25623
  throw e;
25497
25624
  } else if (e instanceof DOMException) {
25498
- throw new ParseError2(e.name + ": " + e.message, domBuilder.locator, e);
25625
+ return errorHandler.fatalError("Error constructing the DOM: " + e.name + ": " + e.message, e);
25499
25626
  }
25500
25627
  errorHandler.error("element parse error: " + e);
25501
25628
  end = -1;
@@ -25536,6 +25663,9 @@ var require_sax = __commonJS({
25536
25663
  var s = S_TAG;
25537
25664
  while (true) {
25538
25665
  var c = source.charAt(p);
25666
+ if (s === S_TAG && c === "<") {
25667
+ throw new Error("unexpected < in tag name: " + source.slice(start, p));
25668
+ }
25539
25669
  switch (c) {
25540
25670
  case "=":
25541
25671
  if (s === S_ATTR) {
@@ -25711,7 +25841,7 @@ var require_sax = __commonJS({
25711
25841
  if (nsPrefix !== false) {
25712
25842
  if (localNSMap == null) {
25713
25843
  localNSMap = /* @__PURE__ */ Object.create(null);
25714
- _copy(currentNSMap, currentNSMap = /* @__PURE__ */ Object.create(null));
25844
+ currentNSMap = Object.create(currentNSMap);
25715
25845
  }
25716
25846
  currentNSMap[nsPrefix] = localNSMap[nsPrefix] = value;
25717
25847
  a.uri = NAMESPACE.XMLNS;
@@ -25758,7 +25888,13 @@ var require_sax = __commonJS({
25758
25888
  function parseHtmlSpecialContent(source, elStartEnd, tagName, entityReplacer, domBuilder) {
25759
25889
  var isEscapableRaw = isHTMLEscapableRawTextElement(tagName);
25760
25890
  if (isEscapableRaw || isHTMLRawTextElement(tagName)) {
25761
- var elEndStart = source.indexOf("</" + tagName + ">", elStartEnd);
25891
+ var closeTag = new RegExp("</" + tagName.replace(/[.*+?^${}()|[\]\\]/g, "\\$&") + ">", "ig");
25892
+ closeTag.lastIndex = elStartEnd;
25893
+ var match = closeTag.exec(source);
25894
+ var elEndStart = match ? match.index : -1;
25895
+ if (elEndStart < 0) {
25896
+ return elStartEnd + 1;
25897
+ }
25762
25898
  var text = source.substring(elStartEnd + 1, elEndStart);
25763
25899
  if (isEscapableRaw) {
25764
25900
  text = text.replace(ENTITY_REG, entityReplacer);
@@ -26050,9 +26186,9 @@ var require_sax = __commonJS({
26050
26186
  }
26051
26187
  });
26052
26188
 
26053
- // ../../node_modules/.pnpm/@xmldom+xmldom@0.9.10/node_modules/@xmldom/xmldom/lib/dom-parser.js
26189
+ // ../../node_modules/.pnpm/@xmldom+xmldom@0.9.12/node_modules/@xmldom/xmldom/lib/dom-parser.js
26054
26190
  var require_dom_parser = __commonJS({
26055
- "../../node_modules/.pnpm/@xmldom+xmldom@0.9.10/node_modules/@xmldom/xmldom/lib/dom-parser.js"(exports) {
26191
+ "../../node_modules/.pnpm/@xmldom+xmldom@0.9.12/node_modules/@xmldom/xmldom/lib/dom-parser.js"(exports) {
26056
26192
  "use strict";
26057
26193
  var conventions = require_conventions();
26058
26194
  var dom = require_dom();
@@ -26262,14 +26398,16 @@ var require_dom_parser = __commonJS({
26262
26398
  *
26263
26399
  * @param {string} message
26264
26400
  * - The message to be used for reporting and throwing the error.
26401
+ * @param {Error} [cause]
26402
+ * The error that caused this fatal error, preserved as the thrown `ParseError`'s `cause`.
26265
26403
  * @returns {never}
26266
26404
  * This function always throws an error and never returns a value.
26267
26405
  * @throws {ParseError}
26268
26406
  * Always throws a ParseError with the provided message.
26269
26407
  */
26270
- fatalError: function(message) {
26408
+ fatalError: function(message, cause) {
26271
26409
  this.reportError("fatalError", message);
26272
- throw new ParseError2(message, this.locator);
26410
+ throw new ParseError2(message, this.locator, cause);
26273
26411
  }
26274
26412
  };
26275
26413
  function _locator(l) {
@@ -26316,9 +26454,9 @@ var require_dom_parser = __commonJS({
26316
26454
  }
26317
26455
  });
26318
26456
 
26319
- // ../../node_modules/.pnpm/@xmldom+xmldom@0.9.10/node_modules/@xmldom/xmldom/lib/index.js
26457
+ // ../../node_modules/.pnpm/@xmldom+xmldom@0.9.12/node_modules/@xmldom/xmldom/lib/index.js
26320
26458
  var require_lib2 = __commonJS({
26321
- "../../node_modules/.pnpm/@xmldom+xmldom@0.9.10/node_modules/@xmldom/xmldom/lib/index.js"(exports) {
26459
+ "../../node_modules/.pnpm/@xmldom+xmldom@0.9.12/node_modules/@xmldom/xmldom/lib/index.js"(exports) {
26322
26460
  "use strict";
26323
26461
  var conventions = require_conventions();
26324
26462
  exports.assign = conventions.assign;
@@ -27086,10 +27224,48 @@ var validateAutomationElements = async (elements) => {
27086
27224
  return findings(automationNodesSchema.safeParse(elements));
27087
27225
  };
27088
27226
  var validateWebPageConfig = async (config) => {
27089
- const { webPageConfigWriteSchema } = await import("./webPage-4HUHD7FS.js");
27227
+ const { webPageConfigWriteSchema } = await import("./webPage-3MNCKCRX.js");
27090
27228
  return findings(webPageConfigWriteSchema.safeParse(config));
27091
27229
  };
27092
27230
 
27231
+ // ../common/src/function.ts
27232
+ var defaultAgentFunctionInputSchema = `{
27233
+ "type": "object",
27234
+ "properties": {
27235
+ "method": {
27236
+ "type": "string",
27237
+ "enum": ["GET", "POST", "PUT", "PATCH", "DELETE"],
27238
+ "default": "POST",
27239
+ "description": "HTTP method for this function call."
27240
+ },
27241
+ "headers": {
27242
+ "type": "object",
27243
+ "description": "Request headers. Use {} when none are needed.",
27244
+ "default": {},
27245
+ "additionalProperties": {
27246
+ "type": "string"
27247
+ }
27248
+ },
27249
+ "queryParams": {
27250
+ "type": "object",
27251
+ "description": "URL query params. Use {} when none are needed.",
27252
+ "default": {},
27253
+ "additionalProperties": {
27254
+ "type": ["string", "number", "boolean"]
27255
+ }
27256
+ },
27257
+ "body": {
27258
+ "type": "object",
27259
+ "description": "Request body payload. Use {} when none is needed.",
27260
+ "default": {},
27261
+ "additionalProperties": true
27262
+ }
27263
+ },
27264
+ "required": ["method", "headers", "queryParams", "body"]
27265
+ }`;
27266
+ var DEFAULT_FUNCTION_EXECUTION_TIMEOUT_MS = 3e4;
27267
+ var DEFAULT_FUNCTION_EXECUTION_MEMORY_MB = 512;
27268
+
27093
27269
  // src/workspace/adapters.ts
27094
27270
  var metaJson = (value) => `${JSON.stringify(value, null, 2)}
27095
27271
  `;
@@ -27194,9 +27370,9 @@ var functionAdapter = {
27194
27370
  // limits, and so an explicit null doesn't hit the NOT NULL column.
27195
27371
  inputSchema: meta.inputSchema ?? "",
27196
27372
  outputSchema: meta.outputSchema ?? "",
27197
- executionTimeout: meta.executionTimeout ?? 1e4,
27373
+ executionTimeout: meta.executionTimeout ?? DEFAULT_FUNCTION_EXECUTION_TIMEOUT_MS,
27198
27374
  executionCpu: meta.executionCpu ?? 250,
27199
- executionMemory: meta.executionMemory ?? 512
27375
+ executionMemory: meta.executionMemory ?? DEFAULT_FUNCTION_EXECUTION_MEMORY_MB
27200
27376
  }
27201
27377
  );
27202
27378
  return data.createFunctionVersion.functionVersion.versionNumber;
@@ -27473,6 +27649,12 @@ var agentFiles = (id, name2, version) => ({
27473
27649
  rateLimitTokensPerMinute: version.rateLimitTokensPerMinute,
27474
27650
  functionIds: version.agentVersionFunctionsByAgentIdAndVersionNumber.nodes.map(
27475
27651
  (link) => link.functionId
27652
+ ),
27653
+ tableSpaceBindings: version.agentVersionTableSpacesByAgentIdAndVersionNumber.nodes.map(
27654
+ (link) => ({
27655
+ tableSpaceId: link.tableSpaceId,
27656
+ accessMode: link.accessMode
27657
+ })
27476
27658
  )
27477
27659
  })
27478
27660
  });
@@ -27482,6 +27664,9 @@ var agentVersionFields = `
27482
27664
  agentVersionFunctionsByAgentIdAndVersionNumber(orderBy: [FUNCTION_ID_ASC]) {
27483
27665
  nodes { functionId }
27484
27666
  }
27667
+ agentVersionTableSpacesByAgentIdAndVersionNumber(orderBy: [TABLE_SPACE_ID_ASC]) {
27668
+ nodes { tableSpaceId accessMode }
27669
+ }
27485
27670
  `;
27486
27671
  var agentAdapter = {
27487
27672
  type: "agent",
@@ -27552,21 +27737,27 @@ var agentAdapter = {
27552
27737
  $agentId: String!, $message: String!, $systemPrompt: String!,
27553
27738
  $model: String!, $temperature: Float!, $maxTokens: Int!,
27554
27739
  $rateLimitRequestsPerMinute: Int!, $rateLimitTokensPerMinute: Int!,
27555
- $functionIds: [String]
27740
+ $functionIds: [String], $tableSpaceBindings: JSON
27556
27741
  ) {
27557
- createAgentVersionWithFunctions(input: { expectedLatestVersion: $expectedLatestVersion,
27742
+ createAgentVersionWithAttachments(input: { expectedLatestVersion: $expectedLatestVersion,
27558
27743
  agentId: $agentId, message: $message, systemPrompt: $systemPrompt,
27559
27744
  model: $model, temperature: $temperature, maxTokens: $maxTokens,
27560
27745
  rateLimitRequestsPerMinute: $rateLimitRequestsPerMinute,
27561
27746
  rateLimitTokensPerMinute: $rateLimitTokensPerMinute,
27562
- functionIds: $functionIds
27747
+ functionIds: $functionIds, tableSpaceBindings: $tableSpaceBindings
27563
27748
  }) { result { versionNumber } }
27564
27749
  }`,
27565
- { agentId: id, message, ...config, expectedLatestVersion }
27750
+ {
27751
+ agentId: id,
27752
+ message,
27753
+ ...config,
27754
+ tableSpaceBindings: config.tableSpaceBindings ?? [],
27755
+ expectedLatestVersion
27756
+ }
27566
27757
  );
27567
- const versionNumber = data.createAgentVersionWithFunctions?.result?.versionNumber;
27758
+ const versionNumber = data.createAgentVersionWithAttachments?.result?.versionNumber;
27568
27759
  if (versionNumber == null) {
27569
- throw new Error("createAgentVersionWithFunctions returned no version.");
27760
+ throw new Error("createAgentVersionWithAttachments returned no version.");
27570
27761
  }
27571
27762
  return versionNumber;
27572
27763
  },
@@ -29004,6 +29195,7 @@ var defaultAgentVersionConfig = {
29004
29195
  rateLimitRequestsPerMinute: 20,
29005
29196
  rateLimitTokensPerMinute: 2e5
29006
29197
  };
29198
+ var agentTableSpaceAccessModeSchema = external_exports.enum(["read", "read_write"]);
29007
29199
  var agentEditableConfigSchema = agentVersionConfigSchema.extend({
29008
29200
  agentVersionFunctionsByAgentIdAndVersionNumber: external_exports.object({
29009
29201
  nodes: external_exports.array(
@@ -29011,6 +29203,14 @@ var agentEditableConfigSchema = agentVersionConfigSchema.extend({
29011
29203
  functionId: external_exports.string()
29012
29204
  })
29013
29205
  )
29206
+ }),
29207
+ agentVersionTableSpacesByAgentIdAndVersionNumber: external_exports.object({
29208
+ nodes: external_exports.array(
29209
+ external_exports.object({
29210
+ tableSpaceId: external_exports.string(),
29211
+ accessMode: agentTableSpaceAccessModeSchema
29212
+ })
29213
+ )
29014
29214
  })
29015
29215
  });
29016
29216
  var agentToolHttpMethodSchema = external_exports.enum([
@@ -29044,42 +29244,6 @@ var agentToolRequestJsonSchemaSchema = external_exports.object({
29044
29244
  )
29045
29245
  }).loose();
29046
29246
 
29047
- // ../common/src/function.ts
29048
- var defaultAgentFunctionInputSchema = `{
29049
- "type": "object",
29050
- "properties": {
29051
- "method": {
29052
- "type": "string",
29053
- "enum": ["GET", "POST", "PUT", "PATCH", "DELETE"],
29054
- "default": "POST",
29055
- "description": "HTTP method for this function call."
29056
- },
29057
- "headers": {
29058
- "type": "object",
29059
- "description": "Request headers. Use {} when none are needed.",
29060
- "default": {},
29061
- "additionalProperties": {
29062
- "type": "string"
29063
- }
29064
- },
29065
- "queryParams": {
29066
- "type": "object",
29067
- "description": "URL query params. Use {} when none are needed.",
29068
- "default": {},
29069
- "additionalProperties": {
29070
- "type": ["string", "number", "boolean"]
29071
- }
29072
- },
29073
- "body": {
29074
- "type": "object",
29075
- "description": "Request body payload. Use {} when none is needed.",
29076
- "default": {},
29077
- "additionalProperties": true
29078
- }
29079
- },
29080
- "required": ["method", "headers", "queryParams", "body"]
29081
- }`;
29082
-
29083
29247
  // ../common/src/liquidjs/liquidjs.ts
29084
29248
  var import_jmespath = __toESM(require_jmespath(), 1);
29085
29249
 
@@ -34466,7 +34630,9 @@ var addToClone = async (root, manifest, type, id) => {
34466
34630
  (resource) => resource.id === id
34467
34631
  );
34468
34632
  if (remote == null) {
34469
- throw new Error(`Created ${id}, but could not read it back into the clone.`);
34633
+ throw new Error(
34634
+ `Created ${id}, but could not read it back into the clone.`
34635
+ );
34470
34636
  }
34471
34637
  Object.entries(remote.files).forEach(([path, content]) => {
34472
34638
  writeSynced(root, path, content);
@@ -34541,7 +34707,8 @@ var runCreate2 = async (args) => {
34541
34707
  { workspaceId, name: name2, description }
34542
34708
  );
34543
34709
  const id2 = created.createAutomation?.automation?.id;
34544
- if (id2 == null) throw new Error("createAutomation returned no automation.");
34710
+ if (id2 == null)
34711
+ throw new Error("createAutomation returned no automation.");
34545
34712
  const version = await gqlRequest(
34546
34713
  `mutation CliCreateAutomationVersion($automationId: String!) {
34547
34714
  createAutomationVersion(input: { automationVersion: {
@@ -34581,8 +34748,7 @@ var runCreate2 = async (args) => {
34581
34748
  ) {
34582
34749
  createFunctionVersion(input: { functionVersion: {
34583
34750
  functionId: $functionId, code: $code, message: "Initial version",
34584
- inputSchema: $inputSchema, outputSchema: "",
34585
- executionTimeout: 10000, executionCpu: 250, executionMemory: 512
34751
+ inputSchema: $inputSchema, outputSchema: ""
34586
34752
  }}) { functionVersion { versionNumber } }
34587
34753
  }`,
34588
34754
  {
@@ -34630,12 +34796,13 @@ var runCreate2 = async (args) => {
34630
34796
  $temperature: Float!, $maxTokens: Int!,
34631
34797
  $rateLimitRequestsPerMinute: Int!, $rateLimitTokensPerMinute: Int!
34632
34798
  ) {
34633
- createAgentVersionWithFunctions(input: {
34799
+ createAgentVersionWithAttachments(input: {
34634
34800
  agentId: $agentId, message: "Initial version",
34635
34801
  systemPrompt: $systemPrompt, model: $model,
34636
34802
  temperature: $temperature, maxTokens: $maxTokens,
34637
34803
  rateLimitRequestsPerMinute: $rateLimitRequestsPerMinute,
34638
- rateLimitTokensPerMinute: $rateLimitTokensPerMinute, functionIds: []
34804
+ rateLimitTokensPerMinute: $rateLimitTokensPerMinute,
34805
+ functionIds: [], tableSpaceBindings: []
34639
34806
  }) { result { versionNumber } }
34640
34807
  }`,
34641
34808
  { agentId: id2, ...defaultAgentVersionConfig }
@@ -34661,7 +34828,8 @@ var runCreate2 = async (args) => {
34661
34828
  }
34662
34829
  );
34663
34830
  const id2 = data.createIntegration?.integration?.id;
34664
- if (id2 == null) throw new Error("createIntegration returned no integration.");
34831
+ if (id2 == null)
34832
+ throw new Error("createIntegration returned no integration.");
34665
34833
  return id2;
34666
34834
  }
34667
34835
  if (type === "table-space") {
@@ -34676,7 +34844,8 @@ var runCreate2 = async (args) => {
34676
34844
  { workspaceId, name: name2, description }
34677
34845
  );
34678
34846
  const id2 = data.createTableSpaceDatabase?.tableSpace?.id;
34679
- if (id2 == null) throw new Error("createTableSpaceDatabase returned no table space.");
34847
+ if (id2 == null)
34848
+ throw new Error("createTableSpaceDatabase returned no table space.");
34680
34849
  return id2;
34681
34850
  }
34682
34851
  if (type === "data-stream") {
@@ -34689,7 +34858,8 @@ var runCreate2 = async (args) => {
34689
34858
  { workspaceId, name: name2, description }
34690
34859
  );
34691
34860
  const id2 = data.createDataStream?.dataStream?.id;
34692
- if (id2 == null) throw new Error("createDataStream returned no data stream.");
34861
+ if (id2 == null)
34862
+ throw new Error("createDataStream returned no data stream.");
34693
34863
  return id2;
34694
34864
  }
34695
34865
  if (type === "data-file") {
@@ -34699,7 +34869,12 @@ var runCreate2 = async (args) => {
34699
34869
  workspaceId: $workspaceId, name: $name, description: $description, mimeType: $mimeType
34700
34870
  }}) { dataFile { id } }
34701
34871
  }`,
34702
- { workspaceId, name: name2, description, mimeType: flagValue(args, "--mime-type") ?? "application/octet-stream" }
34872
+ {
34873
+ workspaceId,
34874
+ name: name2,
34875
+ description,
34876
+ mimeType: flagValue(args, "--mime-type") ?? "application/octet-stream"
34877
+ }
34703
34878
  );
34704
34879
  const id2 = data.createDataFile?.dataFile?.id;
34705
34880
  if (id2 == null) throw new Error("createDataFile returned no data file.");
@@ -35725,7 +35900,15 @@ language, customTitle, hideTopBar, ...). Push reassembles them.
35725
35900
  - Web pages follow the app's light/dark theme: the page root carries a \`dark\`
35726
35901
  class in dark mode (Tailwind darkMode: "class"), so style with \`dark:\`
35727
35902
  variants; useTheme() only for JS-driven styling like chart palettes.
35728
- Printable pages have no theme \u2014 neither the class nor the hook exists there.
35903
+ - Two dark-mode traps a web page written light-only hits. A \`border\` or
35904
+ \`divide\` utility with no color class falls back to Tailwind's default light
35905
+ gray, so a bare \`border-b\` stays a bright rule \u2014 write \`border-b
35906
+ border-gray-200 dark:border-gray-700\`. And if the page loads daisyUI, its
35907
+ theme sets the inherited text color, so a hardcoded \`bg-white\` whose text
35908
+ just inherits goes light-on-white; pair every surface, not only the text.
35909
+ - Printable pages have no theme \u2014 neither the \`dark\` class nor useTheme()
35910
+ exists there, so \`dark:\` variants never activate and neither trap above
35911
+ applies.
35729
35912
  - Call Functions for server-side logic \u2014 they're awaitable; automations are
35730
35913
  fire-and-forget.
35731
35914
  - SQL from pages: env.TBSxxx.sql tagged templates only; compose dynamic SQL by
@@ -35740,6 +35923,9 @@ language, customTitle, hideTopBar, ...). Push reassembles them.
35740
35923
  conversation helpers throw), and author-requiring writes like
35741
35924
  env.DFxxx.saveVersion 401. Reads use the workspace's own access, so treat
35742
35925
  anything the page can query as public.
35926
+ - meta.json \`runtime\`: "v2" serves the page from its own origin (separate
35927
+ process, real localStorage/cookies \u2014 no noSandbox needed); absent or "v1" is
35928
+ the sandboxed srcdoc iframe. Anything else is rejected on push.
35743
35929
  - Write meta.json flags (noSandbox, hideTopBar) as JSON booleans. A page cloned
35744
35930
  before the shape settled may hold the strings "true"/"false" \u2014 those still
35745
35931
  push, anything else is rejected. noSandbox drops the iframe sandbox, which
@@ -3,7 +3,7 @@ import {
3
3
  webPageConfigSchema,
4
4
  webPageConfigWriteSchema,
5
5
  webPageLanguage
6
- } from "./chunk-56E4CWBE.js";
6
+ } from "./chunk-M2NX2CHG.js";
7
7
  import "./chunk-XCJJTK3H.js";
8
8
  import "./chunk-U67V476Y.js";
9
9
  export {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@overaihq/cli",
3
- "version": "0.13.1",
3
+ "version": "0.13.3",
4
4
  "description": "Create, edit, deploy, and run OverAI workspace resources from the command line",
5
5
  "type": "module",
6
6
  "homepage": "https://overai.com",