Compare commits

...

7 Commits

Author SHA1 Message Date
semantic-release-bot
c213204ff4 chore(release): 3.21.7 [CI SKIP] 2023-06-26 16:30:09 +00:00
Travis Lane
9128c1e7da fix: add patch indicator to prevent crashes (#88) 2023-06-26 12:29:21 -04:00
semantic-release-bot
5ffa14bec8 chore(release): 3.21.6 [CI SKIP] 2023-06-22 15:27:59 +00:00
Marco Rodolfi
ee51dc5fc0 fix: reposition parameter for file picker V2 2023-06-22 17:27:14 +02:00
semantic-release-bot
b38ec17d8f chore(release): 3.21.5 [CI SKIP] 2023-06-22 10:16:29 +00:00
Marco Rodolfi
8b54ee990e fix: missing parameter 2023-06-22 12:15:08 +02:00
Marco Rodolfi
7e01781d40 chore: better order for file picker v2 call 2023-06-22 11:59:32 +02:00
4 changed files with 41 additions and 6 deletions

View File

@@ -1,3 +1,24 @@
## [3.21.7](https://github.com/SteamDeckHomebrew/decky-frontend-lib/compare/v3.21.6...v3.21.7) (2023-06-26)
### Bug Fixes
* add patch indicator to prevent crashes ([#88](https://github.com/SteamDeckHomebrew/decky-frontend-lib/issues/88)) ([9128c1e](https://github.com/SteamDeckHomebrew/decky-frontend-lib/commit/9128c1e7dadb98a8926d3dba9907a01cc78d90cf))
## [3.21.6](https://github.com/SteamDeckHomebrew/decky-frontend-lib/compare/v3.21.5...v3.21.6) (2023-06-22)
### Bug Fixes
* reposition parameter for file picker V2 ([ee51dc5](https://github.com/SteamDeckHomebrew/decky-frontend-lib/commit/ee51dc5fc0dd5bdc2b0b9e10aa27607fbe51f491))
## [3.21.5](https://github.com/SteamDeckHomebrew/decky-frontend-lib/compare/v3.21.4...v3.21.5) (2023-06-22)
### Bug Fixes
* missing parameter ([8b54ee9](https://github.com/SteamDeckHomebrew/decky-frontend-lib/commit/8b54ee990ee4d9b51174737979c35ab7ad92ed7a))
## [3.21.4](https://github.com/SteamDeckHomebrew/decky-frontend-lib/compare/v3.21.3...v3.21.4) (2023-06-22)

View File

@@ -1,6 +1,6 @@
{
"name": "decky-frontend-lib",
"version": "3.21.4",
"version": "3.21.7",
"description": "A library for building decky plugins",
"main": "dist/index.js",
"types": "dist/index.d.ts",

View File

@@ -57,15 +57,21 @@ export interface FilePickerRes {
realpath: string;
}
export enum FileSelectionType {
FILE,
FOLDER,
}
export interface ServerAPI {
routerHook: RouterHook;
toaster: Toaster;
openFilePicker(startPath: string, includeFiles?: boolean, regex?: RegExp): Promise<FilePickerRes>;
openFilePickerV2(
select: FileSelectionType,
startPath: string,
includeFiles?: boolean,
filter?: RegExp | ((file: File) => boolean),
includeFolders?: boolean,
filter?: RegExp | ((file: File) => boolean),
extensions?: string[],
showHiddenFiles?: boolean,
allowAllFiles?: boolean,

View File

@@ -46,13 +46,21 @@ export function fakeRenderComponent(fun: Function, customHooks: any = {}): any {
}
export function wrapReactType(node: any, prop: any = 'type') {
return (node[prop] = { ...node[prop] });
if (node[prop]?.__DECKY_WRAPPED) {
return node[prop];
} else {
return (node[prop] = { ...node[prop], __DECKY_WRAPPED: true });
}
}
export function wrapReactClass(node: any, prop: any = 'type') {
const cls = node[prop];
const wrappedCls = class extends cls {};
return (node[prop] = wrappedCls);
if (node[prop]?.__DECKY_WRAPPED) {
return node[prop];
} else {
const cls = node[prop];
const wrappedCls = class extends cls { static __DECKY_WRAPPED = true; };
return (node[prop] = wrappedCls);
}
}
export function getReactInstance(o: HTMLElement | Element | Node) {