@parity-app/cli 0.7.0 → 0.7.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.
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- export { t as call, n as describeAccessibility, r as describeComponents, i as describeConsole, a as describeExec, o as describeModes, s as describeProblems, c as describeProps, l as describeStatus, u as describeTokens, d as registry, f as setCaller } from "./client-D5kbiMmn.mjs";
1
+ export { t as call, n as describeAccessibility, r as describeComponents, i as describeConsole, a as describeExec, o as describeModes, s as describeProblems, c as describeProps, l as describeStatus, u as describeTokens, d as registry, f as setCaller } from "./client-BtxrNeIk.mjs";
@@ -135,11 +135,26 @@ function jsonText(schema) {
135
135
  * problem as `/json/pointer: message`. `at` is where the value sits in a larger one, so its pointers start there.
136
136
  */
137
137
  function parseData(schema, value, at = "") {
138
- const result = schema.safeParse(value, { error: issueText });
139
- if (result.success) return result.data;
140
- const { pointer, message } = firstProblem(result.error.issues, at);
138
+ const checked = checkData(schema, value, at);
139
+ if (checked.success) return checked.data;
140
+ const { pointer, message } = checked.problem;
141
141
  throw new TypeError(`${pointer || "/"}: ${message}`);
142
142
  }
143
+ /**
144
+ * Checks data Parity didn't make, as `parseData` does, and returns the first problem rather than throwing it, for a
145
+ * caller that reports it its own way: the CLI keeps the pointer out of its messages, since each names its field.
146
+ */
147
+ function checkData(schema, value, at = "") {
148
+ const result = schema.safeParse(value, { error: issueText });
149
+ if (result.success) return {
150
+ success: true,
151
+ data: result.data
152
+ };
153
+ return {
154
+ success: false,
155
+ problem: firstProblem(result.error.issues, at)
156
+ };
157
+ }
143
158
  /** A path inside a value as a JSON pointer (RFC 6901): `/edits/0/find`, or `` for the value itself. */
144
159
  function jsonPointer(path) {
145
160
  return path.map((key) => `/${String(key).replaceAll("~", "~0").replaceAll("/", "~1")}`).join("");
@@ -236,4 +251,4 @@ function bound(inclusiveWords, exclusiveWords, origin, limit, inclusive = true)
236
251
  "bigint"
237
252
  ].includes(origin) ? `expected ${words} ${limit}` : void 0;
238
253
  }
239
- export { parseData as a, closest as c, readErrorDetails as d, unknownReference as f, nonBlankString as i, errorCodes as l, finiteNumber as n, plainObject as o, jsonText as r, CodedError as s, fileObject as t, errorDetails as u };
254
+ export { nonBlankString as a, CodedError as c, errorDetails as d, readErrorDetails as f, jsonText as i, closest as l, fileObject as n, parseData as o, unknownReference as p, finiteNumber as r, plainObject as s, checkData as t, errorCodes as u };
@@ -1,15 +1,15 @@
1
- import { a as parseData, n as finiteNumber, o as plainObject, r as jsonText } from "./schema-DcQLoUPP.mjs";
2
- import { E as collectCustomProperties, M as packageManifest, a as applyLibraryEdits, c as isSampleElement, f as parseLibraryEdits, j as lengthToPixels, l as isSampleRender, m as renderSlotOf, p as parseLibraryManifest, s as isMadeValue, u as libraryManifestExtension } from "./src-CSah1pZ-.mjs";
3
- import { r as readLibraryEdits, s as parseJsonc } from "./src-D2kRGtaF.mjs";
1
+ import { i as jsonText, o as parseData, r as finiteNumber, s as plainObject } from "./schema-CemdtCeF.mjs";
2
+ import { D as collectCustomProperties, M as lengthToPixels, N as packageManifest, c as isMadeValue, d as libraryManifestExtension, h as renderSlotOf, l as isSampleElement, m as parseLibraryManifest, o as applyLibraryEdits, p as parseLibraryEdits, u as isSampleRender } from "./src-Csdxx4kB.mjs";
3
+ import { r as readLibraryEdits, s as parseJsonc } from "./src-CzZ9eIU8.mjs";
4
4
  import { a as publishedVersions, n as packageFile, o as repositoryFiles, r as publishedSource } from "./published-CdXoUgfD.mjs";
5
5
  import { createRequire } from "node:module";
6
6
  import { mkdir, readFile, readdir, realpath, rm, stat, writeFile } from "node:fs/promises";
7
7
  import { basename, dirname, extname, join, posix, relative, resolve, sep } from "node:path";
8
8
  import { promisify } from "node:util";
9
+ import { z } from "zod";
9
10
  import { createHash } from "node:crypto";
10
11
  import { existsSync, realpathSync, statSync } from "node:fs";
11
12
  import { homedir } from "node:os";
12
- import { z } from "zod";
13
13
  import { pathToFileURL } from "node:url";
14
14
  import ts from "typescript";
15
15
  import "semver";
@@ -1 +1 @@
1
- export { t as covers, n as newestEntries, i as registryDir, a as registryEntries } from "./src-D2kRGtaF.mjs";
1
+ export { t as covers, n as newestEntries, i as registryDir, a as registryEntries } from "./src-CzZ9eIU8.mjs";
@@ -1,4 +1,4 @@
1
- import { a as parseData, n as finiteNumber, o as plainObject, t as fileObject } from "./schema-DcQLoUPP.mjs";
1
+ import { n as fileObject, o as parseData, r as finiteNumber, s as plainObject } from "./schema-CemdtCeF.mjs";
2
2
  import { z } from "zod";
