craft-native 0.0.299 → 0.0.304

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/cli.js CHANGED
@@ -2945,7 +2945,7 @@ function pinCraftNativeDependency(packagePath, craftVersion) {
2945
2945
  `);
2946
2946
  }
2947
2947
  // package.json
2948
- var version = "0.0.299";
2948
+ var version = "0.0.304";
2949
2949
 
2950
2950
  // bin/cli.ts
2951
2951
  var spawnedFrom = process6.env[CRAFT_CLI_SPAWN_MARKER];
package/dist/index.cjs CHANGED
@@ -374,7 +374,7 @@ function craftBinaryNotFoundMessage(triedPath) {
374
374
  `);
375
375
  }
376
376
  // package.json
377
- var version = "0.0.299";
377
+ var version = "0.0.304";
378
378
 
379
379
  // src/sdk-version.ts
380
380
  var SDK_VERSION = version;
package/dist/index.d.cts CHANGED
@@ -85,4 +85,4 @@ export declare function show(html: string, options?: WindowOptions): Promise<voi
85
85
  * Quick helper to load a URL
86
86
  */
87
87
  export declare function loadURL(url: string, options?: WindowOptions): Promise<void>;
88
- export type { WindowOptions, CraftSidebarAPI, CraftNativeUIAPI, CraftContextMenuItem, CraftContextMenuResult, AppConfig, CraftTrayAPI, CraftWindowAPI, CraftAppAPI, CraftBridgeAPI, CraftTimersAPI, Permission, HapticType, CraftHapticsAPI, CameraOptions, PhotoPickerOptions, CraftMobileAPI, CraftFileSystemAPI, CraftFsWatchEvent, CraftFsWatchHandle, CraftDatabaseAPI, CraftHttpAPI, CraftCryptoAPI, CraftCapabilities, CapabilityNamespace, CapabilityNamespaceStatus, CapabilityAction, CraftPreferencesAPI, CraftPreferencesInfo, CraftSettingsAPI, PreferenceValue, CraftEventType, CraftEventMap, CraftEventHandler, CraftEventEmitter, IOSConfig, AndroidConfig, MacOSConfig, WindowsConfig, LinuxConfig, CraftAppConfig, } from './types.js';
88
+ export type { WindowOptions, CraftSidebarAPI, CraftNativeUIAPI, CraftContextMenuItem, CraftContextMenuResult, AppConfig, CraftTrayAPI, CraftWindowAPI, CraftAppAPI, CraftBridgeAPI, MenubarState, CraftTimersAPI, Permission, HapticType, CraftHapticsAPI, CameraOptions, PhotoPickerOptions, CraftMobileAPI, CraftFileSystemAPI, CraftFsWatchEvent, CraftFsWatchHandle, CraftDatabaseAPI, CraftHttpAPI, CraftCryptoAPI, CraftCapabilities, CapabilityNamespace, CapabilityNamespaceStatus, CapabilityAction, CraftPreferencesAPI, CraftPreferencesInfo, CraftSettingsAPI, PreferenceValue, CraftEventType, CraftEventMap, CraftEventHandler, CraftEventEmitter, IOSConfig, AndroidConfig, MacOSConfig, WindowsConfig, LinuxConfig, CraftAppConfig, } from './types.js';
package/dist/index.d.ts CHANGED
@@ -85,4 +85,4 @@ export declare function show(html: string, options?: WindowOptions): Promise<voi
85
85
  * Quick helper to load a URL
86
86
  */
87
87
  export declare function loadURL(url: string, options?: WindowOptions): Promise<void>;
