fix(os): use an internal object instead of ` window.__TAURI__`, closes #719 (#721)

fix(os): use an internal object instead of ` window.__TAURI__`, closes  #719
pull/722/head
Amr Bashir 2 years ago committed by GitHub
parent 251852ccbc
commit fc62ead565
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -0,0 +1,7 @@
---
"os": "patch"
"os-js": "patch"
---
Fix `Uncaught TypeError: Cannot read properties of undefined (reading 'os')`

@ -8,6 +8,7 @@ rust-version = { workspace = true }
license = "Apache-2.0 OR MIT" license = "Apache-2.0 OR MIT"
[lib] [lib]
name = "api_lib"
crate-type = [ "staticlib", "cdylib", "rlib" ] crate-type = [ "staticlib", "cdylib", "rlib" ]
[build-dependencies] [build-dependencies]

@ -2,11 +2,6 @@
// SPDX-License-Identifier: Apache-2.0 // SPDX-License-Identifier: Apache-2.0
// SPDX-License-Identifier: MIT // SPDX-License-Identifier: MIT
#![cfg_attr(
all(not(debug_assertions), target_os = "windows"),
windows_subsystem = "windows"
)]
mod cmd; mod cmd;
#[cfg(desktop)] #[cfg(desktop)]
mod tray; mod tray;

@ -6,6 +6,5 @@
#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")] #![cfg_attr(not(debug_assertions), windows_subsystem = "windows")]
fn main() { fn main() {
#[cfg(desktop)] api_lib::run();
api::run();
} }

@ -13,8 +13,8 @@ import { invoke } from "@tauri-apps/api/primitives";
/** @ignore */ /** @ignore */
declare global { declare global {
interface Window { interface Window {
__TAURI__: { __TAURI_OS_PLUGIN_INTERNALS__: {
os: { __eol: string }; eol: string;
}; };
} }
} }
@ -54,7 +54,7 @@ type Arch =
* @since 2.0.0 * @since 2.0.0
* */ * */
function eol() { function eol() {
return window.__TAURI__.os.__eol; return window.__TAURI_OS_PLUGIN_INTERNALS__.eol;
} }
/** /**

@ -1 +1 @@
if("__TAURI__"in window){var __TAURI_OS__=function(n){"use strict";async function o(n,o={},e){return window.__TAURI_INTERNALS__.invoke(n,o,e)}return"function"==typeof SuppressedError&&SuppressedError,n.arch=async function(){return o("plugin:os|arch")},n.eol=function(){return window.__TAURI__.os.__eol},n.exeExtension=async function(){return o("plugin:os|exe_extension")},n.family=async function(){return o("plugin:os|family")},n.hostname=async function(){return o("plugin:os|hostname")},n.locale=async function(){return o("plugin:os|locale")},n.platform=async function(){return o("plugin:os|platform")},n.type=async function(){return o("plugin:os|os_type")},n.version=async function(){return o("plugin:os|version")},n}({});Object.defineProperty(window.__TAURI__,"os",{value:__TAURI_OS__})} if("__TAURI__"in window){var __TAURI_OS__=function(n){"use strict";async function o(n,o={},e){return window.__TAURI_INTERNALS__.invoke(n,o,e)}return"function"==typeof SuppressedError&&SuppressedError,n.arch=async function(){return o("plugin:os|arch")},n.eol=function(){return window.__TAURI_OS_PLUGIN_INTERNALS__.eol},n.exeExtension=async function(){return o("plugin:os|exe_extension")},n.family=async function(){return o("plugin:os|family")},n.hostname=async function(){return o("plugin:os|hostname")},n.locale=async function(){return o("plugin:os|locale")},n.platform=async function(){return o("plugin:os|platform")},n.type=async function(){return o("plugin:os|os_type")},n.version=async function(){return o("plugin:os|version")},n}({});Object.defineProperty(window.__TAURI__,"os",{value:__TAURI_OS__})}

@ -2,7 +2,11 @@
// SPDX-License-Identifier: Apache-2.0 // SPDX-License-Identifier: Apache-2.0
// SPDX-License-Identifier: MIT // SPDX-License-Identifier: MIT
__RAW_global_os_api__;
// eslint-disable-next-line // eslint-disable-next-line
window.__TAURI__.os.__eol = __TEMPLATE_eol__; Object.defineProperty(window, "__TAURI_OS_PLUGIN_INTERNALS__", {
value: {
eol: __TEMPLATE_eol__,
},
});
__RAW_global_os_api__;

Loading…
Cancel
Save