3
3
  // ../core/src/adapters.ts
4
4
  const packageVersions = z.record(z.string(), z.string());
@@ -1192,6 +1192,16 @@ function expectStringRecord(value, path) {
1192
1192
  for (const [key, item] of Object.entries(record)) expectString(item, `${path}/${key}`);
1193
1193
  return record;
1194
1194
  }
1195
+ // ../core/src/project.ts
1196
+ /**
1197
+ * Props that say what's open or chosen: `defaultOpen` on what opens (a dialog, a popover, a menu), `defaultValue` on
1198
+ * what opens or chooses its items by value (an accordion, a navigation menu, tabs) and `value` on those items.
1199
+ */
1200
+ const openProps = [
1201
+ "defaultOpen",
1202
+ "defaultValue",
1203
+ "value"
1204
+ ];
1195
1205
  // ../core/src/library-insert.ts
1196
1206
  /** Nodes whose `children` is the name `componentNode` gave them, rather than text someone set. */
1197
1207
  const named = /* @__PURE__ */ new WeakSet();
@@ -1408,6 +1418,8 @@ function elementProps(props) {
1408
1418
  * Discovery has already rewritten module imports for the name the project installed the package under.
1409
1419
  */
1410
1420
  function librarySource(library, name, component, path) {
1421
+ const declared = new Set(Object.keys(component.props ?? {}).map((prop) => prop.replace(/\?$/, "")));
1422
+ const open = openProps.filter((prop) => declared.has(prop));
1411
1423
  return {
1412
1424
  path,
1413
1425
  export: name,
@@ -1419,7 +1431,8 @@ function librarySource(library, name, component, path) {
1419
1431
  ...component.visual === false ? { visual: false } : {},
1420
1432
  ...component.optionalParents ? { optionalParents: component.optionalParents.map((parent) => `${library}/${parent}`) } : {},
1421
1433
  ...component.parentParts ? { parentParts: true } : {},
1422
- ...component.sample ? { sample: sampleIds(component.sample, library) } : {}
1434
+ ...component.sample ? { sample: sampleIds(component.sample, library) } : {},
1435
+ ...open.length > 0 ? { openProps: open } : {}
1423
1436
  };
1424
1437
  }
1425
1438
  /**
@@ -1454,4 +1467,4 @@ function sampleIds(sample, library) {
1454
1467
  ...sample.children ? { children: sample.children.map(child) } : {}
1455
1468
  };
1456
1469
  }
1457
- export { deviceKinds as A, walkNodes as C, remProperty as D, collectCustomProperties as E, packageManifest as M, viewportHeightProperty as O, parseCanvasDocument as S, modeSettings as T, imageFits as _, applyLibraryEdits as a, linkTypes as b, isSampleElement as c, parentSignals as d, parseLibraryEdits as f, containerKinds as g, canvasObjectKinds as h, withLibraryContext as i, lengthToPixels as j, viewportWidthProperty as k, isSampleRender as l, renderSlotOf as m, librarySource as n, componentEvidence as o, parseLibraryManifest as p, sampleIds as r, isMadeValue as s, componentNode as t, libraryManifestExtension as u, linkAllowed as v, generateId as w, paramTypes as x, linkEndKinds as y };
1470
+ export { viewportWidthProperty as A, parseCanvasDocument as C, collectCustomProperties as D, modeSettings as E, lengthToPixels as M, packageManifest as N, remProperty as O, paramTypes as S, generateId as T, containerKinds as _, openProps as a, linkEndKinds as b, isMadeValue as c, libraryManifestExtension as d, parentSignals as f, canvasObjectKinds as g, renderSlotOf as h, withLibraryContext as i, deviceKinds as j, viewportHeightProperty as k, isSampleElement as l, parseLibraryManifest as m, librarySource as n, applyLibraryEdits as o, parseLibraryEdits as p, sampleIds as r, componentEvidence as s, componentNode as t, isSampleRender as u, imageFits as v, walkNodes as w, linkTypes as x, linkAllowed as y };
@@ -1,4 +1,4 @@
1
- import { a as applyLibraryEdits, f as parseLibraryEdits, p as parseLibraryManifest, u as libraryManifestExtension } from "./src-CSah1pZ-.mjs";
1
+ import { d as libraryManifestExtension, m as parseLibraryManifest, o as applyLibraryEdits, p as parseLibraryEdits } from "./src-Csdxx4kB.mjs";
2
2
  import { createRequire } from "node:module";
3
3
  import { readFile, readdir } from "node:fs/promises";
4
4
  import { dirname, join, resolve } from "node:path";
@@ -0,0 +1,5 @@
1
+ import "./schema-CemdtCeF.mjs";
2
+ import "./client-BtxrNeIk.mjs";
3
+ export { t as componentNode, T as generateId, n as librarySource, i as withLibraryContext } from "./src-Csdxx4kB.mjs";
4
+ import "./src-CzZ9eIU8.mjs";
5
+ import "./src-CPka3fhs.mjs";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@parity-app/cli",
3
- "version": "0.7.0",
3
+ "version": "0.7.2",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "description": "Drive the Parity app from a terminal or an agent: read state, run edits, take screenshots, serve MCP.",
@@ -1,4 +0,0 @@
1
- import "./schema-DcQLoUPP.mjs";
2
- export { t as componentNode, w as generateId, n as librarySource, i as withLibraryContext } from "./src-CSah1pZ-.mjs";
3
- import "./src-D2kRGtaF.mjs";
4
- import "./src-x0VQ8I6l.mjs";