@oh-my-pi/pi-natives 18.11.1 → 18.11.3

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.
@@ -15,6 +15,8 @@ const REQUIRED_METHODS = [
15
15
  "releaseControl",
16
16
  "controlState",
17
17
  "bringToCurrentSpace",
18
+ "holdDisplayUntilReleased",
19
+ "releaseDisplayAwake",
18
20
  ];
19
21
 
20
22
  /** Require the current desktop ABI; partial legacy emulation cannot preserve input ownership. */
package/native/index.d.ts CHANGED
@@ -43,6 +43,19 @@ export declare class DesktopSession {
43
43
  * behind the worker, so it answers at once even while a request is stuck.
44
44
  */
45
45
  get screenState(): DesktopScreenState
46
+ /**
47
+ * Keeps the display awake from the next activity request until
48
+ * `releaseDisplayAwake()`, however long the session sits idle in between,
49
+ * instead of for the grace period after the last request. An agent calls
50
+ * this when it acts inside a turn.
51
+ */
52
+ holdDisplayUntilReleased(): void
53
+ /**
54
+ * Lets the display sleep now if a turn holds it, without waiting behind
55
+ * queued requests, and returns later activity to the grace period. Activity
56
+ * outside a turn keeps its grace. An agent calls this when its turn ends.
57
+ */
58
+ releaseDisplayAwake(): void
46
59
  listDisplays(): Promise<Array<DesktopDisplay>>
47
60
  listWindows(): Promise<Array<DesktopWindow>>
48
61
  listApplications(options?: ApplicationQuery | undefined | null): Promise<Array<Application>>
@@ -2724,6 +2737,9 @@ export interface NodeSpan {
2724
2737
  /** Decode notebook JSON into the editable cell-marker text. */
2725
2738
  export declare function notebookToEditableText(json: string, displayPath: string): string
2726
2739
 
2740
+ /** Check syntax through the shared parse cache without constructing a summary. */
2741
+ export declare function parseCodeStatus(options: ParseStatusOptions): ParseStatus
2742
+
2727
2743
  /** Parsed Kitty keyboard protocol sequence result for a Kitty input sequence. */
2728
2744
  export interface ParsedKittyResult {
2729
2745
  /** Primary codepoint associated with the key. */
@@ -2752,6 +2768,23 @@ export declare function parseKey(data: string, kittyProtocolActive: boolean): st
2752
2768
  */
2753
2769
  export declare function parseKittySequence(data: string): ParsedKittyResult | null
2754
2770
 
2771
+ export interface ParseStatus {
2772
+ /** Canonical language name only when parsing succeeded. */
2773
+ language?: string
2774
+ /** True when non-empty source parses without syntax errors. */
2775
+ parsed: boolean
2776
+ }
2777
+
2778
+ /** Options for checking source syntax without generating a summary. */
2779
+ export interface ParseStatusOptions {
2780
+ /** Source code to parse; empty input is not parsed. */
2781
+ code: string
2782
+ /** Language alias; a non-blank value overrides path-based detection. */
2783
+ lang?: string
2784
+ /** File path used to infer language when `lang` is omitted or blank. */
2785
+ path?: string
2786
+ }
2787
+
2755
2788
  /** One hunk of a unified diff, matching jsdiff `structuredPatch` hunks. */
2756
2789
  export interface PatchHunk {
2757
2790
  /** 1-based first line of the hunk in the old text. */
@@ -3865,8 +3898,8 @@ export declare function visibleWidth(text: string, tabWidth: number): number
3865
3898
  * [`enclosing_block_boundaries`], [`block_range_at`] and [`node_chain_at`]
3866
3899
  * are synchronous and parse on the JS thread when their source is not
3867
3900
  * cached; awaiting this first makes that parse a cache hit. Resolves without
3868
- * parsing when the language is unrecognized or the source is too large for
3869
- * the cache to keep.
3901
+ * parsing when the language is unrecognized or the source is over 2 MiB,
3902
+ * where a typical tree would not fit the cache's memory budget.
3870
3903
  */
3871
3904
  export declare function warmBlockParse(options: BlockParseOptions): Promise<undefined>
3872
3905
 
package/native/index.js CHANGED
@@ -116,6 +116,7 @@ export const matchesLegacySequence = nativeBindings.matchesLegacySequence ?? mis
116
116
  export const mmrRerankIndices = nativeBindings.mmrRerankIndices ?? missingNativeExport("mmrRerankIndices");
117
117
  export const nodeChainAt = nativeBindings.nodeChainAt ?? missingNativeExport("nodeChainAt");
118
118
  export const notebookToEditableText = nativeBindings.notebookToEditableText ?? missingNativeExport("notebookToEditableText");
119
+ export const parseCodeStatus = nativeBindings.parseCodeStatus ?? missingNativeExport("parseCodeStatus");
119
120
  export const parseKey = nativeBindings.parseKey ?? missingNativeExport("parseKey");
120
121
  export const parseKittySequence = nativeBindings.parseKittySequence ?? missingNativeExport("parseKittySequence");
121
122
  export const pdfToMarkdown = nativeBindings.pdfToMarkdown ?? missingNativeExport("pdfToMarkdown");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oh-my-pi/pi-natives",
3
- "version": "18.11.1",
3
+ "version": "18.11.3",
4
4
  "description": "Native Rust bindings for PDF conversion, audio, WebRTC, grep, clipboard, image processing, syntax highlighting, PTY, and shell operations via N-API",
5
5
  "type": "module",
6
6
  "homepage": "https://omp.sh",
@@ -113,11 +113,11 @@
113
113
  }
114
114
  },
115
115
  "optionalDependencies": {
116
- "@oh-my-pi/pi-natives-linux-x64": "18.11.1",
117
- "@oh-my-pi/pi-natives-linux-arm64": "18.11.1",
118
- "@oh-my-pi/pi-natives-darwin-x64": "18.11.1",
119
- "@oh-my-pi/pi-natives-darwin-arm64": "18.11.1",
120
- "@oh-my-pi/pi-natives-win32-x64": "18.11.1",
121
- "@oh-my-pi/pi-natives-win32-arm64": "18.11.1"
116
+ "@oh-my-pi/pi-natives-linux-x64": "18.11.3",
117
+ "@oh-my-pi/pi-natives-linux-arm64": "18.11.3",
118
+ "@oh-my-pi/pi-natives-darwin-x64": "18.11.3",
119
+ "@oh-my-pi/pi-natives-darwin-arm64": "18.11.3",
120
+ "@oh-my-pi/pi-natives-win32-x64": "18.11.3",
121
+ "@oh-my-pi/pi-natives-win32-arm64": "18.11.3"
122
122
  }
123
123
  }