mirror of
https://github.com/wailsapp/wails.git
synced 2025-05-02 22:31:06 +08:00
feat: optimize documentation website (#1849)
* fix(website): fix i18n configuration * feat: add i18n file to auto generate code * feat: move the crowdin configuration file to the website directory * feat(website): add crowdin dependencies and scripts * feat: add COC * feat: use escape hatch syntax to wrap JSX code in MDX files * feat: remove ach language * feat: generate default language configuration * feat: remove compare link * feat: add COC link * feat(website): update documentation * feat: use escape hatch syntax to wrap JSX code in MDX files * style: add prettier * style: format mdx files * chore: remove prettier command * feat: update en docs * feat: sync Chinese documents * feat: update doc * Update website/src/pages/coc.mdx Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
This commit is contained in:
parent
d0a39349d4
commit
e9b2c15664
@ -19,8 +19,8 @@ func checkError(err error) {
|
||||
}
|
||||
}
|
||||
|
||||
// TODO:This can be replaced with "https://github.com/coreos/go-semver/blob/main/semver/semver.go"
|
||||
func updateVersion() string {
|
||||
|
||||
currentVersionData, err := os.ReadFile(versionFile)
|
||||
checkError(err)
|
||||
currentVersion := string(currentVersionData)
|
||||
@ -35,6 +35,14 @@ func updateVersion() string {
|
||||
return newVersion
|
||||
}
|
||||
|
||||
func runCommand(name string, arg ...string) {
|
||||
cmd := exec.Command(name, arg...)
|
||||
cmd.Stdout = os.Stdout
|
||||
cmd.Stderr = os.Stderr
|
||||
err := cmd.Run()
|
||||
checkError(err)
|
||||
}
|
||||
|
||||
func main() {
|
||||
var newVersion string
|
||||
if len(os.Args) > 1 {
|
||||
@ -42,15 +50,20 @@ func main() {
|
||||
} else {
|
||||
newVersion = updateVersion()
|
||||
}
|
||||
|
||||
s.CD("../../../website")
|
||||
s.ECHO("Generating new Docs for version: " + newVersion)
|
||||
cmd := exec.Command("npm", "run", "docusaurus", "docs:version", newVersion)
|
||||
cmd.Stdout = os.Stdout
|
||||
cmd.Stderr = os.Stderr
|
||||
err := cmd.Run()
|
||||
checkError(err)
|
||||
|
||||
// Load the version list
|
||||
runCommand("npm", "run", "docusaurus", "docs:version", newVersion)
|
||||
|
||||
// For the default language identifier, please refer to: https://github.com/facebook/docusaurus/tree/main/packages/docusaurus-theme-translations/locales
|
||||
languages := []string{"en", "ja", "ko", "ru", "zh-Hans"}
|
||||
|
||||
for _, lang := range languages {
|
||||
runCommand("npm", "run", "write-translations", "--", "--locale", lang)
|
||||
}
|
||||
|
||||
// Load the version list/*
|
||||
versionsData, err := os.ReadFile("versions.json")
|
||||
checkError(err)
|
||||
var versions []string
|
||||
@ -70,9 +83,6 @@ func main() {
|
||||
s.CD("../versioned_sidebars")
|
||||
s.RM("version-" + oldestVersion + "-sidebars.json")
|
||||
s.CD("..")
|
||||
cmd = exec.Command("npm", "run", "build")
|
||||
cmd.Stdout = os.Stdout
|
||||
cmd.Stderr = os.Stderr
|
||||
err = cmd.Run()
|
||||
checkError(err)
|
||||
|
||||
runCommand("npm", "run", "build")
|
||||
}
|
||||
|
22
website/.prettierrc
Normal file
22
website/.prettierrc
Normal file
@ -0,0 +1,22 @@
|
||||
{
|
||||
"arrowParens": "always",
|
||||
"bracketSpacing": true,
|
||||
"endOfLine": "lf",
|
||||
"htmlWhitespaceSensitivity": "css",
|
||||
"insertPragma": false,
|
||||
"singleAttributePerLine": false,
|
||||
"bracketSameLine": false,
|
||||
"jsxBracketSameLine": false,
|
||||
"jsxSingleQuote": false,
|
||||
"printWidth": 80,
|
||||
"proseWrap": "preserve",
|
||||
"quoteProps": "as-needed",
|
||||
"requirePragma": false,
|
||||
"semi": true,
|
||||
"singleQuote": false,
|
||||
"tabWidth": 2,
|
||||
"trailingComma": "es5",
|
||||
"useTabs": false,
|
||||
"vueIndentScriptAndStyle": false,
|
||||
"parser": "mdx"
|
||||
}
|
@ -5,6 +5,7 @@ authors: [leaanthony]
|
||||
tags: [wails, v2]
|
||||
---
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/wails.webp").default}
|
||||
@ -13,6 +14,7 @@ tags: [wails, v2]
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
When I first announced Wails on Reddit, just over 2 years ago from a train in Sydney, I did not expect it to get much
|
||||
attention. A few days later, a prolific tech vlogger released a tutorial video, gave it a positive review and from that
|
||||
@ -45,6 +47,7 @@ possible, but also being open to someone taking those projects and building on t
|
||||
|
||||
### WebView2 Chromium Renderer
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/devtools.png").default}
|
||||
@ -53,6 +56,7 @@ possible, but also being open to someone taking those projects and building on t
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
Finally, Windows developers get a first class rendering engine for their applications! Gone are the days of contorting
|
||||
your frontend code to work on Windows. On top of that, you get a first-class developer tools experience!
|
||||
@ -69,6 +73,7 @@ Gophers rejoice! The single binary dream lives on!
|
||||
|
||||
### New Features
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/wails-menus.webp").default}
|
||||
@ -77,6 +82,7 @@ Gophers rejoice! The single binary dream lives on!
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
There were a lot of requests for native menu support. Wails has finally got you covered. Application menus are now available
|
||||
and include support for most native menu features. This includes standard menu items, checkboxes, radio groups, submenus
|
||||
@ -91,6 +97,7 @@ There is now the option to generate IDE configuration along with your project. T
|
||||
in a supported IDE, it will already be configured for building and debugging your application. Currently VSCode is supported
|
||||
but we hope to support other IDEs such as Goland soon.
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/vscode.webp").default}
|
||||
@ -99,6 +106,7 @@ but we hope to support other IDEs such as Goland soon.
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
### No requirement to bundle assets
|
||||
|
||||
@ -117,6 +125,7 @@ They don't even need to be in the top directory - Wails will just work it out fo
|
||||
|
||||
### New Development Experience
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/browser.webp").default}
|
||||
@ -125,6 +134,7 @@ They don't even need to be in the top directory - Wails will just work it out fo
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
Now that assets don't need to be bundled, it's enabled a whole new development experience. The new `wails dev`
|
||||
command will build and run your application, but instead of using the assets in the `embed.FS`, it loads them directly
|
||||
@ -150,6 +160,7 @@ auto-imported when hitting tab in an auto-generated module wrapping your Go code
|
||||
|
||||
### Remote Templates
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/remote.webp").default}
|
||||
@ -158,6 +169,7 @@ auto-imported when hitting tab in an auto-generated module wrapping your Go code
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
Getting an application up and running quickly was always a key goal for the Wails project. When we launched, we tried
|
||||
to cover a lot of the modern frameworks at the time: react, vue and angular. The world of frontend development is very
|
||||
|
@ -5,6 +5,7 @@ authors: [leaanthony]
|
||||
tags: [wails, v2]
|
||||
---
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/wails-mac.webp").default}
|
||||
@ -13,6 +14,7 @@ tags: [wails, v2]
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
Today marks the first beta release of Wails v2 for Mac! It's taken quite a while to get to this point and I'm hoping
|
||||
that today's release will give you something that's reasonably useful. There have been a number of twists and turns
|
||||
@ -27,6 +29,7 @@ So what's new for Wails v2 for Mac vs v1? Hint: It's pretty similar to the Windo
|
||||
|
||||
### New Features
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/wails-menus-mac.webp").default}
|
||||
@ -35,6 +38,7 @@ So what's new for Wails v2 for Mac vs v1? Hint: It's pretty similar to the Windo
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
There were a lot of requests for native menu support. Wails has finally got you covered. Application menus are now available
|
||||
and include support for most native menu features. This includes standard menu items, checkboxes, radio groups, submenus
|
||||
@ -95,6 +99,7 @@ auto-imported when hitting tab in an auto-generated module wrapping your Go code
|
||||
|
||||
### Remote Templates
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/remote-mac.webp").default}
|
||||
@ -103,6 +108,7 @@ auto-imported when hitting tab in an auto-generated module wrapping your Go code
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
Getting an application up and running quickly was always a key goal for the Wails project. When we launched, we tried
|
||||
to cover a lot of the modern frameworks at the time: react, vue and angular. The world of frontend development is very
|
||||
@ -120,6 +126,7 @@ community can create!
|
||||
Thanks to the amazing support of [Mat Ryer](https://github.com/matryer/), the Wails project now supports M1 native
|
||||
builds:
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/build-darwin-arm.webp").default}
|
||||
@ -128,9 +135,11 @@ builds:
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
You can also specify `darwin/amd64` as a target too:
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/build-darwin-amd.webp").default}
|
||||
@ -139,9 +148,11 @@ You can also specify `darwin/amd64` as a target too:
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
Oh, I almost forgot.... you can also do `darwin/universal`.... :wink:
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/build-darwin-universal.webp").default}
|
||||
@ -150,11 +161,13 @@ Oh, I almost forgot.... you can also do `darwin/universal`.... :wink:
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
### Cross Compilation to Windows
|
||||
|
||||
Because Wails v2 for Windows is pure Go, you can target Windows builds without docker.
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/build-cross-windows.webp").default}
|
||||
@ -163,6 +176,7 @@ Because Wails v2 for Windows is pure Go, you can target Windows builds without d
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
### WKWebView Renderer
|
||||
|
||||
|
@ -5,6 +5,7 @@ authors: [leaanthony]
|
||||
tags: [wails, v2]
|
||||
---
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/wails-linux.webp").default}
|
||||
@ -13,6 +14,7 @@ tags: [wails, v2]
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
I'm pleased to finally announce that Wails v2 is now in beta for Linux! It is somewhat ironic that the very first
|
||||
experiments with v2 was on Linux and yet it has ended up as the last release. That being said, the v2 we have today
|
||||
@ -20,6 +22,7 @@ is very different from those first experiments. So without further ado, let's go
|
||||
|
||||
### New Features
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/wails-menus-linux.webp").default}
|
||||
@ -28,6 +31,7 @@ is very different from those first experiments. So without further ado, let's go
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
There were a lot of requests for native menu support. Wails has finally got you covered. Application menus are now available
|
||||
and include support for most native menu features. This includes standard menu items, checkboxes, radio groups, submenus
|
||||
@ -79,6 +83,7 @@ auto-imported when hitting tab in an auto-generated module wrapping your Go code
|
||||
|
||||
### Remote Templates
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/remote-linux.webp").default}
|
||||
@ -87,6 +92,7 @@ auto-imported when hitting tab in an auto-generated module wrapping your Go code
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
Getting an application up and running quickly was always a key goal for the Wails project. When we launched, we tried
|
||||
to cover a lot of the modern frameworks at the time: react, vue and angular. The world of frontend development is very
|
||||
@ -103,14 +109,16 @@ community can create!
|
||||
|
||||
Because Wails v2 for Windows is pure Go, you can target Windows builds without docker.
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src="/img/linux-build-cross-windows.webp"
|
||||
src={require("@site/static/img/linux-build-cross-windows.webp").default}
|
||||
width="80%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
### In Conclusion
|
||||
|
||||
|
21
website/crowdin.yml
Normal file
21
website/crowdin.yml
Normal file
@ -0,0 +1,21 @@
|
||||
project_id: 531392
|
||||
api_token_env: CROWDIN_PERSONAL_TOKEN
|
||||
preserve_hierarchy: true
|
||||
commit_message: "[ci skip]"
|
||||
files:
|
||||
- source: /docs/**/*
|
||||
translation: /i18n/%two_letters_code%/docusaurus-plugin-content-docs/current/**/%original_file_name%
|
||||
ignore:
|
||||
- /**/*.json
|
||||
- source: /blog/**/*
|
||||
translation: /i18n/%two_letters_code%/docusaurus-plugin-content-blog/**/%original_file_name%
|
||||
- source: /src/pages/**/*
|
||||
translation: /i18n/%two_letters_code%/docusaurus-plugin-content-pages/**/%original_file_name%
|
||||
ignore:
|
||||
- /**/*.js
|
||||
- /**/*.jsx
|
||||
- /**/*.ts
|
||||
- /**/*.tsx
|
||||
- /**/*.css
|
||||
- source: /i18n/en/**/*.json
|
||||
translation: /i18n/%two_letters_code%/**/%original_file_name%
|
@ -1,8 +1,10 @@
|
||||
# EmailIt
|
||||
|
||||
```mdx-code-block
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src={require("@site/static/img/showcase/emailit.webp").default} />
|
||||
<br />
|
||||
</p>
|
||||
```
|
||||
|
||||
[EmailIt](https://github.com/raguay/EmailIt/) is a Wails 2 program that is a markdown based email sender only with nine notepads, scripts to manipulate the text, and templates. It also has a builtin [Node-Red](https://nodered.org/) server, scripts terminal, and the [ScriptBar](https://github.com/raguay/ScriptBarApp) program for displaying results from Node-Red or a script on your system. Documentation is very scarce, but the programs works. It’s built using Wails2 and Svelte, and the download is a universal macOS application.
|
||||
|
@ -1,9 +1,11 @@
|
||||
# EncryptEasy
|
||||
|
||||
```mdx-code-block
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src={require("@site/static/img/showcase/encrypteasy.webp").default} />
|
||||
<br />
|
||||
</p>
|
||||
```
|
||||
|
||||
**[EncryptEasy](https://www.encrypteasy.app) is a simple and easy to use PGP encryption tool, managing all your and your contacts keys. Encryption should be simple. Developed with Wails.**
|
||||
|
||||
|
@ -1,9 +1,11 @@
|
||||
# FileHound Export Utility
|
||||
|
||||
```mdx-code-block
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src={require("@site/static/img/showcase/filehound.webp").default} />
|
||||
<br />
|
||||
</p>
|
||||
```
|
||||
|
||||
[FileHound Export Utility](https://www.filehound.co.uk/) FileHound is a cloud document management platform made for secure file retention, business process automation and SmartCapture capabilities.
|
||||
|
||||
|
@ -1,10 +1,14 @@
|
||||
# Minecraft Updater
|
||||
|
||||
```mdx-code-block
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img
|
||||
src={require("@site/static/img/showcase/minecraft-mod-updater.webp").default}
|
||||
src={
|
||||
require("@site/static/img/showcase/minecraft-mod-updater.webp").default
|
||||
}
|
||||
/>
|
||||
<br />
|
||||
</p>
|
||||
```
|
||||
|
||||
[Minecraft Updater](https://github.com/Gurkengewuerz/MinecraftModUpdater) is a utility tool to update and synchronize Minecraft mods for your userbase. It’s built using Wails2 and React with [antd](https://ant.design/) as frontend framework.
|
||||
|
@ -1,11 +1,13 @@
|
||||
# Modal File Manager
|
||||
|
||||
```mdx-code-block
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img
|
||||
src={require("@site/static/img/showcase/modalfilemanager.webp").default}
|
||||
/>
|
||||
<br />
|
||||
</p>
|
||||
```
|
||||
|
||||
[Modal File Manager](https://github.com/raguay/ModalFileManager) is a dual pane file manager using web technologies. My original design was based on NW.js and can be found [here](https://github.com/raguay/ModalFileManager-NWjs). This version uses the same Svelte based frontend code (but it has be greatly modified since the departure from NW.js), but the backend is a [Wails 2](https://wails.io/) implementation. By using this implementation, I no longer use command line `rm`, `cp`, etc. commands. It is fully coded using Go and runs much faster than the previous versions.
|
||||
|
||||
|
@ -1,8 +1,10 @@
|
||||
# Molley Wallet
|
||||
|
||||
```mdx-code-block
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src={require("@site/static/img/showcase/mollywallet.webp").default} />
|
||||
<br />
|
||||
</p>
|
||||
```
|
||||
|
||||
[Molly Wallet](https://github.com/grvlle/constellation_wallet/) the official $DAG wallet of the Constellation Network. It'll let users interact with the Hypergraph Network in various ways, not limited to producing $DAG transactions.
|
||||
|
@ -1,9 +1,11 @@
|
||||
# October
|
||||
|
||||
```mdx-code-block
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src={require("@site/static/img/showcase/october.webp").default} />
|
||||
<br />
|
||||
</p>
|
||||
```
|
||||
|
||||
[October](https://october.utf9k.net) is a small Wails application that makes it really easy to extract highlights from [Kobo eReaders](https://en.wikipedia.org/wiki/Kobo_eReader) and then forward them to [Readwise](https://readwise.io).
|
||||
|
||||
|
@ -1,8 +1,10 @@
|
||||
# Optimus
|
||||
|
||||
```mdx-code-block
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src={require("@site/static/img/showcase/optimus.webp").default} />
|
||||
<br />
|
||||
</p>
|
||||
```
|
||||
|
||||
[Optimus](https://github.com/splode/optimus) is a desktop image optimization application. It supports conversion and compression between WebP, JPEG, and PNG image formats.
|
||||
|
@ -1,8 +1,10 @@
|
||||
# Portfall
|
||||
|
||||
```mdx-code-block
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src={require("@site/static/img/showcase/portfall.webp").default} />
|
||||
<br />
|
||||
</p>
|
||||
```
|
||||
|
||||
[Portfall](https://github.com/rekon-oss/portfall) - A desktop k8s port-forwarding portal for easy access to all your cluster UIs
|
||||
|
@ -1,10 +1,12 @@
|
||||
# Restic Browser
|
||||
|
||||
```mdx-code-block
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img
|
||||
src={require("@site/static/img/showcase/restic-browser-2.png").default}
|
||||
/>
|
||||
<br />
|
||||
</p>
|
||||
```
|
||||
|
||||
[Restic-Browser](https://github.com/emuell/restic-browser) - A simple, cross-platform [restic](https://github.com/restic/restic) backup GUI for browsing and restoring restic repositories.
|
||||
|
@ -1,9 +1,11 @@
|
||||
# RiftShare
|
||||
|
||||
```mdx-code-block
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src={require("@site/static/img/showcase/riftshare-main.webp").default} />
|
||||
<br />
|
||||
</p>
|
||||
```
|
||||
|
||||
Easy, Secure, and Free file sharing for everyone. Learn more at [Riftshare.app](https://riftshare.app)
|
||||
|
||||
|
@ -1,8 +1,10 @@
|
||||
# ScriptBar
|
||||
|
||||
```mdx-code-block
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src={require("@site/static/img/showcase/scriptbar.webp").default} />
|
||||
<br />
|
||||
</p>
|
||||
```
|
||||
|
||||
[ScriptBar](https://GitHub.com/raguay/ScriptBarApp) is a program to show the output of the embedded [Node-Red](https://nodered.org) server in the [EmailIt](https://GitHub.com/raguay/EmailIt) application. It also displays the output of scripts on your system. ScriptBar doesn't put them in the menubar, but has them all in a convient window for easy viewing. You can have multiple tabs to have many different things show. You can also keep the links to your most visited web sites.
|
||||
|
@ -1,8 +1,10 @@
|
||||
# Surge
|
||||
|
||||
```mdx-code-block
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src={require("@site/static/img/showcase/surge.png").default} />
|
||||
<br />
|
||||
</p>
|
||||
```
|
||||
|
||||
[Surge](https://getsurge.io/) is a p2p filesharing app designed to utilize blockchain technologies to enable 100% anonymous file transfers. Surge is end-to-end encrypted, decentralized and open source.
|
||||
|
@ -1,8 +1,10 @@
|
||||
# Wally
|
||||
|
||||
```mdx-code-block
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src={require("@site/static/img/showcase/wally.webp").default} />
|
||||
<br />
|
||||
</p>
|
||||
```
|
||||
|
||||
[Wally](https://ergodox-ez.com/pages/wally) is the official firmware flasher for [Ergodox](https://ergodox-ez.com/) keyboards. It looks great and is a fantastic example of what you can achieve with Wails: the ability to combine the power of Go and the rich graphical tools of the web development world.
|
||||
|
@ -1,8 +1,10 @@
|
||||
# Wombat
|
||||
|
||||
```mdx-code-block
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src={require("@site/static/img/showcase/wombat.webp").default} />
|
||||
<br />
|
||||
</p>
|
||||
```
|
||||
|
||||
[Wombat](https://github.com/rogchap/wombat) is a cross platform gRPC client.
|
||||
|
@ -1,8 +1,10 @@
|
||||
# Ytd
|
||||
|
||||
```mdx-code-block
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src={require("@site/static/img/showcase/ytd.webp").default} />
|
||||
<br />
|
||||
</p>
|
||||
```
|
||||
|
||||
[Ytd](https://github.com/marcio199226/ytd/tree/v2-wails) is an app for downloading tracks from youtube, creating offline playlists and share them with your friends, your friends will be able to playback your playlists or download them for offline listening, has an built-in player.
|
||||
|
@ -9,6 +9,7 @@ This will compile your project and save the production-ready binary in the `buil
|
||||
|
||||
If you run the binary, you should see the default application:
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/defaultproject.webp").default}
|
||||
@ -17,5 +18,6 @@ If you run the binary, you should see the default application:
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
For more details on compilation options, please refer to the [CLI Reference](../reference/cli.mdx#build).
|
||||
|
@ -10,8 +10,7 @@ Now that the CLI is installed, you can generate a new project by using the `wail
|
||||
|
||||
Pick your favourite framework:
|
||||
|
||||
<!-- @formatter:off -->
|
||||
|
||||
```mdx-code-block
|
||||
import Tabs from "@theme/Tabs";
|
||||
import TabItem from "@theme/TabItem";
|
||||
|
||||
@ -87,8 +86,7 @@ If you would rather use Typescript:<br/>
|
||||
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
<!-- @formatter:on -->
|
||||
```
|
||||
|
||||
<hr />
|
||||
|
||||
|
@ -37,8 +37,7 @@ Run `npm --version` to verify.
|
||||
|
||||
You will also need to install platform specific dependencies:
|
||||
|
||||
<!-- @formatter:off -->
|
||||
|
||||
```mdx-code-block
|
||||
import Tabs from "@theme/Tabs";
|
||||
import TabItem from "@theme/TabItem";
|
||||
|
||||
@ -52,31 +51,16 @@ import TabItem from "@theme/TabItem";
|
||||
>
|
||||
<TabItem value="MacOS">
|
||||
Wails requires that the xcode command line tools are installed. This can be
|
||||
done by running: <br />
|
||||
<code>xcode-select --install</code>
|
||||
done by running <code>xcode-select --install</code>.
|
||||
</TabItem>
|
||||
<TabItem value="Windows">
|
||||
Wails requires that the{" "}
|
||||
<a href="https://developer.microsoft.com/en-us/microsoft-edge/webview2/">
|
||||
WebView2
|
||||
</a>{" "}
|
||||
runtime is installed. Some Windows installations will already have this
|
||||
installed. You can check using the <code>wails doctor</code> command (see
|
||||
below).
|
||||
Wails requires that the <a href="https://developer.microsoft.com/en-us/microsoft-edge/webview2/">WebView2</a> runtime is installed. Some Windows installations will already have this installed. You can check using the <code>wails doctor</code> command.
|
||||
</TabItem>
|
||||
<TabItem value={"Linux"}>
|
||||
Linux required the standard <code>gcc</code> build tools plus{" "}
|
||||
<code>libgtk3</code> and <code>libwebkit</code>. Rather than list a ton of
|
||||
commands for different distros, Wails can try to determine what the
|
||||
installation commands are for your specific distribution. Run{" "}
|
||||
<code>wails doctor</code> after installation to be shown how to install the
|
||||
dependencies. If your distro/package manager is not supported, please
|
||||
consult the{" "}
|
||||
<a href={"/docs/guides/linux-distro-support"}>Add Linux Distro</a> guide.
|
||||
Linux required the standard <code>gcc</code> build tools plus <code>libgtk3</code> and <code>libwebkit</code>. Rather than list a ton of commands for different distros, Wails can try to determine what the installation commands are for your specific distribution. Run <code>wails doctor</code> after installation to be shown how to install the dependencies. If your distro/package manager is not supported, please consult the <a href={"/docs/guides/linux-distro-support"}>Add Linux Distro</a> guide.
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
<!-- @formatter:on -->
|
||||
```
|
||||
|
||||
## Optional Dependencies
|
||||
|
||||
|
@ -93,17 +93,21 @@ let response = await fetch('does-not-exist.txt');
|
||||
This will generate an error in the devtools. We can see that the error is what we expect, returned by
|
||||
our custom assets handler:
|
||||
|
||||
```mdx-code-block
|
||||
<p className="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/assetshandler-does-not-exist.webp").default}
|
||||
/>
|
||||
</p>
|
||||
```
|
||||
|
||||
However, if we request `go.mod`, we will see the following output:
|
||||
|
||||
```mdx-code-block
|
||||
<p className="text--center">
|
||||
<img src={require("@site/static/img/assetshandler-go-mod.webp").default} />
|
||||
</p>
|
||||
```
|
||||
|
||||
This technique can be used to load images directly into the page. If we updated our default vanilla template and
|
||||
replaced the logo image:
|
||||
@ -120,14 +124,18 @@ with:
|
||||
|
||||
Then we would see the following:
|
||||
|
||||
```mdx-code-block
|
||||
<p className="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/assetshandler-image.webp").default}
|
||||
style={{ width: "75%" }}
|
||||
/>
|
||||
</p>
|
||||
```
|
||||
|
||||
:::warning
|
||||
|
||||
Exposing your filesystem in this way is a security risk. It is recommended that you properly manage access
|
||||
to your filesystem.
|
||||
|
||||
:::
|
||||
|
@ -7,7 +7,6 @@ Wails offers a simple solution for dragging the window: Any HTML element that ha
|
||||
act as a "drag handle". This property applies to all child elements. If you need to indicate that a nested element
|
||||
should not drag, then use the attribute '--wails-draggable:no-drag' on that element.
|
||||
|
||||
|
||||
```html
|
||||
<html>
|
||||
<head>
|
||||
@ -81,9 +80,10 @@ func main() {
|
||||
<script src="./src/main.js" type="module"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
```
|
||||
|
||||
:::info Fullscreen
|
||||
|
||||
If you allow your application to go fullscreen, this drag functionality will be disabled.
|
||||
|
||||
:::
|
||||
|
@ -7,12 +7,14 @@ Currently, we support [Visual Studio Code](https://code.visualstudio.com/) but a
|
||||
|
||||
## Visual Studio Code
|
||||
|
||||
```mdx-code-block
|
||||
<p className="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/vscode.webp").default}
|
||||
style={{ width: "75%" }}
|
||||
/>
|
||||
</p>
|
||||
```
|
||||
|
||||
When generating a project using the `-ide vscode` flags, IDE files will be created alongside the other project files.
|
||||
These files are placed into the `.vscode` directory and provide the correct configuration for debugging your application.
|
||||
|
@ -104,5 +104,7 @@ type PackageManager interface {
|
||||
Take a look at the other package managers code to get an idea how this works.
|
||||
|
||||
:::info Remember
|
||||
|
||||
If you add support for a new package manager, don't forget to also update this page!
|
||||
|
||||
:::
|
||||
|
@ -7,6 +7,7 @@ To produce an obfuscated build, you can use the `-obfuscate` flag with the `wail
|
||||
```bash
|
||||
wails build -obfuscate
|
||||
```
|
||||
|
||||
To customise the obfuscation settings, you can use the `-garbleargs` flag:
|
||||
|
||||
```bash
|
||||
@ -24,8 +25,10 @@ an ID instead of a name. The bindings generated in the `wailsjs` directory use t
|
||||
call the backend functions.
|
||||
|
||||
:::note
|
||||
|
||||
To ensure that your application will work in obfuscated mode, you must use the generated
|
||||
bindings under the `wailsjs` directory in your application.
|
||||
|
||||
:::
|
||||
|
||||
## Example
|
||||
@ -33,10 +36,10 @@ bindings under the `wailsjs` directory in your application.
|
||||
Importing the "Greet" method from the bindings like this:
|
||||
|
||||
```js
|
||||
import { Greet } from '../../wailsjs/go/main/App';
|
||||
import { Greet } from "../../wailsjs/go/main/App";
|
||||
|
||||
// snip
|
||||
Greet('World');
|
||||
Greet("World");
|
||||
```
|
||||
|
||||
will ensure that the method will work correctly in obfuscated mode, as the bindings will
|
||||
|
@ -79,12 +79,14 @@ Renaming package-lock.json -> package-lock.tmpl.json...
|
||||
- Once the project has compiled, run it: `.\build\bin\my-vue3-project.exe`
|
||||
- You should have a fully functioning Vue3 application:
|
||||
|
||||
```mdx-code-block
|
||||
<div className="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/vue3-template.png").default}
|
||||
width="50%"
|
||||
/>
|
||||
</div>
|
||||
```
|
||||
|
||||
## Publishing Templates
|
||||
|
||||
|
@ -39,6 +39,7 @@ Reference: https://github.com/wailsapp/wails/issues/1504#issuecomment-1174317433
|
||||
|
||||
If your built application looks like this in finder:
|
||||
|
||||
```mdx-code-block
|
||||
<p className="text--center">
|
||||
<img
|
||||
src={
|
||||
@ -46,6 +47,7 @@ If your built application looks like this in finder:
|
||||
}
|
||||
/>
|
||||
</p>
|
||||
```
|
||||
|
||||
it's likely that your application's `info.plist` is invalid. Update the file in `build/<yourapp>.app/Contents/info.plist`
|
||||
and check if the data is valid, EG check the binary name is correct. To persist the changes, copy the file back to
|
||||
@ -153,7 +155,7 @@ In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX12.1.sdk/Sy
|
||||
#define NS_FORMAT_ARGUMENT(A) __attribute__ ((format_arg(A)))
|
||||
```
|
||||
|
||||
This is *normally* due to a mismatch with the OS version you are running and the version of the XCode Command Line Tools
|
||||
This is _normally_ due to a mismatch with the OS version you are running and the version of the XCode Command Line Tools
|
||||
installed. If you see an error like this, try upgrading your XCode Command Line Tools to the latest version.
|
||||
|
||||
Source: https://github.com/wailsapp/wails/issues/1806
|
@ -1,5 +1,6 @@
|
||||
# NSIS installer
|
||||
|
||||
```mdx-code-block
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img
|
||||
src={require("@site/static/img/nsis.webp").default}
|
||||
@ -7,6 +8,7 @@
|
||||
/>
|
||||
<br />
|
||||
</p>
|
||||
```
|
||||
|
||||
Wails supports generating Windows installers using the [NSIS installer](https://nsis.sourceforge.io/).
|
||||
|
||||
|
@ -10,9 +10,11 @@ window. The frontend is a webkit window that will display the frontend assets. A
|
||||
version of the runtime library. Finally, it is possible to bind Go methods to the frontend, and these will appear as
|
||||
Javascript methods that can be called, just as if they were local Javascript methods.
|
||||
|
||||
```mdx-code-block
|
||||
<div className="text--center">
|
||||
<img src={require("@site/static/img/architecture.webp").default} width="75%" />
|
||||
</div>
|
||||
```
|
||||
|
||||
## The Main Application
|
||||
|
||||
@ -266,7 +268,9 @@ it will be returned to your frontend as a Javascript class. Note: If you wish to
|
||||
`json` struct tags for your fields!
|
||||
|
||||
:::info Note
|
||||
|
||||
Anonymous nested structs are not supported at this time.
|
||||
|
||||
:::
|
||||
|
||||
It is possible to send structs back to Go. Any Javascript map/class passed as an argument that
|
||||
|
@ -22,16 +22,17 @@ and power of Go, combined with a rich, modern frontend.
|
||||
- A rich [runtime library](/docs/next/reference/runtime/intro)
|
||||
- Applications built with Wails are Apple & Microsoft Store compliant
|
||||
|
||||
|
||||
This is [varly](https://varly.app) - a desktop application for
|
||||
MacOS & Windows written using Wails. Not only does it look great, it uses native menus and translucency - everything
|
||||
you'd expect from a modern native app.
|
||||
|
||||
```mdx-code-block
|
||||
<p class="text--center">
|
||||
<a href="https://varly.app/">
|
||||
<img src={require("@site/static/img/varly.webp").default} width="75%" />
|
||||
</a>
|
||||
</p>
|
||||
```
|
||||
|
||||
### Quick Start Templates
|
||||
|
||||
|
@ -53,7 +53,7 @@ If you are unsure about a template, inspect `package.json` and `wails.json` for
|
||||
`wails build` is used for compiling your project to a production-ready binary.
|
||||
|
||||
| Flag | Description | Default |
|
||||
| :------------------- |:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------| :-------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| :------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| -platform | Build for the given (comma delimited) [platforms](../reference/cli.mdx#platforms) eg. `windows/arm64`. Note, if you do not give the architecture, `runtime.GOARCH` is used. | platform = `GOOS` environment variable if given else `runtime.GOOS`.<br/>arch = `GOARCH` envrionment variable if given else `runtime.GOARCH`. |
|
||||
| -clean | Cleans the `build/bin` directory | |
|
||||
| -compiler "compiler" | Use a different go compiler to build, eg go1.15beta1 | go |
|
||||
|
@ -107,57 +107,23 @@ Example:
|
||||
Keys are any single character on a keyboard with the exception of `+`, which is defined as `plus`.
|
||||
Some keys cannot be represented as characters so there are a set of named characters that may be used:
|
||||
|
||||
- `backspace`
|
||||
- `tab`
|
||||
- `return`
|
||||
- `enter`
|
||||
- `escape`
|
||||
- `left`
|
||||
- `right`
|
||||
- `up`
|
||||
- `down`
|
||||
- `space`
|
||||
- `delete`
|
||||
- `home`
|
||||
- `end`
|
||||
- `page up`
|
||||
- `page down`
|
||||
- `f1`
|
||||
- `f2`
|
||||
- `f3`
|
||||
- `f4`
|
||||
- `f5`
|
||||
- `f6`
|
||||
- `f7`
|
||||
- `f8`
|
||||
- `f9`
|
||||
- `f10`
|
||||
- `f11`
|
||||
- `f12`
|
||||
- `f13`
|
||||
- `f14`
|
||||
- `f15`
|
||||
- `f16`
|
||||
- `f17`
|
||||
- `f18`
|
||||
- `f19`
|
||||
- `f20`
|
||||
- `f21`
|
||||
- `f22`
|
||||
- `f23`
|
||||
- `f24`
|
||||
- `f25`
|
||||
- `f26`
|
||||
- `f27`
|
||||
- `f28`
|
||||
- `f29`
|
||||
- `f30`
|
||||
- `f31`
|
||||
- `f32`
|
||||
- `f33`
|
||||
- `f34`
|
||||
- `f35`
|
||||
- `numlock`
|
||||
| | | | |
|
||||
| :---------: | :---: | :---: | :-------: |
|
||||
| `backspace` | `f1` | `f16` | `f31` |
|
||||
| `tab` | `f2` | `f17` | `f32` |
|
||||
| `return` | `f3` | `f18` | `f33` |
|
||||
| `enter` | `f4` | `f19` | `f34` |
|
||||
| `escape` | `f5` | `f20` | `f35` |
|
||||
| `left` | `f6` | `f21` | `numlock` |
|
||||
| `right` | `f7` | `f22` | |
|
||||
| `up` | `f8` | `f23` | |
|
||||
| `down` | `f9` | `f24` | |
|
||||
| `space` | `f10` | `f25` | |
|
||||
| `delete` | `f11` | `f36` | |
|
||||
| `home` | `f12` | `f37` | |
|
||||
| `end` | `f13` | `f38` | |
|
||||
| `page up` | `f14` | `f39` | |
|
||||
| `page down` | `f15` | `f30` | |
|
||||
|
||||
Wails also supports parsing accelerators using the same syntax as Electron. This is useful for storing accelerators in
|
||||
config files.
|
||||
|
@ -97,12 +97,14 @@ func main() {
|
||||
|
||||
The text shown in the window's title bar.
|
||||
|
||||
Name: Title<br/>
|
||||
Type: `string`
|
||||
|
||||
### Width
|
||||
|
||||
The initial width of the window.
|
||||
|
||||
Name: Width<br/>
|
||||
Type: `int`<br/>
|
||||
Default: 1024.
|
||||
|
||||
@ -110,6 +112,7 @@ Default: 1024.
|
||||
|
||||
The initial height of the window.
|
||||
|
||||
Name: Height<br/>
|
||||
Type: `int`<br/>
|
||||
Default: 768
|
||||
|
||||
@ -117,12 +120,14 @@ Default: 768
|
||||
|
||||
By default, the main window is resizable. Setting this to `true` will keep it a fixed size.
|
||||
|
||||
Name: DisableResize<br/>
|
||||
Type: `bool`
|
||||
|
||||
### Fullscreen
|
||||
|
||||
Setting this to `true` will make the window fullscreen at startup.
|
||||
|
||||
Name: Fullscreen<br/>
|
||||
Type: `bool`
|
||||
|
||||
### Frameless
|
||||
@ -130,6 +135,7 @@ Type: `bool`
|
||||
When set to `true`, the window will have no borders or title bar.
|
||||
Also see [Frameless Windows](../guides/frameless.mdx).
|
||||
|
||||
Name: Frameless<br/>
|
||||
Type: `bool`
|
||||
|
||||
### MinWidth
|
||||
@ -137,6 +143,7 @@ Type: `bool`
|
||||
This sets the minimum width for the window. If the value given in `Width` is less than this value,
|
||||
the window will be set to `MinWidth` by default.
|
||||
|
||||
Name: MinWidth<br/>
|
||||
Type: `int`
|
||||
|
||||
### MinHeight
|
||||
@ -144,6 +151,7 @@ Type: `int`
|
||||
This sets the minimum height for the window. If the value given in `Height` is less than this value,
|
||||
the window will be set to `MinHeight` by default.
|
||||
|
||||
Name: MinHeight<br/>
|
||||
Type: `int`
|
||||
|
||||
### MaxWidth
|
||||
@ -151,6 +159,7 @@ Type: `int`
|
||||
This sets the maximum width for the window. If the value given in `Width` is more than this value,
|
||||
the window will be set to `MaxWidth` by default.
|
||||
|
||||
Name: MaxWidth<br/>
|
||||
Type: `int`
|
||||
|
||||
### MaxHeight
|
||||
@ -158,6 +167,7 @@ Type: `int`
|
||||
This sets the maximum height for the window. If the value given in `Height` is more than this value,
|
||||
the window will be set to `MaxHeight` by default.
|
||||
|
||||
Name: MaxHeight<br/>
|
||||
Type: `int`
|
||||
|
||||
### StartHidden
|
||||
@ -165,13 +175,16 @@ Type: `int`
|
||||
When set to `true`, the application will be hidden until [WindowShow](../reference/runtime/window.mdx#windowshow)
|
||||
is called.
|
||||
|
||||
Name: StartHidden<br/>
|
||||
Type: `bool`
|
||||
|
||||
### HideWindowOnClose
|
||||
|
||||
By default, closing the window will close the application. Setting this to `true` means closing the window will
|
||||
|
||||
hide the window instead.
|
||||
|
||||
Name: HideWindowOnClose<br/>
|
||||
Type: `bool`
|
||||
|
||||
### BackgroundColour
|
||||
@ -179,6 +192,7 @@ Type: `bool`
|
||||
This value is the default background colour of the window.
|
||||
Example: options.NewRGBA(255,0,0,128) - Red at 50% transparency
|
||||
|
||||
Name: BackgroundColour<br/>
|
||||
Type: `*options.RGBA`<br/>
|
||||
Default: white
|
||||
|
||||
@ -186,12 +200,14 @@ Default: white
|
||||
|
||||
Indicates that the window should stay above other windows when losing focus.
|
||||
|
||||
Name: AlwaysOnTop<br/>
|
||||
Type: `bool`
|
||||
|
||||
### Assets
|
||||
|
||||
The frontend assets to be used by the application. Requires an `index.html` file.
|
||||
|
||||
Name: Assets<br/>
|
||||
Type: `embed.FS`
|
||||
|
||||
### AssetsHandler
|
||||
@ -222,6 +238,7 @@ supported by the introduction of WebKit2GTK 2.36.0+ support.
|
||||
NOTE: When used in combination with a Frontend DevServer there might be limitations, eg. Vite serves the index.html
|
||||
on every path, that does not contain a file extension.
|
||||
|
||||
Name: AssetsHandler<br/>
|
||||
Type: `http.Handler`
|
||||
|
||||
### Menu
|
||||
@ -229,15 +246,19 @@ Type: `http.Handler`
|
||||
The menu to be used by the application. More details about Menus in the [Menu Reference](../reference/runtime/menu.mdx).
|
||||
|
||||
:::note
|
||||
|
||||
On Mac, if no menu is specified, a default menu will be created.
|
||||
|
||||
:::
|
||||
|
||||
Name: Menu<br/>
|
||||
Type: `*menu.Menu`
|
||||
|
||||
### Logger
|
||||
|
||||
The logger to be used by the application. More details about logging in the [Log Reference](../reference/runtime/log.mdx).
|
||||
|
||||
Name: Logger<br/>
|
||||
Type: `logger.Logger`<br/>
|
||||
Default: Logs to Stdout
|
||||
|
||||
@ -245,6 +266,7 @@ Default: Logs to Stdout
|
||||
|
||||
The default log level. More details about logging in the [Log Reference](../reference/runtime/log.mdx).
|
||||
|
||||
Name: LogLevel<br/>
|
||||
Type: `logger.LogLevel`<br/>
|
||||
Default: `Info` in dev mode, `Error` in production mode
|
||||
|
||||
@ -252,6 +274,7 @@ Default: `Info` in dev mode, `Error` in production mode
|
||||
|
||||
The default log level for production builds. More details about logging in the [Log Reference](../reference/runtime/log.mdx).
|
||||
|
||||
Name: LogLevelProduction<br/>
|
||||
Type: `logger.LogLevel`<br/>
|
||||
Default: `Error`
|
||||
|
||||
@ -260,6 +283,7 @@ Default: `Error`
|
||||
This callback is called after the frontend has been created, but before `index.html` has been loaded. It is given
|
||||
the application context.
|
||||
|
||||
Name: OnStartup<br/>
|
||||
Type: `func(ctx context.Context)`
|
||||
|
||||
### OnDomReady
|
||||
@ -267,6 +291,7 @@ Type: `func(ctx context.Context)`
|
||||
This callback is called after the frontend has loaded `index.html` and its resources. It is given
|
||||
the application context.
|
||||
|
||||
Name: OnDomReady<br/>
|
||||
Type: `func(ctx context.Context)`
|
||||
|
||||
### OnShutdown
|
||||
@ -274,6 +299,7 @@ Type: `func(ctx context.Context)`
|
||||
This callback is called after the frontend has been destroyed, just before the application terminates. It is given
|
||||
the application context.
|
||||
|
||||
Name: OnShutdown<br/>
|
||||
Type: `func(ctx context.Context)`
|
||||
|
||||
### OnBeforeClose
|
||||
@ -287,11 +313,9 @@ Example:
|
||||
```go title=windowsapp.go
|
||||
func (b *App) beforeClose(ctx context.Context) (prevent bool) {
|
||||
dialog, err := runtime.MessageDialog(ctx, runtime.MessageDialogOptions{
|
||||
Type: runtime.QuestionDialog,
|
||||
Title: "Quit?",
|
||||
Message: "Are you sure you want to quit?",
|
||||
|
||||
Type: ` runtime`.QuestionDialog,
|
||||
|
||||
})
|
||||
|
||||
if err != nil {
|
||||
@ -301,6 +325,7 @@ func (b *App) beforeClose(ctx context.Context) (prevent bool) {
|
||||
}
|
||||
```
|
||||
|
||||
Name: OnBeforeClose<br/>
|
||||
Type: `func(ctx context.Context) bool`
|
||||
|
||||
### WindowStartState
|
||||
@ -313,82 +338,78 @@ Defines how the window should present itself at startup.
|
||||
| Maximised | ✅ | ✅ | ✅ |
|
||||
| Minimised | ✅ | ❌ | ✅ |
|
||||
|
||||
Name: WindowStartState<br/>
|
||||
Type: `options.WindowStartState`
|
||||
|
||||
### CSSDragProperty
|
||||
|
||||
Indicates the CSS property to use to identify which elements can be used to drag the window. Default: `--wails-draggable`.
|
||||
|
||||
Name: CSSDragProperty<br/>
|
||||
Type: `string`
|
||||
|
||||
### CSSDragValue
|
||||
|
||||
Indicates what value the `CSSDragProperty` style should have to drag the window. Default: `drag`.
|
||||
|
||||
Name: CSSDragValue<br/>
|
||||
Type: `string`
|
||||
|
||||
### Bind
|
||||
|
||||
A slice of struct instances defining methods that need to be bound to the frontend.
|
||||
|
||||
Name: Bind<br/>
|
||||
Type: `[]interface{}`
|
||||
|
||||
### Windows
|
||||
|
||||
This defines [Windows specific options](#windows-specific-options).
|
||||
|
||||
Name: Windows<br/>
|
||||
Type: `*windows.Options`
|
||||
|
||||
### Mac
|
||||
|
||||
This defines [Mac specific options](#mac-specific-options).
|
||||
|
||||
Type: `*mac.Options`
|
||||
|
||||
### Linux
|
||||
|
||||
This defines [Linux specific options](#linux-specific-options).
|
||||
|
||||
Type: `*linux.Options`
|
||||
|
||||
## Windows Specific Options
|
||||
|
||||
### WebviewIsTransparent
|
||||
#### WebviewIsTransparent
|
||||
|
||||
Setting this to `true` will make the webview background transparent when an alpha value of `0` is used.
|
||||
This means that if you use `rgba(0,0,0,0)` for `background-color` in your CSS, the host window will show through.
|
||||
Often combined with [WindowIsTranslucent](#WindowIsTranslucent) to make frosty-looking applications.
|
||||
|
||||
Name: WebviewIsTransparent<br/>
|
||||
Type: `bool`
|
||||
|
||||
### WindowIsTranslucent
|
||||
#### WindowIsTranslucent
|
||||
|
||||
Setting this to `true` will make the window background translucent. Often combined
|
||||
with [WebviewIsTransparent](#WebviewIsTransparent) to make frosty-looking applications.
|
||||
|
||||
Name: WindowIsTranslucent<br/>
|
||||
Type: `bool`
|
||||
|
||||
### DisableWindowIcon
|
||||
#### DisableWindowIcon
|
||||
|
||||
Setting this to `true` will remove the icon in the top left corner of the title bar.
|
||||
|
||||
Name: DisableWindowIcon<br/>
|
||||
Type: `bool`
|
||||
|
||||
### DisableFramelessWindowDecorations
|
||||
#### DisableFramelessWindowDecorations
|
||||
|
||||
Setting this to `true` will remove the window decorations in [Frameless](#Frameless) mode. This means there will be no
|
||||
'Aero Shadow' and no 'Rounded Corners' shown for the window. Please note that 'Rounded Corners' are only supported on
|
||||
Windows 11.
|
||||
|
||||
Name: DisableFramelessWindowDecorations<br/>
|
||||
Type: `bool`
|
||||
|
||||
### WebviewUserDataPath
|
||||
#### WebviewUserDataPath
|
||||
|
||||
This defines the path where the WebView2 stores the user data. If empty `%APPDATA%\[BinaryName.exe]` will be used.
|
||||
|
||||
Name: WebviewUserDataPath<br/>
|
||||
Type: `string`
|
||||
|
||||
### WebviewBrowserPath
|
||||
#### WebviewBrowserPath
|
||||
|
||||
This defines the path to a directory with WebView2 executable files and libraries. If empty, webview2 installed in the system will be used.
|
||||
|
||||
@ -398,9 +419,10 @@ Important information about distribution of fixed version runtime:
|
||||
- [Known issues for fixed version](https://docs.microsoft.com/en-us/microsoft-edge/webview2/concepts/distribution#known-issues-for-fixed-version)
|
||||
- [The path of fixed version of the WebView2 Runtime should not contain \Edge\Application\.](https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/win32/webview2-idl?view=webview2-1.0.1245.22#createcorewebview2environmentwithoptions)
|
||||
|
||||
Name: WebviewBrowserPath<br/>
|
||||
Type: `string`
|
||||
|
||||
### Theme
|
||||
#### Theme
|
||||
|
||||
Minimum Windows Version: Windows 10 2004/20H1
|
||||
|
||||
@ -412,20 +434,24 @@ This defines the theme that the application should use:
|
||||
| Dark | The application will use a dark theme exclusively |
|
||||
| Light | The application will use a light theme exclusively |
|
||||
|
||||
Name: Theme<br/>
|
||||
Type: `windows.Theme`
|
||||
|
||||
### CustomTheme
|
||||
#### CustomTheme
|
||||
|
||||
:::note
|
||||
|
||||
Minimum Windows Version: Windows 10/11 2009/21H2 Build 22000
|
||||
|
||||
:::
|
||||
|
||||
Allows you to specify custom colours for TitleBar, TitleText and Border for both light and dark mode, as well as
|
||||
when the window is active or inactive.
|
||||
|
||||
Name: CustomTheme<br/>
|
||||
Type: `windows.CustomTheme`
|
||||
|
||||
#### CustomTheme Type
|
||||
##### CustomTheme type
|
||||
|
||||
The CustomTheme struct uses `int32` to specify the colour values. These are in the standard(!) Windows format of:
|
||||
`0x00BBGGAA`. A helper function is provided to do RGB conversions into this format: `windows.RGB(r,g,b uint8)`.
|
||||
@ -470,71 +496,52 @@ Example:
|
||||
},
|
||||
```
|
||||
|
||||
### Messages
|
||||
#### Messages
|
||||
|
||||
A struct of strings used by the webview2 installer if a valid webview2 runtime is not found.
|
||||
|
||||
Name: Messages<br/>
|
||||
Type: `*windows.Messages`
|
||||
|
||||
Customise this for any language you choose to support.
|
||||
|
||||
### ResizeDebounceMS
|
||||
#### ResizeDebounceMS
|
||||
|
||||
ResizeDebounceMS is the amount of time to debounce redraws of webview2 when resizing the window.
|
||||
The default value (0) will perform redraws as fast as it can.
|
||||
|
||||
Name: ResizeDebounceMS<br/>
|
||||
Type: `uint16`
|
||||
|
||||
### OnSuspend
|
||||
#### OnSuspend
|
||||
|
||||
If set, this function will be called when windows initiates a switch to low power mode (suspend/hibernate)
|
||||
|
||||
Name: OnSuspend<br/>
|
||||
Type: `func()`
|
||||
|
||||
### OnResume
|
||||
#### OnResume
|
||||
|
||||
If set, this function will be called when windows resumes from low power mode (suspend/hibernate)
|
||||
|
||||
Name: OnResume<br/>
|
||||
Type: `func()`
|
||||
|
||||
## Mac Specific Options
|
||||
### Mac
|
||||
|
||||
### TitleBar
|
||||
This defines [Mac specific options](#mac-specific-options).
|
||||
|
||||
Name: Mac<br/>
|
||||
Type: `*mac.Options`
|
||||
|
||||
#### TitleBar
|
||||
|
||||
The TitleBar struct provides the ability to configure the look and feel of the title bar.
|
||||
|
||||
Name: TitleBar<br/>
|
||||
Type: [`*mac.TitleBar`](#titlebar-struct)
|
||||
|
||||
|
||||
### Appearance
|
||||
|
||||
Appearance is used to set the style of your app in accordance with Apple's [NSAppearance](https://developer.apple.com/documentation/appkit/nsappearancename?language=objc) names.
|
||||
|
||||
Type: [`AppearanceType`](#appearance-type)
|
||||
|
||||
### WebviewIsTransparent
|
||||
|
||||
Setting this to `true` will make the webview background transparent when an alpha value of `0` is used.
|
||||
This means that if you use `rgba(0,0,0,0)` for `background-color` in your CSS, the host window will show through.
|
||||
Often combined with [WindowIsTranslucent](#WindowIsTranslucent) to make frosty-looking applications.
|
||||
|
||||
Type: `bool`
|
||||
|
||||
### WindowIsTranslucent
|
||||
|
||||
Setting this to `true` will make the window background translucent. Often combined
|
||||
with [WebviewIsTransparent](#WebviewIsTransparent) to make frosty-looking applications.
|
||||
|
||||
Type: `bool`
|
||||
|
||||
### About
|
||||
|
||||
This configuration lets you set the title, message and icon for the "About" menu item in the app menu created by the "AppMenu" role.
|
||||
|
||||
Type: [`About`](#about-struct)
|
||||
|
||||
|
||||
#### Titlebar struct
|
||||
##### Titlebar struct
|
||||
|
||||
The titlebar of the application can be customised by using the TitleBar options:
|
||||
|
||||
@ -561,7 +568,7 @@ type TitleBar struct {
|
||||
Preconfigured titlebar settings are available:
|
||||
|
||||
| Setting | Example |
|
||||
| --------------------------- | --------------------------------------------- |
|
||||
| --------------------------- | ---------------------------------------------- |
|
||||
| `mac.TitleBarDefault()` |  |
|
||||
| `mac.TitleBarHidden()` |  |
|
||||
| `mac.TitleBarHiddenInset()` |  |
|
||||
@ -576,7 +583,14 @@ Mac: &mac.Options{
|
||||
|
||||
Click [here](https://github.com/lukakerr/NSWindowStyles) for some inspiration on customising the titlebar.
|
||||
|
||||
#### Appearance type
|
||||
#### Appearance
|
||||
|
||||
Appearance is used to set the style of your app in accordance with Apple's [NSAppearance](https://developer.apple.com/documentation/appkit/nsappearancename?language=objc) names.
|
||||
|
||||
Name: Appearance<br/>
|
||||
Type: [`mac.AppearanceType`](#appearance-type)
|
||||
|
||||
##### Appearance type
|
||||
|
||||
You can specify the application's [appearance](https://developer.apple.com/documentation/appkit/nsappearance?language=objc).
|
||||
|
||||
@ -599,9 +613,34 @@ Mac: &mac.Options{
|
||||
}
|
||||
```
|
||||
|
||||
#### About struct
|
||||
#### WebviewIsTransparent
|
||||
|
||||
Setting this to `true` will make the webview background transparent when an alpha value of `0` is used.
|
||||
This means that if you use `rgba(0,0,0,0)` for `background-color` in your CSS, the host window will show through.
|
||||
Often combined with [WindowIsTranslucent](#WindowIsTranslucent) to make frosty-looking applications.
|
||||
|
||||
Name: WebviewIsTransparent<br/>
|
||||
Type: `bool`
|
||||
|
||||
#### WindowIsTranslucent
|
||||
|
||||
Setting this to `true` will make the window background translucent. Often combined
|
||||
with [WebviewIsTransparent](#WebviewIsTransparent) to make frosty-looking applications.
|
||||
|
||||
Name: WindowIsTranslucent<br/>
|
||||
Type: `bool`
|
||||
|
||||
#### About
|
||||
|
||||
This configuration lets you set the title, message and icon for the "About" menu item in the app menu created by the "AppMenu" role.
|
||||
|
||||
Name: About<br/>
|
||||
Type: [`*mac.AboutInfo`](#about-struct)
|
||||
|
||||
##### About struct
|
||||
|
||||
```go
|
||||
|
||||
type AboutInfo struct {
|
||||
Title string
|
||||
Message string
|
||||
@ -631,6 +670,7 @@ func main() {
|
||||
|
||||
The "About" menu item will appear in the app menu:
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/reference/about-menu.webp").default}
|
||||
@ -638,9 +678,11 @@ The "About" menu item will appear in the app menu:
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
When clicked, that will open an about message box:
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/reference/about-dialog.webp").default}
|
||||
@ -649,13 +691,20 @@ When clicked, that will open an about message box:
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
## Linux Specific Options
|
||||
### Linux
|
||||
|
||||
### Icon
|
||||
This defines [Linux specific options](#linux-specific-options).
|
||||
|
||||
Name: Linux<br/>
|
||||
Type: `*linux.Options`
|
||||
|
||||
#### Icon
|
||||
|
||||
Sets up the icon representing the window. This icon is used when the window is minimized (also known as iconified).
|
||||
|
||||
Name: Icon<br/>
|
||||
Type: `[]byte`
|
||||
|
||||
Some window managers or desktop environments may also place it in the window frame, or display it in other contexts.
|
||||
|
@ -13,11 +13,11 @@ The project config resides in the `wails.json` file in the project directory. Th
|
||||
"reloaddirs": "[Additional directories to trigger reloads (comma separated), this is only used for some advanced asset configurations]",
|
||||
"frontend:install": "[The command to install node dependencies, run in the frontend directory - often `npm install`]",
|
||||
"frontend:build": "[The command to build the assets, run in the frontend directory - often `npm run build`]",
|
||||
"frontend:dev": "[This command has been replaced by frontend:dev:build. If frontend:dev:build is not specified will falls back to this command. If this command is also not specified will falls back to frontend:build]",
|
||||
"frontend:dev": "[This command has been replaced by frontend:dev:build. If frontend:dev:build is not specified will falls back to this command. \nIf this command is also not specified will falls back to frontend:build]",
|
||||
"frontend:dev:build": "[This command is the dev equivalent of frontend:build. If not specified falls back to frontend:dev]",
|
||||
"frontend:dev:install": "[This command is the dev equivalent of frontend:install. If not specified falls back to frontend:install]",
|
||||
"frontend:dev:watcher": "[This command is run in a separate process on `wails dev`. Useful for 3rd party watchers or starting 3d party dev servers]",
|
||||
"frontend:dev:serverUrl": "[URL to a 3rd party dev server to be used to serve assets, EG Vite. If this is set to 'auto' then the devServerUrl will be inferred from the Vite output]",
|
||||
"frontend:dev:serverUrl": "[URL to a 3rd party dev server to be used to serve assets, EG Vite. \nIf this is set to 'auto' then the devServerUrl will be inferred from the Vite output]",
|
||||
"wailsjsdir": "[Relative path to the directory that the auto-generated JS modules will be created]",
|
||||
"version": "[Project config version]",
|
||||
"outputfilename": "[The name of the binary]",
|
||||
|
@ -12,4 +12,3 @@ Opens the given URL in the system browser.
|
||||
|
||||
Go: `BrowserOpenURL(ctx context.Context, url string)`<br/>
|
||||
JS: `BrowserOpenURL(url string)`
|
||||
|
||||
|
@ -7,7 +7,9 @@ sidebar_position: 5
|
||||
This part of the runtime provides access to native dialogs, such as File Selectors and Message boxes.
|
||||
|
||||
:::info Javascript
|
||||
|
||||
Dialog is currently unsupported in the JS runtime.
|
||||
|
||||
:::
|
||||
|
||||
### OpenDirectoryDialog
|
||||
@ -151,14 +153,16 @@ selection, err := runtime.MessageDialog(b.ctx, runtime.MessageDialogOptions{
|
||||
|
||||
the first button is shown as default:
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src="/img/runtime/dialog_no_defaults.png"
|
||||
src={require("@site/static/img/runtime/dialog_no_defaults.png").default}
|
||||
width="30%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
And if we specify `DefaultButton` to be "two":
|
||||
|
||||
@ -173,14 +177,16 @@ selection, err := runtime.MessageDialog(b.ctx, runtime.MessageDialogOptions{
|
||||
|
||||
the second button is shown as default. When `return` is pressed, the value "two" is returned.
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src="/img/runtime/dialog_default_button.png"
|
||||
src={require("@site/static/img/runtime/dialog_default_button.png").default}
|
||||
width="30%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
If we now specify `CancelButton` to be "three":
|
||||
|
||||
@ -196,9 +202,10 @@ selection, err := runtime.MessageDialog(b.ctx, runtime.MessageDialogOptions{
|
||||
|
||||
the button with "three" is shown at the bottom of the dialog. When `escape` is pressed, the value "three" is returned:
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src="/img/runtime/dialog_default_cancel.png"
|
||||
src={require("@site/static/img/runtime/dialog_default_cancel.png").default}
|
||||
width="30%"
|
||||
class="screenshot"
|
||||
/>
|
||||
@ -206,6 +213,7 @@ the button with "three" is shown at the bottom of the dialog. When `escape` is p
|
||||
<br />
|
||||
<br />
|
||||
<br />
|
||||
```
|
||||
|
||||
#### DialogType
|
||||
|
||||
@ -232,9 +240,10 @@ type FileFilter struct {
|
||||
Windows allows you to use multiple file filters in dialog boxes. Each FileFilter will show up as a separate entry in the
|
||||
dialog:
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src="/img/runtime/dialog_win_filters.png"
|
||||
src={require("@site/static/img/runtime/dialog_win_filters.png").default}
|
||||
width="50%"
|
||||
class="screenshot"
|
||||
/>
|
||||
@ -242,15 +251,17 @@ dialog:
|
||||
<br />
|
||||
<br />
|
||||
<br />
|
||||
```
|
||||
|
||||
#### Linux
|
||||
|
||||
Linux allows you to use multiple file filters in dialog boxes. Each FileFilter will show up as a separate entry in the
|
||||
dialog:
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src="/img/runtime/dialog_lin_filters.png"
|
||||
src={require("@site/static/img/runtime/dialog_lin_filters.png").default}
|
||||
width="50%"
|
||||
class="screenshot"
|
||||
/>
|
||||
@ -258,6 +269,7 @@ dialog:
|
||||
<br />
|
||||
<br />
|
||||
<br />
|
||||
```
|
||||
|
||||
#### Mac
|
||||
|
||||
|
@ -42,4 +42,3 @@ This method emits the given event. Optional data may be passed with the event. T
|
||||
|
||||
Go: `EventsEmit(ctx context.Context, eventName string, optionalData ...interface{})`<br/>
|
||||
JS: `EventsEmit(ctx context, optionalData function(optionalData?: any))`
|
||||
|
||||
|
@ -41,9 +41,11 @@ JS: `Hide()`
|
||||
Hides the application.
|
||||
|
||||
:::info Note
|
||||
|
||||
On Mac, this will hide the application in the same way as the `Hide` menu item in standard Mac applications.
|
||||
This is different to hiding the window, but the application still being in the foreground.
|
||||
For Windows and Linux, this is currently the same as `WindowHide`.
|
||||
|
||||
:::
|
||||
|
||||
### Show
|
||||
@ -51,8 +53,10 @@ For Windows and Linux, this is currently the same as `WindowHide`.
|
||||
Shows the application.
|
||||
|
||||
:::info Note
|
||||
|
||||
On Mac, this will bring the application back into the foreground.
|
||||
For Windows and Linux, this is currently the same as `WindowShow`.
|
||||
|
||||
:::
|
||||
|
||||
Go: `Show(ctx context.Context)`<br/>
|
||||
@ -75,6 +79,7 @@ JS: `Environment(): Promise<EnvironmentInfo>`
|
||||
#### EnvironmentInfo
|
||||
|
||||
Go:
|
||||
|
||||
```go
|
||||
type EnvironmentInfo struct {
|
||||
BuildType string
|
||||
@ -82,7 +87,9 @@ type EnvironmentInfo struct {
|
||||
Arch string
|
||||
}
|
||||
```
|
||||
|
||||
JS:
|
||||
|
||||
```ts
|
||||
interface EnvironmentInfo {
|
||||
buildType: string;
|
||||
|
@ -7,7 +7,9 @@ sidebar_position: 6
|
||||
These methods are related to the application menu.
|
||||
|
||||
:::info Javascript
|
||||
|
||||
Menu is currently unsupported in the JS runtime.
|
||||
|
||||
:::
|
||||
|
||||
### MenuSetApplicationMenu
|
||||
|
@ -31,7 +31,7 @@ JS: `WindowUnfullscreen()`
|
||||
|
||||
Returns true if the window is full screen.
|
||||
|
||||
Go: `WindowIsFullscreen(ctx context.Context) bool`
|
||||
Go: `WindowIsFullscreen(ctx context.Context) bool`<br/>
|
||||
JS: `WindowIsFullscreen() bool`
|
||||
|
||||
### WindowCenter
|
||||
@ -100,7 +100,7 @@ JS: `WindowHide()`
|
||||
|
||||
Returns true if the window not minimised, maximised or fullscreen.
|
||||
|
||||
Go: `WindowIsNormal(ctx context.Context) bool`
|
||||
Go: `WindowIsNormal(ctx context.Context) bool`<br/>
|
||||
JS: `WindowIsNormal() bool`
|
||||
|
||||
### WindowSetSize
|
||||
@ -176,7 +176,7 @@ JS: `WindowUnmaximise()`
|
||||
|
||||
Returns true if the window is maximised.
|
||||
|
||||
Go: `WindowIsMaximised(ctx context.Context) bool`
|
||||
Go: `WindowIsMaximised(ctx context.Context) bool`<br/>
|
||||
JS: `WindowIsMaximised() bool`
|
||||
|
||||
### WindowToggleMaximise
|
||||
@ -204,7 +204,7 @@ JS: `WindowUnminimise()`
|
||||
|
||||
Returns true if the window is minimised.
|
||||
|
||||
Go: `WindowIsMinimised(ctx context.Context) bool`
|
||||
Go: `WindowIsMinimised(ctx context.Context) bool`<br/>
|
||||
JS: `WindowIsMinimised() bool`
|
||||
|
||||
### WindowSetBackgroundColour
|
||||
@ -215,8 +215,10 @@ This colour will show through for all transparent pixels.
|
||||
Valid values for R, G, B and A are 0-255.
|
||||
|
||||
:::info Windows
|
||||
|
||||
On Windows, only alpha values of 0 or 255 are supported.
|
||||
Any value that is not 0 will be considered 255.
|
||||
|
||||
:::
|
||||
|
||||
Go: `WindowSetBackgroundColour(ctx context.Context, R, G, B, A uint8)`<br/>
|
||||
|
@ -4,6 +4,7 @@ sidebar_position: 20
|
||||
|
||||
# Dogs API
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/tutorials/dogsapi/img.webp").default}
|
||||
@ -12,10 +13,13 @@ sidebar_position: 20
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
:::note
|
||||
|
||||
This tutorial has been kindly provided by [@tatadan](https://twitter.com/tatadan) and forms part of
|
||||
their [Wails Examples Repository](https://github.com/tataDan/wails-v2-examples).
|
||||
|
||||
:::
|
||||
|
||||
In this tutorial we are going to develop an application that retrieves photos of dogs from the web
|
||||
@ -24,7 +28,7 @@ and then displays them.
|
||||
### Create the project
|
||||
|
||||
Let's create the application. From a terminal enter:
|
||||
```wails init -n dogs-api -t svelte```
|
||||
`wails init -n dogs-api -t svelte`
|
||||
|
||||
Note: We could optionally add `-ide vscode` or `-ide goland` to the end of this command if you wanted
|
||||
to add IDE support.
|
||||
@ -151,6 +155,7 @@ import (
|
||||
|
||||
Add the following lines to `frontend/src/App.svelte`:
|
||||
|
||||
<!-- prettier-ignore-start -->
|
||||
```html
|
||||
<script>
|
||||
import { GetRandomImageUrl } from "../wailsjs/go/main/App.js";
|
||||
@ -233,6 +238,7 @@ Add the following lines to `frontend/src/App.svelte`:
|
||||
}
|
||||
</style>
|
||||
```
|
||||
<!-- prettier-ignore-end -->
|
||||
|
||||
### Testing the application
|
||||
|
||||
@ -241,8 +247,3 @@ To generate the bindings and test the application, run `wails dev`.
|
||||
### Compiling the application
|
||||
|
||||
To compile the application to a single, production grade binary, run `wails build`.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -12,8 +12,10 @@ application using Wails. You will be able to:
|
||||
- Run the application
|
||||
|
||||
:::note
|
||||
|
||||
This tutorial uses Windows as the target platform. Output will vary slightly
|
||||
depending on your operating system.
|
||||
|
||||
:::
|
||||
|
||||
## Create a new Wails application
|
||||
@ -94,6 +96,7 @@ This has compiled the application and saved it in the `build/bin` directory.
|
||||
|
||||
If we view the `build/bin` directory in Windows Explorer, we should see our project binary:
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/helloworld-app-icon.webp").default}
|
||||
@ -101,6 +104,7 @@ If we view the `build/bin` directory in Windows Explorer, we should see our proj
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
||||
We can run it by simply double-clicking the `helloworld.exe` file.
|
||||
|
||||
@ -110,6 +114,7 @@ On Linux, you can run the application using `./helloworld` from the `build/bin`
|
||||
|
||||
You should see the application working as expected:
|
||||
|
||||
```mdx-code-block
|
||||
<div class="text--center">
|
||||
<img
|
||||
src={require("@site/static/img/windows-default-app.webp").default}
|
||||
@ -118,3 +123,4 @@ You should see the application working as expected:
|
||||
/>
|
||||
</div>
|
||||
<br />
|
||||
```
|
||||
|
@ -123,6 +123,10 @@ const config = {
|
||||
to: "/community-guide",
|
||||
label: "Community Guide",
|
||||
},
|
||||
{
|
||||
to: "/coc",
|
||||
label: "Code of Conduct",
|
||||
},
|
||||
{
|
||||
to: "/credits",
|
||||
label: "Credits",
|
||||
|
@ -1,415 +0,0 @@
|
||||
{
|
||||
"homepage.Features.Title1": {
|
||||
"message": "crwdns35144:0crwdne35144:0"
|
||||
},
|
||||
"homepage.Features.Description1": {
|
||||
"message": "crwdns35146:0crwdne35146:0"
|
||||
},
|
||||
"homepage.Features.Title2": {
|
||||
"message": "crwdns35148:0crwdne35148:0"
|
||||
},
|
||||
"homepage.Features.Description2": {
|
||||
"message": "crwdns35150:0crwdne35150:0"
|
||||
},
|
||||
"homepage.Features.Title3": {
|
||||
"message": "crwdns35152:0crwdne35152:0"
|
||||
},
|
||||
"homepage.Features.Description3": {
|
||||
"message": "crwdns35154:0crwdne35154:0"
|
||||
},
|
||||
"homepage.Tagline": {
|
||||
"message": "crwdns35156:0crwdne35156:0"
|
||||
},
|
||||
"homepage.ButtonText": {
|
||||
"message": "crwdns35158:0crwdne35158:0"
|
||||
},
|
||||
"homepage.LearnMoreButtonText": {
|
||||
"message": "crwdns35160:0crwdne35160:0"
|
||||
},
|
||||
"theme.ErrorPageContent.title": {
|
||||
"message": "crwdns35162:0crwdne35162:0",
|
||||
"description": "The title of the fallback page when the page crashed"
|
||||
},
|
||||
"theme.ErrorPageContent.tryAgain": {
|
||||
"message": "crwdns35164:0crwdne35164:0",
|
||||
"description": "The label of the button to try again when the page crashed"
|
||||
},
|
||||
"theme.NotFound.title": {
|
||||
"message": "crwdns35166:0crwdne35166:0",
|
||||
"description": "The title of the 404 page"
|
||||
},
|
||||
"theme.NotFound.p1": {
|
||||
"message": "crwdns35168:0crwdne35168:0",
|
||||
"description": "The first paragraph of the 404 page"
|
||||
},
|
||||
"theme.NotFound.p2": {
|
||||
"message": "crwdns35170:0crwdne35170:0",
|
||||
"description": "The 2nd paragraph of the 404 page"
|
||||
},
|
||||
"theme.AnnouncementBar.closeButtonAriaLabel": {
|
||||
"message": "crwdns35172:0crwdne35172:0",
|
||||
"description": "The ARIA label for close button of announcement bar"
|
||||
},
|
||||
"theme.blog.archive.title": {
|
||||
"message": "crwdns35174:0crwdne35174:0",
|
||||
"description": "The page & hero title of the blog archive page"
|
||||
},
|
||||
"theme.blog.archive.description": {
|
||||
"message": "crwdns35176:0crwdne35176:0",
|
||||
"description": "The page & hero description of the blog archive page"
|
||||
},
|
||||
"theme.BackToTopButton.buttonAriaLabel": {
|
||||
"message": "crwdns35178:0crwdne35178:0",
|
||||
"description": "The ARIA label for the back to top button"
|
||||
},
|
||||
"theme.blog.paginator.navAriaLabel": {
|
||||
"message": "crwdns35180:0crwdne35180:0",
|
||||
"description": "The ARIA label for the blog pagination"
|
||||
},
|
||||
"theme.blog.paginator.newerEntries": {
|
||||
"message": "crwdns35182:0crwdne35182:0",
|
||||
"description": "The label used to navigate to the newer blog posts page (previous page)"
|
||||
},
|
||||
"theme.blog.paginator.olderEntries": {
|
||||
"message": "crwdns35184:0crwdne35184:0",
|
||||
"description": "The label used to navigate to the older blog posts page (next page)"
|
||||
},
|
||||
"theme.blog.post.readingTime.plurals": {
|
||||
"message": "crwdns35186:0{readingTime}crwdne35186:0",
|
||||
"description": "Pluralized label for \"{readingTime} min read\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
|
||||
},
|
||||
"theme.blog.post.readMoreLabel": {
|
||||
"message": "crwdns35188:0{title}crwdne35188:0",
|
||||
"description": "The ARIA label for the link to full blog posts from excerpts"
|
||||
},
|
||||
"theme.blog.post.readMore": {
|
||||
"message": "crwdns35190:0crwdne35190:0",
|
||||
"description": "The label used in blog post item excerpts to link to full blog posts"
|
||||
},
|
||||
"theme.blog.post.paginator.navAriaLabel": {
|
||||
"message": "crwdns35192:0crwdne35192:0",
|
||||
"description": "The ARIA label for the blog posts pagination"
|
||||
},
|
||||
"theme.blog.post.paginator.newerPost": {
|
||||
"message": "crwdns35194:0crwdne35194:0",
|
||||
"description": "The blog post button label to navigate to the newer/previous post"
|
||||
},
|
||||
"theme.blog.post.paginator.olderPost": {
|
||||
"message": "crwdns35196:0crwdne35196:0",
|
||||
"description": "The blog post button label to navigate to the older/next post"
|
||||
},
|
||||
"theme.blog.sidebar.navAriaLabel": {
|
||||
"message": "crwdns35198:0crwdne35198:0",
|
||||
"description": "The ARIA label for recent posts in the blog sidebar"
|
||||
},
|
||||
"theme.blog.post.plurals": {
|
||||
"message": "crwdns35200:0{count}crwdne35200:0",
|
||||
"description": "Pluralized label for \"{count} posts\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
|
||||
},
|
||||
"theme.blog.tagTitle": {
|
||||
"message": "crwdns35202:0{nPosts}crwdnd35202:0{tagName}crwdne35202:0",
|
||||
"description": "The title of the page for a blog tag"
|
||||
},
|
||||
"theme.tags.tagsPageLink": {
|
||||
"message": "crwdns35204:0crwdne35204:0",
|
||||
"description": "The label of the link targeting the tag list page"
|
||||
},
|
||||
"theme.CodeBlock.copyButtonAriaLabel": {
|
||||
"message": "crwdns35206:0crwdne35206:0",
|
||||
"description": "The ARIA label for copy code blocks button"
|
||||
},
|
||||
"theme.CodeBlock.copied": {
|
||||
"message": "crwdns35208:0crwdne35208:0",
|
||||
"description": "The copied button label on code blocks"
|
||||
},
|
||||
"theme.CodeBlock.copy": {
|
||||
"message": "crwdns35210:0crwdne35210:0",
|
||||
"description": "The copy button label on code blocks"
|
||||
},
|
||||
"theme.colorToggle.ariaLabel": {
|
||||
"message": "crwdns35212:0{mode}crwdne35212:0",
|
||||
"description": "The ARIA label for the navbar color mode toggle"
|
||||
},
|
||||
"theme.colorToggle.ariaLabel.mode.dark": {
|
||||
"message": "crwdns35214:0crwdne35214:0",
|
||||
"description": "The name for the dark color mode"
|
||||
},
|
||||
"theme.colorToggle.ariaLabel.mode.light": {
|
||||
"message": "crwdns35216:0crwdne35216:0",
|
||||
"description": "The name for the light color mode"
|
||||
},
|
||||
"theme.docs.DocCard.categoryDescription": {
|
||||
"message": "crwdns35218:0{count}crwdne35218:0",
|
||||
"description": "The default description for a category card in the generated index about how many items this category includes"
|
||||
},
|
||||
"theme.docs.sidebar.expandButtonTitle": {
|
||||
"message": "crwdns35220:0crwdne35220:0",
|
||||
"description": "The ARIA label and title attribute for expand button of doc sidebar"
|
||||
},
|
||||
"theme.docs.sidebar.expandButtonAriaLabel": {
|
||||
"message": "crwdns35222:0crwdne35222:0",
|
||||
"description": "The ARIA label and title attribute for expand button of doc sidebar"
|
||||
},
|
||||
"theme.docs.paginator.navAriaLabel": {
|
||||
"message": "crwdns35224:0crwdne35224:0",
|
||||
"description": "The ARIA label for the docs pagination"
|
||||
},
|
||||
"theme.docs.paginator.previous": {
|
||||
"message": "crwdns35226:0crwdne35226:0",
|
||||
"description": "The label used to navigate to the previous doc"
|
||||
},
|
||||
"theme.docs.paginator.next": {
|
||||
"message": "crwdns35228:0crwdne35228:0",
|
||||
"description": "The label used to navigate to the next doc"
|
||||
},
|
||||
"theme.docs.sidebar.collapseButtonTitle": {
|
||||
"message": "crwdns35230:0crwdne35230:0",
|
||||
"description": "The title attribute for collapse button of doc sidebar"
|
||||
},
|
||||
"theme.docs.sidebar.collapseButtonAriaLabel": {
|
||||
"message": "crwdns35232:0crwdne35232:0",
|
||||
"description": "The title attribute for collapse button of doc sidebar"
|
||||
},
|
||||
"theme.DocSidebarItem.toggleCollapsedCategoryAriaLabel": {
|
||||
"message": "crwdns35234:0{label}crwdne35234:0",
|
||||
"description": "The ARIA label to toggle the collapsible sidebar category"
|
||||
},
|
||||
"theme.docs.tagDocListPageTitle.nDocsTagged": {
|
||||
"message": "crwdns35236:0{count}crwdne35236:0",
|
||||
"description": "Pluralized label for \"{count} docs tagged\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
|
||||
},
|
||||
"theme.docs.tagDocListPageTitle": {
|
||||
"message": "crwdns35238:0{nDocsTagged}crwdnd35238:0{tagName}crwdne35238:0",
|
||||
"description": "The title of the page for a docs tag"
|
||||
},
|
||||
"theme.docs.versionBadge.label": {
|
||||
"message": "crwdns35240:0{versionLabel}crwdne35240:0"
|
||||
},
|
||||
"theme.docs.versions.unreleasedVersionLabel": {
|
||||
"message": "crwdns35242:0{siteTitle}crwdnd35242:0{versionLabel}crwdne35242:0",
|
||||
"description": "The label used to tell the user that he's browsing an unreleased doc version"
|
||||
},
|
||||
"theme.docs.versions.unmaintainedVersionLabel": {
|
||||
"message": "crwdns35244:0{siteTitle}crwdnd35244:0{versionLabel}crwdne35244:0",
|
||||
"description": "The label used to tell the user that he's browsing an unmaintained doc version"
|
||||
},
|
||||
"theme.docs.versions.latestVersionSuggestionLabel": {
|
||||
"message": "crwdns35246:0{latestVersionLink}crwdnd35246:0{versionLabel}crwdne35246:0",
|
||||
"description": "The label used to tell the user to check the latest version"
|
||||
},
|
||||
"theme.docs.versions.latestVersionLinkLabel": {
|
||||
"message": "crwdns35248:0crwdne35248:0",
|
||||
"description": "The label used for the latest version suggestion link label"
|
||||
},
|
||||
"theme.common.editThisPage": {
|
||||
"message": "crwdns35250:0crwdne35250:0",
|
||||
"description": "The link label to edit the current page"
|
||||
},
|
||||
"theme.common.headingLinkTitle": {
|
||||
"message": "crwdns35252:0crwdne35252:0",
|
||||
"description": "Title for link to heading"
|
||||
},
|
||||
"theme.lastUpdated.atDate": {
|
||||
"message": "crwdns35254:0{date}crwdne35254:0",
|
||||
"description": "The words used to describe on which date a page has been last updated"
|
||||
},
|
||||
"theme.lastUpdated.byUser": {
|
||||
"message": "crwdns35256:0{user}crwdne35256:0",
|
||||
"description": "The words used to describe by who the page has been last updated"
|
||||
},
|
||||
"theme.lastUpdated.lastUpdatedAtBy": {
|
||||
"message": "crwdns35258:0{atDate}crwdnd35258:0{byUser}crwdne35258:0",
|
||||
"description": "The sentence used to display when a page has been last updated, and by who"
|
||||
},
|
||||
"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel": {
|
||||
"message": "crwdns35260:0crwdne35260:0",
|
||||
"description": "The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)"
|
||||
},
|
||||
"theme.navbar.mobileVersionsDropdown.label": {
|
||||
"message": "crwdns35262:0crwdne35262:0",
|
||||
"description": "The label for the navbar versions dropdown on mobile view"
|
||||
},
|
||||
"theme.common.skipToMainContent": {
|
||||
"message": "crwdns35264:0crwdne35264:0",
|
||||
"description": "The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation"
|
||||
},
|
||||
"theme.tags.tagsListLabel": {
|
||||
"message": "crwdns35266:0crwdne35266:0",
|
||||
"description": "The label alongside a tag list"
|
||||
},
|
||||
"theme.TOCCollapsible.toggleButtonLabel": {
|
||||
"message": "crwdns35268:0crwdne35268:0",
|
||||
"description": "The label used by the button on the collapsible TOC component"
|
||||
},
|
||||
"theme.navbar.mobileLanguageDropdown.label": {
|
||||
"message": "crwdns35270:0crwdne35270:0",
|
||||
"description": "The label for the mobile language switcher dropdown"
|
||||
},
|
||||
"theme.SearchBar.seeAll": {
|
||||
"message": "crwdns35272:0{count}crwdne35272:0"
|
||||
},
|
||||
"theme.SearchBar.label": {
|
||||
"message": "crwdns35274:0crwdne35274:0",
|
||||
"description": "The ARIA label and placeholder for search button"
|
||||
},
|
||||
"theme.SearchPage.documentsFound.plurals": {
|
||||
"message": "crwdns35276:0{count}crwdne35276:0",
|
||||
"description": "Pluralized label for \"{count} documents found\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
|
||||
},
|
||||
"theme.SearchPage.existingResultsTitle": {
|
||||
"message": "crwdns35278:0{query}crwdne35278:0",
|
||||
"description": "The search page title for non-empty query"
|
||||
},
|
||||
"theme.SearchPage.emptyResultsTitle": {
|
||||
"message": "crwdns35280:0crwdne35280:0",
|
||||
"description": "The search page title for empty query"
|
||||
},
|
||||
"theme.SearchPage.inputPlaceholder": {
|
||||
"message": "crwdns35282:0crwdne35282:0",
|
||||
"description": "The placeholder for search page input"
|
||||
},
|
||||
"theme.SearchPage.inputLabel": {
|
||||
"message": "crwdns35284:0crwdne35284:0",
|
||||
"description": "The ARIA label for search page input"
|
||||
},
|
||||
"theme.SearchPage.algoliaLabel": {
|
||||
"message": "crwdns35286:0crwdne35286:0",
|
||||
"description": "The ARIA label for Algolia mention"
|
||||
},
|
||||
"theme.SearchPage.noResultsText": {
|
||||
"message": "crwdns35288:0crwdne35288:0",
|
||||
"description": "The paragraph for empty search result"
|
||||
},
|
||||
"theme.SearchPage.fetchingNewResults": {
|
||||
"message": "crwdns35290:0crwdne35290:0",
|
||||
"description": "The paragraph for fetching new search results"
|
||||
},
|
||||
"theme.tags.tagsPageTitle": {
|
||||
"message": "crwdns35292:0crwdne35292:0",
|
||||
"description": "The title of the tag list page"
|
||||
},
|
||||
"theme.docs.breadcrumbs.home": {
|
||||
"message": "crwdns35294:0crwdne35294:0",
|
||||
"description": "The ARIA label for the home page in the breadcrumbs"
|
||||
},
|
||||
"theme.docs.breadcrumbs.navAriaLabel": {
|
||||
"message": "crwdns35296:0crwdne35296:0",
|
||||
"description": "The ARIA label for the breadcrumbs"
|
||||
},
|
||||
"theme.CodeBlock.wordWrapToggle": {
|
||||
"message": "crwdns35298:0crwdne35298:0",
|
||||
"description": "The title attribute for toggle word wrapping button of code block lines"
|
||||
},
|
||||
"theme.admonition.note": {
|
||||
"message": "crwdns36304:0crwdne36304:0",
|
||||
"description": "The default label used for the Note admonition (:::note)"
|
||||
},
|
||||
"theme.admonition.tip": {
|
||||
"message": "crwdns36306:0crwdne36306:0",
|
||||
"description": "The default label used for the Tip admonition (:::tip)"
|
||||
},
|
||||
"theme.admonition.danger": {
|
||||
"message": "crwdns36308:0crwdne36308:0",
|
||||
"description": "The default label used for the Danger admonition (:::danger)"
|
||||
},
|
||||
"theme.admonition.info": {
|
||||
"message": "crwdns36310:0crwdne36310:0",
|
||||
"description": "The default label used for the Info admonition (:::info)"
|
||||
},
|
||||
"theme.admonition.caution": {
|
||||
"message": "crwdns36312:0crwdne36312:0",
|
||||
"description": "The default label used for the Caution admonition (:::caution)"
|
||||
},
|
||||
"theme.SearchModal.searchBox.resetButtonTitle": {
|
||||
"message": "crwdns36314:0crwdne36314:0",
|
||||
"description": "The label and ARIA label for search box reset button"
|
||||
},
|
||||
"theme.SearchModal.searchBox.cancelButtonText": {
|
||||
"message": "crwdns36316:0crwdne36316:0",
|
||||
"description": "The label and ARIA label for search box cancel button"
|
||||
},
|
||||
"theme.SearchModal.startScreen.recentSearchesTitle": {
|
||||
"message": "crwdns36318:0crwdne36318:0",
|
||||
"description": "The title for recent searches"
|
||||
},
|
||||
"theme.SearchModal.startScreen.noRecentSearchesText": {
|
||||
"message": "crwdns36320:0crwdne36320:0",
|
||||
"description": "The text when no recent searches"
|
||||
},
|
||||
"theme.SearchModal.startScreen.saveRecentSearchButtonTitle": {
|
||||
"message": "crwdns36322:0crwdne36322:0",
|
||||
"description": "The label for save recent search button"
|
||||
},
|
||||
"theme.SearchModal.startScreen.removeRecentSearchButtonTitle": {
|
||||
"message": "crwdns36324:0crwdne36324:0",
|
||||
"description": "The label for remove recent search button"
|
||||
},
|
||||
"theme.SearchModal.startScreen.favoriteSearchesTitle": {
|
||||
"message": "crwdns36326:0crwdne36326:0",
|
||||
"description": "The title for favorite searches"
|
||||
},
|
||||
"theme.SearchModal.startScreen.removeFavoriteSearchButtonTitle": {
|
||||
"message": "crwdns36328:0crwdne36328:0",
|
||||
"description": "The label for remove favorite search button"
|
||||
},
|
||||
"theme.SearchModal.errorScreen.titleText": {
|
||||
"message": "crwdns36330:0crwdne36330:0",
|
||||
"description": "The title for error screen of search modal"
|
||||
},
|
||||
"theme.SearchModal.errorScreen.helpText": {
|
||||
"message": "crwdns36332:0crwdne36332:0",
|
||||
"description": "The help text for error screen of search modal"
|
||||
},
|
||||
"theme.SearchModal.footer.selectText": {
|
||||
"message": "crwdns36334:0crwdne36334:0",
|
||||
"description": "The explanatory text of the action for the enter key"
|
||||
},
|
||||
"theme.SearchModal.footer.selectKeyAriaLabel": {
|
||||
"message": "crwdns36336:0crwdne36336:0",
|
||||
"description": "The ARIA label for the Enter key button that makes the selection"
|
||||
},
|
||||
"theme.SearchModal.footer.navigateText": {
|
||||
"message": "crwdns36338:0crwdne36338:0",
|
||||
"description": "The explanatory text of the action for the Arrow up and Arrow down key"
|
||||
},
|
||||
"theme.SearchModal.footer.navigateUpKeyAriaLabel": {
|
||||
"message": "crwdns36340:0crwdne36340:0",
|
||||
"description": "The ARIA label for the Arrow up key button that makes the navigation"
|
||||
},
|
||||
"theme.SearchModal.footer.navigateDownKeyAriaLabel": {
|
||||
"message": "crwdns36342:0crwdne36342:0",
|
||||
"description": "The ARIA label for the Arrow down key button that makes the navigation"
|
||||
},
|
||||
"theme.SearchModal.footer.closeText": {
|
||||
"message": "crwdns36344:0crwdne36344:0",
|
||||
"description": "The explanatory text of the action for Escape key"
|
||||
},
|
||||
"theme.SearchModal.footer.closeKeyAriaLabel": {
|
||||
"message": "crwdns36346:0crwdne36346:0",
|
||||
"description": "The ARIA label for the Escape key button that close the modal"
|
||||
},
|
||||
"theme.SearchModal.footer.searchByText": {
|
||||
"message": "crwdns36348:0crwdne36348:0",
|
||||
"description": "The text explain that the search is making by Algolia"
|
||||
},
|
||||
"theme.SearchModal.noResultsScreen.noResultsText": {
|
||||
"message": "crwdns36350:0crwdne36350:0",
|
||||
"description": "The text explains that there are no results for the following search"
|
||||
},
|
||||
"theme.SearchModal.noResultsScreen.suggestedQueryText": {
|
||||
"message": "crwdns36352:0crwdne36352:0",
|
||||
"description": "The text for the suggested query when no results are found for the following search"
|
||||
},
|
||||
"theme.SearchModal.noResultsScreen.reportMissingResultsText": {
|
||||
"message": "crwdns36354:0crwdne36354:0",
|
||||
"description": "The text for the question where the user thinks there are missing results"
|
||||
},
|
||||
"theme.SearchModal.noResultsScreen.reportMissingResultsLinkText": {
|
||||
"message": "crwdns36356:0crwdne36356:0",
|
||||
"description": "The text for the link to report missing results"
|
||||
},
|
||||
"theme.SearchModal.placeholder": {
|
||||
"message": "crwdns36358:0crwdne36358:0",
|
||||
"description": "The placeholder of the input of the DocSearch pop-up modal"
|
||||
}
|
||||
}
|
@ -1,155 +0,0 @@
|
||||
---
|
||||
slug: crwdns33374:0crwdne33374:0
|
||||
title: crwdns33376:0crwdne33376:0
|
||||
authors:
|
||||
- crwdns33378:0crwdne33378:0
|
||||
tags:
|
||||
- crwdns33380:0crwdne33380:0
|
||||
- crwdns33382:0crwdne33382:0
|
||||
---
|
||||
|
||||
<div class="text--center">
|
||||
<img
|
||||
src=crwdns36786:0crwdne36786:0
|
||||
width="40%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
crwdns35626:0crwdne35626:0 crwdns35628:0crwdne35628:0
|
||||
|
||||
crwdns35630:0crwdne35630:0 crwdns35632:0crwdne35632:0 crwdns35634:0crwdne35634:0 crwdns35636:0crwdne35636:0
|
||||
|
||||
crwdns33398:0crwdne33398:0 crwdns33400:0crwdne33400:0 crwdns35638:0crwdne35638:0
|
||||
|
||||
crwdns33404:0crwdne33404:0 crwdns35640:0crwdne35640:0
|
||||
|
||||
### crwdns33408:0crwdne33408:0
|
||||
|
||||
crwdns35642:0crwdne35642:0 crwdns35644:0crwdne35644:0 crwdns33414:0crwdne33414:0 crwdns33416:0crwdne33416:0 crwdns35646:0crwdne35646:0 crwdns35648:0crwdne35648:0
|
||||
|
||||
### crwdns33422:0crwdne33422:0
|
||||
|
||||
<div class="text--center">
|
||||
<img
|
||||
src=crwdns35650:0crwdne35650:0
|
||||
width="75%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
crwdns33426:0crwdne33426:0 crwdns33428:0crwdne33428:0 crwdns33430:0crwdne33430:0
|
||||
|
||||
crwdns33432:0crwdne33432:0 crwdns33434:0crwdne33434:0 crwdns35652:0crwdne35652:0
|
||||
|
||||
crwdns35654:0crwdne35654:0 crwdns35656:0crwdne35656:0
|
||||
|
||||
crwdns33442:0crwdne33442:0 crwdns33444:0crwdne33444:0
|
||||
|
||||
### crwdns33446:0crwdne33446:0
|
||||
|
||||
<div class="text--center">
|
||||
<img
|
||||
src=crwdns36788:0crwdne36788:0
|
||||
width="60%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
crwdns33450:0crwdne33450:0 crwdns33452:0crwdne33452:0 crwdns33454:0crwdne33454:0 crwdns35660:0crwdne35660:0
|
||||
|
||||
crwdns33458:0crwdne33458:0 crwdns33460:0crwdne33460:0 crwdns33462:0crwdne33462:0 crwdns35662:0crwdne35662:0
|
||||
|
||||
crwdns33466:0crwdne33466:0 crwdns33468:0crwdne33468:0 crwdns33470:0crwdne33470:0
|
||||
|
||||
<div class="text--center">
|
||||
<img
|
||||
src=crwdns36790:0crwdne36790:0
|
||||
width="100%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
### crwdns33474:0crwdne33474:0
|
||||
|
||||
crwdns33476:0crwdne33476:0 crwdns35666:0crwdne35666:0 crwdns33480:0crwdne33480:0 crwdns35668:0crwdne35668:0 crwdns33484:0crwdne33484:0 crwdns33486:0crwdne33486:0
|
||||
|
||||
> crwdns33488:0crwdne33488:0
|
||||
|
||||
crwdns33490:0crwdne33490:0
|
||||
|
||||
> crwdns33492:0crwdne33492:0
|
||||
|
||||
crwdns33494:0crwdne33494:0 crwdns33496:0crwdne33496:0
|
||||
|
||||
### crwdns33498:0crwdne33498:0
|
||||
|
||||
<div class="text--center">
|
||||
<img
|
||||
src=crwdns36792:0crwdne36792:0
|
||||
width="60%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
crwdns33502:0crwdne33502:0 crwdns33504:0crwdne33504:0
|
||||
|
||||
crwdns33506:0crwdne33506:0
|
||||
|
||||
- crwdns33508:0crwdne33508:0
|
||||
- crwdns33510:0crwdne33510:0
|
||||
|
||||
crwdns33512:0crwdne33512:0 crwdns35672:0crwdne35672:0 crwdns33516:0crwdne33516:0
|
||||
|
||||
crwdns33518:0crwdne33518:0 crwdns33520:0crwdne33520:0 crwdns35674:0crwdne35674:0 crwdns33524:0crwdne33524:0 crwdns33526:0crwdne33526:0
|
||||
|
||||
crwdns33528:0crwdne33528:0 crwdns35676:0crwdne35676:0 crwdns35678:0crwdne35678:0
|
||||
|
||||
### crwdns33534:0crwdne33534:0
|
||||
|
||||
<div class="text--center">
|
||||
<img
|
||||
src=crwdns36794:0crwdne36794:0
|
||||
width="60%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
crwdns33538:0crwdne33538:0 crwdns33540:0crwdne33540:0 crwdns33542:0crwdne33542:0 crwdns35682:0crwdne35682:0 crwdns33546:0crwdne33546:0
|
||||
|
||||
crwdns33548:0crwdne33548:0 crwdns33550:0crwdne33550:0 crwdns35684:0crwdne35684:0 crwdns35686:0crwdne35686:0
|
||||
|
||||
### crwdns33556:0crwdne33556:0
|
||||
|
||||
crwdns33558:0crwdne33558:0 crwdns33560:0crwdne33560:0 crwdns33562:0crwdne33562:0 crwdns33564:0crwdne33564:0
|
||||
|
||||
crwdns33566:0crwdne33566:0 crwdns35688:0crwdne35688:0 crwdns35690:0crwdne35690:0 crwdns35692:0crwdne35692:0
|
||||
|
||||
crwdns33574:0:pray:crwdne33574:0
|
||||
|
||||
- crwdns33576:0crwdne33576:0
|
||||
- crwdns33578:0crwdne33578:0
|
||||
- crwdns33580:0crwdne33580:0
|
||||
- crwdns33582:0crwdne33582:0
|
||||
|
||||
crwdns35694:0crwdne35694:0
|
||||
|
||||
crwdns33586:0crwdne33586:0
|
||||
|
||||
crwdns33588:0crwdne33588:0
|
||||
|
||||
crwdns33590:0crwdne33590:0 crwdns33592:0crwdne33592:0
|
||||
|
||||
crwdns33594:0crwdne33594:0 crwdns33596:0crwdne33596:0
|
@ -1,163 +0,0 @@
|
||||
---
|
||||
slug: crwdns33598:0crwdne33598:0
|
||||
title: crwdns33600:0crwdne33600:0
|
||||
authors:
|
||||
- crwdns33602:0crwdne33602:0
|
||||
tags:
|
||||
- crwdns33604:0crwdne33604:0
|
||||
- crwdns33606:0crwdne33606:0
|
||||
---
|
||||
|
||||
<div class="text--center">
|
||||
<img
|
||||
src=crwdns36796:0crwdne36796:0
|
||||
width="60%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
crwdns33610:0crwdne33610:0 crwdns33612:0crwdne33612:0 crwdns33614:0crwdne33614:0
|
||||
|
||||
crwdns33616:0crwdne33616:0 crwdns33618:0crwdne33618:0
|
||||
|
||||
crwdns33620:0crwdne33620:0 crwdns33622:0:wink:crwdne33622:0
|
||||
|
||||
### crwdns33624:0crwdne33624:0
|
||||
|
||||
<div class="text--center">
|
||||
<img
|
||||
src=crwdns36798:0crwdne36798:0
|
||||
width="80%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
crwdns33628:0crwdne33628:0 crwdns33630:0crwdne33630:0 crwdns33632:0crwdne33632:0 crwdns35700:0crwdne35700:0
|
||||
|
||||
crwdns33636:0crwdne33636:0 crwdns33638:0crwdne33638:0 crwdns33640:0crwdne33640:0 crwdns35702:0crwdne35702:0
|
||||
|
||||
### crwdns33644:0crwdne33644:0
|
||||
|
||||
crwdns33646:0crwdne33646:0
|
||||
|
||||
- crwdns33648:0crwdne33648:0
|
||||
- crwdns33650:0crwdne33650:0
|
||||
- crwdns33652:0crwdne33652:0
|
||||
- crwdns33654:0crwdne33654:0
|
||||
|
||||
### crwdns33656:0crwdne33656:0
|
||||
|
||||
crwdns33658:0crwdne33658:0 crwdns35704:0crwdne35704:0 crwdns33662:0crwdne33662:0 crwdns35706:0crwdne35706:0 crwdns33666:0crwdne33666:0 crwdns33668:0crwdne33668:0
|
||||
|
||||
> crwdns33670:0crwdne33670:0
|
||||
|
||||
crwdns33672:0crwdne33672:0
|
||||
|
||||
> crwdns33674:0crwdne33674:0
|
||||
|
||||
crwdns33676:0crwdne33676:0 crwdns33678:0crwdne33678:0
|
||||
|
||||
### crwdns33680:0crwdne33680:0
|
||||
|
||||
crwdns33682:0crwdne33682:0 crwdns33684:0crwdne33684:0
|
||||
|
||||
crwdns33686:0crwdne33686:0
|
||||
|
||||
- crwdns33688:0crwdne33688:0
|
||||
- crwdns33690:0crwdne33690:0
|
||||
|
||||
crwdns33692:0crwdne33692:0 crwdns35708:0crwdne35708:0 crwdns33696:0crwdne33696:0
|
||||
|
||||
crwdns33698:0crwdne33698:0 crwdns33700:0crwdne33700:0 crwdns35710:0crwdne35710:0 crwdns33704:0crwdne33704:0 crwdns33706:0crwdne33706:0
|
||||
|
||||
crwdns33708:0crwdne33708:0 crwdns35712:0crwdne35712:0 crwdns35714:0crwdne35714:0
|
||||
|
||||
### crwdns33714:0crwdne33714:0
|
||||
|
||||
<div class="text--center">
|
||||
<img
|
||||
src=crwdns36800:0crwdne36800:0
|
||||
width="80%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
crwdns33718:0crwdne33718:0 crwdns33720:0crwdne33720:0 crwdns33722:0crwdne33722:0 crwdns35718:0crwdne35718:0 crwdns33726:0crwdne33726:0
|
||||
|
||||
crwdns33728:0crwdne33728:0 crwdns33730:0crwdne33730:0 crwdns35720:0crwdne35720:0 crwdns35722:0crwdne35722:0
|
||||
|
||||
### crwdns33736:0crwdne33736:0
|
||||
|
||||
crwdns33738:0crwdne33738:0
|
||||
|
||||
<div class="text--center">
|
||||
<img
|
||||
src=crwdns36802:0crwdne36802:0
|
||||
width="80%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
crwdns33742:0crwdne33742:0
|
||||
|
||||
<div class="text--center">
|
||||
<img
|
||||
src=crwdns36804:0crwdne36804:0
|
||||
width="80%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
crwdns33746:0:wink:crwdne33746:0
|
||||
|
||||
<div class="text--center">
|
||||
<img
|
||||
src=crwdns36806:0crwdne36806:0
|
||||
width="80%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
### crwdns33750:0crwdne33750:0
|
||||
|
||||
crwdns33752:0crwdne33752:0
|
||||
|
||||
<div class="text--center">
|
||||
<img
|
||||
src=crwdns36808:0crwdne36808:0
|
||||
width="80%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
### crwdns33756:0crwdne33756:0
|
||||
|
||||
crwdns33758:0crwdne33758:0 crwdns33760:0crwdne33760:0
|
||||
|
||||
### crwdns33762:0crwdne33762:0
|
||||
|
||||
crwdns33764:0crwdne33764:0 crwdns33766:0crwdne33766:0 crwdns33768:0crwdne33768:0 crwdns33770:0crwdne33770:0
|
||||
|
||||
crwdns35732:0crwdne35732:0
|
||||
|
||||
crwdns33774:0crwdne33774:0
|
||||
|
||||
crwdns33776:0crwdne33776:0
|
||||
|
||||
crwdns33778:0crwdne33778:0
|
||||
|
||||
crwdns33780:0crwdne33780:0 crwdns33782:0crwdne33782:0
|
@ -1,110 +0,0 @@
|
||||
---
|
||||
slug: crwdns33784:0crwdne33784:0
|
||||
title: crwdns33786:0crwdne33786:0
|
||||
authors:
|
||||
- crwdns33788:0crwdne33788:0
|
||||
tags:
|
||||
- crwdns33790:0crwdne33790:0
|
||||
- crwdns33792:0crwdne33792:0
|
||||
---
|
||||
|
||||
<div class="text--center">
|
||||
<img
|
||||
src=crwdns36810:0crwdne36810:0
|
||||
width="40%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
crwdns33796:0crwdne33796:0 crwdns33798:0crwdne33798:0 crwdns33800:0crwdne33800:0 crwdns33802:0crwdne33802:0
|
||||
|
||||
### crwdns33804:0crwdne33804:0
|
||||
|
||||
<div class="text--center">
|
||||
<img
|
||||
src=crwdns36812:0crwdne36812:0
|
||||
width="50%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
crwdns33808:0crwdne33808:0 crwdns33810:0crwdne33810:0 crwdns33812:0crwdne33812:0 crwdns35738:0crwdne35738:0
|
||||
|
||||
crwdns33816:0crwdne33816:0 crwdns33818:0crwdne33818:0 crwdns33820:0crwdne33820:0 crwdns35740:0crwdne35740:0
|
||||
|
||||
### crwdns33824:0crwdne33824:0
|
||||
|
||||
crwdns33826:0crwdne33826:0 crwdns35742:0crwdne35742:0 crwdns33830:0crwdne33830:0 crwdns35744:0crwdne35744:0 crwdns33834:0crwdne33834:0 crwdns33836:0crwdne33836:0
|
||||
|
||||
> crwdns33838:0crwdne33838:0
|
||||
|
||||
crwdns33840:0crwdne33840:0
|
||||
|
||||
> crwdns33842:0crwdne33842:0
|
||||
|
||||
crwdns33844:0crwdne33844:0 crwdns33846:0crwdne33846:0
|
||||
|
||||
### crwdns33848:0crwdne33848:0
|
||||
|
||||
crwdns33850:0crwdne33850:0 crwdns33852:0crwdne33852:0
|
||||
|
||||
crwdns33854:0crwdne33854:0
|
||||
|
||||
- crwdns33856:0crwdne33856:0
|
||||
- crwdns33858:0crwdne33858:0
|
||||
|
||||
crwdns33860:0crwdne33860:0 crwdns35746:0crwdne35746:0 crwdns33864:0crwdne33864:0
|
||||
|
||||
crwdns33866:0crwdne33866:0 crwdns33868:0crwdne33868:0 crwdns35748:0crwdne35748:0 crwdns33872:0crwdne33872:0 crwdns33874:0crwdne33874:0
|
||||
|
||||
crwdns33876:0crwdne33876:0 crwdns35750:0crwdne35750:0 crwdns35752:0crwdne35752:0
|
||||
|
||||
### crwdns33882:0crwdne33882:0
|
||||
|
||||
<div class="text--center">
|
||||
<img
|
||||
src=crwdns36814:0crwdne36814:0
|
||||
width="80%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
crwdns33886:0crwdne33886:0 crwdns33888:0crwdne33888:0 crwdns33890:0crwdne33890:0 crwdns35756:0crwdne35756:0 crwdns33894:0crwdne33894:0
|
||||
|
||||
crwdns33896:0crwdne33896:0 crwdns33898:0crwdne33898:0 crwdns35758:0crwdne35758:0 crwdns35760:0crwdne35760:0
|
||||
|
||||
### crwdns33904:0crwdne33904:0
|
||||
|
||||
crwdns33906:0crwdne33906:0
|
||||
|
||||
<div class="text--center">
|
||||
<img
|
||||
src="crwdns36816:0crwdne36816:0"
|
||||
width="80%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
### crwdns33910:0crwdne33910:0
|
||||
|
||||
crwdns33912:0crwdne33912:0 crwdns33914:0crwdne33914:0 crwdns33916:0crwdne33916:0 crwdns33918:0crwdne33918:0
|
||||
|
||||
crwdns33920:0crwdne33920:0 crwdns33922:0crwdne33922:0 crwdns33924:0crwdne33924:0
|
||||
|
||||
crwdns33926:0crwdne33926:0
|
||||
|
||||
crwdns33928:0crwdne33928:0
|
||||
|
||||
crwdns33930:0crwdne33930:0
|
||||
|
||||
crwdns33932:0crwdne33932:0
|
||||
|
||||
crwdns33934:0crwdne33934:0 crwdns33936:0crwdne33936:0
|
@ -1,10 +0,0 @@
|
||||
leaanthony:
|
||||
name: crwdns33938:0crwdne33938:0
|
||||
title: crwdns33940:0crwdne33940:0
|
||||
url: crwdns33942:0crwdne33942:0
|
||||
image_url: crwdns33944:0crwdne33944:0
|
||||
misitebao:
|
||||
name: crwdns33946:0crwdne33946:0
|
||||
title: crwdns33948:0crwdne33948:0
|
||||
url: crwdns33950:0crwdne33950:0
|
||||
image_url: crwdns33952:0crwdne33952:0
|
@ -1,14 +0,0 @@
|
||||
{
|
||||
"title": {
|
||||
"message": "crwdns35300:0crwdne35300:0",
|
||||
"description": "The title for the blog used in SEO"
|
||||
},
|
||||
"description": {
|
||||
"message": "crwdns35302:0crwdne35302:0",
|
||||
"description": "The description for the blog used in SEO"
|
||||
},
|
||||
"sidebar.title": {
|
||||
"message": "crwdns35304:0crwdne35304:0",
|
||||
"description": "The label for the left sidebar"
|
||||
}
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"label": "crwdns31148:0crwdne31148:0",
|
||||
"position": 0
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"label": "crwdns31152:0crwdne31152:0",
|
||||
"position": 0
|
||||
}
|
@ -1,23 +0,0 @@
|
||||
---
|
||||
sidebar_position: crwdns28472:0crwdne28472:0
|
||||
---
|
||||
|
||||
# crwdns28474:0crwdne28474:0
|
||||
|
||||
crwdns28476:0crwdne28476:0 crwdns28478:0crwdne28478:0
|
||||
|
||||
## crwdns28480:0crwdne28480:0
|
||||
|
||||
crwdns28482:0crwdne28482:0
|
||||
|
||||
## crwdns28484:0crwdne28484:0
|
||||
|
||||
- [crwdns28488:0crwdne28488:0](crwdns28486:0crwdne28486:0)
|
||||
- [crwdns28492:0crwdne28492:0](crwdns28490:0crwdne28490:0)
|
||||
- [crwdns28496:0crwdne28496:0](crwdns28494:0crwdne28494:0)
|
||||
- [crwdns28500:0crwdne28500:0](crwdns28498:0crwdne28498:0)
|
||||
|
||||
## crwdns28502:0crwdne28502:0
|
||||
|
||||
- [crwdns28506:0crwdne28506:0](crwdns28504:0crwdne28504:0)
|
||||
- crwdns28508:0crwdne28508:0
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"label": "crwdns31156:0crwdne31156:0",
|
||||
"position": 0
|
||||
}
|
@ -1,8 +0,0 @@
|
||||
# crwdns35436:0crwdne35436:0
|
||||
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src=crwdns36760:0crwdne36760:0 />
|
||||
<br />
|
||||
</p>
|
||||
|
||||
crwdns35440:0crwdne35440:0 crwdns35442:0crwdne35442:0 crwdns35444:0crwdne35444:0 crwdns35446:0crwdne35446:0
|
@ -1,10 +0,0 @@
|
||||
# crwdns28510:0crwdne28510:0
|
||||
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src=crwdns36762:0crwdne36762:0 />
|
||||
<br />
|
||||
</p>
|
||||
|
||||
**crwdns28514:0crwdne28514:0 crwdns28516:0crwdne28516:0 crwdns28518:0crwdne28518:0**
|
||||
|
||||
crwdns28520:0crwdne28520:0 crwdns28522:0crwdne28522:0 crwdns28524:0crwdne28524:0 crwdns28526:0crwdne28526:0 crwdns28528:0crwdne28528:0 crwdns28530:0crwdne28530:0
|
@ -1,14 +0,0 @@
|
||||
# crwdns28532:0crwdne28532:0
|
||||
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src=crwdns36764:0crwdne36764:0 />
|
||||
<br />
|
||||
</p>
|
||||
|
||||
crwdns28536:0crwdne28536:0
|
||||
|
||||
crwdns28538:0crwdne28538:0 crwdns28540:0crwdne28540:0 crwdns28542:0crwdne28542:0
|
||||
|
||||
crwdns28544:0crwdne28544:0
|
||||
|
||||
crwdns28546:0crwdne28546:0
|
@ -1,10 +0,0 @@
|
||||
# crwdns35596:0crwdne35596:0
|
||||
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img
|
||||
src=crwdns36766:0crwdne36766:0
|
||||
/>
|
||||
<br />
|
||||
</p>
|
||||
|
||||
crwdns35600:0crwdne35600:0 crwdns35602:0crwdne35602:0
|
@ -1,12 +0,0 @@
|
||||
# crwdns35448:0crwdne35448:0
|
||||
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img
|
||||
src=crwdns36768:0crwdne36768:0
|
||||
/>
|
||||
<br />
|
||||
</p>
|
||||
|
||||
crwdns35452:0crwdne35452:0 crwdns35454:0crwdne35454:0 crwdns35456:0crwdne35456:0 crwdns35458:0crwdne35458:0 crwdns35460:0crwdne35460:0
|
||||
|
||||
crwdns35462:0crwdne35462:0 crwdns35464:0crwdne35464:0 crwdns35466:0crwdne35466:0 crwdns35468:0crwdne35468:0
|
@ -1,8 +0,0 @@
|
||||
# crwdns28548:0crwdne28548:0
|
||||
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src=crwdns36770:0crwdne36770:0 />
|
||||
<br />
|
||||
</p>
|
||||
|
||||
crwdns28552:0$DAGcrwdne28552:0 crwdns28554:0$DAGcrwdne28554:0
|
@ -1,12 +0,0 @@
|
||||
# crwdns28556:0crwdne28556:0
|
||||
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src=crwdns36772:0crwdne36772:0 />
|
||||
<br />
|
||||
</p>
|
||||
|
||||
crwdns28560:0crwdne28560:0
|
||||
|
||||
crwdns28562:0crwdne28562:0
|
||||
|
||||
crwdns28564:0crwdne28564:0
|
@ -1,8 +0,0 @@
|
||||
# crwdns28566:0crwdne28566:0
|
||||
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src=crwdns36774:0crwdne36774:0 />
|
||||
<br />
|
||||
</p>
|
||||
|
||||
crwdns28570:0crwdne28570:0 crwdns28572:0crwdne28572:0
|
@ -1,8 +0,0 @@
|
||||
# crwdns28574:0crwdne28574:0
|
||||
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src=crwdns36776:0crwdne36776:0 />
|
||||
<br />
|
||||
</p>
|
||||
|
||||
crwdns28578:0crwdne28578:0
|
@ -1,10 +0,0 @@
|
||||
# crwdns28580:0crwdne28580:0
|
||||
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img
|
||||
src=crwdns35780:0crwdne35780:0
|
||||
/>
|
||||
<br />
|
||||
</p>
|
||||
|
||||
crwdns28584:0crwdne28584:0
|
@ -1,19 +0,0 @@
|
||||
# crwdns28586:0crwdne28586:0
|
||||
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src=crwdns35782:0crwdne35782:0 />
|
||||
<br />
|
||||
</p>
|
||||
|
||||
crwdns28590:0crwdne28590:0 crwdns28592:0crwdne28592:0
|
||||
|
||||
## crwdns28594:0crwdne28594:0
|
||||
|
||||
- crwdns28596:0crwdne28596:0
|
||||
- crwdns28598:0crwdne28598:0
|
||||
- crwdns28600:0crwdne28600:0
|
||||
- crwdns28602:0crwdne28602:0
|
||||
- crwdns28604:0crwdne28604:0
|
||||
- crwdns28606:0crwdne28606:0
|
||||
- crwdns28608:0crwdne28608:0
|
||||
- crwdns28610:0crwdne28610:0
|
@ -1,8 +0,0 @@
|
||||
# crwdns35504:0crwdne35504:0
|
||||
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src=crwdns36778:0crwdne36778:0 />
|
||||
<br />
|
||||
</p>
|
||||
|
||||
crwdns35508:0crwdne35508:0 crwdns35510:0crwdne35510:0 crwdns35512:0crwdne35512:0 crwdns35514:0crwdne35514:0 crwdns35516:0crwdne35516:0
|
@ -1,8 +0,0 @@
|
||||
# crwdns28612:0crwdne28612:0
|
||||
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src=crwdns35786:0crwdne35786:0 />
|
||||
<br />
|
||||
</p>
|
||||
|
||||
crwdns28616:0crwdne28616:0 crwdns28618:0crwdne28618:0
|
@ -1,8 +0,0 @@
|
||||
# crwdns28620:0crwdne28620:0
|
||||
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src=crwdns36780:0crwdne36780:0 />
|
||||
<br />
|
||||
</p>
|
||||
|
||||
crwdns28624:0crwdne28624:0 crwdns28626:0crwdne28626:0
|
@ -1,8 +0,0 @@
|
||||
# crwdns28628:0crwdne28628:0
|
||||
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src=crwdns36782:0crwdne36782:0 />
|
||||
<br />
|
||||
</p>
|
||||
|
||||
crwdns28632:0crwdne28632:0
|
@ -1,8 +0,0 @@
|
||||
# crwdns28634:0crwdne28634:0
|
||||
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img src=crwdns36784:0crwdne36784:0 />
|
||||
<br />
|
||||
</p>
|
||||
|
||||
crwdns28638:0crwdne28638:0
|
@ -1,52 +0,0 @@
|
||||
---
|
||||
sidebar_position: crwdns28640:0crwdne28640:0
|
||||
---
|
||||
|
||||
# crwdns28642:0crwdne28642:0
|
||||
|
||||
crwdns28644:0crwdne28644:0 crwdns28646:0crwdne28646:0 crwdns28648:0crwdne28648:0
|
||||
|
||||
crwdns28650:0crwdne28650:0
|
||||
|
||||
crwdns28652:0crwdne28652:0 crwdns28654:0crwdne28654:0
|
||||
|
||||
crwdns28656:0crwdne28656:0
|
||||
|
||||
crwdns28658:0crwdne28658:0
|
||||
|
||||
**crwdns28660:0crwdne28660:0**
|
||||
|
||||
crwdns28662:0crwdne28662:0
|
||||
|
||||
crwdns28664:0crwdne28664:0
|
||||
|
||||
## crwdns28666:0crwdne28666:0
|
||||
|
||||
- crwdns28668:0crwdne28668:0
|
||||
- crwdns28670:0crwdne28670:0
|
||||
- crwdns28672:0crwdne28672:0
|
||||
|
||||
## crwdns28674:0crwdne28674:0
|
||||
|
||||
- crwdns28676:0crwdne28676:0
|
||||
|
||||
## crwdns28678:0crwdne28678:0
|
||||
|
||||
- crwdns28680:0crwdne28680:0
|
||||
- crwdns28682:0crwdne28682:0
|
||||
- crwdns28684:0crwdne28684:0
|
||||
|
||||
## crwdns28686:0crwdne28686:0
|
||||
|
||||
- crwdns28688:0crwdne28688:0
|
||||
- crwdns28690:0crwdne28690:0
|
||||
- crwdns28692:0crwdne28692:0
|
||||
- crwdns28694:0crwdne28694:0
|
||||
|
||||
## crwdns28696:0crwdne28696:0
|
||||
|
||||
- crwdns28698:0:tada:crwdnd28698:0:rocket:crwdne28698:0
|
||||
|
||||
## crwdns36756:0crwdne36756:0
|
||||
|
||||
- crwdns36758:0crwdne36758:0
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"label": "crwdns31164:0crwdne31164:0",
|
||||
"position": 0
|
||||
}
|
@ -1,21 +0,0 @@
|
||||
---
|
||||
sidebar_position: crwdns28930:0crwdne28930:0
|
||||
---
|
||||
|
||||
# crwdns28932:0crwdne28932:0
|
||||
|
||||
crwdns28934:0crwdne28934:0 crwdns28936:0crwdne28936:0
|
||||
|
||||
crwdns28938:0crwdne28938:0
|
||||
|
||||
<div class="text--center">
|
||||
<img
|
||||
src=crwdns36818:0crwdne36818:0
|
||||
width="50%"
|
||||
class="screenshot"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
crwdns28942:0crwdne28942:0
|
@ -1,16 +0,0 @@
|
||||
---
|
||||
sidebar_position: crwdns28944:0crwdne28944:0
|
||||
---
|
||||
|
||||
# crwdns28946:0crwdne28946:0
|
||||
|
||||
crwdns28948:0crwdne28948:0 crwdns28950:0crwdne28950:0
|
||||
|
||||
- crwdns28952:0crwdne28952:0
|
||||
- crwdns28954:0crwdne28954:0
|
||||
- crwdns28956:0crwdne28956:0
|
||||
- crwdns28958:0crwdne28958:0 crwdns28960:0crwdne28960:0 crwdns28962:0crwdne28962:0
|
||||
|
||||
crwdns28964:0crwdne28964:0 crwdns28966:0crwdne28966:0
|
||||
|
||||
crwdns28968:0crwdne28968:0
|
@ -1,87 +0,0 @@
|
||||
---
|
||||
sidebar_position: crwdns28970:0crwdne28970:0
|
||||
---
|
||||
|
||||
# crwdns28972:0crwdne28972:0
|
||||
|
||||
## crwdns28974:0crwdne28974:0
|
||||
|
||||
crwdns28976:0crwdne28976:0
|
||||
|
||||
crwdns28978:0crwdne28978:0
|
||||
|
||||
<!-- @formatter:off -->
|
||||
|
||||
crwdns35402:0crwdne35402:0
|
||||
|
||||
<Tabs
|
||||
defaultValue="Svelte"
|
||||
values={[
|
||||
{label: "Svelte", value: "Svelte"},
|
||||
{label: "React", value: "React"},
|
||||
{label: "Vue", value: "Vue"},
|
||||
{label: "Preact", value: "Preact"},
|
||||
{label: "Lit", value: "Lit"},
|
||||
{label: "Vanilla", value: "Vanilla"},
|
||||
]}
|
||||
>
|
||||
<TabItem value="Svelte">
|
||||
crwdns35812:0crwdne35812:0
|
||||
|
||||
</TabItem>
|
||||
<TabItem value="React">
|
||||
crwdns35814:0crwdne35814:0
|
||||
|
||||
</TabItem>
|
||||
<TabItem value="Vue">
|
||||
crwdns35408:0crwdne35408:0
|
||||
|
||||
</TabItem>
|
||||
<TabItem value="Preact">
|
||||
crwdns35410:0crwdne35410:0
|
||||
|
||||
</TabItem>
|
||||
<TabItem value="Lit">
|
||||
crwdns35412:0crwdne35412:0
|
||||
|
||||
</TabItem>
|
||||
<TabItem value="Vanilla">
|
||||
crwdns35414:0crwdne35414:0
|
||||
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
<!-- @formatter:on -->
|
||||
|
||||
<hr />
|
||||
|
||||
crwdns28982:0crwdne28982:0
|
||||
|
||||
crwdns28984:0crwdne28984:0 crwdns28986:0crwdne28986:0
|
||||
|
||||
## crwdns28988:0crwdne28988:0
|
||||
|
||||
crwdns28990:0crwdne28990:0
|
||||
|
||||
```
|
||||
crwdns28992:0crwdne28992:0
|
||||
crwdns28994:0crwdne28994:0
|
||||
```
|
||||
|
||||
### crwdns28996:0crwdne28996:0
|
||||
|
||||
- crwdns28998:0crwdne28998:0
|
||||
- crwdns29000:0crwdne29000:0
|
||||
- crwdns29002:0crwdne29002:0
|
||||
- crwdns29004:0crwdne29004:0
|
||||
- crwdns29006:0crwdne29006:0
|
||||
- crwdns29008:0crwdne29008:0
|
||||
- crwdns29010:0crwdne29010:0
|
||||
- crwdns29012:0crwdne29012:0
|
||||
- crwdns29014:0crwdne29014:0
|
||||
|
||||
crwdns29016:0crwdne29016:0
|
||||
|
||||
crwdns29018:0crwdne29018:0 crwdns29020:0crwdne29020:0 crwdns29022:0crwdne29022:0
|
||||
|
||||
crwdns29024:0crwdne29024:0 crwdns29026:0crwdne29026:0
|
@ -1,79 +0,0 @@
|
||||
---
|
||||
sidebar_position: crwdns29028:0crwdne29028:0
|
||||
---
|
||||
|
||||
# crwdns29030:0crwdne29030:0
|
||||
|
||||
## crwdns29032:0crwdne29032:0
|
||||
|
||||
- crwdns29034:0crwdne29034:0
|
||||
- crwdns29036:0crwdne29036:0
|
||||
- crwdns29038:0crwdne29038:0
|
||||
- crwdns29040:0crwdne29040:0
|
||||
|
||||
## crwdns29042:0crwdne29042:0
|
||||
|
||||
crwdns29044:0crwdne29044:0
|
||||
|
||||
- crwdns29046:0crwdne29046:0
|
||||
- crwdns29048:0crwdne29048:0
|
||||
|
||||
### crwdns29050:0crwdne29050:0
|
||||
|
||||
crwdns29052:0crwdne29052:0
|
||||
|
||||
crwdns29054:0crwdne29054:0 crwdns29056:0crwdne29056:0 crwdns29058:0crwdne29058:0
|
||||
|
||||
- crwdns29060:0crwdne29060:0
|
||||
- crwdns29062:0$PATHcrwdne29062:0
|
||||
|
||||
### crwdns29064:0crwdne29064:0
|
||||
|
||||
crwdns29066:0crwdne29066:0 crwdns29068:0crwdne29068:0
|
||||
|
||||
crwdns29070:0crwdne29070:0
|
||||
|
||||
## crwdns29072:0crwdne29072:0
|
||||
|
||||
crwdns29074:0crwdne29074:0
|
||||
|
||||
<!-- @formatter:off -->
|
||||
|
||||
crwdns35416:0crwdne35416:0
|
||||
|
||||
<Tabs
|
||||
defaultValue="Windows"
|
||||
values={[
|
||||
{ label: "Windows", value: "Windows" },
|
||||
{ label: "MacOS", value: "MacOS" },
|
||||
{ label: "Linux", value: "Linux" },
|
||||
]}
|
||||
>
|
||||
<TabItem value="MacOS">
|
||||
crwdns35418:0crwdne35418:0 crwdns35816:0crwdne35816:0
|
||||
</TabItem>
|
||||
<TabItem value="Windows">
|
||||
crwdns35818:0crwdne35818:0 crwdns35820:0crwdne35820:0 crwdns35822:0crwdne35822:0
|
||||
</TabItem>
|
||||
<TabItem value={"Linux"}>
|
||||
crwdns35824:0crwdne35824:0 crwdns35826:0crwdne35826:0 crwdns35828:0crwdne35828:0 crwdns35830:0crwdne35830:0
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
<!-- @formatter:on -->
|
||||
|
||||
## crwdns29078:0crwdne29078:0
|
||||
|
||||
- crwdns29080:0crwdne29080:0
|
||||
|
||||
## crwdns29082:0crwdne29082:0
|
||||
|
||||
crwdns29084:0crwdne29084:0
|
||||
|
||||
## crwdns29086:0crwdne29086:0
|
||||
|
||||
crwdns29088:0crwdne29088:0 crwdns29090:0crwdne29090:0
|
||||
|
||||
## crwdns29092:0crwdne29092:0
|
||||
|
||||
crwdns29094:0crwdne29094:0 crwdns29096:0crwdne29096:0 crwdns29098:0crwdne29098:0
|
@ -1,4 +0,0 @@
|
||||
{
|
||||
"label": "crwdns31168:0crwdne31168:0",
|
||||
"position": 0
|
||||
}
|
@ -1,104 +0,0 @@
|
||||
# crwdns29100:0crwdne29100:0
|
||||
|
||||
crwdns29102:0crwdne29102:0
|
||||
|
||||
## crwdns29104:0crwdne29104:0
|
||||
|
||||
crwdns29106:0crwdne29106:0
|
||||
|
||||
crwdns29108:0crwdne29108:0
|
||||
|
||||
```go title="app.go"
|
||||
crwdns29110:0{
|
||||
ctx context.Context
|
||||
}crwdne29110:0
|
||||
```
|
||||
|
||||
- crwdns29112:0crwdne29112:0 crwdns29114:0crwdne29114:0 crwdns29116:0crwdne29116:0 crwdns29118:0crwdne29118:0 crwdns29120:0crwdne29120:0
|
||||
|
||||
- crwdns29122:0crwdne29122:0 crwdns29124:0crwdne29124:0
|
||||
|
||||
crwdns29126:0crwdne29126:0 crwdns29128:0crwdne29128:0 crwdns29130:0crwdne29130:0
|
||||
|
||||
```go {3,9,10} title="main.go"
|
||||
crwdns29132:0crwdne29132:0
|
||||
|
||||
```
|
||||
|
||||
crwdns29134:0crwdne29134:0
|
||||
|
||||
## crwdns29136:0crwdne29136:0
|
||||
|
||||
crwdns29138:0crwdne29138:0 crwdns29140:0crwdne29140:0
|
||||
|
||||
```go {16-18} title="app.go"
|
||||
crwdns29142:0{
|
||||
ctx context.Context
|
||||
}crwdnd29142:0%scrwdne29142:0
|
||||
```
|
||||
|
||||
crwdns29144:0crwdne29144:0
|
||||
|
||||
```go {11-13} title="main.go"
|
||||
crwdns29146:0{
|
||||
app,
|
||||
}crwdne29146:0
|
||||
|
||||
```
|
||||
|
||||
crwdns29148:0crwdne29148:0
|
||||
|
||||
### crwdns29150:0crwdne29150:0
|
||||
|
||||
crwdns29152:0crwdne29152:0
|
||||
|
||||
```go
|
||||
crwdns29154:0{
|
||||
app,
|
||||
otherStruct
|
||||
}crwdne29154:0
|
||||
```
|
||||
|
||||
crwdns29156:0crwdne29156:0
|
||||
|
||||
## crwdns29158:0crwdne29158:0
|
||||
|
||||
crwdns29160:0crwdne29160:0 crwdns29162:0crwdne29162:0 crwdns29164:0crwdne29164:0
|
||||
|
||||
```go {11} title="main.go"
|
||||
crwdns29166:0{
|
||||
app,
|
||||
}crwdne29166:0
|
||||
|
||||
```
|
||||
|
||||
## crwdns29168:0crwdne29168:0
|
||||
|
||||
crwdns29170:0crwdne29170:0 crwdns29172:0crwdne29172:0 crwdns29174:0crwdne29174:0 crwdns29176:0crwdne29176:0 crwdns29178:0crwdne29178:0
|
||||
|
||||
crwdns29180:0crwdne29180:0 crwdns29182:0crwdne29182:0
|
||||
|
||||
- crwdns29184:0crwdne29184:0
|
||||
- crwdns29186:0crwdne29186:0
|
||||
|
||||
crwdns29188:0crwdne29188:0 crwdns29190:0crwdne29190:0
|
||||
|
||||
crwdns29192:0crwdne29192:0 crwdns29194:0crwdne29194:0
|
||||
|
||||
### crwdns29196:0crwdne29196:0
|
||||
|
||||
crwdns29198:0crwdne29198:0 crwdns29200:0crwdne29200:0 crwdns29202:0crwdne29202:0 crwdns29204:0crwdne29204:0 crwdns29206:0crwdne29206:0
|
||||
|
||||
## crwdns29208:0crwdne29208:0
|
||||
|
||||
crwdns29210:0crwdne29210:0 crwdns29212:0crwdne29212:0 crwdns29214:0crwdne29214:0 crwdns29216:0crwdne29216:0
|
||||
|
||||
crwdns29218:0crwdne29218:0 crwdns29220:0crwdne29220:0 crwdns29222:0crwdne29222:0 crwdns29224:0crwdne29224:0 crwdns29226:0crwdne29226:0 crwdns29228:0crwdne29228:0
|
||||
|
||||
## crwdns29230:0crwdne29230:0
|
||||
|
||||
crwdns29232:0crwdne29232:0 crwdns29234:0crwdne29234:0 crwdns29236:0crwdne29236:0 crwdns29238:0crwdne29238:0
|
||||
|
||||
## crwdns29240:0crwdne29240:0
|
||||
|
||||
crwdns29242:0crwdne29242:0 crwdns29244:0crwdne29244:0
|
@ -1,55 +0,0 @@
|
||||
# crwdns29246:0crwdne29246:0
|
||||
|
||||
## crwdns29248:0crwdne29248:0
|
||||
|
||||
crwdns29250:0crwdne29250:0 crwdns29252:0crwdne29252:0 crwdns29254:0crwdne29254:0
|
||||
|
||||
- `crwdns29256:0crwdne29256:0`
|
||||
- `crwdns29258:0crwdne29258:0`
|
||||
- `crwdns29260:0crwdne29260:0`
|
||||
|
||||
crwdns29262:0crwdne29262:0
|
||||
|
||||
crwdns29264:0crwdne29264:0
|
||||
|
||||
### crwdns36894:0crwdne36894:0
|
||||
|
||||
crwdns36896:0crwdne36896:0
|
||||
|
||||
`crwdns29268:0crwdne29268:0`
|
||||
|
||||
crwdns29270:0crwdne29270:0
|
||||
|
||||
crwdns29272:0crwdne29272:0
|
||||
|
||||
crwdns29274:0crwdne29274:0
|
||||
|
||||
crwdns36898:0crwdne36898:0
|
||||
|
||||
`crwdns29278:0crwdne29278:0`
|
||||
|
||||
## crwdns29280:0crwdne29280:0
|
||||
|
||||
crwdns29282:0crwdne29282:0
|
||||
|
||||
- `crwdns29284:0crwdne29284:0`
|
||||
- `crwdns29286:0crwdne29286:0`
|
||||
- `crwdns29288:0crwdne29288:0`
|
||||
- `crwdns29290:0crwdne29290:0`
|
||||
- `crwdns29292:0crwdne29292:0`
|
||||
|
||||
crwdns36900:0crwdne36900:0
|
||||
|
||||
## crwdns29294:0crwdne29294:0
|
||||
|
||||
crwdns29296:0crwdne29296:0 crwdns29298:0[IDofThePR]crwdne29298:0
|
||||
|
||||
- `crwdns29300:0crwdne29300:0`
|
||||
- `crwdns29302:0crwdne29302:0`
|
||||
- `crwdns29304:0[IDofThePR]crwdnd29304:0[IDofThePR]crwdne29304:0`
|
||||
- `crwdns29306:0[IDofThePR]crwdne29306:0`
|
||||
- `crwdns29308:0crwdne29308:0`
|
||||
- `crwdns29310:0crwdne29310:0`
|
||||
- `crwdns29312:0crwdne29312:0`
|
||||
|
||||
crwdns36902:0crwdne36902:0
|
@ -1,68 +0,0 @@
|
||||
# crwdns29314:0crwdne29314:0
|
||||
|
||||
crwdns29316:0crwdne29316:0 crwdns29318:0crwdne29318:0
|
||||
|
||||
crwdns29320:0crwdne29320:0
|
||||
|
||||
## crwdns29322:0crwdne29322:0
|
||||
|
||||
crwdns29324:0crwdne29324:0
|
||||
|
||||
```go title=main.go {16-35,49}
|
||||
crwdns29326:0{
|
||||
http.Handler
|
||||
}crwdnd29326:0%scrwdnd29326:0{
|
||||
app,
|
||||
}crwdne29326:0
|
||||
```
|
||||
|
||||
crwdns29328:0crwdne29328:0
|
||||
|
||||
```
|
||||
crwdns29330:0[ExternalAssetHandler]crwdnd29330:0[ExternalAssetHandler]crwdne29330:0
|
||||
```
|
||||
|
||||
crwdns29332:0crwdne29332:0
|
||||
|
||||
crwdns29334:0crwdne29334:0
|
||||
|
||||
```
|
||||
crwdns29336:0crwdne29336:0
|
||||
```
|
||||
|
||||
crwdns29338:0crwdne29338:0 crwdns29340:0crwdne29340:0
|
||||
|
||||
<p className="text--center">
|
||||
<img
|
||||
src=crwdns36820:0crwdne36820:0
|
||||
/>
|
||||
</p>
|
||||
|
||||
crwdns29344:0crwdne29344:0
|
||||
|
||||
<p className="text--center">
|
||||
<img src=crwdns36822:0crwdne36822:0 />
|
||||
</p>
|
||||
|
||||
crwdns29348:0crwdne29348:0 crwdns29350:0crwdne29350:0
|
||||
|
||||
```html
|
||||
crwdns35836:0crwdne35836:0
|
||||
```
|
||||
|
||||
crwdns29354:0crwdne29354:0
|
||||
|
||||
```html
|
||||
crwdns35838:0crwdne35838:0
|
||||
```
|
||||
|
||||
crwdns29358:0crwdne29358:0
|
||||
|
||||
<p className="text--center">
|
||||
<img
|
||||
src=crwdns36824:0crwdne36824:0
|
||||
style={{ width: "75%" }}
|
||||
/>
|
||||
</p>
|
||||
|
||||
crwdns29362:0crwdne29362:0 crwdns29364:0crwdne29364:0 crwdns29366:0crwdne29366:0
|
@ -1,25 +0,0 @@
|
||||
# crwdns29368:0crwdne29368:0
|
||||
|
||||
crwdns36916:0crwdne36916:0 crwdns29372:0crwdne29372:0
|
||||
|
||||
crwdns36918:0crwdne36918:0 crwdns36920:0crwdne36920:0 crwdns36922:0crwdne36922:0
|
||||
|
||||
|
||||
```html
|
||||
crwdns36924:0crwdne36924:0
|
||||
```
|
||||
|
||||
crwdns36926:0crwdne36926:0 crwdns36928:0crwdne36928:0
|
||||
|
||||
```go title=main.go
|
||||
crwdns36930:0{
|
||||
app,
|
||||
}crwdne36930:0
|
||||
```
|
||||
|
||||
```html title=index.html
|
||||
crwdns36932:0crwdne36932:0
|
||||
|
||||
```
|
||||
|
||||
crwdns35842:0crwdne35842:0 crwdns29390:0crwdne29390:0
|
@ -1,35 +0,0 @@
|
||||
# crwdns29392:0crwdne29392:0
|
||||
|
||||
## crwdns29394:0crwdne29394:0
|
||||
|
||||
crwdns29396:0crwdne29396:0 crwdns29398:0crwdne29398:0
|
||||
|
||||
crwdns29400:0crwdne29400:0
|
||||
|
||||
```html
|
||||
crwdns35844:0crwdne35844:0
|
||||
```
|
||||
|
||||
### crwdns29404:0crwdne29404:0
|
||||
|
||||
crwdns29406:0crwdne29406:0
|
||||
|
||||
```html
|
||||
crwdns35846:0[options]crwdne35846:0
|
||||
```
|
||||
|
||||
crwdns29410:0crwdne29410:0
|
||||
|
||||
| crwdns29412:0crwdne29412:0 | crwdns29414:0crwdne29414:0 |
|
||||
| -------------------------- | -------------------------- |
|
||||
| crwdns29416:0crwdne29416:0 | crwdns29418:0crwdne29418:0 |
|
||||
| crwdns29420:0crwdne29420:0 | crwdns29422:0crwdne29422:0 |
|
||||
| crwdns29424:0crwdne29424:0 | crwdns29426:0crwdne29426:0 |
|
||||
|
||||
crwdns29428:0crwdne29428:0
|
||||
|
||||
crwdns29430:0crwdne29430:0
|
||||
|
||||
```html
|
||||
crwdns35848:0crwdne35848:0
|
||||
```
|
@ -1,40 +0,0 @@
|
||||
# crwdns29434:0crwdne29434:0
|
||||
|
||||
crwdns29436:0crwdne29436:0 crwdns29438:0crwdne29438:0
|
||||
|
||||
crwdns29440:0crwdne29440:0
|
||||
|
||||
## crwdns29442:0crwdne29442:0
|
||||
|
||||
<p className="text--center">
|
||||
<img
|
||||
src=crwdns36826:0crwdne36826:0
|
||||
style={{ width: "75%" }}
|
||||
/>
|
||||
</p>
|
||||
|
||||
crwdns29446:0crwdne29446:0 crwdns29448:0crwdne29448:0
|
||||
|
||||
crwdns29450:0crwdne29450:0 crwdns29452:0crwdne29452:0
|
||||
|
||||
```json title="tasks.json"
|
||||
crwdns35852:0${workspaceFolder}crwdne35852:0
|
||||
```
|
||||
|
||||
```json title="launch.json"
|
||||
crwdns35854:0${workspaceFolder}crwdnd35854:0${workspaceFolder}crwdne35854:0
|
||||
```
|
||||
|
||||
### crwdns29458:0crwdne29458:0
|
||||
|
||||
crwdns29460:0crwdne29460:0 crwdns29462:0crwdne29462:0
|
||||
|
||||
```json title="tasks.json"
|
||||
crwdns35856:0${workspaceFolder}crwdnd35856:0${workspaceFolder}crwdnd35856:0${workspaceFolder}crwdne35856:0
|
||||
```
|
||||
|
||||
crwdns29466:0crwdne29466:0
|
||||
|
||||
crwdns29468:0crwdne29468:0
|
||||
|
||||
crwdns29470:0crwdne29470:0
|
@ -1,50 +0,0 @@
|
||||
# crwdns29472:0crwdne29472:0
|
||||
|
||||
## crwdns29474:0crwdne29474:0
|
||||
|
||||
crwdns29476:0crwdne29476:0 crwdns29478:0crwdne29478:0 crwdns29480:0crwdne29480:0
|
||||
|
||||
- crwdns29482:0crwdne29482:0
|
||||
- crwdns29484:0crwdne29484:0
|
||||
- crwdns29486:0crwdne29486:0
|
||||
- crwdns29488:0crwdne29488:0
|
||||
- crwdns29490:0crwdne29490:0
|
||||
- crwdns29492:0crwdne29492:0
|
||||
- crwdns29494:0crwdne29494:0
|
||||
|
||||
## crwdns29496:0crwdne29496:0
|
||||
|
||||
crwdns29498:0crwdne29498:0 crwdns29500:0crwdne29500:0 crwdns29502:0crwdne29502:0 crwdns29504:0crwdne29504:0 crwdns29506:0crwdne29506:0
|
||||
|
||||
crwdns29508:0crwdne29508:0
|
||||
|
||||
```go
|
||||
crwdns29510:0crwdne29510:0
|
||||
```
|
||||
|
||||
crwdns29512:0crwdne29512:0 crwdns29514:0crwdne29514:0
|
||||
|
||||
```go {5}
|
||||
crwdns29516:0crwdne29516:0
|
||||
```
|
||||
|
||||
## crwdns29518:0crwdne29518:0
|
||||
|
||||
crwdns29520:0crwdne29520:0
|
||||
|
||||
- crwdns29522:0crwdne29522:0
|
||||
- crwdns29524:0crwdne29524:0
|
||||
|
||||
```go
|
||||
crwdns29526:0crwdne29526:0
|
||||
```
|
||||
|
||||
- crwdns29528:0crwdne29528:0
|
||||
- crwdns29530:0crwdne29530:0
|
||||
- crwdns29532:0crwdne29532:0
|
||||
- crwdns29534:0crwdne29534:0
|
||||
- crwdns29536:0crwdne29536:0
|
||||
|
||||
crwdns29538:0crwdne29538:0
|
||||
|
||||
crwdns29540:0crwdne29540:0 crwdns29542:0crwdne29542:0
|
@ -1,13 +0,0 @@
|
||||
# crwdns35482:0crwdne35482:0
|
||||
|
||||
crwdns35484:0crwdne35484:0
|
||||
|
||||
## crwdns35486:0crwdne35486:0
|
||||
|
||||
crwdns35488:0crwdne35488:0 crwdns35858:0crwdne35858:0
|
||||
|
||||
```js
|
||||
crwdns35860:0crwdne35860:0
|
||||
```
|
||||
|
||||
crwdns35862:0crwdne35862:0
|
@ -1,95 +0,0 @@
|
||||
# crwdns29544:0crwdne29544:0
|
||||
|
||||
crwdns29546:0crwdne29546:0 crwdns29548:0crwdne29548:0
|
||||
|
||||
## crwdns29550:0crwdne29550:0
|
||||
|
||||
crwdns29552:0crwdne29552:0
|
||||
|
||||
- crwdns29554:0crwdne29554:0
|
||||
- crwdns29556:0crwdne29556:0
|
||||
- crwdns29558:0crwdne29558:0
|
||||
- crwdns29560:0crwdne29560:0
|
||||
- crwdns29562:0[optional]crwdne29562:0
|
||||
|
||||
### crwdns29564:0crwdne29564:0
|
||||
|
||||
#### crwdns29566:0crwdne29566:0
|
||||
|
||||
- crwdns29568:0crwdne29568:0
|
||||
- crwdns29570:0crwdne29570:0
|
||||
- crwdns29572:0crwdne29572:0
|
||||
- crwdns29574:0crwdne29574:0 crwdns29576:0crwdne29576:0
|
||||
- crwdns29578:0crwdne29578:0
|
||||
- crwdns29580:0crwdne29580:0 crwdns29582:0crwdne29582:0
|
||||
- crwdns29584:0crwdne29584:0
|
||||
- crwdns29586:0crwdne29586:0
|
||||
|
||||
#### crwdns29588:0crwdne29588:0
|
||||
|
||||
crwdns29590:0crwdne29590:0
|
||||
|
||||
### crwdns29592:0crwdne29592:0
|
||||
|
||||
#### crwdns29594:0crwdne29594:0
|
||||
|
||||
- crwdns29596:0crwdne29596:0
|
||||
- crwdns29598:0crwdne29598:0
|
||||
- crwdns29600:0crwdne29600:0
|
||||
- crwdns29602:0crwdne29602:0
|
||||
|
||||
#### crwdns29604:0crwdne29604:0
|
||||
|
||||
crwdns29606:0crwdne29606:0
|
||||
|
||||
### crwdns29608:0crwdne29608:0
|
||||
|
||||
#### crwdns29610:0crwdne29610:0
|
||||
|
||||
- crwdns29612:0crwdne29612:0
|
||||
- crwdns29614:0crwdne29614:0
|
||||
- crwdns29616:0crwdne29616:0
|
||||
- crwdns29618:0crwdne29618:0
|
||||
|
||||
##### crwdns29620:0crwdne29620:0
|
||||
|
||||
- crwdns29622:0crwdne29622:0 crwdns29624:0crwdne29624:0
|
||||
- crwdns29626:0crwdne29626:0
|
||||
- crwdns29628:0crwdne29628:0
|
||||
- crwdns29630:0crwdne29630:0
|
||||
|
||||
#### crwdns29632:0crwdne29632:0
|
||||
|
||||
- crwdns29634:0crwdne29634:0
|
||||
- crwdns29636:0crwdne29636:0
|
||||
- crwdns29638:0crwdne29638:0
|
||||
|
||||
### crwdns29640:0crwdne29640:0
|
||||
|
||||
#### crwdns29642:0crwdne29642:0
|
||||
|
||||
- crwdns29644:0crwdne29644:0
|
||||
- crwdns29646:0crwdne29646:0
|
||||
- crwdns29648:0crwdne29648:0
|
||||
- crwdns29650:0crwdne29650:0
|
||||
- crwdns29652:0crwdne29652:0
|
||||
- crwdns29654:0crwdne29654:0
|
||||
- crwdns29656:0crwdne29656:0
|
||||
- crwdns29658:0crwdne29658:0
|
||||
|
||||
#### crwdns29660:0crwdne29660:0
|
||||
|
||||
- crwdns29662:0crwdne29662:0
|
||||
- crwdns29664:0crwdne29664:0
|
||||
- crwdns29666:0crwdne29666:0
|
||||
|
||||
### crwdns29668:0crwdne29668:0
|
||||
|
||||
#### crwdns29670:0crwdne29670:0
|
||||
|
||||
- crwdns29672:0crwdne29672:0
|
||||
- crwdns29674:0crwdne29674:0
|
||||
|
||||
#### crwdns29676:0crwdne29676:0
|
||||
|
||||
- crwdns29678:0[flags]crwdne29678:0
|
@ -1,116 +0,0 @@
|
||||
# crwdns29680:0crwdne29680:0
|
||||
|
||||
## crwdns29682:0crwdne29682:0
|
||||
|
||||
crwdns29684:0crwdne29684:0 crwdns29686:0crwdne29686:0
|
||||
|
||||
### crwdns29688:0crwdne29688:0
|
||||
|
||||
crwdns29690:0crwdne29690:0
|
||||
|
||||
crwdns29692:0crwdne29692:0
|
||||
|
||||
```go title="v1"
|
||||
crwdns29694:0crwdne29694:0
|
||||
```
|
||||
|
||||
crwdns29696:0crwdne29696:0
|
||||
|
||||
```go title="v2"
|
||||
crwdns29698:0{
|
||||
basic,
|
||||
}crwdne29698:0
|
||||
```
|
||||
|
||||
### crwdns29700:0crwdne29700:0
|
||||
|
||||
crwdns29702:0crwdne29702:0 crwdns29704:0crwdne29704:0 crwdns29706:0crwdne29706:0
|
||||
|
||||
```go title="v1"
|
||||
crwdns29708:0crwdne29708:0
|
||||
```
|
||||
|
||||
```go title="v2"
|
||||
crwdns29710:0{
|
||||
basic,
|
||||
}crwdne29710:0
|
||||
```
|
||||
|
||||
crwdns29712:0crwdne29712:0 crwdns29714:0crwdne29714:0
|
||||
|
||||
### crwdns29716:0crwdne29716:0
|
||||
|
||||
crwdns29718:0crwdne29718:0 crwdns29720:0crwdne29720:0
|
||||
|
||||
- [crwdns29724:0crwdne29724:0](crwdns29722:0crwdne29722:0)
|
||||
- [crwdns29728:0crwdne29728:0](crwdns29726:0crwdne29726:0)
|
||||
- [crwdns29732:0crwdne29732:0](crwdns29730:0crwdne29730:0)
|
||||
|
||||
crwdns29734:0crwdne29734:0
|
||||
|
||||
crwdns29736:0crwdne29736:0
|
||||
|
||||
```go title="v2"
|
||||
crwdns29738:0crwdne29738:0
|
||||
crwdns29740:0{
|
||||
ctx context.Context
|
||||
}crwdne29740:0
|
||||
```
|
||||
|
||||
### crwdns29742:0crwdne29742:0
|
||||
|
||||
crwdns29744:0crwdne29744:0 crwdns29746:0crwdne29746:0
|
||||
|
||||
crwdns29748:0crwdne29748:0 crwdns29750:0crwdne29750:0 crwdns29752:0crwdne29752:0
|
||||
|
||||
```go title="Runtime Example"
|
||||
crwdns29754:0{
|
||||
ctx context.Context
|
||||
}crwdne29754:0
|
||||
crwdns29756:0crwdne29756:0
|
||||
|
||||
```
|
||||
|
||||
### crwdns29758:0crwdne29758:0
|
||||
|
||||
crwdns29760:0crwdne29760:0
|
||||
|
||||
crwdns29762:0crwdne29762:0
|
||||
|
||||
- crwdns29764:0crwdne29764:0
|
||||
- crwdns29766:0crwdne29766:0
|
||||
|
||||
crwdns29768:0crwdne29768:0 crwdns29770:0crwdne29770:0
|
||||
|
||||
crwdns29772:0crwdne29772:0 crwdns29774:0crwdne29774:0
|
||||
|
||||
crwdns29776:0crwdne29776:0
|
||||
|
||||
crwdns29778:0crwdne29778:0
|
||||
|
||||
crwdns29780:0crwdne29780:0 crwdns29782:0crwdne29782:0
|
||||
|
||||
```shell
|
||||
crwdns29784:0crwdne29784:0
|
||||
crwdns29786:0crwdne29786:0
|
||||
```
|
||||
|
||||
crwdns29788:0crwdne29788:0
|
||||
|
||||
```go title="Assets Example"
|
||||
crwdns29790:0crwdne29790:0
|
||||
```
|
||||
|
||||
crwdns29792:0crwdne29792:0 crwdns29794:0crwdne29794:0
|
||||
|
||||
### crwdns29796:0crwdne29796:0
|
||||
|
||||
crwdns29798:0crwdne29798:0 crwdns29800:0crwdne29800:0
|
||||
|
||||
crwdns29802:0crwdne29802:0 crwdns29804:0crwdne29804:0
|
||||
|
||||
<p align="center">
|
||||
|
||||
crwdns35864:0crwdne35864:0 crwdns29808:0crwdne29808:0 crwdns29810:0crwdne29810:0 crwdns29812:0crwdne29812:0 crwdns29814:0crwdne29814:0
|
||||
|
||||
</p>
|
@ -1,9 +0,0 @@
|
||||
# crwdns29816:0crwdne29816:0
|
||||
|
||||
crwdns29818:0crwdne29818:0 crwdns29820:0crwdne29820:0 crwdns29822:0crwdne29822:0
|
||||
|
||||
```javascript
|
||||
crwdns35866:0crwdne35866:0
|
||||
```
|
||||
|
||||
crwdns29826:0crwdne29826:0
|
@ -1,7 +0,0 @@
|
||||
# crwdns29828:0crwdne29828:0
|
||||
|
||||
crwdns29830:0crwdne29830:0 crwdns29832:0crwdne29832:0 crwdns29834:0crwdne29834:0
|
||||
|
||||
```css
|
||||
crwdns36892:0crwdne36892:0
|
||||
```
|
@ -1,28 +0,0 @@
|
||||
# crwdns29838:0crwdne29838:0
|
||||
|
||||
crwdns29840:0crwdne29840:0 crwdns29842:0crwdne29842:0
|
||||
|
||||
## crwdns29844:0crwdne29844:0
|
||||
|
||||
crwdns29846:0crwdne29846:0
|
||||
|
||||
```js
|
||||
crwdns35870:0{ createRouter, createWebHashHistory }crwdne35870:0
|
||||
crwdns35872:0crwdne35872:0
|
||||
```
|
||||
|
||||
## crwdns29852:0crwdne29852:0
|
||||
|
||||
crwdns29854:0crwdne29854:0
|
||||
|
||||
```ts
|
||||
crwdns35874:0{ useHash: true }crwdne35874:0
|
||||
```
|
||||
|
||||
## crwdns35498:0crwdne35498:0
|
||||
|
||||
crwdns35500:0crwdne35500:0
|
||||
|
||||
```jsx
|
||||
crwdns35876:0{ HashRouter }crwdne35876:0
|
||||
```
|
@ -1,147 +0,0 @@
|
||||
# crwdns29858:0crwdne29858:0
|
||||
|
||||
crwdns29860:0crwdne29860:0 crwdns29862:0crwdne29862:0
|
||||
|
||||
## crwdns29864:0crwdne29864:0
|
||||
|
||||
crwdns29866:0crwdne29866:0 crwdns29868:0crwdne29868:0 crwdns29870:0crwdne29870:0 crwdns29872:0crwdne29872:0
|
||||
|
||||
crwdns35878:0crwdne35878:0 crwdns29876:0crwdne29876:0 crwdns29878:0crwdne29878:0 crwdns29880:0crwdne29880:0 crwdns29882:0crwdne29882:0 crwdns29884:0crwdne29884:0
|
||||
|
||||
crwdns29886:0crwdne29886:0 crwdns29888:0crwdne29888:0
|
||||
|
||||
```yaml
|
||||
crwdns29890:0crwdne29890:0
|
||||
|
||||
crwdns35880:0[1.18]crwdnd35880:0{{ matrix.platform }}crwdnd35880:0{{ matrix.go-version }}crwdne35880:0
|
||||
crwdns29894:0crwdne29894:0
|
||||
```
|
||||
|
||||
crwdns29896:0crwdne29896:0 crwdns29898:0crwdne29898:0 crwdns29900:0crwdne29900:0
|
||||
|
||||
```PowerShell
|
||||
crwdns29902:0crwdne29902:0
|
||||
```
|
||||
|
||||
crwdns29904:0crwdne29904:0 crwdns35882:0crwdne35882:0 crwdns29908:0crwdne29908:0 crwdns35884:0crwdne35884:0
|
||||
|
||||
- crwdns29912:0crwdne29912:0
|
||||
- crwdns29914:0crwdne29914:0
|
||||
|
||||
crwdns29916:0crwdne29916:0
|
||||
|
||||
### crwdns29918:0crwdne29918:0
|
||||
|
||||
crwdns29920:0crwdne29920:0
|
||||
|
||||
crwdns29922:0crwdne29922:0
|
||||
|
||||
```yaml
|
||||
crwdns29924:0{{ secrets.WIN_SIGNING_CERT }}crwdnd29924:0{{ secrets.WIN_SIGNING_CERT_PASSWORD }}crwdne29924:0
|
||||
|
||||
```
|
||||
|
||||
crwdns29926:0crwdne29926:0 crwdns29928:0crwdne29928:0
|
||||
|
||||
- crwdns29930:0crwdne29930:0
|
||||
- crwdns29932:0crwdne29932:0
|
||||
- crwdns29934:0crwdne29934:0
|
||||
|
||||
crwdns29936:0crwdne29936:0
|
||||
|
||||
```yaml
|
||||
crwdns29938:0crwdne29938:0
|
||||
|
||||
crwdns35886:0[1.18]crwdnd35886:0{{ matrix.platform }}crwdnd35886:0{{ matrix.go-version }}crwdne35886:0
|
||||
crwdns29942:0{{ secrets.WIN_SIGNING_CERT }}crwdnd29942:0{{ secrets.WIN_SIGNING_CERT_PASSWORD }}crwdne29942:0
|
||||
```
|
||||
|
||||
### crwdns29944:0crwdne29944:0
|
||||
|
||||
crwdns29946:0crwdne29946:0 crwdns29948:0crwdne29948:0
|
||||
|
||||
---
|
||||
|
||||
## crwdns29950:0crwdne29950:0
|
||||
|
||||
crwdns29952:0crwdne29952:0 crwdns29954:0crwdne29954:0 crwdns29956:0crwdne29956:0 crwdns29958:0crwdne29958:0 crwdns29960:0crwdne29960:0
|
||||
|
||||
```bash
|
||||
crwdns29962:0crwdne29962:0
|
||||
```
|
||||
|
||||
crwdns29964:0crwdne29964:0
|
||||
|
||||
- crwdns29966:0crwdne29966:0
|
||||
- crwdns29968:0crwdne29968:0
|
||||
- crwdns29970:0crwdne29970:0
|
||||
|
||||
crwdns29972:0crwdne29972:0 crwdns29974:0crwdne29974:0
|
||||
|
||||
```yaml
|
||||
crwdns29976:0crwdne29976:0
|
||||
|
||||
crwdns35888:0[1.18]crwdnd35888:0{{ matrix.platform }}crwdnd35888:0{{ matrix.go-version }}crwdne35888:0
|
||||
crwdns29980:0crwdne29980:0
|
||||
```
|
||||
|
||||
crwdns35890:0crwdne35890:0
|
||||
|
||||
crwdns29984:0crwdne29984:0
|
||||
|
||||
```yaml
|
||||
crwdns29986:0crwdne29986:0
|
||||
```
|
||||
|
||||
crwdns29988:0crwdne29988:0
|
||||
|
||||
1. crwdns29990:0crwdne29990:0
|
||||
|
||||
```json
|
||||
crwdns35892:0crwdne35892:0
|
||||
```
|
||||
|
||||
crwdns29994:0crwdne29994:0
|
||||
|
||||
```bash
|
||||
crwdns29996:0crwdne29996:0
|
||||
```
|
||||
|
||||
2. crwdns29998:0crwdne29998:0
|
||||
|
||||
```plist
|
||||
crwdns35894:0crwdne35894:0
|
||||
```
|
||||
|
||||
crwdns30002:0crwdne30002:0 crwdns30004:0crwdne30004:0
|
||||
|
||||
crwdns30006:0crwdne30006:0 crwdns30008:0crwdne30008:0
|
||||
|
||||
```plist
|
||||
crwdns30010:0crwdne30010:0
|
||||
```
|
||||
|
||||
crwdns30012:0crwdne30012:0
|
||||
|
||||
```yaml
|
||||
crwdns30014:0{{ secrets.APPLE_DEVELOPER_CERTIFICATE_P12_BASE64 }}crwdne30014:0
|
||||
crwdns30016:0{{ secrets.APPLE_DEVELOPER_CERTIFICATE_PASSWORD }}crwdne30016:0
|
||||
```
|
||||
|
||||
crwdns30018:0crwdne30018:0
|
||||
|
||||
## crwdns30020:0crwdne30020:0
|
||||
|
||||
crwdns30022:0crwdne30022:0
|
||||
|
||||
```yaml
|
||||
crwdns30024:0crwdne30024:0
|
||||
|
||||
crwdns35896:0[1.18]crwdnd35896:0{{ matrix.platform }}crwdnd35896:0{{ matrix.go-version }}crwdne35896:0
|
||||
crwdns30028:0{{ secrets.APPLE_DEVELOPER_CERTIFICATE_P12_BASE64 }}crwdne30028:0
|
||||
crwdns30030:0{{ secrets.APPLE_DEVELOPER_CERTIFICATE_PASSWORD }}crwdnd30030:0{{ secrets.WIN_SIGNING_CERT }}crwdnd30030:0{{ secrets.WIN_SIGNING_CERT_PASSWORD }}crwdne30030:0
|
||||
```
|
||||
|
||||
# crwdns30032:0crwdne30032:0
|
||||
|
||||
crwdns30034:0crwdne30034:0
|
@ -1,77 +0,0 @@
|
||||
# crwdns30036:0crwdne30036:0
|
||||
|
||||
crwdns30038:0crwdne30038:0 crwdns30040:0crwdne30040:0 crwdns30042:0crwdne30042:0
|
||||
|
||||
- crwdns30044:0crwdne30044:0
|
||||
- crwdns30046:0crwdne30046:0
|
||||
|
||||
## crwdns30048:0crwdne30048:0
|
||||
|
||||
crwdns30050:0crwdne30050:0 crwdns30052:0crwdne30052:0
|
||||
|
||||
`crwdns30054:0crwdne30054:0`
|
||||
|
||||
crwdns30056:0crwdne30056:0
|
||||
|
||||
```shell title=mytemplate/
|
||||
crwdns30058:0crwdne30058:0
|
||||
crwdns30060:0crwdne30060:0
|
||||
```
|
||||
|
||||
### crwdns30062:0crwdne30062:0
|
||||
|
||||
crwdns30064:0crwdne30064:0
|
||||
|
||||
| crwdns30066:0crwdne30066:0 | crwdns30068:0crwdne30068:0 |
|
||||
| -------------------------- | -------------------------- |
|
||||
| crwdns30070:0crwdne30070:0 | crwdns30072:0crwdne30072:0 |
|
||||
| crwdns30074:0crwdne30074:0 | crwdns30076:0crwdne30076:0 |
|
||||
| crwdns30078:0crwdne30078:0 | crwdns30080:0crwdne30080:0 |
|
||||
| crwdns30082:0crwdne30082:0 | crwdns30084:0crwdne30084:0 |
|
||||
| crwdns30086:0crwdne30086:0 | crwdns30088:0crwdne30088:0 |
|
||||
| crwdns30090:0crwdne30090:0 | crwdns30092:0crwdne30092:0 |
|
||||
| crwdns30094:0crwdne30094:0 | crwdns30096:0crwdne30096:0 |
|
||||
| crwdns30098:0crwdne30098:0 | crwdns30100:0crwdne30100:0 |
|
||||
|
||||
crwdns30102:0crwdne30102:0
|
||||
|
||||
## crwdns30104:0crwdne30104:0
|
||||
|
||||
crwdns30106:0crwdne30106:0 crwdns30108:0crwdne30108:0
|
||||
|
||||
- crwdns30110:0crwdne30110:0
|
||||
- crwdns30112:0crwdne30112:0
|
||||
- crwdns30114:0crwdne30114:0
|
||||
- crwdns30116:0crwdne30116:0
|
||||
|
||||
```shell
|
||||
crwdns30118:0crwdne30118:0
|
||||
crwdns30120:0crwdne30120:0
|
||||
crwdns30122:0crwdne30122:0
|
||||
crwdns30124:0crwdne30124:0
|
||||
crwdns30126:0crwdne30126:0
|
||||
crwdns30128:0crwdne30128:0
|
||||
```
|
||||
|
||||
- crwdns30130:0crwdne30130:0
|
||||
- crwdns30132:0crwdne30132:0
|
||||
- crwdns30134:0crwdne30134:0
|
||||
- crwdns30136:0crwdne30136:0
|
||||
- crwdns30138:0crwdne30138:0
|
||||
|
||||
<div className="text--center">
|
||||
<img
|
||||
src=crwdns35898:0crwdne35898:0
|
||||
width="50%"
|
||||
/>
|
||||
</div>
|
||||
|
||||
## crwdns30142:0crwdne30142:0
|
||||
|
||||
crwdns30144:0crwdne30144:0 crwdns30146:0crwdne30146:0
|
||||
|
||||
- crwdns30148:0crwdne30148:0
|
||||
- crwdns30150:0crwdne30150:0
|
||||
- crwdns30152:0crwdne30152:0
|
||||
- crwdns30154:0crwdne30154:0
|
||||
- crwdns30156:0crwdne30156:0
|
@ -1,109 +0,0 @@
|
||||
# crwdns30158:0crwdne30158:0
|
||||
|
||||
crwdns30160:0crwdne30160:0
|
||||
|
||||
## crwdns30162:0crwdne30162:0
|
||||
|
||||
crwdns30164:0crwdne30164:0 crwdns30166:0crwdne30166:0 crwdns30168:0crwdne30168:0
|
||||
|
||||
## crwdns30170:0crwdne30170:0
|
||||
|
||||
crwdns30172:0crwdne30172:0 crwdns30174:0crwdne30174:0
|
||||
|
||||
```go
|
||||
crwdns30176:0crwdne30176:0
|
||||
```
|
||||
|
||||
crwdns30178:0crwdne30178:0
|
||||
|
||||
### crwdns30180:0crwdne30180:0
|
||||
|
||||
crwdns30182:0crwdne30182:0
|
||||
|
||||
```xml
|
||||
crwdns30184:0crwdne30184:0
|
||||
```
|
||||
|
||||
crwdns30186:0crwdne30186:0
|
||||
|
||||
## crwdns30188:0crwdne30188:0
|
||||
|
||||
crwdns30190:0crwdne30190:0
|
||||
|
||||
<p className="text--center">
|
||||
<img
|
||||
src=crwdns35900:0crwdne35900:0
|
||||
require("@site>
|
||||
</p>
|
||||
|
||||
crwdns30194:0crwdne30194:0 crwdns30196:0crwdne30196:0 crwdns30198:0crwdne30198:0
|
||||
|
||||
## crwdns30200:0crwdne30200:0
|
||||
|
||||
crwdns30202:0crwdne30202:0
|
||||
|
||||
```go
|
||||
crwdns30204:0crwdne30204:0
|
||||
```
|
||||
|
||||
crwdns30206:0crwdne30206:0
|
||||
|
||||
```js
|
||||
crwdns35902:0crwdne35902:0
|
||||
```
|
||||
|
||||
crwdns30210:0crwdne30210:0
|
||||
|
||||
```js
|
||||
crwdns35904:0crwdne35904:0
|
||||
```
|
||||
|
||||
crwdns30214:0crwdne30214:0
|
||||
|
||||
## crwdns30216:0crwdne30216:0
|
||||
|
||||
crwdns30218:0crwdne30218:0
|
||||
|
||||
```
|
||||
crwdns30220:0crwdne30220:0
|
||||
```
|
||||
|
||||
crwdns30222:0crwdne30222:0 crwdns30224:0crwdne30224:0
|
||||
|
||||
```
|
||||
crwdns30226:0crwdne30226:0
|
||||
```
|
||||
|
||||
crwdns30228:0crwdne30228:0
|
||||
|
||||
## crwdns36886:0crwdne36886:0
|
||||
|
||||
crwdns30232:0crwdne30232:0 crwdns30234:0crwdne30234:0 crwdns30236:0crwdne30236:0
|
||||
|
||||
## crwdns30238:0crwdne30238:0
|
||||
|
||||
crwdns30240:0crwdne30240:0 crwdns30242:0crwdne30242:0
|
||||
|
||||
```html
|
||||
crwdns35906:0crwdne35906:0
|
||||
```
|
||||
|
||||
crwdns30246:0crwdne30246:0
|
||||
|
||||
## crwdns36874:0crwdne36874:0
|
||||
|
||||
crwdns36876:0crwdne36876:0 crwdns36878:0crwdne36878:0 crwdns36880:0crwdne36880:0
|
||||
|
||||
crwdns36882:0crwdne36882:0 crwdns36884:0crwdne36884:0
|
||||
|
||||
## crwdns36904:0crwdne36904:0
|
||||
|
||||
crwdns36906:0crwdne36906:0
|
||||
|
||||
```shell
|
||||
crwdns36908:0__attribute__crwdne36908:0
|
||||
```
|
||||
|
||||
crwdns36910:0crwdne36910:0 crwdns36912:0crwdne36912:0
|
||||
|
||||
crwdns36914:0crwdne36914:0
|
@ -1,35 +0,0 @@
|
||||
|
||||
# crwdns36362:0crwdne36362:0
|
||||
|
||||
crwdns36364:0crwdne36364:0
|
||||
|
||||
## crwdns36366:0crwdne36366:0
|
||||
|
||||
crwdns36368:0crwdne36368:0 crwdns36370:0crwdne36370:0
|
||||
|
||||
crwdns36372:0crwdne36372:0 crwdns36374:0crwdne36374:0 crwdns36376:0crwdne36376:0
|
||||
|
||||
crwdns36378:0crwdne36378:0
|
||||
|
||||
```javascript
|
||||
crwdns36380:0crwdne36380:0
|
||||
crwdns36382:0crwdne36382:0
|
||||
crwdns36384:0crwdne36384:0
|
||||
crwdns36386:0crwdne36386:0
|
||||
crwdns36388:0crwdne36388:0
|
||||
crwdns36390:0crwdne36390:0
|
||||
crwdns36392:0crwdne36392:0
|
||||
crwdns36394:0crwdne36394:0
|
||||
crwdns36396:0crwdne36396:0
|
||||
crwdns36398:0crwdne36398:0
|
||||
crwdns36400:0crwdne36400:0
|
||||
crwdns36402:0crwdne36402:0
|
||||
crwdns36404:0crwdne36404:0 crwdns36406:0crwdne36406:0
|
||||
```
|
||||
|
||||
crwdns36414:0crwdne36414:0
|
||||
|
||||
```javascript
|
||||
crwdns36410:0crwdne36410:0
|
||||
```
|
||||
crwdns36412:0crwdne36412:0
|
@ -1,50 +0,0 @@
|
||||
# crwdns30248:0crwdne30248:0
|
||||
|
||||
<p style={{ "text-align": "center" }}>
|
||||
<img
|
||||
src=crwdns36828:0crwdne36828:0
|
||||
style={{ "max-width": "50%" }}
|
||||
/>
|
||||
<br />
|
||||
</p>
|
||||
|
||||
crwdns30252:0crwdne30252:0
|
||||
|
||||
## crwdns30254:0crwdne30254:0
|
||||
|
||||
### crwdns30256:0crwdne30256:0
|
||||
|
||||
crwdns30258:0crwdne30258:0
|
||||
|
||||
crwdns30260:0crwdne30260:0
|
||||
|
||||
```
|
||||
crwdns30262:0crwdne30262:0
|
||||
```
|
||||
|
||||
crwdns35910:0crwdne35910:0 crwdns30266:0crwdne30266:0
|
||||
|
||||
### crwdns30268:0crwdne30268:0
|
||||
|
||||
crwdns30270:0crwdne30270:0
|
||||
|
||||
### crwdns30272:0crwdne30272:0
|
||||
|
||||
crwdns30274:0crwdne30274:0
|
||||
|
||||
## crwdns30276:0crwdne30276:0
|
||||
|
||||
crwdns30278:0crwdne30278:0 crwdns30280:0crwdne30280:0
|
||||
|
||||
```json
|
||||
crwdns30282:0crwdne30282:0
|
||||
crwdns30284:0crwdne30284:0
|
||||
```
|
||||
|
||||
crwdns30286:0crwdne30286:0
|
||||
|
||||
```
|
||||
crwdns30288:0crwdne30288:0
|
||||
```
|
||||
|
||||
crwdns30290:0crwdne30290:0
|
@ -1,52 +0,0 @@
|
||||
# crwdns30292:0crwdne30292:0
|
||||
|
||||
crwdns30294:0crwdne30294:0
|
||||
|
||||
## crwdns30296:0crwdne30296:0
|
||||
|
||||
crwdns30298:0crwdne30298:0 crwdns30300:0crwdne30300:0 crwdns30302:0crwdne30302:0
|
||||
|
||||
crwdns30304:0crwdne30304:0 crwdns30306:0crwdne30306:0
|
||||
|
||||
1. crwdns30308:0crwdne30308:0
|
||||
2. crwdns30310:0crwdne30310:0
|
||||
3. crwdns30312:0crwdne30312:0
|
||||
4. crwdns30314:0crwdne30314:0
|
||||
|
||||
### crwdns30316:0crwdne30316:0
|
||||
|
||||
crwdns30318:0crwdne30318:0 crwdns30320:0crwdne30320:0
|
||||
|
||||
### crwdns30322:0crwdne30322:0
|
||||
|
||||
crwdns30324:0crwdne30324:0 crwdns30326:0crwdne30326:0 crwdns30328:0crwdne30328:0
|
||||
|
||||
### crwdns30330:0crwdne30330:0
|
||||
|
||||
crwdns30332:0crwdne30332:0 crwdns30334:0crwdne30334:0
|
||||
|
||||
### crwdns30336:0crwdne30336:0
|
||||
|
||||
crwdns30338:0crwdne30338:0
|
||||
|
||||
## crwdns30340:0crwdne30340:0
|
||||
|
||||
crwdns30342:0crwdne30342:0 crwdns35538:0crwdne35538:0
|
||||
|
||||
crwdns30346:0crwdne30346:0
|
||||
|
||||
```go
|
||||
crwdns30348:0crwdne30348:0
|
||||
```
|
||||
|
||||
crwdns35470:0crwdne35470:0
|
||||
|
||||
## crwdns35472:0crwdne35472:0
|
||||
|
||||
crwdns35474:0crwdne35474:0 crwdns35476:0crwdne35476:0
|
||||
|
||||
```go
|
||||
crwdns35478:0crwdne35478:0
|
||||
```
|
||||
|
||||
crwdns35480:0crwdne35480:0
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user