@stacksjs/desktop 0.2.125 → 0.2.126

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/browser.d.ts CHANGED
@@ -57,7 +57,10 @@ export * from './printing';
57
57
  export * from './screen';
58
58
  export * from './screen-capture';
59
59
  export * from './screen-sharing';
60
- export * from './self-update';
60
+ // `self-update` is deliberately absent: it re-exports craft-native's
61
+ // AutoUpdater, which spawns processes to stage an update. That belongs to the
62
+ // host side, and pulling it in here drags node:child_process back into the
63
+ // bundle — the exact problem this entry exists to solve.
61
64
  export * from './serial';
62
65
  export * from './service-menu';
63
66
  export * from './shell';
package/dist/browser.js CHANGED
@@ -3131,39 +3131,6 @@ async function watchScreenSharing(cb, intervalMs = DEFAULT_WATCH_INTERVAL_MS) {
3131
3131
  screenSharing.stop();
3132
3132
  };
3133
3133
  }
3134
- // src/self-update.ts
3135
- import { AutoUpdater, generateUpdateManifest } from "craft-native";
3136
- var UPDATE_MANIFEST_ASSET = "update.json";
3137
- function githubLatestAssetUrl(repository, asset) {
3138
- return `https://github.com/${repository}/releases/latest/download/${asset}`;
3139
- }
3140
- function githubReleaseAssetUrl(repository, tag, asset) {
3141
- return `https://github.com/${repository}/releases/download/${tag}/${asset}`;
3142
- }
3143
- function createGitHubUpdater(options) {
3144
- const { repository, manifestAsset = UPDATE_MANIFEST_ASSET, ...config } = options;
3145
- return new AutoUpdater({
3146
- ...config,
3147
- updateUrl: githubLatestAssetUrl(repository, manifestAsset)
3148
- });
3149
- }
3150
- function createGitHubUpdateManifest(options) {
3151
- const tag = options.tag ?? `v${options.version}`;
3152
- const platforms = {};
3153
- for (const [platform, path] of Object.entries(options.artifacts)) {
3154
- if (!path)
3155
- continue;
3156
- platforms[platform] = {
3157
- path,
3158
- url: githubReleaseAssetUrl(options.repository, tag, path.split("/").pop())
3159
- };
3160
- }
3161
- return generateUpdateManifest({
3162
- version: options.version,
3163
- releaseNotes: options.releaseNotes,
3164
- platforms
3165
- });
3166
- }
3167
3134
  // src/serial.ts
