NoeVault Snip SDK Reference

NoeVault Snip SDK Reference

NoeVault Snip SDK Reference

NoeVault Snip SDK Reference

Package: @noevault/snap
Version: 1.1.3
Build marker: PR-8.7E.4A
Contract: snap-integration.v1
Entry points: ESM dist/noevault-snap.js · UMD dist/noevault-snap.umd.js · CSS dist/noevault-snap.css

Package constants

Export Value (1.1.3)
SNAP_PACKAGE_ID @noevault/snap
SNAP_PACKAGE_VERSION 1.1.3
SNAP_BUILD_MARKER PR-8.7E.4A
SNAP_CONTRACT_VERSION snap-integration.v1
SNAP_CONTRACT_FAMILY snap-integration

Primary API

createNoeVaultSnap(options?) / init(options?)

Creates a NoeVaultSnapInstance. init creates and initializes.

import { createNoeVaultSnap, init } from '@noevault/snap';

const snap = await init({ bootstrap /* optional if passed to initialize later */ });

Instance responsibilities (conceptual)

  • Accept browser-safe bootstrap
  • Mount Snap UI host (entry / report / my-requests / request-detail)
  • Submit validated composer payloads + attachments
  • List/detail My Requests; add comments; poll conversation

Exact method names follow the published TypeScript declarations in dist/index.d.ts.

Shared components

Export Purpose
SnapScreenEditor Screenshot workspace: preview, expand, zoom/fit/actual, tools
AnnotationSession Annotation edit graph (undo/redo/select/delete/crop/redact/shapes/text/freehand)
AttachmentPicker Multi-file staging with preview
createConversationPoller Soft polling helper for request detail
validateRequestComposer Shared composer validation
preflightAttachments Advisory attachment checks
listMyRequests / getRequestDetail / addRequestComment Request projection helpers
requestAccountClaim Optional claim invite/complete flow
validateBootstrap / normalizeBootstrap Bootstrap guards
SnapDenyCodes / mapCustomerError / CustomerMessages Customer-safe errors
REDACTION_LIMITATIONS / hideExcludedElements Capture privacy helpers

Bootstrap type (browser-safe)

SnapBrowserBootstrap includes capability status, tenant/solution context, UI/capture/redaction/evidence policies, endpoint discovery, priorities/categories experience, and optional claim offer. It must not include AppKey or other server secrets.

Deny / failure kinds (selected)

Hosts should fail closed on bootstrap invalid/expired/unauthorized and surface customer-safe messages via mapCustomerError — never raw exception stacks.

UI views (SDK host)

View Purpose
entry Launcher / NoeVault Snip home
report Composer + capture/annotate
my-requests Searchable list
request-detail Detail, attachments, conversation

Versioning policy

  • Deployable UMD/CSS byte changes require a package version bump.
  • Build marker tracks the release train (e.g. PR-8.7E.4A).
  • Do not reuse a prior version string when bytes change.