88
- export type { WindowOptions, CraftSidebarAPI, CraftNativeUIAPI, CraftContextMenuItem, CraftContextMenuResult, AppConfig, CraftTrayAPI, CraftWindowAPI, CraftAppAPI, CraftBridgeAPI, CraftTimersAPI, Permission, HapticType, CraftHapticsAPI, CameraOptions, PhotoPickerOptions, CraftMobileAPI, CraftFileSystemAPI, CraftFsWatchEvent, CraftFsWatchHandle, CraftDatabaseAPI, CraftHttpAPI, CraftCryptoAPI, CraftCapabilities, CapabilityNamespace, CapabilityNamespaceStatus, CapabilityAction, CraftPreferencesAPI, CraftPreferencesInfo, CraftSettingsAPI, PreferenceValue, CraftEventType, CraftEventMap, CraftEventHandler, CraftEventEmitter, IOSConfig, AndroidConfig, MacOSConfig, WindowsConfig, LinuxConfig, CraftAppConfig, } from './types.js';
88
+ export type { WindowOptions, CraftSidebarAPI, CraftNativeUIAPI, CraftContextMenuItem, CraftContextMenuResult, AppConfig, CraftTrayAPI, CraftWindowAPI, CraftAppAPI, CraftBridgeAPI, MenubarState, CraftTimersAPI, Permission, HapticType, CraftHapticsAPI, CameraOptions, PhotoPickerOptions, CraftMobileAPI, CraftFileSystemAPI, CraftFsWatchEvent, CraftFsWatchHandle, CraftDatabaseAPI, CraftHttpAPI, CraftCryptoAPI, CraftCapabilities, CapabilityNamespace, CapabilityNamespaceStatus, CapabilityAction, CraftPreferencesAPI, CraftPreferencesInfo, CraftSettingsAPI, PreferenceValue, CraftEventType, CraftEventMap, CraftEventHandler, CraftEventEmitter, IOSConfig, AndroidConfig, MacOSConfig, WindowsConfig, LinuxConfig, CraftAppConfig, } from './types.js';
package/dist/index.js CHANGED
@@ -117,7 +117,7 @@ function craftBinaryNotFoundMessage(triedPath) {
117
117
  `);
118
118
  }
119
119
  // package.json
120
- var version = "0.0.299";
120
+ var version = "0.0.304";
121
121
 
122
122
  // src/sdk-version.ts
123
123
  var SDK_VERSION = version;
@@ -8077,15 +8077,17 @@ final class CraftNativeScreenController: UIViewController, UIScrollViewDelegate,
8077
8077
  break
8078
8078
  }
8079
8079
  let field = result as! UITextField
8080
- field.placeholder = props["placeholder"] as? String
8081
- if let placeholder = field.placeholder,
8080
+ if let placeholder = props["placeholder"] as? String,
8082
8081
  let placeholderColor = color(props["placeholderTextColor"]) {
8083
8082
  field.attributedPlaceholder = NSAttributedString(
8084
8083
  string: placeholder,
8085
8084
  attributes: [.foregroundColor: placeholderColor]
8086
8085
  )
8087
8086
  } else {
8087
+ // UIKit shares these properties: resetting the attributed
8088
+ // value after the plain one also erases the visible hint.
8088
8089
  field.attributedPlaceholder = nil
8090
+ field.placeholder = props["placeholder"] as? String
8089
8091
  }
8090
8092
  field.tintColor = color(props["selectionColor"])
8091
8093
  let fieldId = ObjectIdentifier(field)
package/dist/types.d.ts CHANGED
@@ -1187,20 +1187,20 @@ export interface CraftBridgeAPI {
1187
1187
  tray?: CraftTrayAPI;
1188
1188
  /** Native status-item arrangement and collapse controls (macOS). */
1189
1189
  menubar?: {
1190
- init(): Promise<void>;
1190
+ /** Native visibility requires macOS 27, a direct build and Accessibility.
1191
+ * No automatic fallback to width-based hiding is performed. */
1192
+ init(options?: {
1193
+ backend?: 'legacy' | 'nativeVisibility';
1194
+ }): Promise<void>;
1195
+ destroy(): Promise<void>;
1196
+ requestPermission(): Promise<void>;
1191
1197
  collapse(): Promise<void>;
1192
1198
  expand(): Promise<void>;
1193
1199
  toggle(): Promise<void>;
1194
- getState(): Promise<{
1195
- collapsed: boolean;
1196
- initialized: boolean;
1197
- separatorHidden: boolean;
1198
- }>;
1200
+ getState(): Promise<MenubarState>;
1199
1201
  setAutoCollapse(seconds: number): Promise<void>;
1200
1202
  setSeparatorHidden(hidden: boolean): Promise<void>;
1201
- onStateChange(callback: (state: {
1202
- collapsed: boolean;
1203
- }) => void): () => void;
1203
+ onStateChange(callback: (state: MenubarState) => void): () => void;
1204
1204
  };
1205
1205
  /**
1206
1206
  * Window control (desktop)
@@ -2373,3 +2373,16 @@ export interface CraftTimersAPI {
2373
2373
  signal?: AbortSignal;
2374
2374
  }): Promise<void>;
2375
2375
  }
2376
+ /** Settled native menu-bar state; private visibility capability is explicit. */
2377
+ export interface MenubarState {
2378
+ collapsed: boolean;
2379
+ initialized: boolean;
2380
+ separatorHidden: boolean;
2381
+ backend?: 'legacy' | 'nativeVisibility';
2382
+ available?: boolean;
2383
+ authorized?: boolean;
2384
+ busy?: boolean;
2385
+ hiddenAppCount?: number;
2386
+ markerWidth?: number;
2387
+ error?: 'unavailable' | 'permissionRequired' | 'layoutUnavailable' | 'activationFailed' | 'activationTimeout' | null;
2388
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "craft-native",
3
- "version": "0.0.299",
3
+ "version": "0.0.304",
4
4
  "type": "module",
5
5
  "description": "Build desktop apps with web languages - TypeScript SDK for Craft",
6
6
  "author": "Chris Breuer <chris@stacksjs.org>",