BaseAPI
baseAPI
The BaseAPI
class provides asynchronous methods to interact with the Pyloid backend via window.__PYLOID__
. All methods automatically wait for Pyloid initialization before executing.baseAPI
is an singleton instance of the BaseAPI
class.
Methods
getData
Description: Retrieves generic data passed from the Pyloid backend during initialization.
Returns:
Promise<any>
- A promise that resolves with the data.Example:
baseAPI.getData().then(data => console.log(data));
getWindowId
Description: Gets the unique identifier for the current window.
Returns:
Promise<string>
- A promise that resolves with the window ID string.Example:
baseAPI.getWindowId().then(id => console.log(`Window ID: ${id}`));
getWindowProperties
Description: Retrieves properties associated with the current window.
Returns:
Promise<WindowProperties>
- A promise that resolves with an object containing window properties.Example:
baseAPI.getWindowProperties().then(props => console.log(props));
close
Description: Closes the current window.
Returns:
Promise<void>
- A promise that resolves when the close operation is initiated.Example:
baseAPI.close().then(() => console.log('Window closed.'));
hide
Description: Hides the current window.
Returns:
Promise<void>
- A promise that resolves when the hide operation is initiated.Example:
baseAPI.hide().then(() => console.log('Window hidden.'));
show
Description: Shows the current window if it is hidden.
Returns:
Promise<void>
- A promise that resolves when the show operation is initiated.Example:
baseAPI.show().then(() => console.log('Window shown.'));
focus
Description: Brings the current window to the foreground and gives it focus.
Returns:
Promise<void>
- A promise that resolves when the focus operation is initiated.Example:
baseAPI.focus().then(() => console.log('Window focused.'));
showAndFocus
Description: Shows the window (if hidden) and brings it to the foreground with focus.
Returns:
Promise<void>
- A promise that resolves when the operation is initiated.Example:
baseAPI.showAndFocus().then(() => console.log('Window shown and focused.'));
fullscreen
Description: Makes the current window fullscreen.
Returns:
Promise<void>
- A promise that resolves when the fullscreen operation is initiated.Example:
baseAPI.fullscreen().then(() => console.log('Window is now fullscreen.'));
toggleFullscreen
Description: Toggles the fullscreen state of the current window.
Returns:
Promise<void>
- A promise that resolves when the toggle operation is initiated.Example:
baseAPI.toggleFullscreen().then(() => console.log('Fullscreen toggled.'));
minimize
Description: Minimizes the current window.
Returns:
Promise<void>
- A promise that resolves when the minimize operation is initiated.Example:
baseAPI.minimize().then(() => console.log('Window minimized.'));
maximize
Description: Maximizes the current window.
Returns:
Promise<void>
- A promise that resolves when the maximize operation is initiated.Example:
baseAPI.maximize().then(() => console.log('Window maximized.'));
unmaximize
Description: Restores the window from a maximized state.
Returns:
Promise<void>
- A promise that resolves when the unmaximize operation is initiated.Example:
baseAPI.unmaximize().then(() => console.log('Window restored from maximized state.'));
toggleMaximize
Description: Toggles the maximized state of the current window.
Returns:
Promise<void>
- A promise that resolves when the toggle operation is initiated.Example:
baseAPI.toggleMaximize().then(() => console.log('Maximize toggled.'));
isFullscreen
Description: Checks if the current window is in fullscreen mode.
Returns:
Promise<boolean>
- A promise that resolves with true if fullscreen, false otherwise.Example:
baseAPI.isFullscreen().then(isFullscreen => console.log(`Is fullscreen: ${isFullscreen}`));
isMaximized
Description: Checks if the current window is maximized.
Returns:
Promise<boolean>
- A promise that resolves with true if maximized, false otherwise.Example:
baseAPI.isMaximized().then(isMaximized => console.log(`Is maximized: ${isMaximized}`));
setTitle
Description: Sets the title of the current window.
Parameters:
title: string
- The new title for the window.Returns:
Promise<void>
- A promise that resolves when the title is set.Example:
baseAPI.setTitle('New Title').then(() => console.log('Title set.'));
setSize
Description: Sets the size (width and height) of the current window.
Parameters:
width: number
- The desired width in pixels.height: number
- The desired height in pixels.
Returns:
Promise<void>
- A promise that resolves when the size is set.Example:
baseAPI.setSize(1024, 768).then(() => console.log('Window size set.'));
setPosition
Description: Sets the position (x and y coordinates) of the current window.
Parameters:
x: number
- The desired x-coordinate.y: number
- The desired y-coordinate.
Returns:
Promise<void>
- A promise that resolves when the position is set.Example:
baseAPI.setPosition(100, 100).then(() => console.log('Window position set.'));
setFrame
Description: Sets whether the window should have a standard OS frame.
Parameters:
frame: boolean
- True to show the frame, false to hide it.Returns:
Promise<void>
- A promise that resolves when the frame state is set.Example:
baseAPI.setFrame(true).then(() => console.log('Frame set.'));
getFrame
Description: Gets the current frame state of the window.
Returns:
Promise<boolean>
- A promise that resolves with true if the frame is visible, false otherwise.Example:
baseAPI.getFrame().then(frame => console.log(`Frame visible: ${frame}`));
getTitle
Description: Gets the current title of the window.
Returns:
Promise<string>
- A promise that resolves with the window title string.Example:
baseAPI.getTitle().then(title => console.log(`Window title: ${title}`));
getSize
Description: Gets the current size (width and height) of the window.
Returns:
Promise<Size>
- A promise that resolves with an object containing the width and height.Example:
baseAPI.getSize().then(size => console.log(`Window size: ${size.width}x${size.height}`));
getPosition
Description: Gets the current position (x and y coordinates) of the window.
Returns:
Promise<Position>
- A promise that resolves with an object containing the x and y coordinates.Example:
baseAPI.getPosition().then(position => console.log(`Window position: (${position.x}, ${position.y})`));
setClipboardText
Description: Sets the system clipboard text content.
Parameters:
text: string
- The text to write to the clipboard.Returns:
Promise<void>
- A promise that resolves when the clipboard text is set.Example:
baseAPI.setClipboardText('Hello, World!').then(() => console.log('Clipboard text set.'));
getClipboardText
Description: Gets the current text content from the system clipboard.
Returns:
Promise<string>
- A promise that resolves with the clipboard text.Example:
baseAPI.getClipboardText().then(text => console.log(`Clipboard text: ${text}`));
setClipboardImage
Description: Sets the system clipboard image content from a file path.
Parameters:
imagePath: string
- The path to the image file.format: string
- The format of the image (e.g., 'png', 'jpeg').
Returns:
Promise<void>
- A promise that resolves when the clipboard image is set.Example:
baseAPI.setClipboardImage('/path/to/image.png', 'png').then(() => console.log('Clipboard image set.'));
getClipboardImage
Description: Gets the current image content from the system clipboard.
Returns:
Promise<string>
- A promise that resolves with the clipboard image data.Example:
baseAPI.getClipboardImage().then(imageData => console.log(`Clipboard image data: ${imageData}`));
quit
Description: Quits the entire application.
Returns:
Promise<void>
- A promise that resolves when the quit operation is initiated.Example:
baseAPI.quit().then(() => console.log('Application quit.'));
getPlatform
Description: Gets the underlying operating system platform.
Returns:
Promise<Platform>
- A promise that resolves with the platform name ('windows', 'linux', or 'macos').Example:
baseAPI.getPlatform().then(platform => console.log(`Platform: ${platform}`));
isProduction
Description: Checks if the application is running in production mode.
Returns:
Promise<boolean>
- A promise that resolves with true if in production, false otherwise.Example:
baseAPI.isProduction().then(isProd => console.log(`Is production: ${isProd}`));
getProductionPath
Description: Resolves a relative path to an absolute path within the application's production build directory.
Parameters:
path: string
- The relative path within the production build.Returns:
Promise<string>
- A promise that resolves with the absolute path.Example:
baseAPI.getProductionPath('assets/image.png').then(absPath => console.log(`Absolute path: ${absPath}`));
getRpcUrl
Description: Retrieves the RPC URL.
Returns:
Promise<string>
- A promise that resolves with the RPC URL.Example:
baseAPI.getRpcUrl().then(url => console.log(`RPC URL: ${url}`));
Usage Example
import { baseAPI } from 'pyloid-js';
// Get the title of the window and print it to the console
baseAPI.getTitle().then(title => console.log(title));
// Set the size of the window to 1024x768
baseAPI.setSize(1024, 768).then(() => console.log('Window size set.'));
Last updated
Was this helpful?