@digital-gravy/etch-public-api 0.3.4 → 0.7.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.
- package/README.md +27 -0
- package/dist/index.d.cts +91 -6
- package/dist/index.d.ts +91 -6
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -128,6 +128,33 @@ To discard in-memory changes and restore the original block:
|
|
|
128
128
|
etch.blocks.exitComponentEditMode({ revert: true });
|
|
129
129
|
```
|
|
130
130
|
|
|
131
|
+
### Component props
|
|
132
|
+
|
|
133
|
+
A component **instance** exposes its bound props as block attributes — set them
|
|
134
|
+
with `setAttribute` / `update`, read them with `getAttribute`. Unlike an HTML
|
|
135
|
+
block's free-form attributes, a component's props are a **closed schema**: the
|
|
136
|
+
key must be a property declared by the component definition, or the call throws
|
|
137
|
+
`INVALID_ARGUMENT`.
|
|
138
|
+
|
|
139
|
+
```ts
|
|
140
|
+
const [cardId] = etch.blocks.find({ type: "etch/component" });
|
|
141
|
+
|
|
142
|
+
// Set a prop the component declares
|
|
143
|
+
etch.blocks.setAttribute(cardId, "title", "Hello world");
|
|
144
|
+
|
|
145
|
+
// Read it back
|
|
146
|
+
etch.blocks.getAttribute(cardId, "title"); // "Hello world"
|
|
147
|
+
|
|
148
|
+
// Or patch several props at once
|
|
149
|
+
etch.blocks.update(cardId, { attributes: { title: "Hi", variant: "primary" } });
|
|
150
|
+
|
|
151
|
+
// An undeclared key is rejected
|
|
152
|
+
etch.blocks.setAttribute(cardId, "notAProp", "x"); // ✗ throws INVALID_ARGUMENT
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
> Values are stored as-is. For typed props such as classes or repeater/group
|
|
156
|
+
> data, pass the value in the component's internal format.
|
|
157
|
+
|
|
131
158
|
### Error handling
|
|
132
159
|
|
|
133
160
|
Methods throw a typed `EtchApiError` with a `code`, rather than returning
|
package/dist/index.d.cts
CHANGED
|
@@ -256,8 +256,10 @@ interface BlockPatch {
|
|
|
256
256
|
/** Hide or show the block on the canvas. */
|
|
257
257
|
hidden?: boolean;
|
|
258
258
|
/**
|
|
259
|
-
* Merge
|
|
260
|
-
*
|
|
259
|
+
* Merge attributes — a key set to `undefined` removes that attribute. Valid
|
|
260
|
+
* on HTML blocks (free-form HTML attributes) and on component instances,
|
|
261
|
+
* whose attributes are their bound props — a closed schema, so each key must
|
|
262
|
+
* be a property declared by the component (an unknown key is rejected).
|
|
261
263
|
*/
|
|
262
264
|
attributes?: Record<string, string | undefined>;
|
|
263
265
|
/** Replace the text content. Only valid on text blocks. */
|
|
@@ -299,11 +301,26 @@ interface EtchBlocksApi {
|
|
|
299
301
|
setText(blockId: string, text: string): void;
|
|
300
302
|
/** Rename a block (sets its label / display name). */
|
|
301
303
|
rename(blockId: string, name: string): void;
|
|
302
|
-
/**
|
|
304
|
+
/**
|
|
305
|
+
* Read an attribute, or `undefined` when it is not set. Works on HTML blocks
|
|
306
|
+
* (HTML attributes) and component instances (bound prop values). Throws
|
|
307
|
+
* `WRONG_BLOCK_TYPE` for a block that has no attributes (e.g. a text block).
|
|
308
|
+
*/
|
|
303
309
|
getAttribute(blockId: string, key: string): string | undefined;
|
|
304
|
-
/**
|
|
310
|
+
/**
|
|
311
|
+
* Set an attribute; omit `value` for a valueless (boolean) attribute. Works
|
|
312
|
+
* on HTML blocks and component instances. On a component, `key` must be a
|
|
313
|
+
* declared property — props are a closed schema — otherwise
|
|
314
|
+
* `INVALID_ARGUMENT` is thrown (or `OPERATION_FAILED` if the component
|
|
315
|
+
* definition has not loaded yet). Throws `WRONG_BLOCK_TYPE` for a block with
|
|
316
|
+
* no attributes.
|
|
317
|
+
*/
|
|
305
318
|
setAttribute(blockId: string, key: string, value?: string): void;
|
|
306
|
-
/**
|
|
319
|
+
/**
|
|
320
|
+
* Remove an attribute. Works on HTML blocks and component instances. On a
|
|
321
|
+
* component, `key` must be a declared property (see {@link setAttribute}).
|
|
322
|
+
* Throws `WRONG_BLOCK_TYPE` for a block with no attributes.
|
|
323
|
+
*/
|
|
307
324
|
removeAttribute(blockId: string, key: string): void;
|
|
308
325
|
/** Add a CSS class to the block. */
|
|
309
326
|
addClass(blockId: string, className: string): void;
|
|
@@ -1141,6 +1158,59 @@ interface EtchHistoryApi {
|
|
|
1141
1158
|
canRedo(): boolean;
|
|
1142
1159
|
}
|
|
1143
1160
|
|
|
1161
|
+
/**
|
|
1162
|
+
* Live bridge connection — lets an external tool (an IDE, a script runner, an AI
|
|
1163
|
+
* agent) drive this Etch instance from outside the page over a WebSocket.
|
|
1164
|
+
*
|
|
1165
|
+
* Calling `window.etch.connectAs(name)` from the builder console opens a
|
|
1166
|
+
* connection to a local bridge server and registers this instance under `name`.
|
|
1167
|
+
* Because the name travels to the server, one server can hold connections to
|
|
1168
|
+
* several Etch tabs at once and address each by name. The server then pushes JS
|
|
1169
|
+
* to evaluate in the page; the page streams console output and the return value
|
|
1170
|
+
* back.
|
|
1171
|
+
*
|
|
1172
|
+
* This is the inverse of Chrome remote debugging: the browser dials out to the
|
|
1173
|
+
* tool, instead of the tool attaching to the browser's debug port. Console-run
|
|
1174
|
+
* code is exempt from the page's CSP, so the connection works even on
|
|
1175
|
+
* locked-down pages.
|
|
1176
|
+
*/
|
|
1177
|
+
/** Options for {@link Etch.connectAs} / `etch.connectAs`. */
|
|
1178
|
+
interface BridgeConnectOptions {
|
|
1179
|
+
/**
|
|
1180
|
+
* Full WebSocket endpoint of the bridge server. Defaults to
|
|
1181
|
+
* `ws://127.0.0.1:7331`. Set this to target a different host/port or a
|
|
1182
|
+
* `wss://` endpoint.
|
|
1183
|
+
*/
|
|
1184
|
+
url?: string;
|
|
1185
|
+
/**
|
|
1186
|
+
* Shorthand for a localhost endpoint on a custom port
|
|
1187
|
+
* (`ws://127.0.0.1:<port>`). Ignored when {@link url} is provided.
|
|
1188
|
+
*/
|
|
1189
|
+
port?: number;
|
|
1190
|
+
/**
|
|
1191
|
+
* Extra identifying metadata sent to the server alongside the name (e.g. a
|
|
1192
|
+
* project id or environment label), so the tool can group or disambiguate
|
|
1193
|
+
* tabs beyond the name alone.
|
|
1194
|
+
*/
|
|
1195
|
+
meta?: Record<string, unknown>;
|
|
1196
|
+
/**
|
|
1197
|
+
* Reconnect automatically (with backoff) when the socket drops. Default
|
|
1198
|
+
* `true`.
|
|
1199
|
+
*/
|
|
1200
|
+
reconnect?: boolean;
|
|
1201
|
+
}
|
|
1202
|
+
/** Handle to a live bridge connection returned by `etch.connectAs`. */
|
|
1203
|
+
interface EtchBridgeConnection {
|
|
1204
|
+
/** The name this instance registered under — how the tool addresses it. */
|
|
1205
|
+
readonly name: string;
|
|
1206
|
+
/** The resolved WebSocket endpoint the connection targets. */
|
|
1207
|
+
readonly url: string;
|
|
1208
|
+
/** Whether the socket is currently open. */
|
|
1209
|
+
readonly connected: boolean;
|
|
1210
|
+
/** Close the connection and stop reconnecting. */
|
|
1211
|
+
close(): void;
|
|
1212
|
+
}
|
|
1213
|
+
|
|
1144
1214
|
/**
|
|
1145
1215
|
* The root {@link Etch} interface exposed on `window.etch`, tying every API
|
|
1146
1216
|
* namespace together, plus connection/versioning options.
|
|
@@ -1189,6 +1259,21 @@ interface Etch {
|
|
|
1189
1259
|
history: EtchHistoryApi;
|
|
1190
1260
|
/** Persist everything (blocks, loops, styles, UI). */
|
|
1191
1261
|
saveAsync(): Promise<void>;
|
|
1262
|
+
/**
|
|
1263
|
+
* Open a live bridge connection to a local tooling server (an IDE, a script
|
|
1264
|
+
* runner, an AI agent) and register this instance under `name`, so one server
|
|
1265
|
+
* can drive several Etch tabs at once and tell them apart by name. Returns a
|
|
1266
|
+
* handle; call again with a different name/endpoint to open more connections.
|
|
1267
|
+
*
|
|
1268
|
+
* @example
|
|
1269
|
+
* ```js
|
|
1270
|
+
* // In the builder console:
|
|
1271
|
+
* const conn = etch.connectAs('homepage');
|
|
1272
|
+
* // …the tool can now evaluate code in this tab; later:
|
|
1273
|
+
* conn.close();
|
|
1274
|
+
* ```
|
|
1275
|
+
*/
|
|
1276
|
+
connectAs(name: string, options?: BridgeConnectOptions): EtchBridgeConnection;
|
|
1192
1277
|
/**
|
|
1193
1278
|
* Negotiate a version-pinned API instance. **Reserved** — not implemented by
|
|
1194
1279
|
* `0.x` runtimes. When present on a future stable runtime, it returns an
|
|
@@ -1267,4 +1352,4 @@ declare function isEtchApiError(value: unknown): value is EtchApiError;
|
|
|
1267
1352
|
*/
|
|
1268
1353
|
declare const ETCH_API_VERSION = "0.x";
|
|
1269
1354
|
|
|
1270
|
-
export { type ArrayComponentProperty, type BlockLoopBinding, type BlockPatch, type BooleanComponentProperty, type BooleanParam, type ClassComponentProperty, type ColorScheme, type ComponentPatch, type ComponentProperty, type ComponentPropertyBase, type ConditionComponentProperty, type ConnectOptions, type CustomField, type CustomFieldAssignment, type CustomFieldGroup, type CustomFieldType, ETCH_API_VERSION, type Etch, EtchApiError, type EtchApiErrorCode, type EtchBlockCommon, type EtchBlockContext, type EtchBlockJson, type EtchBlockOptions, type EtchBlockScript, type EtchBlockType, type EtchBlockTypeName, type EtchBlocksApi, type EtchComponentBlockJson, type EtchComponentsApi, type EtchConditionBlockJson, type EtchDynamicElementBlockJson, type EtchDynamicImageBlockJson, type EtchElementBlockJson, type EtchFieldsApi, type EtchHistoryApi, type EtchHtmlAttributes, type EtchLoop, type EtchLoopBlockJson, type EtchLoopConfig, type EtchLoopObj, type EtchLoopsApi, type EtchNavigationApi, type EtchPassthroughBlockJson, type EtchPostContentBlockJson, type EtchRawHtmlBlockJson, type EtchSlotContentBlockJson, type EtchSlotPlaceholderBlockJson, type EtchStylesApi, type EtchStylesheetsApi, type EtchSvgBlockJson, type EtchTextBlockJson, type EtchUiApi, type FindBlocksPredicate, type GroupComponentProperty, type GutenbergBlock, type LoopParamRef, type MetaQueryItem, type NavigationPlace, type NumberComponentProperty, type NumericParam, type ObjectComponentProperty, type PostCustomFieldGroupEntry, type PostCustomFieldValueEntry, type PostCustomFieldValueResponse, type PostCustomFieldValuesResponse, type PostSummary, type PublicBlockJson, type PublicComponentJson, type PublicComponentSummary, type RepeaterComponentProperty, type ResolvedCustomField, type SelectOptionsString, type StringComponentProperty, type StyleListFilter, type StylePatch, type StyleSelectorType, type StyleSummary, type StylesheetInput, type StylesheetPatch, type StylesheetSummary, type StylesheetType, type TaxQueryItem, type TemplateSummary, type WpQueryArgs, type WpTermsArgs, type WpUsersArgs, getEtch, isEtchApiError, isEtchAvailable };
|
|
1355
|
+
export { type ArrayComponentProperty, type BlockLoopBinding, type BlockPatch, type BooleanComponentProperty, type BooleanParam, type BridgeConnectOptions, type ClassComponentProperty, type ColorScheme, type ComponentPatch, type ComponentProperty, type ComponentPropertyBase, type ConditionComponentProperty, type ConnectOptions, type CustomField, type CustomFieldAssignment, type CustomFieldGroup, type CustomFieldType, ETCH_API_VERSION, type Etch, EtchApiError, type EtchApiErrorCode, type EtchBlockCommon, type EtchBlockContext, type EtchBlockJson, type EtchBlockOptions, type EtchBlockScript, type EtchBlockType, type EtchBlockTypeName, type EtchBlocksApi, type EtchBridgeConnection, type EtchComponentBlockJson, type EtchComponentsApi, type EtchConditionBlockJson, type EtchDynamicElementBlockJson, type EtchDynamicImageBlockJson, type EtchElementBlockJson, type EtchFieldsApi, type EtchHistoryApi, type EtchHtmlAttributes, type EtchLoop, type EtchLoopBlockJson, type EtchLoopConfig, type EtchLoopObj, type EtchLoopsApi, type EtchNavigationApi, type EtchPassthroughBlockJson, type EtchPostContentBlockJson, type EtchRawHtmlBlockJson, type EtchSlotContentBlockJson, type EtchSlotPlaceholderBlockJson, type EtchStylesApi, type EtchStylesheetsApi, type EtchSvgBlockJson, type EtchTextBlockJson, type EtchUiApi, type FindBlocksPredicate, type GroupComponentProperty, type GutenbergBlock, type LoopParamRef, type MetaQueryItem, type NavigationPlace, type NumberComponentProperty, type NumericParam, type ObjectComponentProperty, type PostCustomFieldGroupEntry, type PostCustomFieldValueEntry, type PostCustomFieldValueResponse, type PostCustomFieldValuesResponse, type PostSummary, type PublicBlockJson, type PublicComponentJson, type PublicComponentSummary, type RepeaterComponentProperty, type ResolvedCustomField, type SelectOptionsString, type StringComponentProperty, type StyleListFilter, type StylePatch, type StyleSelectorType, type StyleSummary, type StylesheetInput, type StylesheetPatch, type StylesheetSummary, type StylesheetType, type TaxQueryItem, type TemplateSummary, type WpQueryArgs, type WpTermsArgs, type WpUsersArgs, getEtch, isEtchApiError, isEtchAvailable };
|
package/dist/index.d.ts
CHANGED
|
@@ -256,8 +256,10 @@ interface BlockPatch {
|
|
|
256
256
|
/** Hide or show the block on the canvas. */
|
|
257
257
|
hidden?: boolean;
|
|
258
258
|
/**
|
|
259
|
-
* Merge
|
|
260
|
-
*
|
|
259
|
+
* Merge attributes — a key set to `undefined` removes that attribute. Valid
|
|
260
|
+
* on HTML blocks (free-form HTML attributes) and on component instances,
|
|
261
|
+
* whose attributes are their bound props — a closed schema, so each key must
|
|
262
|
+
* be a property declared by the component (an unknown key is rejected).
|
|
261
263
|
*/
|
|
262
264
|
attributes?: Record<string, string | undefined>;
|
|
263
265
|
/** Replace the text content. Only valid on text blocks. */
|
|
@@ -299,11 +301,26 @@ interface EtchBlocksApi {
|
|
|
299
301
|
setText(blockId: string, text: string): void;
|
|
300
302
|
/** Rename a block (sets its label / display name). */
|
|
301
303
|
rename(blockId: string, name: string): void;
|
|
302
|
-
/**
|
|
304
|
+
/**
|
|
305
|
+
* Read an attribute, or `undefined` when it is not set. Works on HTML blocks
|
|
306
|
+
* (HTML attributes) and component instances (bound prop values). Throws
|
|
307
|
+
* `WRONG_BLOCK_TYPE` for a block that has no attributes (e.g. a text block).
|
|
308
|
+
*/
|
|
303
309
|
getAttribute(blockId: string, key: string): string | undefined;
|
|
304
|
-
/**
|
|
310
|
+
/**
|
|
311
|
+
* Set an attribute; omit `value` for a valueless (boolean) attribute. Works
|
|
312
|
+
* on HTML blocks and component instances. On a component, `key` must be a
|
|
313
|
+
* declared property — props are a closed schema — otherwise
|
|
314
|
+
* `INVALID_ARGUMENT` is thrown (or `OPERATION_FAILED` if the component
|
|
315
|
+
* definition has not loaded yet). Throws `WRONG_BLOCK_TYPE` for a block with
|
|
316
|
+
* no attributes.
|
|
317
|
+
*/
|
|
305
318
|
setAttribute(blockId: string, key: string, value?: string): void;
|
|
306
|
-
/**
|
|
319
|
+
/**
|
|
320
|
+
* Remove an attribute. Works on HTML blocks and component instances. On a
|
|
321
|
+
* component, `key` must be a declared property (see {@link setAttribute}).
|
|
322
|
+
* Throws `WRONG_BLOCK_TYPE` for a block with no attributes.
|
|
323
|
+
*/
|
|
307
324
|
removeAttribute(blockId: string, key: string): void;
|
|
308
325
|
/** Add a CSS class to the block. */
|
|
309
326
|
addClass(blockId: string, className: string): void;
|
|
@@ -1141,6 +1158,59 @@ interface EtchHistoryApi {
|
|
|
1141
1158
|
canRedo(): boolean;
|
|
1142
1159
|
}
|
|
1143
1160
|
|
|
1161
|
+
/**
|
|
1162
|
+
* Live bridge connection — lets an external tool (an IDE, a script runner, an AI
|
|
1163
|
+
* agent) drive this Etch instance from outside the page over a WebSocket.
|
|
1164
|
+
*
|
|
1165
|
+
* Calling `window.etch.connectAs(name)` from the builder console opens a
|
|
1166
|
+
* connection to a local bridge server and registers this instance under `name`.
|
|
1167
|
+
* Because the name travels to the server, one server can hold connections to
|
|
1168
|
+
* several Etch tabs at once and address each by name. The server then pushes JS
|
|
1169
|
+
* to evaluate in the page; the page streams console output and the return value
|
|
1170
|
+
* back.
|
|
1171
|
+
*
|
|
1172
|
+
* This is the inverse of Chrome remote debugging: the browser dials out to the
|
|
1173
|
+
* tool, instead of the tool attaching to the browser's debug port. Console-run
|
|
1174
|
+
* code is exempt from the page's CSP, so the connection works even on
|
|
1175
|
+
* locked-down pages.
|
|
1176
|
+
*/
|
|
1177
|
+
/** Options for {@link Etch.connectAs} / `etch.connectAs`. */
|
|
1178
|
+
interface BridgeConnectOptions {
|
|
1179
|
+
/**
|
|
1180
|
+
* Full WebSocket endpoint of the bridge server. Defaults to
|
|
1181
|
+
* `ws://127.0.0.1:7331`. Set this to target a different host/port or a
|
|
1182
|
+
* `wss://` endpoint.
|
|
1183
|
+
*/
|
|
1184
|
+
url?: string;
|
|
1185
|
+
/**
|
|
1186
|
+
* Shorthand for a localhost endpoint on a custom port
|
|
1187
|
+
* (`ws://127.0.0.1:<port>`). Ignored when {@link url} is provided.
|
|
1188
|
+
*/
|
|
1189
|
+
port?: number;
|
|
1190
|
+
/**
|
|
1191
|
+
* Extra identifying metadata sent to the server alongside the name (e.g. a
|
|
1192
|
+
* project id or environment label), so the tool can group or disambiguate
|
|
1193
|
+
* tabs beyond the name alone.
|
|
1194
|
+
*/
|
|
1195
|
+
meta?: Record<string, unknown>;
|
|
1196
|
+
/**
|
|
1197
|
+
* Reconnect automatically (with backoff) when the socket drops. Default
|
|
1198
|
+
* `true`.
|
|
1199
|
+
*/
|
|
1200
|
+
reconnect?: boolean;
|
|
1201
|
+
}
|
|
1202
|
+
/** Handle to a live bridge connection returned by `etch.connectAs`. */
|
|
1203
|
+
interface EtchBridgeConnection {
|
|
1204
|
+
/** The name this instance registered under — how the tool addresses it. */
|
|
1205
|
+
readonly name: string;
|
|
1206
|
+
/** The resolved WebSocket endpoint the connection targets. */
|
|
1207
|
+
readonly url: string;
|
|
1208
|
+
/** Whether the socket is currently open. */
|
|
1209
|
+
readonly connected: boolean;
|
|
1210
|
+
/** Close the connection and stop reconnecting. */
|
|
1211
|
+
close(): void;
|
|
1212
|
+
}
|
|
1213
|
+
|
|
1144
1214
|
/**
|
|
1145
1215
|
* The root {@link Etch} interface exposed on `window.etch`, tying every API
|
|
1146
1216
|
* namespace together, plus connection/versioning options.
|
|
@@ -1189,6 +1259,21 @@ interface Etch {
|
|
|
1189
1259
|
history: EtchHistoryApi;
|
|
1190
1260
|
/** Persist everything (blocks, loops, styles, UI). */
|
|
1191
1261
|
saveAsync(): Promise<void>;
|
|
1262
|
+
/**
|
|
1263
|
+
* Open a live bridge connection to a local tooling server (an IDE, a script
|
|
1264
|
+
* runner, an AI agent) and register this instance under `name`, so one server
|
|
1265
|
+
* can drive several Etch tabs at once and tell them apart by name. Returns a
|
|
1266
|
+
* handle; call again with a different name/endpoint to open more connections.
|
|
1267
|
+
*
|
|
1268
|
+
* @example
|
|
1269
|
+
* ```js
|
|
1270
|
+
* // In the builder console:
|
|
1271
|
+
* const conn = etch.connectAs('homepage');
|
|
1272
|
+
* // …the tool can now evaluate code in this tab; later:
|
|
1273
|
+
* conn.close();
|
|
1274
|
+
* ```
|
|
1275
|
+
*/
|
|
1276
|
+
connectAs(name: string, options?: BridgeConnectOptions): EtchBridgeConnection;
|
|
1192
1277
|
/**
|
|
1193
1278
|
* Negotiate a version-pinned API instance. **Reserved** — not implemented by
|
|
1194
1279
|
* `0.x` runtimes. When present on a future stable runtime, it returns an
|
|
@@ -1267,4 +1352,4 @@ declare function isEtchApiError(value: unknown): value is EtchApiError;
|
|
|
1267
1352
|
*/
|
|
1268
1353
|
declare const ETCH_API_VERSION = "0.x";
|
|
1269
1354
|
|
|
1270
|
-
export { type ArrayComponentProperty, type BlockLoopBinding, type BlockPatch, type BooleanComponentProperty, type BooleanParam, type ClassComponentProperty, type ColorScheme, type ComponentPatch, type ComponentProperty, type ComponentPropertyBase, type ConditionComponentProperty, type ConnectOptions, type CustomField, type CustomFieldAssignment, type CustomFieldGroup, type CustomFieldType, ETCH_API_VERSION, type Etch, EtchApiError, type EtchApiErrorCode, type EtchBlockCommon, type EtchBlockContext, type EtchBlockJson, type EtchBlockOptions, type EtchBlockScript, type EtchBlockType, type EtchBlockTypeName, type EtchBlocksApi, type EtchComponentBlockJson, type EtchComponentsApi, type EtchConditionBlockJson, type EtchDynamicElementBlockJson, type EtchDynamicImageBlockJson, type EtchElementBlockJson, type EtchFieldsApi, type EtchHistoryApi, type EtchHtmlAttributes, type EtchLoop, type EtchLoopBlockJson, type EtchLoopConfig, type EtchLoopObj, type EtchLoopsApi, type EtchNavigationApi, type EtchPassthroughBlockJson, type EtchPostContentBlockJson, type EtchRawHtmlBlockJson, type EtchSlotContentBlockJson, type EtchSlotPlaceholderBlockJson, type EtchStylesApi, type EtchStylesheetsApi, type EtchSvgBlockJson, type EtchTextBlockJson, type EtchUiApi, type FindBlocksPredicate, type GroupComponentProperty, type GutenbergBlock, type LoopParamRef, type MetaQueryItem, type NavigationPlace, type NumberComponentProperty, type NumericParam, type ObjectComponentProperty, type PostCustomFieldGroupEntry, type PostCustomFieldValueEntry, type PostCustomFieldValueResponse, type PostCustomFieldValuesResponse, type PostSummary, type PublicBlockJson, type PublicComponentJson, type PublicComponentSummary, type RepeaterComponentProperty, type ResolvedCustomField, type SelectOptionsString, type StringComponentProperty, type StyleListFilter, type StylePatch, type StyleSelectorType, type StyleSummary, type StylesheetInput, type StylesheetPatch, type StylesheetSummary, type StylesheetType, type TaxQueryItem, type TemplateSummary, type WpQueryArgs, type WpTermsArgs, type WpUsersArgs, getEtch, isEtchApiError, isEtchAvailable };
|
|
1355
|
+
export { type ArrayComponentProperty, type BlockLoopBinding, type BlockPatch, type BooleanComponentProperty, type BooleanParam, type BridgeConnectOptions, type ClassComponentProperty, type ColorScheme, type ComponentPatch, type ComponentProperty, type ComponentPropertyBase, type ConditionComponentProperty, type ConnectOptions, type CustomField, type CustomFieldAssignment, type CustomFieldGroup, type CustomFieldType, ETCH_API_VERSION, type Etch, EtchApiError, type EtchApiErrorCode, type EtchBlockCommon, type EtchBlockContext, type EtchBlockJson, type EtchBlockOptions, type EtchBlockScript, type EtchBlockType, type EtchBlockTypeName, type EtchBlocksApi, type EtchBridgeConnection, type EtchComponentBlockJson, type EtchComponentsApi, type EtchConditionBlockJson, type EtchDynamicElementBlockJson, type EtchDynamicImageBlockJson, type EtchElementBlockJson, type EtchFieldsApi, type EtchHistoryApi, type EtchHtmlAttributes, type EtchLoop, type EtchLoopBlockJson, type EtchLoopConfig, type EtchLoopObj, type EtchLoopsApi, type EtchNavigationApi, type EtchPassthroughBlockJson, type EtchPostContentBlockJson, type EtchRawHtmlBlockJson, type EtchSlotContentBlockJson, type EtchSlotPlaceholderBlockJson, type EtchStylesApi, type EtchStylesheetsApi, type EtchSvgBlockJson, type EtchTextBlockJson, type EtchUiApi, type FindBlocksPredicate, type GroupComponentProperty, type GutenbergBlock, type LoopParamRef, type MetaQueryItem, type NavigationPlace, type NumberComponentProperty, type NumericParam, type ObjectComponentProperty, type PostCustomFieldGroupEntry, type PostCustomFieldValueEntry, type PostCustomFieldValueResponse, type PostCustomFieldValuesResponse, type PostSummary, type PublicBlockJson, type PublicComponentJson, type PublicComponentSummary, type RepeaterComponentProperty, type ResolvedCustomField, type SelectOptionsString, type StringComponentProperty, type StyleListFilter, type StylePatch, type StyleSelectorType, type StyleSummary, type StylesheetInput, type StylesheetPatch, type StylesheetSummary, type StylesheetType, type TaxQueryItem, type TemplateSummary, type WpQueryArgs, type WpTermsArgs, type WpUsersArgs, getEtch, isEtchApiError, isEtchAvailable };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@digital-gravy/etch-public-api",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "MIT-licensed typed client and contract for the Etch builder scripting API (window.etch). Etch itself is a separate proprietary product governed by its own commercial terms.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -43,4 +43,4 @@
|
|
|
43
43
|
"typescript": "^5.7.2",
|
|
44
44
|
"vitest": "^3.0.5"
|
|
45
45
|
}
|
|
46
|
-
}
|
|
46
|
+
}
|