From c65a49fd0f9664d73e30daf5ea912c9eb6af8fb0 Mon Sep 17 00:00:00 2001 From: Leonard Date: Tue, 10 Oct 2023 16:50:58 +0200 Subject: [PATCH] Remove redundant directories (#1535) Also fix typo --- packages/cli/.github/workflows/build.yml | 31 --- packages/cli/.github/workflows/docs.yml | 34 --- packages/cli/.github/workflows/main.yml | 52 ----- packages/cli/README.md | 2 +- packages/cli/docs/.gitignore | 1 - packages/cli/docs/book.toml | 6 - packages/cli/docs/src/SUMMARY.md | 13 -- packages/cli/docs/src/configure.md | 197 ------------------ packages/cli/docs/src/creating.md | 37 ---- packages/cli/docs/src/installation.md | 23 -- packages/cli/docs/src/introduction.md | 18 -- packages/cli/docs/src/plugin/README.md | 140 ------------- .../cli/docs/src/plugin/interface/command.md | 21 -- .../cli/docs/src/plugin/interface/dirs.md | 30 --- packages/cli/docs/src/plugin/interface/log.md | 48 ----- .../cli/docs/src/plugin/interface/network.md | 37 ---- packages/cli/docs/src/plugin/interface/os.md | 11 - .../cli/docs/src/plugin/interface/path.md | 38 ---- packages/cli/examples/README.md | 0 packages/cli/examples/plugin/init.lua | 18 -- packages/cli/examples/plugin/interface.lua | 25 --- 21 files changed, 1 insertion(+), 781 deletions(-) delete mode 100644 packages/cli/.github/workflows/build.yml delete mode 100644 packages/cli/.github/workflows/docs.yml delete mode 100644 packages/cli/.github/workflows/main.yml delete mode 100644 packages/cli/docs/.gitignore delete mode 100644 packages/cli/docs/book.toml delete mode 100644 packages/cli/docs/src/SUMMARY.md delete mode 100644 packages/cli/docs/src/configure.md delete mode 100644 packages/cli/docs/src/creating.md delete mode 100644 packages/cli/docs/src/installation.md delete mode 100644 packages/cli/docs/src/introduction.md delete mode 100644 packages/cli/docs/src/plugin/README.md delete mode 100644 packages/cli/docs/src/plugin/interface/command.md delete mode 100644 packages/cli/docs/src/plugin/interface/dirs.md delete mode 100644 packages/cli/docs/src/plugin/interface/log.md delete mode 100644 packages/cli/docs/src/plugin/interface/network.md delete mode 100644 packages/cli/docs/src/plugin/interface/os.md delete mode 100644 packages/cli/docs/src/plugin/interface/path.md delete mode 100644 packages/cli/examples/README.md delete mode 100644 packages/cli/examples/plugin/init.lua delete mode 100644 packages/cli/examples/plugin/interface.lua diff --git a/packages/cli/.github/workflows/build.yml b/packages/cli/.github/workflows/build.yml deleted file mode 100644 index f0765e951..000000000 --- a/packages/cli/.github/workflows/build.yml +++ /dev/null @@ -1,31 +0,0 @@ -# .github/workflows/build.yml - -on: - release: - types: [created] - -jobs: - release: - name: release ${{ matrix.target }} - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - include: - - target: x86_64-unknown-linux-gnu - archive: tar.gz tar.xz - - target: x86_64-unknown-linux-musl - archive: tar.gz tar.xz - - target: x86_64-apple-darwin - archive: tar.gz tar.xz - - target: x86_64-pc-windows-gnu - archive: zip - - steps: - - uses: actions/checkout@master - - name: Compile and release - uses: rust-build/rust-build.action@latest - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - RUSTTARGET: ${{ matrix.target }} - ARCHIVE_TYPES: ${{ matrix.archive }} diff --git a/packages/cli/.github/workflows/docs.yml b/packages/cli/.github/workflows/docs.yml deleted file mode 100644 index d8765cac8..000000000 --- a/packages/cli/.github/workflows/docs.yml +++ /dev/null @@ -1,34 +0,0 @@ -name: github pages - -on: - push: - paths: - - docs/** - branches: - - master - -jobs: - deploy: - runs-on: ubuntu-20.04 - concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - steps: - - uses: actions/checkout@v2 - - - name: Setup mdBook - uses: peaceiris/actions-mdbook@v1 - with: - mdbook-version: '0.4.10' - # mdbook-version: 'latest' - - - run: cd docs && mdbook build - - - name: Deploy 🚀 - uses: JamesIves/github-pages-deploy-action@v4.2.3 - with: - branch: gh-pages # The branch the action should deploy to. - folder: docs/book # The folder the action should deploy. - target-folder: docs/nightly/cli - repository-name: dioxuslabs/docsite - clean: false - token: ${{ secrets.DEPLOY_KEY }} # let's pretend I don't need it for now diff --git a/packages/cli/.github/workflows/main.yml b/packages/cli/.github/workflows/main.yml deleted file mode 100644 index b22f78eae..000000000 --- a/packages/cli/.github/workflows/main.yml +++ /dev/null @@ -1,52 +0,0 @@ -on: [push, pull_request] - -name: Rust CI - -jobs: - check: - name: Check - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - - name: Install Rust - uses: dtolnay/rust-toolchain@stable - - uses: Swatinem/rust-cache@v1 - - run: cargo check - - test: - name: Test Suite - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - - name: Install Rust - uses: dtolnay/rust-toolchain@stable - - uses: Swatinem/rust-cache@v1 - - run: cargo test - - fmt: - name: Rustfmt - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - - name: Install Rust - uses: dtolnay/rust-toolchain@stable - - uses: Swatinem/rust-cache@v1 - - run: rustup component add rustfmt - - run: cargo fmt --all -- --check - - # clippy: - # name: Clippy - # runs-on: ubuntu-latest - # steps: - # - uses: actions/checkout@v2 - # - uses: actions-rs/toolchain@v1 - # with: - # profile: minimal - # toolchain: stable - # override: true - # - uses: Swatinem/rust-cache@v1 - # - run: rustup component add clippy - # - uses: actions-rs/cargo@v1 - # with: - # command: clippy - # args: -- -D warnings diff --git a/packages/cli/README.md b/packages/cli/README.md index d868b1c9d..72a813468 100644 --- a/packages/cli/README.md +++ b/packages/cli/README.md @@ -4,7 +4,7 @@ The **dioxus-cli** (inspired by wasm-pack and webpack) is a tool for getting Dioxus projects up and running. -It handles all building, bundling, development and publishing to simplify development. +It handles building, bundling, development and publishing to simplify development. ## Installation diff --git a/packages/cli/docs/.gitignore b/packages/cli/docs/.gitignore deleted file mode 100644 index 7585238ef..000000000 --- a/packages/cli/docs/.gitignore +++ /dev/null @@ -1 +0,0 @@ -book diff --git a/packages/cli/docs/book.toml b/packages/cli/docs/book.toml deleted file mode 100644 index a1e57f634..000000000 --- a/packages/cli/docs/book.toml +++ /dev/null @@ -1,6 +0,0 @@ -[book] -authors = ["YuKun Liu"] -language = "en" -multilingual = false -src = "src" -title = "Dioxus CLI" diff --git a/packages/cli/docs/src/SUMMARY.md b/packages/cli/docs/src/SUMMARY.md deleted file mode 100644 index 98a66ae21..000000000 --- a/packages/cli/docs/src/SUMMARY.md +++ /dev/null @@ -1,13 +0,0 @@ -# Summary - -- [Introduction](./introduction.md) -- [Installation](./installation.md) -- [Create a project](./creating.md) -- [Configure a project](./configure.md) -- [Plugin development](./plugin/README.md) - - [API.Log](plugin/interface/log.md) - - [API.Command](plugin/interface/command.md) - - [API.OS](plugin/interface/os.md) - - [API.Directories](plugin/interface/dirs.md) - - [API.Network](plugin/interface/network.md) - - [API.Path](plugin/interface/path.md) \ No newline at end of file diff --git a/packages/cli/docs/src/configure.md b/packages/cli/docs/src/configure.md deleted file mode 100644 index 3b9f6189b..000000000 --- a/packages/cli/docs/src/configure.md +++ /dev/null @@ -1,197 +0,0 @@ -# Configure Project - -This chapter will teach you how to configure the CLI with the `Dioxus.toml` file. -There's an [example](#config-example) which has comments to describe individual keys. -You can copy that or view this documentation for a more complete learning experience. - -"🔒" indicates a mandatory item. Some headers are mandatory, but none of the keys inside them are. It might look weird, but it's normal. Simply don't include any keys. - -## Structure - -Each header has it's TOML form directly under it. - -### Application 🔒 - -```toml -[application] -``` - -Application-wide configuration. Applies to both web and desktop. - -1. **name** 🔒 - Project name & title. - ```toml - name = "my_project" - ``` - -2. **default_platform** 🔒 - The platform this project targets - ```toml - # Currently supported platforms: web, desktop - default_platform = "web" - ``` - -3. **out_dir** - The directory to place the build artifacts from `dx build` or `dx serve` into. This is also where the `assets` directory will be copied into. - ```toml - out_dir = "dist" - ``` - -4. **asset_dir** - The directory with your static assets. The CLI will automatically copy these assets into the **out_dir** after a build/serve. - ```toml - asset_dir = "public" - ``` - -5. **sub_package** - The sub package in the workspace to build by default. - ```toml - sub_package = "my-crate" - ``` - -### Web.App 🔒 - -```toml -[web.app] -``` - -Web-specific configuration. - -1. **title** - The title of the web page. - ```toml - # HTML title tag content - title = "project_name" - ``` - -2. **base_path** - The base path to build the application for serving at. This can be useful when serving your application in a subdirectory under a domain. For example when building a site to be served on GitHub Pages. - ```toml - # The application will be served at domain.com/my_application/, so we need to modify the base_path to the path where the application will be served - base_path = "my_application" - ``` - -### Web.Watcher ✍ - -```toml -[web.watcher] -``` - -Development server configuration. - -1. **reload_html** - If this is true, the cli will rebuild the index.html file every time the application is rebuilt - ```toml - reload_html = true - ``` - -2. **watch_path** - The files & directories to monitor for changes - ```toml - watch_path = ["src", "public"] - ``` - -3. **index_on_404** - If enabled, Dioxus will serve the root page when a route is not found. -*This is needed when serving an application that uses the router*. -However, when serving your app using something else than Dioxus (e.g. GitHub Pages), you will have to check how to configure it on that platform. -In GitHub Pages, you can make a copy of `index.html` named `404.html` in the same directory. - ```toml - index_on_404 = true - ``` - -### Web.Resource 🔒 - -```toml -[web.resource] -``` - -Static resource configuration. - -1. **style** - CSS files to include in your application. - ```toml - style = [ - # Include from public_dir. - "./assets/style.css", - # Or some asset from online cdn. - "https://cdn.jsdelivr.net/npm/bootstrap/dist/css/bootstrap.css" - ] - ``` - -2. **script** - JavaScript files to include in your application. - ```toml - script = [ - # Include from asset_dir. - "./public/index.js", - # Or from an online CDN. - "https://cdn.jsdelivr.net/npm/bootstrap/dist/js/bootstrap.js" - ] - ``` - -### Web.Resource.Dev 🔒 - -```toml -[web.resource.dev] -``` - -This is the same as [`[web.resource]`](#webresource-), but it only works in development servers. -For example, if you want to include a file in a `dx serve` server, but not a `dx serve --release` server, put it here. - -### Web.Proxy - -```toml -[[web.proxy]] -``` - -Configuration related to any proxies your application requires during development. Proxies will forward requests to a new service. - -1. **backend** - The URL to the server to proxy. The CLI will forward any requests under the backend relative route to the backend instead of returning 404 - ```toml - backend = "http://localhost:8000/api/" - ``` - This will cause any requests made to the dev server with prefix /api/ to be redirected to the backend server at http://localhost:8000. The path and query parameters will be passed on as-is (path rewriting is currently not supported). - -## Config example - -This includes all fields, mandatory or not. - -```toml -[application] - -# App name -name = "project_name" - -# The Dioxus platform to default to -default_platform = "web" - -# `build` & `serve` output path -out_dir = "dist" - -# The static resource path -asset_dir = "public" - -[web.app] - -# HTML title tag content -title = "project_name" - -[web.watcher] - -# When watcher is triggered, regenerate the `index.html` -reload_html = true - -# Which files or dirs will be monitored -watch_path = ["src", "public"] - -# Include style or script assets -[web.resource] - -# CSS style file -style = [] - -# Javascript code file -script = [] - -[web.resource.dev] - -# Same as [web.resource], but for development servers - -# CSS style file -style = [] - -# JavaScript files -script = [] - -[[web.proxy]] -backend = "http://localhost:8000/api/" -``` diff --git a/packages/cli/docs/src/creating.md b/packages/cli/docs/src/creating.md deleted file mode 100644 index 4c594dfd8..000000000 --- a/packages/cli/docs/src/creating.md +++ /dev/null @@ -1,37 +0,0 @@ -# Create a Project - -Once you have the Dioxus CLI installed, you can use it to create your own project! - -## Initializing a default project - -First, run the `dx create` command to create a new project: -``` -dx create hello-dioxus -``` - -> It will clone this [template](https://github.com/DioxusLabs/dioxus-template). -> This default template is used for `web` platform application. -> -> You can choose to create your project from a different template by passing the `template` argument: -> ``` -> dx init hello-dioxus --template=gh:dioxuslabs/dioxus-template -> ``` - -Next, navigate into your new project: - -``` -cd hello-dioxus -``` - -> Make sure the WASM target is installed before running the projects. -> You can install the WASM target for rust using rustup: -> ``` -> rustup target add wasm32-unknown-unknown -> ``` - -Finally, serve your project: -``` -dx serve -``` - -By default, the CLI serves your website at [`http://127.0.0.1:8080/`](http://127.0.0.1:8080/). diff --git a/packages/cli/docs/src/installation.md b/packages/cli/docs/src/installation.md deleted file mode 100644 index 22803be61..000000000 --- a/packages/cli/docs/src/installation.md +++ /dev/null @@ -1,23 +0,0 @@ -# Installation - -## Install the latest development build through git - -To get the latest bug fixes and features, you can install the development version from git. - -``` -cargo install --git https://github.com/Dioxuslabs/cli -``` - -This will download `Dioxus-CLI` source from GitHub master branch, -and install it in Cargo's global binary directory (`~/.cargo/bin/` by default). - -## Install stable through `crates.io` - -The published version of the Dioxus CLI is updated less often, but is more stable than the git version. - -``` -cargo install dioxus-cli --locked -``` - -Run `dx --help` for a list of all the available commands. -Furthermore, you can run `dx --help` to get help with a specific command. diff --git a/packages/cli/docs/src/introduction.md b/packages/cli/docs/src/introduction.md deleted file mode 100644 index 8b10b0546..000000000 --- a/packages/cli/docs/src/introduction.md +++ /dev/null @@ -1,18 +0,0 @@ -# Introduction - -The 📦✨ **Dioxus CLI** is a tool to help get Dioxus projects off the ground. - -## Features - -* Build and pack a Dioxus project -* `html` to `rsx` conversion tool -* Hot Reload for `web` platform -* Create a Dioxus project from `git` repo -* And more! - \ No newline at end of file diff --git a/packages/cli/docs/src/plugin/README.md b/packages/cli/docs/src/plugin/README.md deleted file mode 100644 index fe7375618..000000000 --- a/packages/cli/docs/src/plugin/README.md +++ /dev/null @@ -1,140 +0,0 @@ -# CLI Plugin development - -**IMPORTANT: Ignore this documentation. Plugins are yet to be released and chances are it won't work for you. This is just what plugins *could* look like.** - -In the past we used `dx tool` to use and install tools, but it was a flawed system. -Tools were hard-coded by us, but people want more tools than we could code, so this plugin system was made to let -anyone develop plugins and use them in Dioxus projects. - -Plugin resources: -* [Source code](https://github.com/DioxusLabs/dioxus/tree/master/packages/cli/src/plugin) -* [Unofficial Dioxus plugin community](https://github.com/DioxusPluginCommunity). Contains certain plugins you can use right now. - -### Why Lua? - -We chose Lua `5.4` to be the plugin developing language, -because it's extremely lightweight, embeddable and easy to learn. -We installed Lua into the CLI, so you don't need to do it yourself. - -Lua resources: -* [Official website](https://www.lua.org/). You can basically find everything here. -* [Awesome Lua](https://github.com/LewisJEllis/awesome-lua). Additional resources (such as Lua plugins for your favorite IDE), and other *awesome* tools! - - -## Creating a plugin - -A plugin is just an `init.lua` file. -You can include other files using `dofile(path)`. -You need to have a plugin and a manager instance, which you can get using `require`: -```lua -local plugin = require("plugin") -local manager = require("manager") -``` - -You need to set some `manager` fields and then initialize the plugin: -```lua -manager.name = "My first plugin" -manager.repository = "https://github.com/john-doe/my-first-plugin" -- The repository URL. -manager.author = "John Doe " -manager.version = "0.1.0" -plugin.init(manager) -``` - -You also need to return the `manager`, which basically represents your plugin: -```lua --- Your code here. --- End of file. - -manager.serve.interval = 1000 -return manager -``` - -And you're ready to go. Now, go and have a look at the stuff below and the API documentation. - -### Plugin info - -You will encounter this type in the events below. The keys are as follows: -* `name: string` - The name of the plugin. -* `repository: string` - The plugin repository URL. -* `author: string` - The author of the plugin. -* `version: string` - The plugin version. - -### Event management - -The plugin library has certain events that you can subscribe to. - -* `manager.on_init` - Triggers the first time the plugin is loaded. -* `manager.build.on_start(info)` - Triggers before the build process. E.g., before `dx build`. -* `manager.build.on_finish(info)` - Triggers after the build process. E.g., after `dx build`. -* `manager.serve.on_start(info)` - Triggers before the serving process. E.g., before `dx serve`. -* `manager.serve.on_rebuild_start(info)` - Triggers before the server rebuilds the web with hot reload. -* `manager.serve.on_rebuild_end(info)` - Triggers after the server rebuilds the web with hot reload. -* `manager.serve.on_shutdown` - Triggers when the server is shutdown. E.g., when the `dx serve` process is terminated. - -To subscribe to an event, you simply need to assign it to a function: - -```lua -manager.build.on_start = function (info) - log.info("[plugin] Build starting: " .. info.name) -end -``` - -### Plugin template - -```lua -package.path = library_dir .. "/?.lua" - -local plugin = require("plugin") -local manager = require("manager") - --- deconstruct api functions -local log = plugin.log - --- plugin information -manager.name = "Hello Dixous Plugin" -manager.repository = "https://github.com/mrxiaozhuox/hello-dioxus-plugin" -manager.author = "YuKun Liu " -manager.version = "0.0.1" - --- init manager info to plugin api -plugin.init(manager) - -manager.on_init = function () - -- when the first time plugin been load, this function will be execute. - -- system will create a `dcp.json` file to verify init state. - log.info("[plugin] Start to init plugin: " .. manager.name) -end - ----@param info BuildInfo -manager.build.on_start = function (info) - -- before the build work start, system will execute this function. - log.info("[plugin] Build starting: " .. info.name) -end - ----@param info BuildInfo -manager.build.on_finish = function (info) - -- when the build work is done, system will execute this function. - log.info("[plugin] Build finished: " .. info.name) -end - ----@param info ServeStartInfo -manager.serve.on_start = function (info) - -- this function will after clean & print to run, so you can print some thing. - log.info("[plugin] Serve start: " .. info.name) -end - ----@param info ServeRebuildInfo -manager.serve.on_rebuild = function (info) - -- this function will after clean & print to run, so you can print some thing. - local files = plugin.tool.dump(info.changed_files) - log.info("[plugin] Serve rebuild: '" .. files .. "'") -end - -manager.serve.on_shutdown = function () - log.info("[plugin] Serve shutdown") -end - -manager.serve.interval = 1000 - -return manager -``` diff --git a/packages/cli/docs/src/plugin/interface/command.md b/packages/cli/docs/src/plugin/interface/command.md deleted file mode 100644 index 2882e5153..000000000 --- a/packages/cli/docs/src/plugin/interface/command.md +++ /dev/null @@ -1,21 +0,0 @@ -# Command Functions - -You can use command functions to execute code and scripts. - -Type definition: -``` -Stdio: "Inherit" | "Piped" | "Null" -``` - -### `exec(commands: [string], stdout: Stdio, stderr: Stdio)` - -You can use this function to run some commands on the current system. - -```lua -local cmd = plugin.command - -manager.test = function () - cmd.exec({"git", "clone", "https://github.com/DioxusLabs/cli-plugin-library"}) -end -``` -> Warning: This function doesn't catch exceptions. \ No newline at end of file diff --git a/packages/cli/docs/src/plugin/interface/dirs.md b/packages/cli/docs/src/plugin/interface/dirs.md deleted file mode 100644 index 9984802ff..000000000 --- a/packages/cli/docs/src/plugin/interface/dirs.md +++ /dev/null @@ -1,30 +0,0 @@ -# Dirs Functions - -Dirs functions are for getting various directory paths. Not to be confused with `plugin.path`. - -### `plugin_dir() -> string` - -Get the plugin's root directory path. - -```lua -local path = plugin.dirs.plugin_dir() --- example: ~/Development/DioxusCli/plugin/test-plugin/ -``` - -### `bin_dir() -> string` - -Get the plugin's binary directory path. Put binary files like `tailwind-cli` or `sass-cli` in this directory. - -```lua -local path = plugin.dirs.bin_dir() --- example: ~/Development/DioxusCli/plugin/test-plugin/bin/ -``` - -### `temp_dir() -> string` - -Get the plugin's temporary directory path. Put any temporary files here. - -```lua -local path = plugin.dirs.bin_dir() --- example: ~/Development/DioxusCli/plugin/test-plugin/temp/ -``` \ No newline at end of file diff --git a/packages/cli/docs/src/plugin/interface/log.md b/packages/cli/docs/src/plugin/interface/log.md deleted file mode 100644 index ee437b77a..000000000 --- a/packages/cli/docs/src/plugin/interface/log.md +++ /dev/null @@ -1,48 +0,0 @@ -# Log Functions - -You can use log functions to print various logging information. - -### `trace(info: string)` - -Print trace log info. - -```lua -local log = plugin.log -log.trace("trace information") -``` - -### `debug(info: string)` - -Print debug log info. - -```lua -local log = plugin.log -log.debug("debug information") -``` - -### `info(info: string)` - -Print info log info. - -```lua -local log = plugin.log -log.info("info information") -``` - -### `warn(info: string)` - -Print warning log info. - -```lua -local log = plugin.log -log.warn("warn information") -``` - -### `error(info: string)` - -Print error log info. - -```lua -local log = plugin.log -log.error("error information") -``` \ No newline at end of file diff --git a/packages/cli/docs/src/plugin/interface/network.md b/packages/cli/docs/src/plugin/interface/network.md deleted file mode 100644 index 566bc5073..000000000 --- a/packages/cli/docs/src/plugin/interface/network.md +++ /dev/null @@ -1,37 +0,0 @@ -# Network Functions - -You can use Network functions to download & read some data from the internet. - -### `download_file(url: string, path: string) -> boolean` - -Downloads a file from the specified URL, -and returns a `boolean` that represents the download status (true: success, false: failure). - -You need to pass a target URL and a local path (where you want to save this file). - -```lua --- this file will download to plugin temp directory -local status = plugin.network.download_file( - "http://xxx.com/xxx.zip", - plugin.dirs.temp_dir() -) -if status != true then - log.error("Download Failed") -end -``` - -### `clone_repo(url: string, path: string) -> boolean` - -Clone a repository from the given URL into the given path. -Returns a `boolean` that represents the clone status (true: success, false: failure). -The system executing this function must have git installed. - -```lua -local status = plugin.network.clone_repo( - "http://github.com/mrxiaozhuox/dioxus-starter", - plugin.dirs.bin_dir() -) -if status != true then - log.error("Clone Failed") -end -``` \ No newline at end of file diff --git a/packages/cli/docs/src/plugin/interface/os.md b/packages/cli/docs/src/plugin/interface/os.md deleted file mode 100644 index 84f4697b8..000000000 --- a/packages/cli/docs/src/plugin/interface/os.md +++ /dev/null @@ -1,11 +0,0 @@ -# OS Functions - -OS functions are for getting system information. - -### `current_platform() -> string ("windows" | "macos" | "linux")` - -Get the current OS platform. - -```lua -local platform = plugin.os.current_platform() -``` \ No newline at end of file diff --git a/packages/cli/docs/src/plugin/interface/path.md b/packages/cli/docs/src/plugin/interface/path.md deleted file mode 100644 index a5bee1eb9..000000000 --- a/packages/cli/docs/src/plugin/interface/path.md +++ /dev/null @@ -1,38 +0,0 @@ -# Path Functions - -You can use path functions to perform operations on valid path strings. - -### `join(path: string, extra: string) -> string` - - -Extend a path; you can extend both directory and file paths. - -```lua -local current_path = "~/hello/dioxus" -local new_path = plugin.path.join(current_path, "world") --- new_path = "~/hello/dioxus/world" -``` - -### `parent(path: string) -> string` - -Return the parent path of the specified path. The parent path is always a directory. - -```lua -local current_path = "~/hello/dioxus" -local new_path = plugin.path.parent(current_path) --- new_path = "~/hello/" -``` - -### `exists(path: string) -> boolean` - -Check if the specified path exists, as either a file or a directory. - -### `is_file(path: string) -> boolean` - -Check if the specified path is a file. - -### `is_dir(path: string) -> boolean` - -Check if the specified path is a directory. \ No newline at end of file diff --git a/packages/cli/examples/README.md b/packages/cli/examples/README.md deleted file mode 100644 index e69de29bb..000000000 diff --git a/packages/cli/examples/plugin/init.lua b/packages/cli/examples/plugin/init.lua deleted file mode 100644 index 7d6b710ef..000000000 --- a/packages/cli/examples/plugin/init.lua +++ /dev/null @@ -1,18 +0,0 @@ -local Api = require("./interface") -local log = Api.log; - -local manager = { - name = "Dioxus-CLI Plugin Demo", - repository = "http://github.com/DioxusLabs/cli", - author = "YuKun Liu ", -} - -manager.onLoad = function () - log.info("plugin loaded.") -end - -manager.onStartBuild = function () - log.warn("system start to build") -end - -return manager \ No newline at end of file diff --git a/packages/cli/examples/plugin/interface.lua b/packages/cli/examples/plugin/interface.lua deleted file mode 100644 index bc6c91cb1..000000000 --- a/packages/cli/examples/plugin/interface.lua +++ /dev/null @@ -1,25 +0,0 @@ -local interface = {} - -if plugin_logger ~= nil then - interface.log = plugin_logger -else - interface.log = { - trace = function (info) - print("trace: " .. info) - end, - debug = function (info) - print("debug: " .. info) - end, - info = function (info) - print("info: " .. info) - end, - warn = function (info) - print("warn: " .. info) - end, - error = function (info) - print("error: " .. info) - end, - } -end - -return interface \ No newline at end of file