3168
3135
  var serial = {
3169
3136
  async list() {
@@ -3989,8 +3956,6 @@ export {
3989
3956
  hasFocusShortcuts,
3990
3957
  handoff,
3991
3958
  globalShortcuts,
3992
- githubReleaseAssetUrl,
3993
- githubLatestAssetUrl,
3994
3959
  getRegisteredHotkeys,
3995
3960
  getDialogBridgeScript,
3996
3961
  getCapability,
@@ -3998,7 +3963,6 @@ export {
3998
3963
  getCaffeinateStatus,
3999
3964
  getActiveModalCount,
4000
3965
  getActiveAlertCount,
4001
- generateUpdateManifest,
4002
3966
  fs,
4003
3967
  formatTime,
4004
3968
  formatShortcut,
@@ -4015,8 +3979,6 @@ export {
4015
3979
  decaffeinate,
4016
3980
  createTimer,
4017
3981
  createInterval,
4018
- createGitHubUpdater,
4019
- createGitHubUpdateManifest,
4020
3982
  crashReporter,
4021
3983
  coreml,
4022
3984
  continuityCamera,
@@ -4032,13 +3994,11 @@ export {
4032
3994
  appleScript,
4033
3995
  app,
4034
3996
  alert2 as alert,
4035
- UPDATE_MANIFEST_ASSET,
4036
3997
  TOAST_STYLES,
4037
3998
  MODAL_STYLES,
4038
3999
  MIN_WATCH_INTERVAL_MS,
4039
4000
  MAX_WATCH_INTERVAL_MS,
4040
- DEFAULT_WATCH_INTERVAL_MS,
4041
- AutoUpdater
4001
+ DEFAULT_WATCH_INTERVAL_MS
4042
4002
  };
4043
4003
 
4044
- //# debugId=A5FFF3106B7637D064756E2164756E21
4004
+ //# debugId=9CC4EBDE203C9FEF64756E2164756E21
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../src/alerts.ts", "../src/_bridge.ts", "../src/app-info.ts", "../src/apple-script.ts", "../src/audio.ts", "../src/battery.ts", "../src/biometric.ts", "../src/bluetooth.ts", "../src/bonjour.ts", "../src/capabilities.ts", "../src/clipboard.ts", "../src/continuity-camera.ts", "../src/coreml.ts", "../src/crash-reporter.ts", "../src/deep-link.ts", "../src/dialogs.ts", "../src/drag-out.ts", "../src/file-associations.ts", "../src/focus.ts", "../src/fs.ts", "../src/global-shortcuts.ts", "../src/handoff.ts", "../src/hotkeys.ts", "../src/iap.ts", "../src/keychain.ts", "../src/live-activities.ts", "../src/local-server.ts", "../src/location.ts", "../src/log.ts", "../src/menu.ts", "../src/midi.ts", "../src/modals.ts", "../src/native-autolaunch.ts", "../src/network.ts", "../src/notifications.ts", "../src/pdf.ts", "../src/permissions.ts", "../src/power.ts", "../src/printing.ts", "../src/screen.ts", "../src/screen-capture.ts", "../src/screen-sharing.ts", "../src/self-update.ts", "../src/serial.ts", "../src/service-menu.ts", "../src/shell.ts", "../src/speech.ts", "../src/speech-recognition.ts", "../src/spotlight.ts", "../src/tags.ts", "../src/theme.ts", "../src/timer.ts", "../src/touchbar.ts", "../src/updater.ts", "../src/vision.ts", "../src/window-events.ts"],
3
+ "sources": ["../src/alerts.ts", "../src/_bridge.ts", "../src/app-info.ts", "../src/apple-script.ts", "../src/audio.ts", "../src/battery.ts", "../src/biometric.ts", "../src/bluetooth.ts", "../src/bonjour.ts", "../src/capabilities.ts", "../src/clipboard.ts", "../src/continuity-camera.ts", "../src/coreml.ts", "../src/crash-reporter.ts", "../src/deep-link.ts", "../src/dialogs.ts", "../src/drag-out.ts", "../src/file-associations.ts", "../src/focus.ts", "../src/fs.ts", "../src/global-shortcuts.ts", "../src/handoff.ts", "../src/hotkeys.ts", "../src/iap.ts", "../src/keychain.ts", "../src/live-activities.ts", "../src/local-server.ts", "../src/location.ts", "../src/log.ts", "../src/menu.ts", "../src/midi.ts", "../src/modals.ts", "../src/native-autolaunch.ts", "../src/network.ts", "../src/notifications.ts", "../src/pdf.ts", "../src/permissions.ts", "../src/power.ts", "../src/printing.ts", "../src/screen.ts", "../src/screen-capture.ts", "../src/screen-sharing.ts", "../src/serial.ts", "../src/service-menu.ts", "../src/shell.ts", "../src/speech.ts", "../src/speech-recognition.ts", "../src/spotlight.ts", "../src/tags.ts", "../src/theme.ts", "../src/timer.ts", "../src/touchbar.ts", "../src/updater.ts", "../src/vision.ts", "../src/window-events.ts"],
4
4
  "sourcesContent": [
5
5
  "import type { AlertOptions, ToastOptions } from './types'\n\n/**\n * Alert / Toast Notification Implementation\n *\n * Provides cross-platform notification functionality.\n * Uses native notifications when available, falls back to web-based toasts.\n *\n * Features:\n * - Multiple notification types (info, success, warning, error)\n * - Configurable position and duration\n * - Auto-dismiss with optional manual close\n * - Queue management for multiple notifications\n * - Click handlers\n */\n\n// =============================================================================\n// Types\n// =============================================================================\n\ninterface AlertState {\n id: string\n options: AlertOptions\n element?: HTMLElement\n timeout?: ReturnType<typeof setTimeout>\n}\n\n// =============================================================================\n// Platform Detection\n// =============================================================================\n\n/**\n * Check if native notifications are available\n */\nfunction hasNativeNotificationSupport(): boolean {\n // Check for browser Notification API\n if (typeof Notification !== 'undefined' && Notification.permission === 'granted') {\n return true\n }\n // Future: Check for @stacksjs/zyte bindings for desktop notifications\n return false\n}\n\n/**\n * Check if running in browser environment\n */\nfunction isBrowser(): boolean {\n return typeof window !== 'undefined' && typeof document !== 'undefined'\n}\n\n/**\n * Request notification permission (browser)\n */\nexport async function requestNotificationPermission(): Promise<boolean> {\n if (typeof Notification === 'undefined') {\n return false\n }\n\n if (Notification.permission === 'granted') {\n return true\n }\n\n if (Notification.permission === 'denied') {\n return false\n }\n\n const permission = await Notification.requestPermission()\n return permission === 'granted'\n}\n\n// =============================================================================\n// Alert Manager\n// =============================================================================\n\n// Active alerts\nconst activeAlerts = new Map<string, AlertState>()\n\n// Toast container element\nconst _toastContainer: HTMLElement | null = null\n\n/**\n * Generate a unique alert ID\n */\nfunction generateAlertId(): string {\n return `alert-${Date.now()}-${Math.random().toString(36).substring(2, 9)}`\n}\n\n/**\n * Get icon for alert type\n */\nfunction getAlertIcon(type: AlertOptions['type']): string {\n switch (type) {\n case 'info':\n return '&#x2139;'\n case 'success':\n return '&#x2714;'\n case 'warning':\n return '&#x26A0;'\n case 'error':\n return '&#x2716;'\n default:\n return '&#x2139;'\n }\n}\n\n/**\n * Get or create the toast container element\n */\nfunction getToastContainer(position: AlertOptions['position'] = 'top-right'): HTMLElement {\n if (!isBrowser()) {\n throw new Error('Toast container requires browser environment')\n }\n\n // Check if container already exists with correct position\n try {\n const existingContainer = document.querySelector(`.stx-toast-container[data-position=\"${position}\"]`)\n if (existingContainer) {\n return existingContainer as HTMLElement\n }\n }\n catch {\n // Ignore querySelector errors in very-happy-dom\n }\n\n // Create new container\n const container = document.createElement('div')\n container.className = `stx-toast-container ${position}`\n container.dataset.position = position\n\n // Safely append to body\n try {\n if (document.body) {\n document.body.appendChild(container)\n }\n }\n catch {\n // Ignore appendChild errors in very-happy-dom\n }\n\n return container\n}\n\n/**\n * Create toast HTML\n */\nfunction createToastHTML(state: AlertState): string {\n const { options } = state\n const icon = getAlertIcon(options.type)\n const typeClass = options.type || 'info'\n const hasClose = options.duration !== 0\n\n return `\n <div class=\"stx-toast ${typeClass}\" data-alert-id=\"${state.id}\" role=\"alert\" aria-live=\"polite\">\n <div class=\"stx-toast-icon\">${icon}</div>\n <div class=\"stx-toast-content\">\n ${options.title ? `<div class=\"stx-toast-title\">${escapeHtml(options.title)}</div>` : ''}\n <div class=\"stx-toast-message\">${escapeHtml(options.message)}</div>\n </div>\n ${hasClose ? '<button class=\"stx-toast-close\" aria-label=\"Close\">&times;</button>' : ''}\n </div>\n `\n}\n\n/**\n * Escape HTML to prevent XSS\n */\nfunction escapeHtml(str: string): string {\n return str\n .replace(/&/g, '&amp;')\n .replace(/</g, '&lt;')\n .replace(/>/g, '&gt;')\n .replace(/\"/g, '&quot;')\n .replace(/'/g, '&#039;')\n}\n\n/**\n * Dismiss an alert\n */\nfunction dismissAlert(state: AlertState): void {\n // Clear timeout if exists\n if (state.timeout) {\n clearTimeout(state.timeout)\n }\n\n // Remove from active alerts\n activeAlerts.delete(state.id)\n\n // Animate out and remove element\n if (state.element && isBrowser()) {\n state.element.classList.add('dismissing')\n setTimeout(() => {\n state.element?.remove()\n }, 200)\n }\n}\n\n/**\n * Show an alert/notification\n *\n * @param options - Alert configuration options\n *\n * @example\n * ```typescript\n * await showAlert({\n * title: 'Success',\n * message: 'Your changes have been saved',\n * type: 'success',\n * duration: 3000,\n * position: 'top-right',\n * })\n * ```\n */\nexport async function showAlert(options: AlertOptions): Promise<void> {\n const id = generateAlertId()\n const hasNative = hasNativeNotificationSupport()\n const duration = options.duration ?? 5000\n\n const state: AlertState = {\n id,\n options,\n }\n\n activeAlerts.set(id, state)\n\n if (hasNative && options.type !== 'error') {\n // Use native Notification API for non-error alerts\n try {\n const notification = new Notification(options.title || 'Notification', {\n body: options.message,\n icon: options.type === 'success' ? '✓' : options.type === 'warning' ? '⚠' : 'ℹ',\n tag: id,\n })\n\n notification.onclick = () => {\n if (options.onClick) {\n options.onClick()\n }\n notification.close()\n }\n\n if (duration > 0) {\n state.timeout = setTimeout(() => {\n notification.close()\n activeAlerts.delete(id)\n }, duration)\n }\n\n return\n }\n catch {\n // Fall through to web-based implementation\n }\n }\n\n if (isBrowser()) {\n // Web-based toast implementation\n try {\n const container = getToastContainer(options.position)\n const wrapper = document.createElement('div')\n wrapper.innerHTML = createToastHTML(state)\n const toast = wrapper.firstElementChild as HTMLElement\n\n if (!toast) {\n // Fallback to console if DOM manipulation fails\n const typeLabel = (options.type || 'info').toUpperCase()\n console.log(`[stx-alert] ${typeLabel}: ${options.title || ''}`)\n console.log(`[stx-alert] ${options.message}`)\n return\n }\n\n state.element = toast\n\n // Add to container\n try {\n container.appendChild(toast)\n }\n catch {\n // Fallback to console if appendChild fails (e.g., in very-happy-dom)\n const typeLabel = (options.type || 'info').toUpperCase()\n console.log(`[stx-alert] ${typeLabel}: ${options.title || ''}`)\n console.log(`[stx-alert] ${options.message}`)\n return\n }\n\n // Trigger animation\n if (typeof requestAnimationFrame === 'function') {\n requestAnimationFrame(() => {\n try {\n toast.classList.add('visible')\n }\n catch {\n // Ignore classList errors\n }\n })\n }\n\n // Handle click\n try {\n toast.addEventListener('click', (e) => {\n if ((e.target as HTMLElement).classList?.contains('stx-toast-close')) {\n dismissAlert(state)\n return\n }\n\n if (options.onClick) {\n options.onClick()\n }\n })\n }\n catch {\n // Ignore addEventListener errors\n }\n\n // Auto-dismiss\n if (duration > 0) {\n state.timeout = setTimeout(() => {\n dismissAlert(state)\n }, duration)\n }\n }\n catch {\n // Fallback to console if any DOM operation fails\n const typeLabel = (options.type || 'info').toUpperCase()\n console.log(`[stx-alert] ${typeLabel}: ${options.title || ''}`)\n console.log(`[stx-alert] ${options.message}`)\n }\n }\n else {\n // Node.js environment - console fallback\n const typeLabel = (options.type || 'info').toUpperCase()\n console.log(`[stx-alert] ${typeLabel}: ${options.title || ''}`)\n console.log(`[stx-alert] ${options.message}`)\n\n // Auto-dismiss from tracking\n if (duration > 0) {\n state.timeout = setTimeout(() => {\n activeAlerts.delete(id)\n }, duration)\n }\n }\n}\n\n/**\n * Show a toast notification (alias for showAlert with toast-friendly defaults)\n */\nexport async function showToast(options: ToastOptions): Promise<void> {\n return showAlert({\n ...options,\n position: options.position || 'top-right',\n })\n}\n\n/**\n * Show an info toast\n */\nexport async function showInfoToast(message: string, duration = 3000): Promise<void> {\n return showToast({ message, type: 'info', duration })\n}\n\n/**\n * Show a success toast\n */\nexport async function showSuccessToast(message: string, duration = 3000): Promise<void> {\n return showToast({ message, type: 'success', duration })\n}\n\n/**\n * Show a warning toast\n */\nexport async function showWarningToast(message: string, duration = 3000): Promise<void> {\n return showToast({ message, type: 'warning', duration })\n}\n\n/**\n * Show an error toast\n */\nexport async function showErrorToast(message: string, duration = 5000): Promise<void> {\n return showToast({ message, type: 'error', duration })\n}\n\n/**\n * Show a notification with title\n */\nexport async function notify(title: string, message: string, type: AlertOptions['type'] = 'info'): Promise<void> {\n return showAlert({ title, message, type })\n}\n\n/**\n * Dismiss a specific alert by ID\n */\nexport function dismissAlertById(id: string): void {\n const state = activeAlerts.get(id)\n if (state) {\n dismissAlert(state)\n }\n}\n\n/**\n * Dismiss all active alerts\n */\nexport function dismissAllAlerts(): void {\n for (const state of activeAlerts.values()) {\n dismissAlert(state)\n }\n}\n\n/**\n * Get count of active alerts\n */\nexport function getActiveAlertCount(): number {\n return activeAlerts.size\n}\n\n/**\n * CSS styles for web-based toasts\n */\nexport const TOAST_STYLES = `\n.stx-toast-container {\n position: fixed;\n z-index: 10001;\n display: flex;\n flex-direction: column;\n gap: 8px;\n max-width: 400px;\n pointer-events: none;\n}\n\n.stx-toast-container.top-left { top: 16px; left: 16px; }\n.stx-toast-container.top-center { top: 16px; left: 50%; transform: translateX(-50%); }\n.stx-toast-container.top-right { top: 16px; right: 16px; }\n.stx-toast-container.bottom-left { bottom: 16px; left: 16px; }\n.stx-toast-container.bottom-center { bottom: 16px; left: 50%; transform: translateX(-50%); }\n.stx-toast-container.bottom-right { bottom: 16px; right: 16px; }\n\n.stx-toast {\n display: flex;\n align-items: flex-start;\n gap: 12px;\n padding: 12px 16px;\n background: #fff;\n border-radius: 8px;\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);\n pointer-events: auto;\n cursor: pointer;\n opacity: 0;\n transform: translateY(-10px);\n transition: opacity 0.2s, transform 0.2s;\n}\n\n.stx-toast.visible {\n opacity: 1;\n transform: translateY(0);\n}\n\n.stx-toast.dismissing {\n opacity: 0;\n transform: translateX(100%);\n}\n\n@media (prefers-color-scheme: dark) {\n .stx-toast {\n background: #2d2d2d;\n color: #fff;\n }\n}\n\n.stx-toast-icon {\n font-size: 20px;\n flex-shrink: 0;\n margin-top: 2px;\n}\n\n.stx-toast.info .stx-toast-icon { color: #3498db; }\n.stx-toast.success .stx-toast-icon { color: #27ae60; }\n.stx-toast.warning .stx-toast-icon { color: #f39c12; }\n.stx-toast.error .stx-toast-icon { color: #e74c3c; }\n\n.stx-toast-content {\n flex: 1;\n min-width: 0;\n}\n\n.stx-toast-title {\n font-weight: 600;\n margin-bottom: 4px;\n}\n\n.stx-toast-message {\n color: #666;\n font-size: 14px;\n line-height: 1.4;\n}\n\n@media (prefers-color-scheme: dark) {\n .stx-toast-message { color: #aaa; }\n}\n\n.stx-toast-close {\n background: none;\n border: none;\n font-size: 20px;\n cursor: pointer;\n opacity: 0.5;\n padding: 0;\n line-height: 1;\n color: inherit;\n transition: opacity 0.15s;\n}\n\n.stx-toast-close:hover {\n opacity: 1;\n}\n\n/* Border accent for different types */\n.stx-toast.info { border-left: 4px solid #3498db; }\n.stx-toast.success { border-left: 4px solid #27ae60; }\n.stx-toast.warning { border-left: 4px solid #f39c12; }\n.stx-toast.error { border-left: 4px solid #e74c3c; }\n`\n",
6
6
  "/**\n * Shared internals for craft bridge wrappers.\n *\n * Every public module in this package follows the same shape:\n * 1. Detect whether `window.craft.<namespace>` is available.\n * 2. Forward to it when running inside a Craft native window.\n * 3. Fall back gracefully (or refuse with a clear error) elsewhere.\n *\n * Centralising these helpers keeps the per-module wrappers small and\n * means a future bridge-detection change (e.g. version negotiation)\n * lives in exactly one place.\n *\n * Internal — not re-exported from index.ts. Apps that want to call the\n * bridge directly should use the namespaced public modules.\n */\n\n// The bridge is built on the Zig side and exposes far more namespaces than\n// craft-native's published types declare (audio, bluetooth, menu, updater,\n// touchbar, iap, …). Widen the published interface instead of re-declaring\n// `Window.craft` here: craft-native already declares that property globally as\n// `CraftBridgeAPI & CraftEventEmitter`, so a second, looser declaration is a\n// conflicting merge (TS2717) — and the narrower published type wins, which made\n// every `craft.<ns>` access fail with TS2339 and every `craft[ns]` lookup with\n// TS7053.\n//\n// An index signature keeps the declared namespaces exactly as typed while\n// letting the ones the bridge ships ahead of the types resolve, which preserves\n// the original intent: don't make the TS layer drift out of sync when a single\n// field renames.\ndeclare module 'craft-native' {\n interface CraftBridgeAPI {\n [namespace: string]: any\n }\n\n // `app` IS a declared namespace with precise signatures, so widen it by\n // naming the two macOS dock methods the bridge ships rather than with an\n // index signature — that keeps a typo in `craft.app.*` an error.\n interface CraftAppAPI {\n setBadge: (count: number) => Promise<void>\n bounce: (type?: 'critical' | 'informational') => Promise<void>\n }\n}\n\ndeclare global {\n interface Window {\n __craftPendingDeepLink?: string\n __craftCurrentTheme?: { appearance: 'light' | 'dark' }\n }\n}\n\n/** True when `window.craft.<ns>` exists. Cheap; do not memoize. */\nexport function hasBridge(ns: string): boolean {\n if (typeof window === 'undefined') return false\n const c = window.craft as Record<string, any> | undefined\n return !!(c && c[ns])\n}\n\n/**\n * Get the bridge namespace, or throw a clear error if it isn't there.\n * Use this in the rare case where a sensible web fallback doesn't exist\n * (e.g. system-level battery info). For everything else, prefer\n * `hasBridge` + manual fallback so the call works in browsers too.\n */\nexport function requireBridge<T = Record<string, any>>(ns: string): T {\n if (!hasBridge(ns)) {\n throw new Error(`craft.${ns} is not available — this API requires a Craft native window`)\n }\n return (window as Window).craft![ns] as T\n}\n\n/**\n * Central index of every `craft:*` event the SDK currently knows about,\n * mapped to its payload shape. Apps that subscribe via `onCraftEvent`\n * with a literal name get fully-typed `detail` automatically — no\n * `<unknown>` casts. Internal modules also use the map to keep their\n * own `onXxx` callbacks honest.\n *\n * When adding a new event name on the native side, add a row here so\n * the public TS surface stays in sync.\n */\nexport interface CraftEventMap {\n // power / system-wide\n 'craft:powerSleep': void\n 'craft:powerWake': void\n 'craft:networkChange': { type: import('./network').ConnectionType, online: boolean }\n 'craft:screen:change': void\n 'craft:screenSharing:change': import('./screen-sharing').ScreenSharingState\n 'craft:theme': import('./theme').ThemeInfo\n\n // bluetooth\n 'craft:bluetooth:deviceFound': import('./bluetooth').BluetoothDevice\n 'craft:bluetooth:deviceConnected': import('./bluetooth').BluetoothDevice\n 'craft:bluetooth:deviceDisconnected': import('./bluetooth').BluetoothDevice\n 'craft:bluetooth:characteristicValue': import('./bluetooth').BluetoothCharacteristicValueEvent\n\n // bonjour\n 'craft:bonjour:found': import('./bonjour').BonjourService\n 'craft:bonjour:lost': import('./bonjour').BonjourService\n\n // deep link\n 'craft:deepLink': import('./deep-link').DeepLinkEvent\n\n // file system\n 'craft:fs:change': import('./fs').FSChangeEvent\n\n // global shortcuts\n 'craft:shortcut': import('./global-shortcuts').ShortcutFireEvent\n\n // handoff / continuity\n 'craft:handoff:incoming': import('./handoff').HandoffIncomingEvent\n\n // in-app purchases\n 'craft:iap:purchased': import('./iap').IAPTransactionEvent\n 'craft:iap:failed': import('./iap').IAPFailureEvent\n 'craft:iap:restored': import('./iap').IAPTransactionEvent\n 'craft:iap:productsLoaded': { products?: import('./iap').IAPProduct[] }\n 'craft:iap:refunded': import('./iap').IAPRefundEvent\n 'craft:iap:subscriptionStatusChanged': import('./iap').IAPSubscriptionStatusEvent\n\n // local HTTP server\n 'craft:localServer:request': import('./local-server').LocalServerRequestEvent\n\n // location\n 'craft:location:update': import('./location').LocationCoordinate\n 'craft:location:error': { message: string }\n 'craft:location:authChanged': { status: import('./location').LocationAuthStatus }\n\n // menu\n 'craft:menu:action': import('./menu').MenuActionEvent\n\n // midi\n 'craft:midi:message': import('./midi').MIDIMessageEvent\n\n // notifications\n 'craft:notification:actionClicked': import('./notifications').NotificationActionEvent\n 'craft:notification:reply': import('./notifications').NotificationReplyEvent\n\n // serial\n 'craft:serial:data': import('./serial').SerialDataEvent\n\n // service menu\n 'craft:serviceMenu:invoked': import('./service-menu').ServiceMenuInvokedEvent\n\n // shell\n 'craft:shell:stdout': import('./shell').ShellOutputEvent\n 'craft:shell:stderr': import('./shell').ShellOutputEvent\n 'craft:shell:exit': import('./shell').ShellExitEvent\n\n // speech recognition\n 'craft:speechRecognition:partial': { transcript: string }\n 'craft:speechRecognition:final': { transcript: string }\n\n // touch bar\n 'craft:touchbar:action': import('./touchbar').TouchBarActionEvent\n\n // updater\n 'craft:updateAvailable': import('./updater').UpdateInfo\n 'craft:updateDownloaded': import('./updater').UpdateInfo\n\n // window\n 'craft:window:focus': void\n 'craft:window:blur': void\n 'craft:window:resize': import('./window-events').WindowSize\n 'craft:window:move': import('./window-events').WindowPosition\n 'craft:window:close': void\n 'craft:window:minimize': void\n 'craft:window:restore': void\n\n // tray\n 'craft:tray:menu': { id?: string }\n}\n\n/**\n * Subscribe to a `craft:*` window event with auto-detached cleanup.\n *\n * Two overloads:\n * - **Known event** (string literal in `CraftEventMap`): `detail` is\n * typed to the matching payload, no generic argument needed.\n * - **Custom event** (any other name): pass an explicit `T` to type\n * the payload yourself, or default to `unknown`.\n */\nexport function onCraftEvent<K extends keyof CraftEventMap>(\n name: K,\n cb: (detail: CraftEventMap[K]) => void,\n): () => void\nexport function onCraftEvent<T = unknown>(\n name: string,\n cb: (detail: T) => void,\n): () => void\nexport function onCraftEvent(name: string, cb: (detail: any) => void): () => void {\n if (typeof window === 'undefined') return () => {}\n const h = (e: Event) => cb((e as CustomEvent).detail ?? {})\n window.addEventListener(name, h as EventListener)\n return () => window.removeEventListener(name, h as EventListener)\n}\n",
@@ -44,7 +44,6 @@
44
44
  "/**\n * Display / Screen Info\n *\n * Multi-monitor info: every connected display's bounds, work area\n * (excluding menu bar + dock), and `backingScaleFactor` (1.0 / 2.0).\n *\n * Browser fallback returns a single Display synthesised from\n * `window.screen`, which is \"good enough\" for layout heuristics but\n * misses secondary monitors (browsers can't see those).\n */\nimport { hasBridge, onCraftEvent } from './_bridge'\n\nexport interface Display {\n /** Stable id within this app run (0 = primary). */\n id: number\n /** Full screen rect (origin in AppKit / display-space coords). */\n x: number\n y: number\n width: number\n height: number\n /** Work area excluding menu bar + dock. */\n workX: number\n workY: number\n workWidth: number\n workHeight: number\n /** 1.0 (Retina = 2.0). Multiply CSS px by this for device px. */\n scaleFactor: number\n}\n\nexport interface ScreenAPI {\n /** Every connected display. */\n getDisplays: () => Promise<Display[]>\n /** The primary display (the one with the menu bar). */\n getPrimary: () => Promise<Display | null>\n /**\n * Subscribe to display-arrangement changes — monitor hot-plug,\n * resolution change, dock relocation. The callback receives no\n * payload; re-fetch with `getDisplays()` to read the new state.\n */\n onChange: (cb: () => void) => () => void\n}\n\nexport const screen: ScreenAPI = {\n async getDisplays() {\n if (hasBridge('screen')) return await window.craft!.screen.getDisplays()\n return webDisplays()\n },\n async getPrimary() {\n if (hasBridge('screen')) {\n const r = await window.craft!.screen.getPrimary()\n return r && typeof r.width === 'number' ? r : null\n }\n return webDisplays()[0] ?? null\n },\n onChange(cb) {\n if (hasBridge('screen')) return onCraftEvent('craft:screen:change', () => cb())\n // Web fallback: window-level resize events. Not strictly equivalent\n // — they fire for window resizes too, not just monitor changes —\n // but it's the closest thing browsers expose.\n if (typeof window === 'undefined') return () => {}\n const h = () => cb()\n window.addEventListener('resize', h)\n return () => window.removeEventListener('resize', h)\n },\n}\n\nfunction webDisplays(): Display[] {\n if (typeof window === 'undefined' || !window.screen) return []\n const s = window.screen as any\n return [{\n id: 0,\n x: s.left ?? 0,\n y: s.top ?? 0,\n width: s.width || 0,\n height: s.height || 0,\n workX: s.availLeft ?? 0,\n workY: s.availTop ?? 0,\n workWidth: s.availWidth ?? s.width ?? 0,\n workHeight: s.availHeight ?? s.height ?? 0,\n scaleFactor: window.devicePixelRatio || 1,\n }]\n}\n",
45
45
  "/**\n * Programmatic screen + window capture.\n *\n * macOS uses `CGWindowListCreateImage` (works on every supported\n * release; permission-gated by Privacy → Screen Recording). Apps\n * should guide the user via `permissions.openSettings('screen_recording')`\n * before calling — otherwise the capture returns a black image.\n *\n * No web fallback — `getDisplayMedia()` exists but it's a different\n * shape (live stream vs still). Calls outside Craft return null.\n */\nimport { hasBridge } from './_bridge'\n\nexport interface CapturableWindow {\n /** CGWindowID — pass to `captureWindow()`. */\n id: number\n /** Window title. May be empty. */\n name: string\n /** Owning app's name (e.g. \"Safari\", \"Finder\"). */\n ownerName: string\n}\n\nexport interface ScreenCaptureAPI {\n /**\n * Capture the entire primary display. Returns a `data:image/png;base64,...`\n * data URL ready to drop into an `<img src>`, or null if the capture\n * failed (typically permission-denied).\n */\n captureScreen: () => Promise<string | null>\n /** Capture a specific window by its CGWindowID. */\n captureWindow: (id: number) => Promise<string | null>\n /** List every on-screen window the OS will let us capture. */\n listWindows: () => Promise<CapturableWindow[]>\n}\n\nexport const screenCapture: ScreenCaptureAPI = {\n async captureScreen() {\n if (!hasBridge('screenCapture')) return null\n const r = await window.craft!.screenCapture.captureScreen()\n return r ? String(r) : null\n },\n async captureWindow(id) {\n if (!hasBridge('screenCapture')) return null\n if (!Number.isFinite(id) || id <= 0) throw new Error('captureWindow: id must be a positive number')\n const r = await window.craft!.screenCapture.captureWindow(id)\n return r ? String(r) : null\n },\n async listWindows() {\n if (!hasBridge('screenCapture')) return []\n return await window.craft!.screenCapture.listWindows()\n },\n}\n",
46
46
  "/**\n * Screen-sharing and screen-recording detection.\n *\n * macOS exposes no direct \"is my screen being captured?\" API, so Craft\n * combines four independent signals: the CGSession dictionary's shared-screen\n * and off-console keys, the floating sharing control conferencing apps show\n * while a share is live, and recorder windows.\n *\n * The window-level signals match the sharing *indicator*, never the presence\n * of the app. \"Zoom is running\" describes most of a working day; acting on it\n * would silence notifications permanently.\n *\n * No web fallback: `getDisplayMedia()` tells a page about its own capture, not\n * about the machine. Outside Craft, `getState()` reports nothing detected and\n * `watch()` resolves without starting anything.\n */\nimport { hasBridge, onCraftEvent } from './_bridge'\n\n/** Which signal produced a detection. */\nexport type ScreenSharingKind = 'system' | 'remote' | 'conference' | 'recording'\n\nexport interface ScreenSharingSource {\n /** Owning application, as the window server reports it. */\n app: string\n /** Window title that matched. Empty when the owner alone was the signal. */\n window: string\n kind: ScreenSharingKind\n}\n\nexport interface ScreenSharingSignals {\n /** macOS Screen Sharing / Apple Remote Desktop has the session. */\n systemScreenShare: boolean\n /** The session is being driven from somewhere other than this console. */\n remoteSession: boolean\n /** A conferencing app is showing its live sharing control. */\n conferenceSharing: boolean\n /** A recorder is capturing the screen. */\n screenRecording: boolean\n}\n\nexport interface ScreenSharingState {\n /** True when any signal fired. */\n sharing: boolean\n signals: ScreenSharingSignals\n /** Every indicator that matched, so apps can explain *why* they reacted. */\n sources: ScreenSharingSource[]\n}\n\n/** Interval bounds enforced natively; mirrored here so callers get the same clamp. */\nexport const MIN_WATCH_INTERVAL_MS = 250\nexport const MAX_WATCH_INTERVAL_MS = 60_000\nexport const DEFAULT_WATCH_INTERVAL_MS = 2000\n\nexport interface ScreenSharingAPI {\n /** One-shot evaluation of every signal. */\n getState: () => Promise<ScreenSharingState>\n /**\n * Start polling. Fires `onChange` once immediately, then only when the\n * resolved state actually differs. Returns the interval the native side\n * settled on after clamping.\n */\n watch: (intervalMs?: number) => Promise<number>\n stop: () => Promise<void>\n /** Subscribe to state changes. Returns an unsubscribe function. */\n onChange: (cb: (state: ScreenSharingState) => void) => () => void\n}\n\nconst IDLE: ScreenSharingState = {\n sharing: false,\n signals: {\n systemScreenShare: false,\n remoteSession: false,\n conferenceSharing: false,\n screenRecording: false,\n },\n sources: [],\n}\n\nfunction idleState(): ScreenSharingState {\n return { ...IDLE, signals: { ...IDLE.signals }, sources: [] }\n}\n\nexport const screenSharing: ScreenSharingAPI = {\n async getState() {\n if (!hasBridge('screenSharing')) return idleState()\n return await window.craft!.screenSharing.getState()\n },\n\n async watch(intervalMs = DEFAULT_WATCH_INTERVAL_MS) {\n const clamped = Math.min(MAX_WATCH_INTERVAL_MS, Math.max(MIN_WATCH_INTERVAL_MS, Math.round(intervalMs)))\n if (!hasBridge('screenSharing')) return clamped\n const r = await window.craft!.screenSharing.watch(clamped)\n return (r && r.intervalMs) || clamped\n },\n\n async stop() {\n if (!hasBridge('screenSharing')) return\n await window.craft!.screenSharing.unwatch()\n },\n\n // Subscribing to the window event directly, rather than through the bridge\n // facade's own `onChange`, keeps this working before the bridge has\n // finished injecting — a listener registered early still receives the first\n // emission that `watch()` sends immediately on start.\n onChange(cb) {\n return onCraftEvent('craft:screenSharing:change', cb)\n },\n}\n\n/**\n * Subscribe and start polling in one call, returning a single teardown.\n *\n * The two halves are easy to leak apart — `onChange` without `watch` never\n * fires, and `watch` without a matching `stop` keeps the timer alive across a\n * page reload.\n */\nexport async function watchScreenSharing(\n cb: (state: ScreenSharingState) => void,\n intervalMs: number = DEFAULT_WATCH_INTERVAL_MS,\n): Promise<() => void> {\n const off = screenSharing.onChange(cb)\n await screenSharing.watch(intervalMs)\n return () => {\n off()\n void screenSharing.stop()\n }\n}\n",
47
- "/**\n * Self-updating apps.\n *\n * Craft owns the mechanics — fetch a manifest, verify the download by SHA-256\n * (and signature when one is configured), swap the app bundle. This module\n * re-exports that and adds the piece every app repeats: pointing it at GitHub\n * Releases.\n *\n * @example\n * ```typescript\n * import { createGitHubUpdater } from '@stacksjs/stx/desktop'\n *\n * const updater = createGitHubUpdater({\n * repository: 'stacksjs/barista',\n * currentVersion: '0.1.0',\n * appPath: '/Applications/Barista.app',\n * })\n *\n * const update = await updater.checkForUpdates()\n * ```\n */\nimport type { UpdateManifest, UpdaterConfig } from 'craft-native'\nimport { AutoUpdater, generateUpdateManifest } from 'craft-native'\n\nexport { AutoUpdater, generateUpdateManifest }\nexport type { PlatformUpdate, UpdateManifest, UpdaterConfig, UpdaterEvent, UpdateProgress } from 'craft-native'\n\n/** Manifest asset name an app publishes alongside its release artifacts. */\nexport const UPDATE_MANIFEST_ASSET = 'update.json'\n\nexport interface GitHubUpdaterOptions extends Omit<UpdaterConfig, 'updateUrl'> {\n /** `owner/repo`, e.g. `stacksjs/barista` */\n repository: string\n /**\n * Manifest asset name in the release. Defaults to `update.json`.\n * Must match what the build attached.\n */\n manifestAsset?: string\n}\n\n/**\n * URL of an asset on the repository's newest release.\n *\n * GitHub resolves `releases/latest/download/<asset>` to whichever release is\n * currently latest, so this stays correct without the app knowing any version.\n */\nexport function githubLatestAssetUrl(repository: string, asset: string): string {\n return `https://github.com/${repository}/releases/latest/download/${asset}`\n}\n\n/**\n * URL of an asset on a specific release tag. Used when building a manifest,\n * where the download has to point at the version being released rather than\n * at whatever is latest.\n */\nexport function githubReleaseAssetUrl(repository: string, tag: string, asset: string): string {\n return `https://github.com/${repository}/releases/download/${tag}/${asset}`\n}\n\n/** Point Craft's updater at a repository's latest GitHub release. */\nexport function createGitHubUpdater(options: GitHubUpdaterOptions): AutoUpdater {\n const { repository, manifestAsset = UPDATE_MANIFEST_ASSET, ...config } = options\n\n return new AutoUpdater({\n ...config,\n updateUrl: githubLatestAssetUrl(repository, manifestAsset),\n })\n}\n\nexport interface GitHubManifestOptions {\n /** `owner/repo` the release lives in */\n repository: string\n /** Version being released, without a leading `v` */\n version: string\n /** Release tag the assets are attached to. Defaults to `v<version>`. */\n tag?: string\n releaseNotes?: string\n /** Downloadable artifact per platform, as a local path */\n artifacts: {\n darwin?: string\n win32?: string\n linux?: string\n }\n}\n\n/**\n * Build the manifest for a GitHub release, hashing each artifact and pointing\n * its URL at the release's own tag.\n */\nexport function createGitHubUpdateManifest(options: GitHubManifestOptions): UpdateManifest {\n const tag = options.tag ?? `v${options.version}`\n const platforms: Record<string, { path: string, url: string }> = {}\n\n for (const [platform, path] of Object.entries(options.artifacts)) {\n if (!path)\n continue\n platforms[platform] = {\n path,\n url: githubReleaseAssetUrl(options.repository, tag, path.split('/').pop()!),\n }\n }\n\n return generateUpdateManifest({\n version: options.version,\n releaseNotes: options.releaseNotes,\n platforms,\n })\n}\n",
48
47
  "/**\n * Serial-port I/O — for IoT, Arduino, label printers, etc.\n *\n * `list()` enumerates `/dev/cu.*` + `/dev/tty.*` (macOS) or\n * `/dev/ttyUSB*` / `/dev/ttyACM*` / `/dev/ttyS*` (Linux). Apps use\n * the resulting paths to populate \"choose device\" UIs.\n *\n * Open + read + write needs platform-specific termios setup; the\n * native side stubs those today and returns `ok:false` with a\n * reason. The list is the part most apps need first (the \"which\n * device\" UI).\n */\nimport { hasBridge, onCraftEvent } from './_bridge'\n\nexport interface SerialPort {\n /** Absolute device path (e.g. `/dev/cu.usbmodem14101`). */\n path: string\n}\n\nexport interface SerialDataEvent {\n /** Open-handle id returned from `open()`. */\n id: string\n /** Raw bytes received since the last event. */\n data: number[]\n}\n\nexport interface SerialAPI {\n list: () => Promise<SerialPort[]>\n open: (path: string, baud?: number) => Promise<{ id?: string, ok: boolean, reason?: string }>\n write: (id: string, data: string) => Promise<{ ok: boolean, reason?: string }>\n close: (id: string) => Promise<void>\n onData: (cb: (event: SerialDataEvent) => void) => () => void\n}\n\nexport const serial: SerialAPI = {\n async list() {\n if (!hasBridge('serial')) return []\n return await window.craft!.serial.list()\n },\n async open(path, baud = 9600) {\n if (!path) throw new Error('serial.open: path is required')\n if (!hasBridge('serial')) return { ok: false, reason: 'bridge unavailable' }\n return await window.craft!.serial.open(path, baud)\n },\n async write(id, data) {\n if (!id) throw new Error('serial.write: id is required')\n if (!hasBridge('serial')) return { ok: false, reason: 'bridge unavailable' }\n return await window.craft!.serial.write(id, data)\n },\n async close(id) {\n if (!hasBridge('serial')) return\n await window.craft!.serial.close(id)\n },\n onData(cb) { return onCraftEvent<SerialDataEvent>('craft:serial:data', cb) },\n}\n",
49
48
  "/**\n * macOS Services menu integration.\n *\n * The Services submenu (`AppName → Services → ...` and the right-click\n * contextual menu) lets users hand selected text/files to other apps.\n * Apps that want to appear there declare entries in `Info.plist`'s\n * `NSServices` array AND register handlers for the named selectors.\n *\n * `register(name)` records that we'll handle a service. The\n * `Info.plist` entry is still required for the system to surface the\n * menu item; runtime registration wires our handler so the user's\n * pick fires `craft:serviceMenu:invoked`.\n *\n * macOS reads `NSServices` once at app launch — there's no API for\n * adding services dynamically. Apps that need dynamic services should\n * ship a worker app extension instead.\n */\nimport { hasBridge, onCraftEvent } from './_bridge'\n\nexport interface ServiceMenuInvokedEvent {\n /** Service name matching the registration. */\n name: string\n /** Pasteboard payload the user invoked the service against. */\n payload?: { type: string, value: string }\n}\n\nexport interface ServiceMenuAPI {\n register: (name: string) => Promise<{ ok: boolean, reason?: string }>\n unregister: (name: string) => Promise<void>\n onInvoked: (cb: (event: ServiceMenuInvokedEvent) => void) => () => void\n}\n\nexport const serviceMenu: ServiceMenuAPI = {\n async register(name) {\n if (!name) throw new Error('serviceMenu.register: name is required')\n if (!hasBridge('serviceMenu')) return { ok: false, reason: 'bridge unavailable' }\n return await window.craft!.serviceMenu.register(name)\n },\n async unregister(name) {\n if (!name) throw new Error('serviceMenu.unregister: name is required')\n if (!hasBridge('serviceMenu')) return\n await window.craft!.serviceMenu.unregister(name)\n },\n onInvoked(cb) { return onCraftEvent<ServiceMenuInvokedEvent>('craft:serviceMenu:invoked', cb) },\n}\n",
50
49
  "/**\n * Shell\n *\n * Open URLs/paths in the user's default app, reveal files in Finder/\n * Explorer, and spawn child processes. When running in a Craft native\n * window this uses NSWorkspace / xdg-open / ShellExecute under the hood.\n *\n * `openExternal` has a sensible browser fallback (`window.open`); the\n * filesystem-touching APIs (`openPath`, `showInFinder`, `spawn`) throw\n * if the bridge isn't available — they have no meaningful web fallback.\n */\nimport { hasBridge, onCraftEvent, requireBridge } from './_bridge'\n\nexport interface SpawnOptions {\n /** Working directory for the spawned process. Defaults to cwd. */\n cwd?: string\n /** Environment variable overrides; merged on top of process env. */\n env?: Record<string, string>\n /** Stream stdout/stderr to JS via `craft:shell:<id>` events. */\n streamOutput?: boolean\n}\n\nexport interface Shell {\n /**\n * Open a URL in the user's default browser.\n * Browser fallback uses `window.open(url, '_blank')`.\n */\n openExternal: (url: string) => Promise<void>\n /** Open a file/directory in its default app (Finder, etc). */\n openPath: (path: string) => Promise<void>\n /** Reveal a file in Finder / Explorer. */\n showInFinder: (path: string) => Promise<void>\n /**\n * Spawn a process. Use `kill(id)` to terminate it later. Output\n * streams to `craft:shell:<id>` window events when `streamOutput` is\n * true.\n */\n spawn: (id: string, command: string, args?: string[], opts?: SpawnOptions) => Promise<void>\n /** Kill a previously spawned process by id. */\n kill: (id: string) => Promise<void>\n /** Read an environment variable. Returns undefined if unset. */\n getEnv: (name: string) => Promise<string | undefined>\n /** Set an environment variable for this process and its children. */\n setEnv: (name: string, value: string) => Promise<void>\n /** Subscribe to stdout for a spawned process. */\n onStdout: (cb: (event: ShellOutputEvent) => void) => () => void\n /** Subscribe to stderr for a spawned process. */\n onStderr: (cb: (event: ShellOutputEvent) => void) => () => void\n /** Subscribe to process-exit events. */\n onExit: (cb: (event: ShellExitEvent) => void) => () => void\n}\n\n/** Output chunk from a spawned process. */\nexport interface ShellOutputEvent {\n /** id passed to `spawn()`. */\n id: string\n /** UTF-8 chunk. May or may not align with line boundaries. */\n data: string\n}\n\nexport interface ShellExitEvent {\n id: string\n /** Process exit code (0 = success). null when the process was killed by signal. */\n exitCode: number | null\n /** Termination signal name (e.g. \"SIGTERM\"), if killed. */\n signal?: string\n}\n\n/**\n * Set of currently-active spawn ids. Tracked in JS so we can fail\n * fast on duplicate ids before the call hits native — the native side\n * silently overwrites a previous spawn under the same id, which\n * leaks processes and orphans their event streams.\n *\n * Auto-clean: an exit event from the native side removes the id; the\n * `kill()` wrapper does the same on demand. If the native fires an\n * exit without our wrapper (rare race), the id stays in the set —\n * worst case is a misleading \"already in use\" error on a subsequent\n * spawn, which is recoverable.\n */\nconst activeSpawnIds = new Set<string>()\n\n// Lazy-attach the exit-event listener on first spawn. Attaching at\n// module-load time runs before the test environment's window-event\n// polyfill is ready (very-happy-dom doesn't ship `addEventListener`),\n// which silently dropped the cleanup hook and made id-reuse tests\n// flake. Doing it on demand sidesteps the load-order race.\nlet exitListenerAttached = false\nfunction ensureExitListener(): void {\n if (exitListenerAttached) return\n if (typeof window === 'undefined' || typeof window.addEventListener !== 'function') return\n window.addEventListener('craft:shell:exit', (e) => {\n const detail = (e as CustomEvent).detail as { id?: string } | undefined\n if (detail?.id) activeSpawnIds.delete(detail.id)\n })\n exitListenerAttached = true\n}\n\n// Schemes blocked outright in `openExternal`. `javascript:` is the\n// classic XSS vector; `data:` is also dangerous because attacker-\n// controlled HTML can be loaded by the system handler. `file:` is a\n// less obvious one — opening a local file via the OS handler can\n// execute scripts from disk.\nconst BLOCKED_SCHEMES = new Set(['javascript:', 'data:', 'file:', 'vbscript:'])\n\nexport const shell: Shell = {\n async openExternal(url: string): Promise<void> {\n // Reject obviously dangerous schemes — `javascript:` and `data:`\n // can be used by attacker-controlled URLs to execute code in\n // whatever app the OS resolves them to. `file:` is conservative\n // but matches Electron's default behaviour for the same reason.\n const lc = url.trim().toLowerCase()\n for (const s of BLOCKED_SCHEMES) {\n if (lc.startsWith(s)) {\n throw new Error(`shell.openExternal: ${s} URLs are blocked for safety`)\n }\n }\n if (hasBridge('shell')) {\n await window.craft!.shell.openExternal(url)\n return\n }\n if (typeof window !== 'undefined' && typeof window.open === 'function') {\n window.open(url, '_blank', 'noopener,noreferrer')\n }\n },\n\n // These have no sensible web fallback, so they throw via requireBridge.\n // Wrap each in async so the throw arrives as a rejected promise.\n async openPath(path) { await requireBridge('shell').openPath(path) },\n async showInFinder(path) { await requireBridge('shell').showInFinder(path) },\n async spawn(id, command, args = [], opts = {}) {\n ensureExitListener()\n if (!id || typeof id !== 'string') throw new Error('shell.spawn: id must be a non-empty string')\n if (!command || typeof command !== 'string') throw new Error('shell.spawn: command must be a non-empty string')\n if (!Array.isArray(args)) throw new Error('shell.spawn: args must be an array')\n for (const a of args) {\n if (typeof a !== 'string') throw new Error('shell.spawn: args entries must be strings')\n }\n // Track active ids in JS to fail fast on duplicates. Earlier the\n // native side silently overwrote a previous spawn under the same\n // id, leaking the original process and orphaning its event stream.\n if (activeSpawnIds.has(id)) {\n throw new Error(`shell.spawn: id \"${id}\" is already in use — call kill(id) first or pick a different id`)\n }\n activeSpawnIds.add(id)\n try {\n await requireBridge('shell').spawn(id, command, args, opts)\n }\n catch (e) {\n activeSpawnIds.delete(id)\n throw e\n }\n },\n async kill(id) {\n await requireBridge('shell').kill(id)\n activeSpawnIds.delete(id)\n },\n\n async getEnv(name: string): Promise<string | undefined> {\n if (hasBridge('shell')) {\n const v = await window.craft!.shell.getEnv(name)\n return v == null ? undefined : String(v)\n }\n return undefined\n },\n\n async setEnv(name, value) { await requireBridge('shell').setEnv(name, value) },\n onStdout(cb) { return onCraftEvent<ShellOutputEvent>('craft:shell:stdout', cb) },\n onStderr(cb) { return onCraftEvent<ShellOutputEvent>('craft:shell:stderr', cb) },\n onExit(cb) { return onCraftEvent<ShellExitEvent>('craft:shell:exit', cb) },\n}\n",
@@ -59,7 +58,7 @@
59
58
  "/**\n * Vision framework — OCR, face detection, barcode scanning.\n *\n * Each function reads an image from disk and returns an array of\n * results. Results are coordinate-tagged where geometry matters\n * (faces, barcodes); text recognition returns a plain string per\n * detected block plus the recognizer's confidence score.\n *\n * No web fallback — Vision is a macOS / iOS framework. Browsers\n * have OCR-via-Tesseract-WASM but the shape is different and apps\n * that want both should layer that themselves.\n */\nimport { hasBridge } from './_bridge'\n\nexport interface VisionTextResult {\n text: string\n /** 0..1 confidence score from VNRecognizedText.confidence. */\n confidence?: number\n}\n\nexport interface VisionFaceResult {\n /** Face bounding box in image-pixel coordinates. */\n bounds: { x: number, y: number, width: number, height: number }\n}\n\nexport interface VisionBarcodeResult {\n /** Decoded payload (URL, text, contact card, etc). */\n payload: string\n /** Symbology — `qr`, `ean8`, `ean13`, `code128`, etc. */\n type?: string\n}\n\nexport interface VisionAPI {\n /** OCR an image at a path. Returns recognized text blocks. */\n recognizeText: (path: string) => Promise<VisionTextResult[]>\n /** Find faces in an image. */\n detectFaces: (path: string) => Promise<VisionFaceResult[]>\n /** Decode barcodes / QR codes. */\n detectBarcodes: (path: string) => Promise<VisionBarcodeResult[]>\n}\n\nexport const vision: VisionAPI = {\n async recognizeText(path) {\n if (!path) throw new Error('vision.recognizeText: path is required')\n if (!hasBridge('vision')) return []\n return await window.craft!.vision.recognizeText(path)\n },\n async detectFaces(path) {\n if (!path) throw new Error('vision.detectFaces: path is required')\n if (!hasBridge('vision')) return []\n return await window.craft!.vision.detectFaces(path)\n },\n async detectBarcodes(path) {\n if (!path) throw new Error('vision.detectBarcodes: path is required')\n if (!hasBridge('vision')) return []\n return await window.craft!.vision.detectBarcodes(path)\n },\n}\n",
60
59
  "/**\n * Window Lifecycle Events\n *\n * Subscribe to focus, blur, resize, move, minimize, restore, and close\n * events on the main Craft window. Backed by an `NSWindowDelegate` on\n * the macOS side; in browser builds these fall back to the equivalent\n * `window.addEventListener('focus' | 'blur' | 'resize' | 'beforeunload')`.\n *\n * **Note on close:** the native `onClose` event fires *after* AppKit\n * has committed to closing — you can't `event.preventDefault()` from\n * here. For a real \"are you sure you want to close?\" gate, attach\n * `beforeunload` in JS, which fires before AppKit's close path runs.\n */\nimport { hasBridge, onCraftEvent } from './_bridge'\n\nexport interface WindowSize {\n /**\n * Stable window identifier — opaque string. In multi-window apps, use\n * this to correlate events back to the right window. Single-window\n * apps can ignore it.\n */\n id?: string\n width: number\n height: number\n}\n\nexport interface WindowPosition {\n id?: string\n x: number\n y: number\n}\n\nexport interface WindowEvents {\n /** Window became key (received focus). */\n onFocus: (cb: () => void) => () => void\n /** Window lost focus / resigned key state. */\n onBlur: (cb: () => void) => () => void\n /** Window was resized. Detail contains the new size. */\n onResize: (cb: (size: WindowSize) => void) => () => void\n /** Window was moved. Detail contains the new origin. */\n onMove: (cb: (pos: WindowPosition) => void) => () => void\n /** Window is closing (fires after AppKit commits — not interceptable). */\n onClose: (cb: () => void) => () => void\n /** Window was minimized to the dock. */\n onMinimize: (cb: () => void) => () => void\n /** Window was restored from minimize. */\n onRestore: (cb: () => void) => () => void\n}\n\nexport const windowEvents: WindowEvents = {\n onFocus(cb) {\n if (hasBridge('window')) return onCraftEvent('craft:window:focus', () => cb())\n return webEvent('focus', cb)\n },\n onBlur(cb) {\n if (hasBridge('window')) return onCraftEvent('craft:window:blur', () => cb())\n return webEvent('blur', cb)\n },\n onResize(cb) {\n if (hasBridge('window')) return onCraftEvent<WindowSize>('craft:window:resize', cb)\n if (typeof window === 'undefined') return () => {}\n const h = () => cb({ width: window.innerWidth, height: window.innerHeight })\n window.addEventListener('resize', h)\n return () => window.removeEventListener('resize', h)\n },\n onMove(cb) {\n if (hasBridge('window')) return onCraftEvent<WindowPosition>('craft:window:move', cb)\n // Browsers don't expose window-position changes, so this is no-op\n // outside Craft. Returning the same shape keeps callers branchless.\n return () => {}\n },\n onClose(cb) {\n if (hasBridge('window')) return onCraftEvent('craft:window:close', () => cb())\n return webEvent('beforeunload', cb)\n },\n onMinimize(cb) {\n if (hasBridge('window')) return onCraftEvent('craft:window:minimize', () => cb())\n // Closest browser equivalent is visibilitychange → 'hidden'.\n if (typeof document === 'undefined') return () => {}\n const h = () => { if (document.visibilityState === 'hidden') cb() }\n document.addEventListener('visibilitychange', h)\n return () => document.removeEventListener('visibilitychange', h)\n },\n onRestore(cb) {\n if (hasBridge('window')) return onCraftEvent('craft:window:restore', () => cb())\n if (typeof document === 'undefined') return () => {}\n const h = () => { if (document.visibilityState === 'visible') cb() }\n document.addEventListener('visibilitychange', h)\n return () => document.removeEventListener('visibilitychange', h)\n },\n}\n\nfunction webEvent(name: string, cb: () => void): () => void {\n if (typeof window === 'undefined') return () => {}\n const h = () => cb()\n window.addEventListener(name, h)\n return () => window.removeEventListener(name, h)\n}\n"
61
60
  ],
62
- "mappings": "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",
63
- "debugId": "A5FFF3106B7637D064756E2164756E21",
61
+ "mappings": "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",
62
+ "debugId": "9CC4EBDE203C9FEF64756E2164756E21",
64
63
  "names": []
65
64
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@stacksjs/desktop",
3
3
  "type": "module",
4
- "version": "0.2.125",
4
+ "version": "0.2.126",
5
5
  "description": "Native desktop application framework for stx (powered by Craft)",
6
6
  "author": "Chris Breuer <chris@stacksjs.org>",
7
7
  "license": "MIT",