From 7d3c6e34ec3a918fb2dd8e8a9abfe5c2ebec1bd7 Mon Sep 17 00:00:00 2001 From: tyler Date: Fri, 23 Feb 2024 12:10:39 -0500 Subject: [PATCH] Started v1 --- .gitignore | 9 +- app.go | 563 -- frontend/src/App.jsx | 21 - frontend/src/assets/icons/eye-slash.png | Bin 4844 -> 0 bytes frontend/src/assets/icons/eye.png | Bin 4640 -> 0 bytes frontend/src/assets/icons/gear-fill.png | Bin 6141 -> 0 bytes frontend/src/assets/icons/gear.png | Bin 6770 -> 0 bytes .../src/assets/icons/hand-thumbs-down.png | Bin 4880 -> 0 bytes frontend/src/assets/icons/hand-thumbs-up.png | Bin 4886 -> 0 bytes frontend/src/assets/icons/heart-fill.png | Bin 4885 -> 0 bytes frontend/src/assets/icons/house.png | Bin 2425 -> 0 bytes frontend/src/assets/icons/index.jsx | 31 - frontend/src/assets/icons/pause-circle.png | Bin 5425 -> 0 bytes frontend/src/assets/icons/pause-fill.png | Bin 1867 -> 0 bytes frontend/src/assets/icons/play-circle.png | Bin 5411 -> 0 bytes frontend/src/assets/icons/play-fill-green.png | Bin 3203 -> 0 bytes frontend/src/assets/icons/play-fill.png | Bin 2343 -> 0 bytes .../src/assets/icons/plus-circle-fill.png | Bin 4887 -> 0 bytes frontend/src/assets/icons/star-fill.png | Bin 4961 -> 0 bytes frontend/src/assets/icons/stop-fill.png | Bin 2302 -> 0 bytes frontend/src/assets/icons/x-lg.png | Bin 3129 -> 0 bytes frontend/src/components/ChannelList.css | 66 - frontend/src/components/ChannelList.jsx | 39 - frontend/src/components/ChatBot.css | 64 - frontend/src/components/ChatBot.jsx | 174 - frontend/src/components/ChatMessage.css | 44 - frontend/src/components/ChatMessage.jsx | 28 - frontend/src/components/Highlight.css | 24 - frontend/src/components/Highlight.jsx | 72 - frontend/src/components/Modal.css | 176 - frontend/src/components/Modal.jsx | 86 - frontend/src/components/StreamActivity.css | 24 - frontend/src/components/StreamActivity.jsx | 20 - frontend/src/components/StreamChat.css | 28 - frontend/src/components/StreamChat.jsx | 38 - frontend/src/components/StreamChatBot.css | 104 - frontend/src/components/StreamChatBot.jsx | 237 - frontend/src/components/StreamChatMessage.css | 358 - frontend/src/components/StreamChatMessage.jsx | 404 - frontend/src/components/StreamEvent.css | 42 - frontend/src/components/StreamEvent.jsx | 111 - frontend/src/components/StreamInfo.css | 120 - frontend/src/components/StreamInfo.jsx | 77 - frontend/src/screens/Dashboard.css | 72 - frontend/src/screens/Dashboard.jsx | 449 - frontend/src/screens/Navigation.jsx | 2 - frontend/src/screens/SignIn.css | 144 - frontend/src/screens/SignIn.jsx | 107 - frontend/src/style.css | 10 - internal/api/api.go | 107 - internal/chatbot/chatbot.go | 490 - internal/config/config.go | 241 - package-lock.json | 185 - package.json | 5 - v1/.gitignore | 6 + v1/README.md | 19 + v1/app.go | 21 + {build => v1/build}/README.md | 0 {build => v1/build}/appicon.png | Bin {frontend => v1/frontend}/index.html | 2 +- {frontend => v1/frontend}/package-lock.json | 264 +- {frontend => v1/frontend}/package.json | 0 {frontend => v1/frontend}/package.json.md5 | 0 {frontend => v1/frontend}/src/App.css | 4 +- v1/frontend/src/App.jsx | 8 + {frontend => v1/frontend}/src/main.jsx | 0 v1/frontend/src/style.css | 3 + {frontend => v1/frontend}/vite.config.js | 0 go.mod => v1/go.mod | 18 +- go.sum => v1/go.sum | 24 +- main.go => v1/main.go | 0 .../github.com/bep/debounce/.gitignore | 0 .../vendor}/github.com/bep/debounce/LICENSE | 0 .../vendor}/github.com/bep/debounce/README.md | 0 .../github.com/bep/debounce/debounce.go | 0 .../github.com/go-ole/go-ole/.travis.yml | 0 .../github.com/go-ole/go-ole/ChangeLog.md | 0 .../vendor}/github.com/go-ole/go-ole/LICENSE | 0 .../github.com/go-ole/go-ole/README.md | 0 .../github.com/go-ole/go-ole/appveyor.yml | 0 .../vendor}/github.com/go-ole/go-ole/com.go | 0 .../github.com/go-ole/go-ole/com_func.go | 0 .../github.com/go-ole/go-ole/connect.go | 0 .../github.com/go-ole/go-ole/constants.go | 0 .../vendor}/github.com/go-ole/go-ole/error.go | 0 .../github.com/go-ole/go-ole/error_func.go | 0 .../github.com/go-ole/go-ole/error_windows.go | 0 .../vendor}/github.com/go-ole/go-ole/guid.go | 0 .../go-ole/go-ole/iconnectionpoint.go | 0 .../go-ole/go-ole/iconnectionpoint_func.go | 0 .../go-ole/go-ole/iconnectionpoint_windows.go | 0 .../go-ole/iconnectionpointcontainer.go | 0 .../go-ole/iconnectionpointcontainer_func.go | 0 .../iconnectionpointcontainer_windows.go | 0 .../github.com/go-ole/go-ole/idispatch.go | 0 .../go-ole/go-ole/idispatch_func.go | 0 .../go-ole/go-ole/idispatch_windows.go | 0 .../github.com/go-ole/go-ole/ienumvariant.go | 0 .../go-ole/go-ole/ienumvariant_func.go | 0 .../go-ole/go-ole/ienumvariant_windows.go | 0 .../github.com/go-ole/go-ole/iinspectable.go | 0 .../go-ole/go-ole/iinspectable_func.go | 0 .../go-ole/go-ole/iinspectable_windows.go | 0 .../go-ole/go-ole/iprovideclassinfo.go | 0 .../go-ole/go-ole/iprovideclassinfo_func.go | 0 .../go-ole/iprovideclassinfo_windows.go | 0 .../github.com/go-ole/go-ole/itypeinfo.go | 0 .../go-ole/go-ole/itypeinfo_func.go | 0 .../go-ole/go-ole/itypeinfo_windows.go | 0 .../github.com/go-ole/go-ole/iunknown.go | 0 .../github.com/go-ole/go-ole/iunknown_func.go | 0 .../go-ole/go-ole/iunknown_windows.go | 0 .../vendor}/github.com/go-ole/go-ole/ole.go | 0 .../github.com/go-ole/go-ole/safearray.go | 0 .../go-ole/go-ole/safearray_func.go | 0 .../go-ole/go-ole/safearray_windows.go | 0 .../go-ole/go-ole/safearrayconversion.go | 0 .../go-ole/go-ole/safearrayslices.go | 0 .../github.com/go-ole/go-ole/utility.go | 0 .../github.com/go-ole/go-ole/variables.go | 0 .../github.com/go-ole/go-ole/variant.go | 0 .../github.com/go-ole/go-ole/variant_386.go | 0 .../github.com/go-ole/go-ole/variant_amd64.go | 0 .../github.com/go-ole/go-ole/variant_arm.go | 0 .../github.com/go-ole/go-ole/variant_arm64.go | 0 .../go-ole/go-ole/variant_date_386.go | 0 .../go-ole/go-ole/variant_date_amd64.go | 0 .../go-ole/go-ole/variant_date_arm.go | 0 .../go-ole/go-ole/variant_date_arm64.go | 0 .../go-ole/go-ole/variant_ppc64le.go | 0 .../github.com/go-ole/go-ole/variant_s390x.go | 0 .../github.com/go-ole/go-ole/vt_string.go | 0 .../vendor}/github.com/go-ole/go-ole/winrt.go | 0 .../github.com/go-ole/go-ole/winrt_doc.go | 0 .../github.com/godbus/dbus/v5/CONTRIBUTING.md | 0 .../vendor}/github.com/godbus/dbus/v5/LICENSE | 0 .../github.com/godbus/dbus/v5/MAINTAINERS | 0 .../github.com/godbus/dbus/v5/README.md | 0 .../vendor}/github.com/godbus/dbus/v5/auth.go | 0 .../godbus/dbus/v5/auth_anonymous.go | 0 .../godbus/dbus/v5/auth_external.go | 0 .../github.com/godbus/dbus/v5/auth_sha1.go | 0 .../vendor}/github.com/godbus/dbus/v5/call.go | 0 .../vendor}/github.com/godbus/dbus/v5/conn.go | 0 .../github.com/godbus/dbus/v5/conn_darwin.go | 0 .../github.com/godbus/dbus/v5/conn_other.go | 0 .../github.com/godbus/dbus/v5/conn_unix.go | 0 .../github.com/godbus/dbus/v5/conn_windows.go | 0 .../vendor}/github.com/godbus/dbus/v5/dbus.go | 0 .../github.com/godbus/dbus/v5/decoder.go | 0 .../godbus/dbus/v5/default_handler.go | 0 .../vendor}/github.com/godbus/dbus/v5/doc.go | 0 .../github.com/godbus/dbus/v5/encoder.go | 0 .../github.com/godbus/dbus/v5/escape.go | 0 .../github.com/godbus/dbus/v5/export.go | 0 .../github.com/godbus/dbus/v5/homedir.go | 0 .../github.com/godbus/dbus/v5/match.go | 0 .../github.com/godbus/dbus/v5/message.go | 0 .../github.com/godbus/dbus/v5/object.go | 0 .../github.com/godbus/dbus/v5/sequence.go | 0 .../godbus/dbus/v5/sequential_handler.go | 0 .../godbus/dbus/v5/server_interfaces.go | 0 .../vendor}/github.com/godbus/dbus/v5/sig.go | 0 .../godbus/dbus/v5/transport_darwin.go | 0 .../godbus/dbus/v5/transport_generic.go | 0 .../godbus/dbus/v5/transport_nonce_tcp.go | 0 .../godbus/dbus/v5/transport_tcp.go | 0 .../godbus/dbus/v5/transport_unix.go | 0 .../dbus/v5/transport_unixcred_dragonfly.go | 0 .../dbus/v5/transport_unixcred_freebsd.go | 0 .../dbus/v5/transport_unixcred_linux.go | 0 .../dbus/v5/transport_unixcred_netbsd.go | 0 .../dbus/v5/transport_unixcred_openbsd.go | 0 .../godbus/dbus/v5/transport_zos.go | 0 .../github.com/godbus/dbus/v5/variant.go | 0 .../godbus/dbus/v5/variant_lexer.go | 0 .../godbus/dbus/v5/variant_parser.go | 0 .../github.com/google/uuid/.travis.yml | 0 .../github.com/google/uuid/CONTRIBUTING.md | 0 .../github.com/google/uuid/CONTRIBUTORS | 0 .../vendor}/github.com/google/uuid/LICENSE | 0 .../vendor}/github.com/google/uuid/README.md | 0 .../vendor}/github.com/google/uuid/dce.go | 0 .../vendor}/github.com/google/uuid/doc.go | 0 .../vendor}/github.com/google/uuid/hash.go | 0 .../vendor}/github.com/google/uuid/marshal.go | 0 .../vendor}/github.com/google/uuid/node.go | 0 .../vendor}/github.com/google/uuid/node_js.go | 0 .../github.com/google/uuid/node_net.go | 0 .../vendor}/github.com/google/uuid/null.go | 0 .../vendor}/github.com/google/uuid/sql.go | 0 .../vendor}/github.com/google/uuid/time.go | 0 .../vendor}/github.com/google/uuid/util.go | 0 .../vendor}/github.com/google/uuid/uuid.go | 0 .../github.com/google/uuid/version1.go | 0 .../github.com/google/uuid/version4.go | 0 .../github.com/jchv/go-winloader/LICENSE.md | 0 .../github.com/jchv/go-winloader/README.md | 0 .../github.com/jchv/go-winloader/common.go | 0 .../go-winloader/internal/loader/loader.go | 0 .../go-winloader/internal/loader/machine.go | 0 .../go-winloader/internal/memloader/cache.go | 0 .../go-winloader/internal/memloader/loader.go | 0 .../jchv/go-winloader/internal/pe/export.go | 0 .../jchv/go-winloader/internal/pe/format.go | 0 .../jchv/go-winloader/internal/pe/import.go | 0 .../jchv/go-winloader/internal/pe/module.go | 0 .../jchv/go-winloader/internal/pe/reloc.go | 0 .../jchv/go-winloader/internal/pe/util.go | 0 .../jchv/go-winloader/internal/vmem/common.go | 0 .../internal/vmem/memory_other.go | 0 .../internal/vmem/memory_windows.go | 0 .../internal/winloader/hacks_other.go | 0 .../internal/winloader/hacks_windows.go | 0 .../internal/winloader/loader_windows.go | 0 .../internal/winloader/machine_windows.go | 0 .../internal/winloader/nativearch_386.go | 0 .../internal/winloader/nativearch_amd64.go | 0 .../internal/winloader/nativearch_arm64.go | 0 .../jchv/go-winloader/loader_other.go | 0 .../jchv/go-winloader/loader_windows.go | 0 .../github.com/labstack/echo/v4/.editorconfig | 0 .../labstack/echo/v4/.gitattributes | 0 .../github.com/labstack/echo/v4/.gitignore | 0 .../github.com/labstack/echo/v4/CHANGELOG.md | 0 .../github.com/labstack/echo/v4/LICENSE | 0 .../github.com/labstack/echo/v4/Makefile | 0 .../github.com/labstack/echo/v4/README.md | 0 .../github.com/labstack/echo/v4/bind.go | 0 .../github.com/labstack/echo/v4/binder.go | 0 .../github.com/labstack/echo/v4/codecov.yml | 0 .../github.com/labstack/echo/v4/context.go | 0 .../github.com/labstack/echo/v4/context_fs.go | 0 .../github.com/labstack/echo/v4/echo.go | 0 .../github.com/labstack/echo/v4/echo_fs.go | 0 .../github.com/labstack/echo/v4/group.go | 0 .../github.com/labstack/echo/v4/group_fs.go | 0 .../vendor}/github.com/labstack/echo/v4/ip.go | 0 .../github.com/labstack/echo/v4/json.go | 0 .../github.com/labstack/echo/v4/log.go | 0 .../github.com/labstack/echo/v4/response.go | 0 .../github.com/labstack/echo/v4/router.go | 0 .../github.com/labstack/gommon/LICENSE | 0 .../labstack/gommon/color/README.md | 0 .../github.com/labstack/gommon/color/color.go | 0 .../github.com/labstack/gommon/log/README.md | 0 .../github.com/labstack/gommon/log/color.go | 0 .../github.com/labstack/gommon/log/log.go | 0 .../github.com/labstack/gommon/log/white.go | 0 .../leaanthony/go-ansi-parser/LICENSE | 0 .../leaanthony/go-ansi-parser/README.md | 0 .../leaanthony/go-ansi-parser/ansi.go | 0 .../leaanthony/go-ansi-parser/cols.go | 0 .../leaanthony/go-ansi-parser/logo.png | Bin .../leaanthony/go-ansi-parser/options.go | 0 .../github.com/leaanthony/gosod/.gitignore | 0 .../github.com/leaanthony/gosod/LICENSE | 0 .../github.com/leaanthony/gosod/README.md | 0 .../github.com/leaanthony/gosod/gosod.go | 0 .../gosod/internal/templatedir/templatedir.go | 0 .../testdata/embedded/custom.filtername.txt | 0 .../templatedir/testdata/embedded/ignored.txt | 0 .../testdata/embedded/subdir/included.txt | 0 .../testdata/embedded/subdir/sub.tmpl.go | 0 .../testdata/embedded/test.tmpl.go | 0 .../github.com/leaanthony/gosod/logo.png | Bin .../github.com/leaanthony/slicer/.gitignore | 0 .../github.com/leaanthony/slicer/CHANGELOG.md | 0 .../github.com/leaanthony/slicer/LICENSE | 0 .../github.com/leaanthony/slicer/README.md | 0 .../github.com/leaanthony/slicer/bool.go | 0 .../github.com/leaanthony/slicer/float32.go | 0 .../github.com/leaanthony/slicer/float64.go | 0 .../github.com/leaanthony/slicer/int.go | 0 .../github.com/leaanthony/slicer/int16.go | 0 .../github.com/leaanthony/slicer/int32.go | 0 .../github.com/leaanthony/slicer/int64.go | 0 .../github.com/leaanthony/slicer/int8.go | 0 .../github.com/leaanthony/slicer/interface.go | 0 .../github.com/leaanthony/slicer/logo.png | Bin .../github.com/leaanthony/slicer/string.go | 0 .../github.com/leaanthony/slicer/uint.go | 0 .../github.com/leaanthony/slicer/uint16.go | 0 .../github.com/leaanthony/slicer/uint32.go | 0 .../github.com/leaanthony/slicer/uint64.go | 0 .../github.com/leaanthony/slicer/uint8.go | 0 .../github.com/leaanthony/u/.gitignore | 0 .../vendor}/github.com/leaanthony/u/README.md | 0 .../vendor}/github.com/leaanthony/u/u.go | 0 .../github.com/mattn/go-colorable/LICENSE | 0 .../github.com/mattn/go-colorable/README.md | 0 .../mattn/go-colorable/colorable_appengine.go | 0 .../mattn/go-colorable/colorable_others.go | 0 .../mattn/go-colorable/colorable_windows.go | 0 .../github.com/mattn/go-colorable/go.test.sh | 0 .../mattn/go-colorable/noncolorable.go | 0 .../github.com/mattn/go-isatty/LICENSE | 0 .../github.com/mattn/go-isatty/README.md | 0 .../vendor}/github.com/mattn/go-isatty/doc.go | 0 .../github.com/mattn/go-isatty/go.test.sh | 0 .../github.com/mattn/go-isatty/isatty_bsd.go | 0 .../mattn/go-isatty/isatty_others.go | 0 .../mattn/go-isatty/isatty_plan9.go | 0 .../mattn/go-isatty/isatty_solaris.go | 0 .../mattn/go-isatty/isatty_tcgets.go | 0 .../mattn/go-isatty/isatty_windows.go | 0 .../vendor}/github.com/pkg/browser/LICENSE | 0 .../vendor}/github.com/pkg/browser/README.md | 0 .../vendor}/github.com/pkg/browser/browser.go | 0 .../github.com/pkg/browser/browser_darwin.go | 0 .../github.com/pkg/browser/browser_freebsd.go | 0 .../github.com/pkg/browser/browser_linux.go | 0 .../github.com/pkg/browser/browser_netbsd.go | 0 .../github.com/pkg/browser/browser_openbsd.go | 0 .../pkg/browser/browser_unsupported.go | 0 .../github.com/pkg/browser/browser_windows.go | 0 .../vendor}/github.com/pkg/errors/.gitignore | 0 .../vendor}/github.com/pkg/errors/.travis.yml | 0 .../vendor}/github.com/pkg/errors/LICENSE | 0 .../vendor}/github.com/pkg/errors/Makefile | 0 .../vendor}/github.com/pkg/errors/README.md | 0 .../github.com/pkg/errors/appveyor.yml | 0 .../vendor}/github.com/pkg/errors/errors.go | 0 .../vendor}/github.com/pkg/errors/go113.go | 0 .../vendor}/github.com/pkg/errors/stack.go | 0 .../github.com/rivo/uniseg/LICENSE.txt | 0 .../vendor}/github.com/rivo/uniseg/README.md | 0 .../vendor}/github.com/rivo/uniseg/doc.go | 0 .../github.com/rivo/uniseg/eastasianwidth.go | 0 .../rivo/uniseg/emojipresentation.go | 0 .../github.com/rivo/uniseg/gen_breaktest.go | 0 .../github.com/rivo/uniseg/gen_properties.go | 0 .../github.com/rivo/uniseg/grapheme.go | 0 .../rivo/uniseg/graphemeproperties.go | 0 .../github.com/rivo/uniseg/graphemerules.go | 0 .../vendor}/github.com/rivo/uniseg/line.go | 0 .../github.com/rivo/uniseg/lineproperties.go | 0 .../github.com/rivo/uniseg/linerules.go | 0 .../github.com/rivo/uniseg/properties.go | 0 .../github.com/rivo/uniseg/sentence.go | 0 .../rivo/uniseg/sentenceproperties.go | 0 .../github.com/rivo/uniseg/sentencerules.go | 0 .../vendor}/github.com/rivo/uniseg/step.go | 0 .../vendor}/github.com/rivo/uniseg/width.go | 0 .../vendor}/github.com/rivo/uniseg/word.go | 0 .../github.com/rivo/uniseg/wordproperties.go | 0 .../github.com/rivo/uniseg/wordrules.go | 0 .../vendor}/github.com/samber/lo/.gitignore | 0 .../vendor}/github.com/samber/lo/.travis.yml | 0 .../vendor}/github.com/samber/lo/CHANGELOG.md | 0 .../vendor}/github.com/samber/lo/Dockerfile | 0 .../vendor}/github.com/samber/lo/LICENSE | 0 .../vendor}/github.com/samber/lo/Makefile | 0 .../vendor}/github.com/samber/lo/README.md | 0 .../vendor}/github.com/samber/lo/channel.go | 0 .../github.com/samber/lo/concurrency.go | 0 .../vendor}/github.com/samber/lo/condition.go | 0 .../github.com/samber/lo/constraints.go | 0 .../vendor}/github.com/samber/lo/errors.go | 0 .../vendor}/github.com/samber/lo/find.go | 0 .../vendor}/github.com/samber/lo/func.go | 0 .../vendor}/github.com/samber/lo/intersect.go | 0 .../vendor}/github.com/samber/lo/map.go | 0 .../vendor}/github.com/samber/lo/math.go | 0 .../vendor}/github.com/samber/lo/retry.go | 0 .../vendor}/github.com/samber/lo/slice.go | 0 .../vendor}/github.com/samber/lo/string.go | 0 .../vendor}/github.com/samber/lo/tuples.go | 0 .../github.com/samber/lo/type_manipulation.go | 0 .../vendor}/github.com/samber/lo/types.go | 0 .../tkrajina/go-reflector/LICENSE.txt | 0 .../go-reflector/reflector/reflector.go | 0 .../tkrajina/go-reflector/reflector/utils.go | 0 .../valyala/bytebufferpool/.travis.yml | 0 .../github.com/valyala/bytebufferpool/LICENSE | 0 .../valyala/bytebufferpool/README.md | 0 .../valyala/bytebufferpool/bytebuffer.go | 0 .../github.com/valyala/bytebufferpool/doc.go | 0 .../github.com/valyala/bytebufferpool/pool.go | 0 .../github.com/valyala/fasttemplate/LICENSE | 0 .../github.com/valyala/fasttemplate/README.md | 0 .../valyala/fasttemplate/template.go | 0 .../github.com/valyala/fasttemplate/unsafe.go | 0 .../valyala/fasttemplate/unsafe_gae.go | 0 .../github.com/wailsapp/go-webview2/LICENSE | 0 .../wailsapp/go-webview2/internal/w32/w32.go | 0 .../go-webview2/pkg/combridge/bridge.go | 0 .../go-webview2/pkg/combridge/iunknown.go | 0 .../pkg/combridge/iunknown_impl.go | 0 .../go-webview2/pkg/combridge/syscall.go | 0 .../go-webview2/pkg/combridge/vtables.go | 0 .../pkg/edge/COREWEBVIEW2_BOUNDS_MODE.go | 0 .../pkg/edge/COREWEBVIEW2_COLOR.go | 0 .../COREWEBVIEW2_HOST_RESOURCE_ACCESS_KIND.go | 0 .../pkg/edge/COREWEBVIEW2_KEY_EVENT_KIND.go | 0 .../edge/COREWEBVIEW2_MOVE_FOCUS_REASON.go | 0 .../edge/COREWEBVIEW2_PHYSICAL_KEY_STATUS.go | 0 .../edge/COREWEBVIEW2_PROCESS_FAILED_KIND.go | 0 .../edge/COREWEBVIEW2_WEB_RESOURCE_CONTEXT.go | 0 ...eWebView2AcceleratorKeyPressedEventArgs.go | 0 ...bView2AcceleratorKeyPressedEventHandler.go | 0 ...ntainsFullScreenElementChangedEventArgs.go | 0 ...insFullScreenElementChangedEventHandler.go | 0 .../pkg/edge/ICoreWebView2Controller.go | 0 .../pkg/edge/ICoreWebView2Controller2.go | 0 .../pkg/edge/ICoreWebView2Controller3.go | 0 .../pkg/edge/ICoreWebView2Controller4.go | 0 ...eCoreWebView2ControllerCompletedHandler.go | 0 .../pkg/edge/ICoreWebView2Deferral.go | 0 .../go-webview2/pkg/edge/ICoreWebView2File.go | 0 ...reWebView2HttpHeadersCollectionIterator.go | 0 .../edge/ICoreWebView2HttpRequestHeaders.go | 0 .../edge/ICoreWebView2HttpResponseHeaders.go | 0 ...oreWebView2NavigationCompletedEventArgs.go | 0 ...WebView2NavigationCompletedEventHandler.go | 0 .../edge/ICoreWebView2ObjectCollectionView.go | 0 .../ICoreWebView2ProcessFailedEventArgs.go | 0 .../ICoreWebView2ProcessFailedEventHandler.go | 0 ...w2RasterizationScaleChangedEventHandler.go | 0 .../pkg/edge/ICoreWebView2Settings.go | 0 .../pkg/edge/ICoreWebView2Settings2.go | 0 .../pkg/edge/ICoreWebView2Settings3.go | 0 .../pkg/edge/ICoreWebView2Settings4.go | 0 .../pkg/edge/ICoreWebView2Settings5.go | 0 .../pkg/edge/ICoreWebView2Settings6.go | 0 ...CoreWebView2WebMessageReceivedEventArgs.go | 0 ...eWebView2WebMessageReceivedEventHandler.go | 0 .../edge/ICoreWebView2WebResourceRequest.go | 0 ...reWebView2WebResourceRequestedEventArgs.go | 0 ...ebView2WebResourceRequestedEventHandler.go | 0 .../edge/ICoreWebView2WebResourceResponse.go | 0 .../go-webview2/pkg/edge/ICoreWebView2_2.go | 0 .../go-webview2/pkg/edge/ICoreWebView2_3.go | 0 .../pkg/edge/ICoreWebViewSettings.go | 0 .../wailsapp/go-webview2/pkg/edge/IStream.go | 0 .../go-webview2/pkg/edge/capabilities.go | 0 .../wailsapp/go-webview2/pkg/edge/chromium.go | 0 .../go-webview2/pkg/edge/chromium_386.go | 0 .../go-webview2/pkg/edge/chromium_amd64.go | 0 .../go-webview2/pkg/edge/chromium_arm64.go | 0 .../wailsapp/go-webview2/pkg/edge/com.go | 0 .../go-webview2/pkg/edge/corewebview2.go | 0 .../go-webview2/pkg/edge/create_env_go.go | 0 .../go-webview2/pkg/edge/create_env_native.go | 0 .../wailsapp/go-webview2/pkg/edge/guid.go | 0 .../go-webview2/pkg/edge/version_map.go | 0 .../go-webview2/webviewloader/LICENSE | 0 .../go-webview2/webviewloader/README.md | 0 .../webviewloader/arm64/WebView2Loader.dll | Bin .../go-webview2/webviewloader/env_create.go | 0 .../webviewloader/env_create_completed.go | 0 .../webviewloader/env_create_options.go | 0 .../go-webview2/webviewloader/find_dll.go | 0 .../webviewloader/find_dll_installed.go | 0 .../webviewloader/native_module.go | 0 .../webviewloader/native_module_386.go | 0 .../webviewloader/native_module_amd64.go | 0 .../webviewloader/native_module_arm64.go | 0 .../go-webview2/webviewloader/syscall.go | 0 .../go-webview2/webviewloader/version.go | 0 .../webviewloader/x64/WebView2Loader.dll | Bin .../webviewloader/x86/WebView2Loader.dll | Bin .../wailsapp/mimetype/.gitattributes | 0 .../wailsapp/mimetype/CODE_OF_CONDUCT.md | 0 .../wailsapp/mimetype/CONTRIBUTING.md | 0 .../github.com/wailsapp/mimetype/LICENSE | 0 .../github.com/wailsapp/mimetype/README.md | 0 .../mimetype/internal/charset/charset.go | 0 .../wailsapp/mimetype/internal/json/json.go | 0 .../mimetype/internal/magic/archive.go | 0 .../wailsapp/mimetype/internal/magic/audio.go | 0 .../mimetype/internal/magic/binary.go | 0 .../mimetype/internal/magic/database.go | 0 .../mimetype/internal/magic/document.go | 0 .../wailsapp/mimetype/internal/magic/font.go | 0 .../wailsapp/mimetype/internal/magic/ftyp.go | 0 .../wailsapp/mimetype/internal/magic/geo.go | 0 .../wailsapp/mimetype/internal/magic/image.go | 0 .../wailsapp/mimetype/internal/magic/magic.go | 0 .../mimetype/internal/magic/ms_office.go | 0 .../wailsapp/mimetype/internal/magic/ogg.go | 0 .../wailsapp/mimetype/internal/magic/text.go | 0 .../mimetype/internal/magic/text_csv.go | 0 .../wailsapp/mimetype/internal/magic/video.go | 0 .../wailsapp/mimetype/internal/magic/zip.go | 0 .../github.com/wailsapp/mimetype/mime.go | 0 .../github.com/wailsapp/mimetype/mimetype.gif | Bin .../github.com/wailsapp/mimetype/mimetype.go | 0 .../wailsapp/mimetype/supported_mimes.md | 0 .../github.com/wailsapp/mimetype/tree.go | 0 .../wailsapp/wails/v2/.golangci.yml | 0 .../wailsapp/wails/v2/.prettierrc.yml | 0 .../github.com/wailsapp/wails/v2/LICENSE | 0 .../github.com/wailsapp/wails/v2/README.md | 0 .../wailsapp/wails/v2/Taskfile.yaml | 0 .../wailsapp/wails/v2/internal/app/app.go | 0 .../wails/v2/internal/app/app_bindings.go | 0 .../wails/v2/internal/app/app_debug.go | 0 .../wails/v2/internal/app/app_debug_not.go | 0 .../wails/v2/internal/app/app_default_unix.go | 0 .../v2/internal/app/app_default_windows.go | 0 .../wailsapp/wails/v2/internal/app/app_dev.go | 0 .../wails/v2/internal/app/app_devtools.go | 0 .../wails/v2/internal/app/app_devtools_not.go | 0 .../wails/v2/internal/app/app_obfuscated.go | 0 .../v2/internal/app/app_obfuscated_not.go | 0 .../v2/internal/app/app_preflight_unix.go | 0 .../v2/internal/app/app_preflight_windows.go | 0 .../wails/v2/internal/app/app_production.go | 0 .../wails/v2/internal/binding/binding.go | 0 .../wails/v2/internal/binding/boundMethod.go | 0 .../wailsapp/wails/v2/internal/binding/db.go | 0 .../wails/v2/internal/binding/generate.go | 0 .../wails/v2/internal/binding/parameter.go | 0 .../wails/v2/internal/binding/reflect.go | 0 .../wails/v2/internal/frontend/calls.go | 0 .../frontend/desktop/darwin/AppDelegate.h | 0 .../frontend/desktop/darwin/AppDelegate.m | 6 + .../frontend/desktop/darwin/Application.h | 0 .../frontend/desktop/darwin/Application.m | 0 .../frontend/desktop/darwin/CustomProtocol.h | 0 .../frontend/desktop/darwin/CustomProtocol.m | 0 .../internal/frontend/desktop/darwin/Role.h | 0 .../frontend/desktop/darwin/WailsAlert.h | 0 .../frontend/desktop/darwin/WailsAlert.m | 0 .../frontend/desktop/darwin/WailsContext.h | 0 .../frontend/desktop/darwin/WailsContext.m | 0 .../frontend/desktop/darwin/WailsMenu.h | 0 .../frontend/desktop/darwin/WailsMenu.m | 0 .../frontend/desktop/darwin/WailsMenuItem.h | 0 .../frontend/desktop/darwin/WailsMenuItem.m | 0 .../frontend/desktop/darwin/WindowDelegate.h | 0 .../frontend/desktop/darwin/WindowDelegate.m | 0 .../frontend/desktop/darwin/browser.go | 0 .../frontend/desktop/darwin/callbacks.go | 0 .../frontend/desktop/darwin/calloc.go | 0 .../frontend/desktop/darwin/clipboard.go | 0 .../frontend/desktop/darwin/dialog.go | 0 .../frontend/desktop/darwin/frontend.go | 0 .../frontend/desktop/darwin/inspector.go | 0 .../frontend/desktop/darwin/inspector_dev.go | 0 .../internal/frontend/desktop/darwin/main.m | 0 .../internal/frontend/desktop/darwin/menu.go | 0 .../frontend/desktop/darwin/menuitem.go | 0 .../frontend/desktop/darwin/message.h | 0 .../frontend/desktop/darwin/screen.go | 0 .../desktop/darwin/single_instance.go | 0 .../frontend/desktop/darwin/window.go | 0 .../frontend/desktop/desktop_darwin.go | 0 .../frontend/desktop/desktop_linux.go | 0 .../frontend/desktop/desktop_windows.go | 0 .../frontend/desktop/linux/browser.go | 0 .../internal/frontend/desktop/linux/calloc.go | 0 .../frontend/desktop/linux/clipboard.go | 0 .../internal/frontend/desktop/linux/dialog.go | 0 .../frontend/desktop/linux/frontend.go | 0 .../v2/internal/frontend/desktop/linux/gtk.go | 0 .../internal/frontend/desktop/linux/invoke.go | 0 .../internal/frontend/desktop/linux/keys.go | 0 .../internal/frontend/desktop/linux/menu.go | 0 .../internal/frontend/desktop/linux/screen.go | 0 .../frontend/desktop/linux/single_instance.go | 8 + .../frontend/desktop/linux/webkit2.go | 0 .../internal/frontend/desktop/linux/window.c | 0 .../internal/frontend/desktop/linux/window.go | 0 .../internal/frontend/desktop/linux/window.h | 0 .../frontend/desktop/windows/browser.go | 0 .../frontend/desktop/windows/clipboard.go | 0 .../frontend/desktop/windows/dialog.go | 4 + .../frontend/desktop/windows/frontend.go | 4 + .../internal/frontend/desktop/windows/keys.go | 0 .../internal/frontend/desktop/windows/menu.go | 0 .../frontend/desktop/windows/screen.go | 0 .../desktop/windows/single_instance.go | 12 +- .../frontend/desktop/windows/theme.go | 0 .../desktop/windows/win32/clipboard.go | 0 .../frontend/desktop/windows/win32/consts.go | 0 .../frontend/desktop/windows/win32/theme.go | 0 .../frontend/desktop/windows/win32/window.go | 0 .../frontend/desktop/windows/winc/.gitignore | 0 .../frontend/desktop/windows/winc/AUTHORS | 0 .../frontend/desktop/windows/winc/LICENSE | 0 .../frontend/desktop/windows/winc/README.md | 0 .../frontend/desktop/windows/winc/app.go | 0 .../frontend/desktop/windows/winc/bitmap.go | 0 .../frontend/desktop/windows/winc/brush.go | 0 .../frontend/desktop/windows/winc/buttons.go | 0 .../frontend/desktop/windows/winc/canvas.go | 0 .../frontend/desktop/windows/winc/color.go | 0 .../frontend/desktop/windows/winc/combobox.go | 0 .../desktop/windows/winc/commondlgs.go | 0 .../desktop/windows/winc/controlbase.go | 0 .../desktop/windows/winc/controller.go | 0 .../frontend/desktop/windows/winc/dialog.go | 0 .../desktop/windows/winc/dock_topbottom.png | Bin .../desktop/windows/winc/dock_topleft.png | Bin .../frontend/desktop/windows/winc/edit.go | 0 .../frontend/desktop/windows/winc/event.go | 0 .../desktop/windows/winc/eventdata.go | 0 .../desktop/windows/winc/eventmanager.go | 0 .../frontend/desktop/windows/winc/font.go | 0 .../frontend/desktop/windows/winc/form.go | 0 .../desktop/windows/winc/globalvars.go | 0 .../frontend/desktop/windows/winc/icon.go | 0 .../desktop/windows/winc/imagelist.go | 0 .../desktop/windows/winc/imageview.go | 0 .../desktop/windows/winc/imageviewbox.go | 0 .../frontend/desktop/windows/winc/init.go | 0 .../frontend/desktop/windows/winc/keyboard.go | 0 .../frontend/desktop/windows/winc/label.go | 0 .../frontend/desktop/windows/winc/layout.go | 0 .../frontend/desktop/windows/winc/listview.go | 0 .../frontend/desktop/windows/winc/menu.go | 0 .../desktop/windows/winc/mousecontrol.go | 0 .../windows/winc/msghandlerregistry.go | 0 .../frontend/desktop/windows/winc/panel.go | 0 .../frontend/desktop/windows/winc/path.go | 0 .../frontend/desktop/windows/winc/pen.go | 0 .../desktop/windows/winc/progressbar.go | 0 .../frontend/desktop/windows/winc/rect.go | 0 .../frontend/desktop/windows/winc/resizer.go | 0 .../desktop/windows/winc/scrollview.go | 0 .../frontend/desktop/windows/winc/slider.go | 0 .../frontend/desktop/windows/winc/tabview.go | 0 .../frontend/desktop/windows/winc/toolbar.go | 0 .../frontend/desktop/windows/winc/tooltip.go | 0 .../frontend/desktop/windows/winc/treeview.go | 0 .../frontend/desktop/windows/winc/utils.go | 0 .../desktop/windows/winc/w32/comctl32.go | 0 .../desktop/windows/winc/w32/comdlg32.go | 0 .../desktop/windows/winc/w32/constants.go | 0 .../desktop/windows/winc/w32/dwmapi.go | 0 .../desktop/windows/winc/w32/gdi32.go | 0 .../desktop/windows/winc/w32/gdiplus.go | 0 .../desktop/windows/winc/w32/idispatch.go | 0 .../desktop/windows/winc/w32/istream.go | 0 .../desktop/windows/winc/w32/iunknown.go | 0 .../desktop/windows/winc/w32/kernel32.go | 0 .../desktop/windows/winc/w32/ole32.go | 0 .../desktop/windows/winc/w32/oleaut32.go | 0 .../desktop/windows/winc/w32/shcore.go | 0 .../desktop/windows/winc/w32/shell32.go | 0 .../desktop/windows/winc/w32/shlwapi.go | 0 .../desktop/windows/winc/w32/toolbar.go | 0 .../desktop/windows/winc/w32/typedef.go | 0 .../desktop/windows/winc/w32/user32.go | 0 .../desktop/windows/winc/w32/utils.go | 0 .../desktop/windows/winc/w32/uxtheme.go | 0 .../frontend/desktop/windows/winc/w32/vars.go | 0 .../frontend/desktop/windows/winc/wndproc.go | 0 .../frontend/desktop/windows/window.go | 0 .../internal/frontend/devserver/devserver.go | 0 .../wails/v2/internal/frontend/dispatcher.go | 0 .../internal/frontend/dispatcher/browser.go | 0 .../v2/internal/frontend/dispatcher/calls.go | 0 .../frontend/dispatcher/dispatcher.go | 0 .../v2/internal/frontend/dispatcher/events.go | 0 .../v2/internal/frontend/dispatcher/log.go | 0 .../frontend/dispatcher/securecalls.go | 0 .../frontend/dispatcher/systemcalls.go | 0 .../v2/internal/frontend/dispatcher/window.go | 0 .../wails/v2/internal/frontend/events.go | 0 .../wails/v2/internal/frontend/frontend.go | 0 .../v2/internal/frontend/runtime/assets.go | 0 .../internal/frontend/runtime/assets_dev.go | 0 .../v2/internal/frontend/runtime/events.go | 0 .../wails/v2/internal/frontend/runtime/ipc.go | 0 .../wails/v2/internal/frontend/runtime/ipc.js | 0 .../frontend/runtime/ipc_websocket.go | 0 .../frontend/runtime/ipc_websocket.js | 0 .../frontend/runtime/package-lock.json | 0 .../v2/internal/frontend/runtime/package.json | 0 .../frontend/runtime/runtime_debug_desktop.go | 0 .../frontend/runtime/runtime_debug_desktop.js | 0 .../frontend/runtime/runtime_prod_desktop.go | 0 .../frontend/runtime/runtime_prod_desktop.js | 0 .../internal/frontend/runtime/vite.config.ts | 0 .../frontend/runtime/wrapper/package.json | 0 .../frontend/runtime/wrapper/runtime.d.ts | 0 .../frontend/runtime/wrapper/runtime.js | 0 .../frontend/runtime/wrapper/wrapper.go | 0 .../wailsapp/wails/v2/internal/fs/fs.go | 0 .../v2/internal/go-common-file-dialog/LICENSE | 0 .../cfd/CommonFileDialog.go | 0 .../cfd/CommonFileDialog_nonWindows.go | 0 .../cfd/CommonFileDialog_windows.go | 0 .../go-common-file-dialog/cfd/DialogConfig.go | 0 .../go-common-file-dialog/cfd/errors.go | 0 .../cfd/iFileOpenDialog.go | 0 .../cfd/iFileSaveDialog.go | 0 .../go-common-file-dialog/cfd/iShellItem.go | 0 .../cfd/iShellItemArray.go | 0 .../go-common-file-dialog/cfd/vtblCommon.go | 0 .../cfd/vtblCommonFunc.go | 0 .../go-common-file-dialog/util/util.go | 0 .../v2/internal/goversion/build_constraint.go | 0 .../wails/v2/internal/goversion/min.go | 0 .../wails/v2/internal/logger/custom_logger.go | 0 .../v2/internal/logger/default_logger.go | 0 .../internal/menumanager/applicationmenu.go | 0 .../v2/internal/menumanager/contextmenu.go | 0 .../v2/internal/menumanager/menuitemmap.go | 0 .../v2/internal/menumanager/menumanager.go | 0 .../v2/internal/menumanager/processedMenu.go | 0 .../wails/v2/internal/menumanager/traymenu.go | 0 .../wails/v2/internal/project/project.go | 0 .../wailsapp/wails/v2/internal/shell/env.go | 0 .../wailsapp/wails/v2/internal/shell/shell.go | 0 .../wails/v2/internal/signal/signal.go | 0 .../v2/internal/system/operatingsystem/os.go | 0 .../system/operatingsystem/os_darwin.go | 0 .../system/operatingsystem/os_linux.go | 0 .../system/operatingsystem/os_windows.go | 0 .../system/operatingsystem/version_windows.go | 0 .../v2/internal/typescriptify/LICENSE.txt | 0 .../wails/v2/internal/typescriptify/README.md | 0 .../typescriptify/js-reserved-keywords.go | 0 .../internal/typescriptify/typescriptify.go | 0 .../MicrosoftEdgeWebview2Setup.exe | Bin .../webview2runtime/webview2installer.go | 0 .../webview2runtime/webview2runtime.go | 0 .../wails/v2/internal/wv2installer/browser.go | 0 .../v2/internal/wv2installer/download.go | 0 .../wails/v2/internal/wv2installer/embed.go | 0 .../wails/v2/internal/wv2installer/error.go | 0 .../v2/internal/wv2installer/wv2installer.go | 0 .../wails/v2/pkg/application/application.go | 0 .../wails/v2/pkg/application/events.go | 0 .../wailsapp/wails/v2/pkg/application/init.go | 0 .../wails/v2/pkg/application/init_windows.go | 0 .../wails/v2/pkg/assetserver/assethandler.go | 0 .../pkg/assetserver/assethandler_external.go | 0 .../wails/v2/pkg/assetserver/assetserver.go | 0 .../v2/pkg/assetserver/assetserver_dev.go | 0 .../v2/pkg/assetserver/assetserver_webview.go | 0 .../wails/v2/pkg/assetserver/body_recorder.go | 0 .../wails/v2/pkg/assetserver/common.go | 0 .../pkg/assetserver/content_type_sniffer.go | 0 .../v2/pkg/assetserver/defaultindex.html | 0 .../wailsapp/wails/v2/pkg/assetserver/fs.go | 0 .../wails/v2/pkg/assetserver/mimecache.go | 0 .../wails/v2/pkg/assetserver/ringqueue.go | 0 .../v2/pkg/assetserver/webview/request.go | 0 .../pkg/assetserver/webview/request_darwin.go | 0 .../assetserver/webview/request_finalizer.go | 0 .../pkg/assetserver/webview/request_linux.go | 0 .../assetserver/webview/request_windows.go | 0 .../pkg/assetserver/webview/responsewriter.go | 0 .../webview/responsewriter_darwin.go | 0 .../webview/responsewriter_linux.go | 0 .../webview/responsewriter_windows.go | 0 .../v2/pkg/assetserver/webview/webkit2_36+.go | 0 .../v2/pkg/assetserver/webview/webkit2_36.go | 0 .../v2/pkg/assetserver/webview/webkit2_40+.go | 0 .../v2/pkg/assetserver/webview/webkit2_40.go | 0 .../pkg/assetserver/webview/webkit2_legacy.go | 0 .../wailsapp/wails/v2/pkg/logger/default.go | 0 .../wails/v2/pkg/logger/filelogger.go | 0 .../wailsapp/wails/v2/pkg/logger/logger.go | 0 .../wailsapp/wails/v2/pkg/menu/README.md | 0 .../wailsapp/wails/v2/pkg/menu/callback.go | 0 .../wailsapp/wails/v2/pkg/menu/cols.go | 0 .../wailsapp/wails/v2/pkg/menu/contextmenu.go | 0 .../wailsapp/wails/v2/pkg/menu/keys/keys.go | 0 .../wails/v2/pkg/menu/keys/macmodifiers.go | 0 .../wailsapp/wails/v2/pkg/menu/keys/parser.go | 0 .../wails/v2/pkg/menu/keys/stringify.go | 0 .../wailsapp/wails/v2/pkg/menu/mac.go | 0 .../wailsapp/wails/v2/pkg/menu/menu.go | 0 .../wailsapp/wails/v2/pkg/menu/menuitem.go | 0 .../wailsapp/wails/v2/pkg/menu/menuroles.go | 0 .../wailsapp/wails/v2/pkg/menu/styledlabel.go | 0 .../wailsapp/wails/v2/pkg/menu/tray.go | 0 .../wailsapp/wails/v2/pkg/menu/type.go | 0 .../wailsapp/wails/v2/pkg/menu/windows.go | 0 .../v2/pkg/options/assetserver/middleware.go | 0 .../v2/pkg/options/assetserver/options.go | 0 .../wailsapp/wails/v2/pkg/options/debug.go | 0 .../wails/v2/pkg/options/linux/linux.go | 0 .../wails/v2/pkg/options/mac/appearance.go | 0 .../wailsapp/wails/v2/pkg/options/mac/mac.go | 0 .../wails/v2/pkg/options/mac/preferences.go | 0 .../wails/v2/pkg/options/mac/titlebar.go | 0 .../wailsapp/wails/v2/pkg/options/options.go | 0 .../wails/v2/pkg/options/windows/windows.go | 2 + .../wailsapp/wails/v2/pkg/runtime/browser.go | 0 .../wails/v2/pkg/runtime/clipboard.go | 0 .../wailsapp/wails/v2/pkg/runtime/dialog.go | 0 .../wailsapp/wails/v2/pkg/runtime/events.go | 0 .../wailsapp/wails/v2/pkg/runtime/log.go | 0 .../wailsapp/wails/v2/pkg/runtime/menu.go | 0 .../wailsapp/wails/v2/pkg/runtime/runtime.go | 0 .../wailsapp/wails/v2/pkg/runtime/screen.go | 0 .../wailsapp/wails/v2/pkg/runtime/window.go | 0 .../github.com/wailsapp/wails/v2/wails.go | 0 .../vendor}/golang.org/x/crypto/LICENSE | 0 .../vendor}/golang.org/x/crypto/PATENTS | 0 .../vendor}/golang.org/x/crypto/acme/acme.go | 0 .../x/crypto/acme/autocert/autocert.go | 0 .../x/crypto/acme/autocert/cache.go | 0 .../x/crypto/acme/autocert/listener.go | 0 .../x/crypto/acme/autocert/renewal.go | 0 .../vendor}/golang.org/x/crypto/acme/http.go | 0 .../vendor}/golang.org/x/crypto/acme/jws.go | 0 .../golang.org/x/crypto/acme/rfc8555.go | 0 .../vendor}/golang.org/x/crypto/acme/types.go | 0 .../golang.org/x/crypto/acme/version_go112.go | 0 .../vendor}/golang.org/x/exp/LICENSE | 0 .../vendor}/golang.org/x/exp/PATENTS | 0 .../x/exp/constraints/constraints.go | 0 .../vendor}/golang.org/x/net/LICENSE | 0 .../vendor}/golang.org/x/net/PATENTS | 0 .../golang.org/x/net/html/atom/atom.go | 0 .../golang.org/x/net/html/atom/table.go | 0 .../vendor}/golang.org/x/net/html/const.go | 0 .../vendor}/golang.org/x/net/html/doc.go | 0 .../vendor}/golang.org/x/net/html/doctype.go | 0 .../vendor}/golang.org/x/net/html/entity.go | 0 .../vendor}/golang.org/x/net/html/escape.go | 0 .../vendor}/golang.org/x/net/html/foreign.go | 0 .../vendor}/golang.org/x/net/html/node.go | 0 .../vendor}/golang.org/x/net/html/parse.go | 0 .../vendor}/golang.org/x/net/html/render.go | 0 .../vendor}/golang.org/x/net/html/token.go | 0 .../golang.org/x/net/http/httpguts/guts.go | 0 .../golang.org/x/net/http/httpguts/httplex.go | 0 .../vendor}/golang.org/x/net/http2/.gitignore | 0 .../vendor}/golang.org/x/net/http2/ascii.go | 0 .../vendor}/golang.org/x/net/http2/ciphers.go | 0 .../x/net/http2/client_conn_pool.go | 0 .../golang.org/x/net/http2/databuffer.go | 0 .../vendor}/golang.org/x/net/http2/errors.go | 0 .../vendor}/golang.org/x/net/http2/flow.go | 0 .../vendor}/golang.org/x/net/http2/frame.go | 0 .../vendor}/golang.org/x/net/http2/gotrack.go | 0 .../vendor}/golang.org/x/net/http2/h2c/h2c.go | 0 .../golang.org/x/net/http2/headermap.go | 0 .../golang.org/x/net/http2/hpack/encode.go | 0 .../golang.org/x/net/http2/hpack/hpack.go | 0 .../golang.org/x/net/http2/hpack/huffman.go | 0 .../x/net/http2/hpack/static_table.go | 0 .../golang.org/x/net/http2/hpack/tables.go | 0 .../vendor}/golang.org/x/net/http2/http2.go | 0 .../vendor}/golang.org/x/net/http2/pipe.go | 0 .../vendor}/golang.org/x/net/http2/server.go | 0 .../golang.org/x/net/http2/transport.go | 0 .../vendor}/golang.org/x/net/http2/write.go | 0 .../golang.org/x/net/http2/writesched.go | 0 .../x/net/http2/writesched_priority.go | 0 .../x/net/http2/writesched_random.go | 0 .../x/net/http2/writesched_roundrobin.go | 0 .../vendor}/golang.org/x/net/idna/go118.go | 0 .../golang.org/x/net/idna/idna10.0.0.go | 0 .../golang.org/x/net/idna/idna9.0.0.go | 0 .../golang.org/x/net/idna/pre_go118.go | 0 .../vendor}/golang.org/x/net/idna/punycode.go | 0 .../golang.org/x/net/idna/tables10.0.0.go | 0 .../golang.org/x/net/idna/tables11.0.0.go | 0 .../golang.org/x/net/idna/tables12.0.0.go | 0 .../golang.org/x/net/idna/tables13.0.0.go | 0 .../golang.org/x/net/idna/tables15.0.0.go | 0 .../golang.org/x/net/idna/tables9.0.0.go | 0 .../vendor}/golang.org/x/net/idna/trie.go | 0 .../golang.org/x/net/idna/trie12.0.0.go | 0 .../golang.org/x/net/idna/trie13.0.0.go | 0 .../vendor}/golang.org/x/net/idna/trieval.go | 0 .../golang.org/x/net/websocket/client.go | 0 .../golang.org/x/net/websocket/dial.go | 0 .../golang.org/x/net/websocket/hybi.go | 0 .../golang.org/x/net/websocket/server.go | 0 .../golang.org/x/net/websocket/websocket.go | 0 .../vendor}/golang.org/x/sys/LICENSE | 0 .../vendor}/golang.org/x/sys/PATENTS | 0 .../vendor}/golang.org/x/sys/unix/.gitignore | 0 .../vendor}/golang.org/x/sys/unix/README.md | 0 .../golang.org/x/sys/unix/affinity_linux.go | 0 .../vendor}/golang.org/x/sys/unix/aliases.go | 0 .../golang.org/x/sys/unix/asm_aix_ppc64.s | 0 .../golang.org/x/sys/unix/asm_bsd_386.s | 0 .../golang.org/x/sys/unix/asm_bsd_amd64.s | 0 .../golang.org/x/sys/unix/asm_bsd_arm.s | 0 .../golang.org/x/sys/unix/asm_bsd_arm64.s | 0 .../golang.org/x/sys/unix/asm_bsd_ppc64.s | 0 .../golang.org/x/sys/unix/asm_bsd_riscv64.s | 0 .../golang.org/x/sys/unix/asm_linux_386.s | 0 .../golang.org/x/sys/unix/asm_linux_amd64.s | 0 .../golang.org/x/sys/unix/asm_linux_arm.s | 0 .../golang.org/x/sys/unix/asm_linux_arm64.s | 0 .../golang.org/x/sys/unix/asm_linux_loong64.s | 0 .../golang.org/x/sys/unix/asm_linux_mips64x.s | 0 .../golang.org/x/sys/unix/asm_linux_mipsx.s | 0 .../golang.org/x/sys/unix/asm_linux_ppc64x.s | 0 .../golang.org/x/sys/unix/asm_linux_riscv64.s | 0 .../golang.org/x/sys/unix/asm_linux_s390x.s | 0 .../x/sys/unix/asm_openbsd_mips64.s | 0 .../golang.org/x/sys/unix/asm_solaris_amd64.s | 0 .../golang.org/x/sys/unix/asm_zos_s390x.s | 0 .../golang.org/x/sys/unix/bluetooth_linux.go | 0 .../golang.org/x/sys/unix/cap_freebsd.go | 0 .../golang.org/x/sys/unix/constants.go | 0 .../golang.org/x/sys/unix/dev_aix_ppc.go | 0 .../golang.org/x/sys/unix/dev_aix_ppc64.go | 0 .../golang.org/x/sys/unix/dev_darwin.go | 0 .../golang.org/x/sys/unix/dev_dragonfly.go | 0 .../golang.org/x/sys/unix/dev_freebsd.go | 0 .../golang.org/x/sys/unix/dev_linux.go | 0 .../golang.org/x/sys/unix/dev_netbsd.go | 0 .../golang.org/x/sys/unix/dev_openbsd.go | 0 .../vendor}/golang.org/x/sys/unix/dev_zos.go | 0 .../vendor}/golang.org/x/sys/unix/dirent.go | 0 .../golang.org/x/sys/unix/endian_big.go | 0 .../golang.org/x/sys/unix/endian_little.go | 0 .../vendor}/golang.org/x/sys/unix/env_unix.go | 0 .../golang.org/x/sys/unix/epoll_zos.go | 0 .../vendor}/golang.org/x/sys/unix/fcntl.go | 0 .../golang.org/x/sys/unix/fcntl_darwin.go | 0 .../x/sys/unix/fcntl_linux_32bit.go | 0 .../vendor}/golang.org/x/sys/unix/fdset.go | 0 .../golang.org/x/sys/unix/fstatfs_zos.go | 0 .../vendor}/golang.org/x/sys/unix/gccgo.go | 0 .../vendor}/golang.org/x/sys/unix/gccgo_c.c | 0 .../x/sys/unix/gccgo_linux_amd64.go | 0 .../golang.org/x/sys/unix/ifreq_linux.go | 0 .../golang.org/x/sys/unix/ioctl_linux.go | 0 .../golang.org/x/sys/unix/ioctl_signed.go | 0 .../golang.org/x/sys/unix/ioctl_unsigned.go | 0 .../golang.org/x/sys/unix/ioctl_zos.go | 0 .../vendor}/golang.org/x/sys/unix/mkall.sh | 0 .../vendor}/golang.org/x/sys/unix/mkerrors.sh | 0 .../golang.org/x/sys/unix/mmap_nomremap.go | 0 .../vendor}/golang.org/x/sys/unix/mremap.go | 0 .../golang.org/x/sys/unix/pagesize_unix.go | 0 .../golang.org/x/sys/unix/pledge_openbsd.go | 0 .../golang.org/x/sys/unix/ptrace_darwin.go | 0 .../golang.org/x/sys/unix/ptrace_ios.go | 0 .../vendor}/golang.org/x/sys/unix/race.go | 0 .../vendor}/golang.org/x/sys/unix/race0.go | 0 .../x/sys/unix/readdirent_getdents.go | 0 .../x/sys/unix/readdirent_getdirentries.go | 0 .../x/sys/unix/sockcmsg_dragonfly.go | 0 .../golang.org/x/sys/unix/sockcmsg_linux.go | 0 .../golang.org/x/sys/unix/sockcmsg_unix.go | 0 .../x/sys/unix/sockcmsg_unix_other.go | 0 .../vendor}/golang.org/x/sys/unix/syscall.go | 0 .../golang.org/x/sys/unix/syscall_aix.go | 0 .../golang.org/x/sys/unix/syscall_aix_ppc.go | 0 .../x/sys/unix/syscall_aix_ppc64.go | 0 .../golang.org/x/sys/unix/syscall_bsd.go | 0 .../golang.org/x/sys/unix/syscall_darwin.go | 0 .../x/sys/unix/syscall_darwin_amd64.go | 0 .../x/sys/unix/syscall_darwin_arm64.go | 0 .../x/sys/unix/syscall_darwin_libSystem.go | 0 .../x/sys/unix/syscall_dragonfly.go | 0 .../x/sys/unix/syscall_dragonfly_amd64.go | 0 .../golang.org/x/sys/unix/syscall_freebsd.go | 0 .../x/sys/unix/syscall_freebsd_386.go | 0 .../x/sys/unix/syscall_freebsd_amd64.go | 0 .../x/sys/unix/syscall_freebsd_arm.go | 0 .../x/sys/unix/syscall_freebsd_arm64.go | 0 .../x/sys/unix/syscall_freebsd_riscv64.go | 0 .../golang.org/x/sys/unix/syscall_hurd.go | 0 .../golang.org/x/sys/unix/syscall_hurd_386.go | 0 .../golang.org/x/sys/unix/syscall_illumos.go | 0 .../golang.org/x/sys/unix/syscall_linux.go | 0 .../x/sys/unix/syscall_linux_386.go | 0 .../x/sys/unix/syscall_linux_alarm.go | 0 .../x/sys/unix/syscall_linux_amd64.go | 0 .../x/sys/unix/syscall_linux_amd64_gc.go | 0 .../x/sys/unix/syscall_linux_arm.go | 0 .../x/sys/unix/syscall_linux_arm64.go | 0 .../golang.org/x/sys/unix/syscall_linux_gc.go | 0 .../x/sys/unix/syscall_linux_gc_386.go | 0 .../x/sys/unix/syscall_linux_gc_arm.go | 0 .../x/sys/unix/syscall_linux_gccgo_386.go | 0 .../x/sys/unix/syscall_linux_gccgo_arm.go | 0 .../x/sys/unix/syscall_linux_loong64.go | 0 .../x/sys/unix/syscall_linux_mips64x.go | 0 .../x/sys/unix/syscall_linux_mipsx.go | 0 .../x/sys/unix/syscall_linux_ppc.go | 0 .../x/sys/unix/syscall_linux_ppc64x.go | 0 .../x/sys/unix/syscall_linux_riscv64.go | 0 .../x/sys/unix/syscall_linux_s390x.go | 0 .../x/sys/unix/syscall_linux_sparc64.go | 0 .../golang.org/x/sys/unix/syscall_netbsd.go | 0 .../x/sys/unix/syscall_netbsd_386.go | 0 .../x/sys/unix/syscall_netbsd_amd64.go | 0 .../x/sys/unix/syscall_netbsd_arm.go | 0 .../x/sys/unix/syscall_netbsd_arm64.go | 0 .../golang.org/x/sys/unix/syscall_openbsd.go | 0 .../x/sys/unix/syscall_openbsd_386.go | 0 .../x/sys/unix/syscall_openbsd_amd64.go | 0 .../x/sys/unix/syscall_openbsd_arm.go | 0 .../x/sys/unix/syscall_openbsd_arm64.go | 0 .../x/sys/unix/syscall_openbsd_libc.go | 0 .../x/sys/unix/syscall_openbsd_mips64.go | 0 .../x/sys/unix/syscall_openbsd_ppc64.go | 0 .../x/sys/unix/syscall_openbsd_riscv64.go | 0 .../golang.org/x/sys/unix/syscall_solaris.go | 0 .../x/sys/unix/syscall_solaris_amd64.go | 0 .../golang.org/x/sys/unix/syscall_unix.go | 0 .../golang.org/x/sys/unix/syscall_unix_gc.go | 0 .../x/sys/unix/syscall_unix_gc_ppc64x.go | 0 .../x/sys/unix/syscall_zos_s390x.go | 0 .../golang.org/x/sys/unix/sysvshm_linux.go | 0 .../golang.org/x/sys/unix/sysvshm_unix.go | 0 .../x/sys/unix/sysvshm_unix_other.go | 0 .../golang.org/x/sys/unix/timestruct.go | 0 .../golang.org/x/sys/unix/unveil_openbsd.go | 0 .../golang.org/x/sys/unix/xattr_bsd.go | 0 .../golang.org/x/sys/unix/zerrors_aix_ppc.go | 0 .../x/sys/unix/zerrors_aix_ppc64.go | 0 .../x/sys/unix/zerrors_darwin_amd64.go | 0 .../x/sys/unix/zerrors_darwin_arm64.go | 0 .../x/sys/unix/zerrors_dragonfly_amd64.go | 0 .../x/sys/unix/zerrors_freebsd_386.go | 0 .../x/sys/unix/zerrors_freebsd_amd64.go | 0 .../x/sys/unix/zerrors_freebsd_arm.go | 0 .../x/sys/unix/zerrors_freebsd_arm64.go | 0 .../x/sys/unix/zerrors_freebsd_riscv64.go | 0 .../golang.org/x/sys/unix/zerrors_linux.go | 0 .../x/sys/unix/zerrors_linux_386.go | 0 .../x/sys/unix/zerrors_linux_amd64.go | 0 .../x/sys/unix/zerrors_linux_arm.go | 0 .../x/sys/unix/zerrors_linux_arm64.go | 0 .../x/sys/unix/zerrors_linux_loong64.go | 0 .../x/sys/unix/zerrors_linux_mips.go | 0 .../x/sys/unix/zerrors_linux_mips64.go | 0 .../x/sys/unix/zerrors_linux_mips64le.go | 0 .../x/sys/unix/zerrors_linux_mipsle.go | 0 .../x/sys/unix/zerrors_linux_ppc.go | 0 .../x/sys/unix/zerrors_linux_ppc64.go | 0 .../x/sys/unix/zerrors_linux_ppc64le.go | 0 .../x/sys/unix/zerrors_linux_riscv64.go | 0 .../x/sys/unix/zerrors_linux_s390x.go | 0 .../x/sys/unix/zerrors_linux_sparc64.go | 0 .../x/sys/unix/zerrors_netbsd_386.go | 0 .../x/sys/unix/zerrors_netbsd_amd64.go | 0 .../x/sys/unix/zerrors_netbsd_arm.go | 0 .../x/sys/unix/zerrors_netbsd_arm64.go | 0 .../x/sys/unix/zerrors_openbsd_386.go | 0 .../x/sys/unix/zerrors_openbsd_amd64.go | 0 .../x/sys/unix/zerrors_openbsd_arm.go | 0 .../x/sys/unix/zerrors_openbsd_arm64.go | 0 .../x/sys/unix/zerrors_openbsd_mips64.go | 0 .../x/sys/unix/zerrors_openbsd_ppc64.go | 0 .../x/sys/unix/zerrors_openbsd_riscv64.go | 0 .../x/sys/unix/zerrors_solaris_amd64.go | 0 .../x/sys/unix/zerrors_zos_s390x.go | 0 .../x/sys/unix/zptrace_armnn_linux.go | 0 .../x/sys/unix/zptrace_linux_arm64.go | 0 .../x/sys/unix/zptrace_mipsnn_linux.go | 0 .../x/sys/unix/zptrace_mipsnnle_linux.go | 0 .../x/sys/unix/zptrace_x86_linux.go | 0 .../golang.org/x/sys/unix/zsyscall_aix_ppc.go | 0 .../x/sys/unix/zsyscall_aix_ppc64.go | 0 .../x/sys/unix/zsyscall_aix_ppc64_gc.go | 0 .../x/sys/unix/zsyscall_aix_ppc64_gccgo.go | 0 .../x/sys/unix/zsyscall_darwin_amd64.go | 0 .../x/sys/unix/zsyscall_darwin_amd64.s | 0 .../x/sys/unix/zsyscall_darwin_arm64.go | 0 .../x/sys/unix/zsyscall_darwin_arm64.s | 0 .../x/sys/unix/zsyscall_dragonfly_amd64.go | 0 .../x/sys/unix/zsyscall_freebsd_386.go | 0 .../x/sys/unix/zsyscall_freebsd_amd64.go | 0 .../x/sys/unix/zsyscall_freebsd_arm.go | 0 .../x/sys/unix/zsyscall_freebsd_arm64.go | 0 .../x/sys/unix/zsyscall_freebsd_riscv64.go | 0 .../x/sys/unix/zsyscall_illumos_amd64.go | 0 .../golang.org/x/sys/unix/zsyscall_linux.go | 0 .../x/sys/unix/zsyscall_linux_386.go | 0 .../x/sys/unix/zsyscall_linux_amd64.go | 0 .../x/sys/unix/zsyscall_linux_arm.go | 0 .../x/sys/unix/zsyscall_linux_arm64.go | 0 .../x/sys/unix/zsyscall_linux_loong64.go | 0 .../x/sys/unix/zsyscall_linux_mips.go | 0 .../x/sys/unix/zsyscall_linux_mips64.go | 0 .../x/sys/unix/zsyscall_linux_mips64le.go | 0 .../x/sys/unix/zsyscall_linux_mipsle.go | 0 .../x/sys/unix/zsyscall_linux_ppc.go | 0 .../x/sys/unix/zsyscall_linux_ppc64.go | 0 .../x/sys/unix/zsyscall_linux_ppc64le.go | 0 .../x/sys/unix/zsyscall_linux_riscv64.go | 0 .../x/sys/unix/zsyscall_linux_s390x.go | 0 .../x/sys/unix/zsyscall_linux_sparc64.go | 0 .../x/sys/unix/zsyscall_netbsd_386.go | 0 .../x/sys/unix/zsyscall_netbsd_amd64.go | 0 .../x/sys/unix/zsyscall_netbsd_arm.go | 0 .../x/sys/unix/zsyscall_netbsd_arm64.go | 0 .../x/sys/unix/zsyscall_openbsd_386.go | 0 .../x/sys/unix/zsyscall_openbsd_386.s | 0 .../x/sys/unix/zsyscall_openbsd_amd64.go | 0 .../x/sys/unix/zsyscall_openbsd_amd64.s | 0 .../x/sys/unix/zsyscall_openbsd_arm.go | 0 .../x/sys/unix/zsyscall_openbsd_arm.s | 0 .../x/sys/unix/zsyscall_openbsd_arm64.go | 0 .../x/sys/unix/zsyscall_openbsd_arm64.s | 0 .../x/sys/unix/zsyscall_openbsd_mips64.go | 0 .../x/sys/unix/zsyscall_openbsd_mips64.s | 0 .../x/sys/unix/zsyscall_openbsd_ppc64.go | 0 .../x/sys/unix/zsyscall_openbsd_ppc64.s | 0 .../x/sys/unix/zsyscall_openbsd_riscv64.go | 0 .../x/sys/unix/zsyscall_openbsd_riscv64.s | 0 .../x/sys/unix/zsyscall_solaris_amd64.go | 0 .../x/sys/unix/zsyscall_zos_s390x.go | 0 .../x/sys/unix/zsysctl_openbsd_386.go | 0 .../x/sys/unix/zsysctl_openbsd_amd64.go | 0 .../x/sys/unix/zsysctl_openbsd_arm.go | 0 .../x/sys/unix/zsysctl_openbsd_arm64.go | 0 .../x/sys/unix/zsysctl_openbsd_mips64.go | 0 .../x/sys/unix/zsysctl_openbsd_ppc64.go | 0 .../x/sys/unix/zsysctl_openbsd_riscv64.go | 0 .../x/sys/unix/zsysnum_darwin_amd64.go | 0 .../x/sys/unix/zsysnum_darwin_arm64.go | 0 .../x/sys/unix/zsysnum_dragonfly_amd64.go | 0 .../x/sys/unix/zsysnum_freebsd_386.go | 0 .../x/sys/unix/zsysnum_freebsd_amd64.go | 0 .../x/sys/unix/zsysnum_freebsd_arm.go | 0 .../x/sys/unix/zsysnum_freebsd_arm64.go | 0 .../x/sys/unix/zsysnum_freebsd_riscv64.go | 0 .../x/sys/unix/zsysnum_linux_386.go | 0 .../x/sys/unix/zsysnum_linux_amd64.go | 0 .../x/sys/unix/zsysnum_linux_arm.go | 0 .../x/sys/unix/zsysnum_linux_arm64.go | 0 .../x/sys/unix/zsysnum_linux_loong64.go | 0 .../x/sys/unix/zsysnum_linux_mips.go | 0 .../x/sys/unix/zsysnum_linux_mips64.go | 0 .../x/sys/unix/zsysnum_linux_mips64le.go | 0 .../x/sys/unix/zsysnum_linux_mipsle.go | 0 .../x/sys/unix/zsysnum_linux_ppc.go | 0 .../x/sys/unix/zsysnum_linux_ppc64.go | 0 .../x/sys/unix/zsysnum_linux_ppc64le.go | 0 .../x/sys/unix/zsysnum_linux_riscv64.go | 0 .../x/sys/unix/zsysnum_linux_s390x.go | 0 .../x/sys/unix/zsysnum_linux_sparc64.go | 0 .../x/sys/unix/zsysnum_netbsd_386.go | 0 .../x/sys/unix/zsysnum_netbsd_amd64.go | 0 .../x/sys/unix/zsysnum_netbsd_arm.go | 0 .../x/sys/unix/zsysnum_netbsd_arm64.go | 0 .../x/sys/unix/zsysnum_openbsd_386.go | 0 .../x/sys/unix/zsysnum_openbsd_amd64.go | 0 .../x/sys/unix/zsysnum_openbsd_arm.go | 0 .../x/sys/unix/zsysnum_openbsd_arm64.go | 0 .../x/sys/unix/zsysnum_openbsd_mips64.go | 0 .../x/sys/unix/zsysnum_openbsd_ppc64.go | 0 .../x/sys/unix/zsysnum_openbsd_riscv64.go | 0 .../x/sys/unix/zsysnum_zos_s390x.go | 0 .../golang.org/x/sys/unix/ztypes_aix_ppc.go | 0 .../golang.org/x/sys/unix/ztypes_aix_ppc64.go | 0 .../x/sys/unix/ztypes_darwin_amd64.go | 0 .../x/sys/unix/ztypes_darwin_arm64.go | 0 .../x/sys/unix/ztypes_dragonfly_amd64.go | 0 .../x/sys/unix/ztypes_freebsd_386.go | 0 .../x/sys/unix/ztypes_freebsd_amd64.go | 0 .../x/sys/unix/ztypes_freebsd_arm.go | 0 .../x/sys/unix/ztypes_freebsd_arm64.go | 0 .../x/sys/unix/ztypes_freebsd_riscv64.go | 0 .../golang.org/x/sys/unix/ztypes_linux.go | 0 .../golang.org/x/sys/unix/ztypes_linux_386.go | 0 .../x/sys/unix/ztypes_linux_amd64.go | 0 .../golang.org/x/sys/unix/ztypes_linux_arm.go | 0 .../x/sys/unix/ztypes_linux_arm64.go | 0 .../x/sys/unix/ztypes_linux_loong64.go | 0 .../x/sys/unix/ztypes_linux_mips.go | 0 .../x/sys/unix/ztypes_linux_mips64.go | 0 .../x/sys/unix/ztypes_linux_mips64le.go | 0 .../x/sys/unix/ztypes_linux_mipsle.go | 0 .../golang.org/x/sys/unix/ztypes_linux_ppc.go | 0 .../x/sys/unix/ztypes_linux_ppc64.go | 0 .../x/sys/unix/ztypes_linux_ppc64le.go | 0 .../x/sys/unix/ztypes_linux_riscv64.go | 0 .../x/sys/unix/ztypes_linux_s390x.go | 0 .../x/sys/unix/ztypes_linux_sparc64.go | 0 .../x/sys/unix/ztypes_netbsd_386.go | 0 .../x/sys/unix/ztypes_netbsd_amd64.go | 0 .../x/sys/unix/ztypes_netbsd_arm.go | 0 .../x/sys/unix/ztypes_netbsd_arm64.go | 0 .../x/sys/unix/ztypes_openbsd_386.go | 0 .../x/sys/unix/ztypes_openbsd_amd64.go | 0 .../x/sys/unix/ztypes_openbsd_arm.go | 0 .../x/sys/unix/ztypes_openbsd_arm64.go | 0 .../x/sys/unix/ztypes_openbsd_mips64.go | 0 .../x/sys/unix/ztypes_openbsd_ppc64.go | 0 .../x/sys/unix/ztypes_openbsd_riscv64.go | 0 .../x/sys/unix/ztypes_solaris_amd64.go | 0 .../golang.org/x/sys/unix/ztypes_zos_s390x.go | 0 .../golang.org/x/sys/windows/aliases.go | 0 .../golang.org/x/sys/windows/dll_windows.go | 0 .../vendor}/golang.org/x/sys/windows/empty.s | 0 .../golang.org/x/sys/windows/env_windows.go | 0 .../golang.org/x/sys/windows/eventlog.go | 0 .../golang.org/x/sys/windows/exec_windows.go | 0 .../x/sys/windows/memory_windows.go | 0 .../golang.org/x/sys/windows/mkerrors.bash | 0 .../x/sys/windows/mkknownfolderids.bash | 0 .../golang.org/x/sys/windows/mksyscall.go | 0 .../vendor}/golang.org/x/sys/windows/race.go | 0 .../vendor}/golang.org/x/sys/windows/race0.go | 0 .../golang.org/x/sys/windows/registry/key.go | 0 .../x/sys/windows/registry/mksyscall.go | 0 .../x/sys/windows/registry/syscall.go | 0 .../x/sys/windows/registry/value.go | 0 .../sys/windows/registry/zsyscall_windows.go | 0 .../x/sys/windows/security_windows.go | 0 .../golang.org/x/sys/windows/service.go | 0 .../x/sys/windows/setupapi_windows.go | 0 .../vendor}/golang.org/x/sys/windows/str.go | 0 .../golang.org/x/sys/windows/syscall.go | 0 .../x/sys/windows/syscall_windows.go | 0 .../golang.org/x/sys/windows/types_windows.go | 0 .../x/sys/windows/types_windows_386.go | 0 .../x/sys/windows/types_windows_amd64.go | 0 .../x/sys/windows/types_windows_arm.go | 0 .../x/sys/windows/types_windows_arm64.go | 0 .../x/sys/windows/zerrors_windows.go | 0 .../x/sys/windows/zknownfolderids_windows.go | 0 .../x/sys/windows/zsyscall_windows.go | 0 .../vendor}/golang.org/x/text/LICENSE | 0 .../vendor}/golang.org/x/text/PATENTS | 0 .../x/text/secure/bidirule/bidirule.go | 0 .../x/text/secure/bidirule/bidirule10.0.0.go | 0 .../x/text/secure/bidirule/bidirule9.0.0.go | 0 .../golang.org/x/text/transform/transform.go | 0 .../golang.org/x/text/unicode/bidi/bidi.go | 0 .../golang.org/x/text/unicode/bidi/bracket.go | 0 .../golang.org/x/text/unicode/bidi/core.go | 0 .../golang.org/x/text/unicode/bidi/prop.go | 0 .../x/text/unicode/bidi/tables10.0.0.go | 0 .../x/text/unicode/bidi/tables11.0.0.go | 0 .../x/text/unicode/bidi/tables12.0.0.go | 0 .../x/text/unicode/bidi/tables13.0.0.go | 0 .../x/text/unicode/bidi/tables15.0.0.go | 0 .../x/text/unicode/bidi/tables9.0.0.go | 0 .../golang.org/x/text/unicode/bidi/trieval.go | 0 .../x/text/unicode/norm/composition.go | 0 .../x/text/unicode/norm/forminfo.go | 0 .../golang.org/x/text/unicode/norm/input.go | 0 .../golang.org/x/text/unicode/norm/iter.go | 0 .../x/text/unicode/norm/normalize.go | 0 .../x/text/unicode/norm/readwriter.go | 0 .../x/text/unicode/norm/tables10.0.0.go | 0 .../x/text/unicode/norm/tables11.0.0.go | 0 .../x/text/unicode/norm/tables12.0.0.go | 0 .../x/text/unicode/norm/tables13.0.0.go | 0 .../x/text/unicode/norm/tables15.0.0.go | 0 .../x/text/unicode/norm/tables9.0.0.go | 0 .../x/text/unicode/norm/transform.go | 0 .../golang.org/x/text/unicode/norm/trie.go | 0 {vendor => v1/vendor}/modules.txt | 41 +- wails.json => v1/wails.json | 0 vendor/github.com/r3labs/sse/v2/.gitignore | 2 - vendor/github.com/r3labs/sse/v2/.golangci.yml | 15 - .../github.com/r3labs/sse/v2/CONTRIBUTING.md | 80 - vendor/github.com/r3labs/sse/v2/LICENSE | 373 - vendor/github.com/r3labs/sse/v2/Makefile | 20 - vendor/github.com/r3labs/sse/v2/README.md | 191 - vendor/github.com/r3labs/sse/v2/client.go | 390 - vendor/github.com/r3labs/sse/v2/event.go | 114 - vendor/github.com/r3labs/sse/v2/event_log.go | 43 - vendor/github.com/r3labs/sse/v2/http.go | 120 - vendor/github.com/r3labs/sse/v2/server.go | 156 - vendor/github.com/r3labs/sse/v2/stream.go | 153 - vendor/github.com/r3labs/sse/v2/subscriber.go | 24 - .../github.com/robertkrimen/otto/.clog.toml | 13 - .../github.com/robertkrimen/otto/.gitignore | 10 - .../robertkrimen/otto/.golangci.yml | 65 - .../robertkrimen/otto/.goreleaser.yaml | 70 - .../robertkrimen/otto/DESIGN.markdown | 1 - vendor/github.com/robertkrimen/otto/LICENSE | 7 - vendor/github.com/robertkrimen/otto/README.md | 877 -- .../robertkrimen/otto/ast/comments.go | 292 - .../github.com/robertkrimen/otto/ast/node.go | 968 -- .../github.com/robertkrimen/otto/ast/walk.go | 220 - .../github.com/robertkrimen/otto/builtin.go | 338 - .../robertkrimen/otto/builtin_array.go | 683 -- .../robertkrimen/otto/builtin_boolean.go | 28 - .../robertkrimen/otto/builtin_date.go | 619 -- .../robertkrimen/otto/builtin_error.go | 126 - .../robertkrimen/otto/builtin_function.go | 125 - .../robertkrimen/otto/builtin_json.go | 297 - .../robertkrimen/otto/builtin_math.go | 211 - .../robertkrimen/otto/builtin_number.go | 111 - .../robertkrimen/otto/builtin_object.go | 289 - .../robertkrimen/otto/builtin_regexp.go | 103 - .../robertkrimen/otto/builtin_string.go | 508 - vendor/github.com/robertkrimen/otto/clone.go | 171 - vendor/github.com/robertkrimen/otto/cmpl.go | 11 - .../robertkrimen/otto/cmpl_evaluate.go | 93 - .../otto/cmpl_evaluate_expression.go | 444 - .../otto/cmpl_evaluate_statement.go | 428 - .../robertkrimen/otto/cmpl_parse.go | 644 -- .../github.com/robertkrimen/otto/console.go | 46 - vendor/github.com/robertkrimen/otto/consts.go | 35 - vendor/github.com/robertkrimen/otto/dbg.go | 9 - .../github.com/robertkrimen/otto/dbg/dbg.go | 380 - vendor/github.com/robertkrimen/otto/error.go | 252 - .../github.com/robertkrimen/otto/evaluate.go | 292 - .../github.com/robertkrimen/otto/file/file.go | 167 - .../github.com/robertkrimen/otto/generate.go | 4 - vendor/github.com/robertkrimen/otto/global.go | 217 - vendor/github.com/robertkrimen/otto/inline.go | 8660 ----------------- vendor/github.com/robertkrimen/otto/locale.go | 5 - vendor/github.com/robertkrimen/otto/object.go | 151 - .../robertkrimen/otto/object_class.go | 490 - vendor/github.com/robertkrimen/otto/otto.go | 778 -- vendor/github.com/robertkrimen/otto/otto_.go | 150 - .../robertkrimen/otto/parser/error.go | 187 - .../robertkrimen/otto/parser/expression.go | 994 -- .../robertkrimen/otto/parser/lexer.go | 854 -- .../robertkrimen/otto/parser/parser.go | 346 - .../robertkrimen/otto/parser/regexp.go | 352 - .../robertkrimen/otto/parser/scope.go | 44 - .../robertkrimen/otto/parser/statement.go | 926 -- .../github.com/robertkrimen/otto/property.go | 218 - .../robertkrimen/otto/registry/registry.go | 52 - vendor/github.com/robertkrimen/otto/result.go | 28 - .../github.com/robertkrimen/otto/runtime.go | 874 -- vendor/github.com/robertkrimen/otto/scope.go | 21 - vendor/github.com/robertkrimen/otto/script.go | 109 - vendor/github.com/robertkrimen/otto/stash.go | 289 - .../robertkrimen/otto/token/generate.go | 3 - .../robertkrimen/otto/token/token.go | 67 - .../robertkrimen/otto/token/token_const.go | 351 - .../robertkrimen/otto/type_arguments.go | 106 - .../robertkrimen/otto/type_array.go | 120 - .../robertkrimen/otto/type_boolean.go | 5 - .../github.com/robertkrimen/otto/type_date.go | 289 - .../robertkrimen/otto/type_error.go | 58 - .../robertkrimen/otto/type_function.go | 323 - .../robertkrimen/otto/type_go_array.go | 156 - .../robertkrimen/otto/type_go_map.go | 108 - .../robertkrimen/otto/type_go_slice.go | 153 - .../robertkrimen/otto/type_go_struct.go | 146 - .../robertkrimen/otto/type_number.go | 5 - .../robertkrimen/otto/type_reference.go | 93 - .../robertkrimen/otto/type_regexp.go | 144 - .../robertkrimen/otto/type_string.go | 114 - vendor/github.com/robertkrimen/otto/value.go | 984 -- .../robertkrimen/otto/value_boolean.go | 40 - .../robertkrimen/otto/value_kind.gen.go | 31 - .../robertkrimen/otto/value_number.go | 336 - .../robertkrimen/otto/value_primitive.go | 20 - .../robertkrimen/otto/value_string.go | 106 - .../github.com/tylertravisty/go-utils/LICENSE | 21 - .../tylertravisty/go-utils/random/random.go | 36 - .../rumble-livestream-lib-go/.gitignore | 21 - .../rumble-livestream-lib-go/LICENSE | 21 - .../rumble-livestream-lib-go/README.md | 2 - .../rumble-livestream-lib-go/chat.go | 408 - .../rumble-livestream-lib-go/client.go | 303 - .../rumble-livestream-lib-go/error.go | 14 - .../rumble-livestream-lib-go/livestream.go | 120 - .../rumble-livestream-lib-go/md5.js.go | 85 - vendor/golang.org/x/net/context/context.go | 56 - vendor/golang.org/x/net/context/go17.go | 72 - vendor/golang.org/x/net/context/go19.go | 20 - vendor/golang.org/x/net/context/pre_go17.go | 300 - vendor/golang.org/x/net/context/pre_go19.go | 109 - .../x/text/feature/plural/common.go | 70 - .../x/text/feature/plural/message.go | 244 - .../x/text/feature/plural/plural.go | 262 - .../x/text/feature/plural/tables.go | 552 -- .../x/text/internal/catmsg/catmsg.go | 417 - .../x/text/internal/catmsg/codec.go | 407 - .../x/text/internal/catmsg/varint.go | 62 - .../x/text/internal/format/format.go | 41 - .../x/text/internal/format/parser.go | 358 - vendor/golang.org/x/text/internal/internal.go | 49 - .../x/text/internal/language/common.go | 16 - .../x/text/internal/language/compact.go | 29 - .../text/internal/language/compact/compact.go | 61 - .../internal/language/compact/language.go | 260 - .../text/internal/language/compact/parents.go | 120 - .../text/internal/language/compact/tables.go | 1015 -- .../x/text/internal/language/compact/tags.go | 91 - .../x/text/internal/language/compose.go | 167 - .../x/text/internal/language/coverage.go | 28 - .../x/text/internal/language/language.go | 627 -- .../x/text/internal/language/lookup.go | 412 - .../x/text/internal/language/match.go | 226 - .../x/text/internal/language/parse.go | 608 -- .../x/text/internal/language/tables.go | 3494 ------- .../x/text/internal/language/tags.go | 48 - vendor/golang.org/x/text/internal/match.go | 67 - .../x/text/internal/number/common.go | 55 - .../x/text/internal/number/decimal.go | 500 - .../x/text/internal/number/format.go | 535 - .../x/text/internal/number/number.go | 152 - .../x/text/internal/number/pattern.go | 485 - .../internal/number/roundingmode_string.go | 30 - .../x/text/internal/number/tables.go | 1219 --- .../x/text/internal/stringset/set.go | 86 - vendor/golang.org/x/text/internal/tag/tag.go | 100 - vendor/golang.org/x/text/language/coverage.go | 187 - vendor/golang.org/x/text/language/doc.go | 98 - vendor/golang.org/x/text/language/language.go | 605 -- vendor/golang.org/x/text/language/match.go | 735 -- vendor/golang.org/x/text/language/parse.go | 256 - vendor/golang.org/x/text/language/tables.go | 298 - vendor/golang.org/x/text/language/tags.go | 145 - vendor/golang.org/x/text/message/catalog.go | 36 - .../x/text/message/catalog/catalog.go | 365 - .../golang.org/x/text/message/catalog/dict.go | 129 - .../golang.org/x/text/message/catalog/go19.go | 15 - .../x/text/message/catalog/gopre19.go | 23 - vendor/golang.org/x/text/message/doc.go | 99 - vendor/golang.org/x/text/message/format.go | 510 - vendor/golang.org/x/text/message/message.go | 193 - vendor/golang.org/x/text/message/print.go | 984 -- vendor/golang.org/x/text/number/doc.go | 27 - vendor/golang.org/x/text/number/format.go | 122 - vendor/golang.org/x/text/number/number.go | 77 - vendor/golang.org/x/text/number/option.go | 177 - .../gopkg.in/cenkalti/backoff.v1/.gitignore | 22 - .../gopkg.in/cenkalti/backoff.v1/.travis.yml | 9 - vendor/gopkg.in/cenkalti/backoff.v1/LICENSE | 20 - vendor/gopkg.in/cenkalti/backoff.v1/README.md | 30 - .../gopkg.in/cenkalti/backoff.v1/backoff.go | 66 - .../gopkg.in/cenkalti/backoff.v1/context.go | 60 - .../cenkalti/backoff.v1/exponential.go | 156 - vendor/gopkg.in/cenkalti/backoff.v1/retry.go | 78 - vendor/gopkg.in/cenkalti/backoff.v1/ticker.go | 81 - vendor/gopkg.in/cenkalti/backoff.v1/tries.go | 35 - vendor/gopkg.in/sourcemap.v1/.travis.yml | 16 - vendor/gopkg.in/sourcemap.v1/LICENSE | 25 - vendor/gopkg.in/sourcemap.v1/Makefile | 4 - vendor/gopkg.in/sourcemap.v1/README.md | 35 - .../sourcemap.v1/base64vlq/base64_vlq.go | 92 - vendor/gopkg.in/sourcemap.v1/consumer.go | 134 - vendor/gopkg.in/sourcemap.v1/sourcemap.go | 157 - 1429 files changed, 241 insertions(+), 55680 deletions(-) delete mode 100644 app.go delete mode 100644 frontend/src/App.jsx delete mode 100644 frontend/src/assets/icons/eye-slash.png delete mode 100644 frontend/src/assets/icons/eye.png delete mode 100644 frontend/src/assets/icons/gear-fill.png delete mode 100644 frontend/src/assets/icons/gear.png delete mode 100644 frontend/src/assets/icons/hand-thumbs-down.png delete mode 100644 frontend/src/assets/icons/hand-thumbs-up.png delete mode 100644 frontend/src/assets/icons/heart-fill.png delete mode 100644 frontend/src/assets/icons/house.png delete mode 100644 frontend/src/assets/icons/index.jsx delete mode 100644 frontend/src/assets/icons/pause-circle.png delete mode 100644 frontend/src/assets/icons/pause-fill.png delete mode 100644 frontend/src/assets/icons/play-circle.png delete mode 100644 frontend/src/assets/icons/play-fill-green.png delete mode 100644 frontend/src/assets/icons/play-fill.png delete mode 100644 frontend/src/assets/icons/plus-circle-fill.png delete mode 100644 frontend/src/assets/icons/star-fill.png delete mode 100644 frontend/src/assets/icons/stop-fill.png delete mode 100644 frontend/src/assets/icons/x-lg.png delete mode 100644 frontend/src/components/ChannelList.css delete mode 100644 frontend/src/components/ChannelList.jsx delete mode 100644 frontend/src/components/ChatBot.css delete mode 100644 frontend/src/components/ChatBot.jsx delete mode 100644 frontend/src/components/ChatMessage.css delete mode 100644 frontend/src/components/ChatMessage.jsx delete mode 100644 frontend/src/components/Highlight.css delete mode 100644 frontend/src/components/Highlight.jsx delete mode 100644 frontend/src/components/Modal.css delete mode 100644 frontend/src/components/Modal.jsx delete mode 100644 frontend/src/components/StreamActivity.css delete mode 100644 frontend/src/components/StreamActivity.jsx delete mode 100644 frontend/src/components/StreamChat.css delete mode 100644 frontend/src/components/StreamChat.jsx delete mode 100644 frontend/src/components/StreamChatBot.css delete mode 100644 frontend/src/components/StreamChatBot.jsx delete mode 100644 frontend/src/components/StreamChatMessage.css delete mode 100644 frontend/src/components/StreamChatMessage.jsx delete mode 100644 frontend/src/components/StreamEvent.css delete mode 100644 frontend/src/components/StreamEvent.jsx delete mode 100644 frontend/src/components/StreamInfo.css delete mode 100644 frontend/src/components/StreamInfo.jsx delete mode 100644 frontend/src/screens/Dashboard.css delete mode 100644 frontend/src/screens/Dashboard.jsx delete mode 100644 frontend/src/screens/Navigation.jsx delete mode 100644 frontend/src/screens/SignIn.css delete mode 100644 frontend/src/screens/SignIn.jsx delete mode 100644 frontend/src/style.css delete mode 100644 internal/api/api.go delete mode 100644 internal/chatbot/chatbot.go delete mode 100644 internal/config/config.go delete mode 100644 package-lock.json delete mode 100644 package.json create mode 100644 v1/.gitignore create mode 100644 v1/README.md create mode 100644 v1/app.go rename {build => v1/build}/README.md (100%) rename {build => v1/build}/appicon.png (100%) rename {frontend => v1/frontend}/index.html (89%) rename {frontend => v1/frontend}/package-lock.json (92%) rename {frontend => v1/frontend}/package.json (100%) rename {frontend => v1/frontend}/package.json.md5 (100%) rename {frontend => v1/frontend}/src/App.css (67%) create mode 100644 v1/frontend/src/App.jsx rename {frontend => v1/frontend}/src/main.jsx (100%) create mode 100644 v1/frontend/src/style.css rename {frontend => v1/frontend}/vite.config.js (100%) rename go.mod => v1/go.mod (76%) rename go.sum => v1/go.sum (81%) rename main.go => v1/main.go (100%) rename {vendor => v1/vendor}/github.com/bep/debounce/.gitignore (100%) rename {vendor => v1/vendor}/github.com/bep/debounce/LICENSE (100%) rename {vendor => v1/vendor}/github.com/bep/debounce/README.md (100%) rename {vendor => v1/vendor}/github.com/bep/debounce/debounce.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/.travis.yml (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/ChangeLog.md (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/LICENSE (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/README.md (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/appveyor.yml (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/com.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/com_func.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/connect.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/constants.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/error.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/error_func.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/error_windows.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/guid.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/iconnectionpoint.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/iconnectionpoint_func.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/iconnectionpoint_windows.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/iconnectionpointcontainer.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/iconnectionpointcontainer_func.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/iconnectionpointcontainer_windows.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/idispatch.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/idispatch_func.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/idispatch_windows.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/ienumvariant.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/ienumvariant_func.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/ienumvariant_windows.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/iinspectable.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/iinspectable_func.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/iinspectable_windows.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/iprovideclassinfo.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/iprovideclassinfo_func.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/iprovideclassinfo_windows.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/itypeinfo.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/itypeinfo_func.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/itypeinfo_windows.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/iunknown.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/iunknown_func.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/iunknown_windows.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/ole.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/safearray.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/safearray_func.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/safearray_windows.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/safearrayconversion.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/safearrayslices.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/utility.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/variables.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/variant.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/variant_386.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/variant_amd64.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/variant_arm.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/variant_arm64.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/variant_date_386.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/variant_date_amd64.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/variant_date_arm.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/variant_date_arm64.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/variant_ppc64le.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/variant_s390x.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/vt_string.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/winrt.go (100%) rename {vendor => v1/vendor}/github.com/go-ole/go-ole/winrt_doc.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/CONTRIBUTING.md (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/LICENSE (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/MAINTAINERS (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/README.md (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/auth.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/auth_anonymous.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/auth_external.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/auth_sha1.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/call.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/conn.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/conn_darwin.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/conn_other.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/conn_unix.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/conn_windows.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/dbus.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/decoder.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/default_handler.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/doc.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/encoder.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/escape.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/export.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/homedir.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/match.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/message.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/object.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/sequence.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/sequential_handler.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/server_interfaces.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/sig.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/transport_darwin.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/transport_generic.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/transport_nonce_tcp.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/transport_tcp.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/transport_unix.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/transport_unixcred_dragonfly.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/transport_unixcred_freebsd.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/transport_unixcred_linux.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/transport_unixcred_netbsd.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/transport_unixcred_openbsd.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/transport_zos.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/variant.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/variant_lexer.go (100%) rename {vendor => v1/vendor}/github.com/godbus/dbus/v5/variant_parser.go (100%) rename {vendor => v1/vendor}/github.com/google/uuid/.travis.yml (100%) rename {vendor => v1/vendor}/github.com/google/uuid/CONTRIBUTING.md (100%) rename {vendor => v1/vendor}/github.com/google/uuid/CONTRIBUTORS (100%) rename {vendor => v1/vendor}/github.com/google/uuid/LICENSE (100%) rename {vendor => v1/vendor}/github.com/google/uuid/README.md (100%) rename {vendor => v1/vendor}/github.com/google/uuid/dce.go (100%) rename {vendor => v1/vendor}/github.com/google/uuid/doc.go (100%) rename {vendor => v1/vendor}/github.com/google/uuid/hash.go (100%) rename {vendor => v1/vendor}/github.com/google/uuid/marshal.go (100%) rename {vendor => v1/vendor}/github.com/google/uuid/node.go (100%) rename {vendor => v1/vendor}/github.com/google/uuid/node_js.go (100%) rename {vendor => v1/vendor}/github.com/google/uuid/node_net.go (100%) rename {vendor => v1/vendor}/github.com/google/uuid/null.go (100%) rename {vendor => v1/vendor}/github.com/google/uuid/sql.go (100%) rename {vendor => v1/vendor}/github.com/google/uuid/time.go (100%) rename {vendor => v1/vendor}/github.com/google/uuid/util.go (100%) rename {vendor => v1/vendor}/github.com/google/uuid/uuid.go (100%) rename {vendor => v1/vendor}/github.com/google/uuid/version1.go (100%) rename {vendor => v1/vendor}/github.com/google/uuid/version4.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/LICENSE.md (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/README.md (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/common.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/internal/loader/loader.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/internal/loader/machine.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/internal/memloader/cache.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/internal/memloader/loader.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/internal/pe/export.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/internal/pe/format.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/internal/pe/import.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/internal/pe/module.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/internal/pe/reloc.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/internal/pe/util.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/internal/vmem/common.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/internal/vmem/memory_other.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/internal/vmem/memory_windows.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/internal/winloader/hacks_other.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/internal/winloader/hacks_windows.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/internal/winloader/loader_windows.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/internal/winloader/machine_windows.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/internal/winloader/nativearch_386.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/internal/winloader/nativearch_amd64.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/internal/winloader/nativearch_arm64.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/loader_other.go (100%) rename {vendor => v1/vendor}/github.com/jchv/go-winloader/loader_windows.go (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/.editorconfig (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/.gitattributes (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/.gitignore (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/CHANGELOG.md (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/LICENSE (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/Makefile (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/README.md (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/bind.go (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/binder.go (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/codecov.yml (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/context.go (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/context_fs.go (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/echo.go (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/echo_fs.go (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/group.go (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/group_fs.go (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/ip.go (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/json.go (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/log.go (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/response.go (100%) rename {vendor => v1/vendor}/github.com/labstack/echo/v4/router.go (100%) rename {vendor => v1/vendor}/github.com/labstack/gommon/LICENSE (100%) rename {vendor => v1/vendor}/github.com/labstack/gommon/color/README.md (100%) rename {vendor => v1/vendor}/github.com/labstack/gommon/color/color.go (100%) rename {vendor => v1/vendor}/github.com/labstack/gommon/log/README.md (100%) rename {vendor => v1/vendor}/github.com/labstack/gommon/log/color.go (100%) rename {vendor => v1/vendor}/github.com/labstack/gommon/log/log.go (100%) rename {vendor => v1/vendor}/github.com/labstack/gommon/log/white.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/go-ansi-parser/LICENSE (100%) rename {vendor => v1/vendor}/github.com/leaanthony/go-ansi-parser/README.md (100%) rename {vendor => v1/vendor}/github.com/leaanthony/go-ansi-parser/ansi.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/go-ansi-parser/cols.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/go-ansi-parser/logo.png (100%) rename {vendor => v1/vendor}/github.com/leaanthony/go-ansi-parser/options.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/gosod/.gitignore (100%) rename {vendor => v1/vendor}/github.com/leaanthony/gosod/LICENSE (100%) rename {vendor => v1/vendor}/github.com/leaanthony/gosod/README.md (100%) rename {vendor => v1/vendor}/github.com/leaanthony/gosod/gosod.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/gosod/internal/templatedir/templatedir.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/gosod/internal/templatedir/testdata/embedded/custom.filtername.txt (100%) rename {vendor => v1/vendor}/github.com/leaanthony/gosod/internal/templatedir/testdata/embedded/ignored.txt (100%) rename {vendor => v1/vendor}/github.com/leaanthony/gosod/internal/templatedir/testdata/embedded/subdir/included.txt (100%) rename {vendor => v1/vendor}/github.com/leaanthony/gosod/internal/templatedir/testdata/embedded/subdir/sub.tmpl.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/gosod/internal/templatedir/testdata/embedded/test.tmpl.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/gosod/logo.png (100%) rename {vendor => v1/vendor}/github.com/leaanthony/slicer/.gitignore (100%) rename {vendor => v1/vendor}/github.com/leaanthony/slicer/CHANGELOG.md (100%) rename {vendor => v1/vendor}/github.com/leaanthony/slicer/LICENSE (100%) rename {vendor => v1/vendor}/github.com/leaanthony/slicer/README.md (100%) rename {vendor => v1/vendor}/github.com/leaanthony/slicer/bool.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/slicer/float32.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/slicer/float64.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/slicer/int.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/slicer/int16.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/slicer/int32.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/slicer/int64.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/slicer/int8.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/slicer/interface.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/slicer/logo.png (100%) rename {vendor => v1/vendor}/github.com/leaanthony/slicer/string.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/slicer/uint.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/slicer/uint16.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/slicer/uint32.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/slicer/uint64.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/slicer/uint8.go (100%) rename {vendor => v1/vendor}/github.com/leaanthony/u/.gitignore (100%) rename {vendor => v1/vendor}/github.com/leaanthony/u/README.md (100%) rename {vendor => v1/vendor}/github.com/leaanthony/u/u.go (100%) rename {vendor => v1/vendor}/github.com/mattn/go-colorable/LICENSE (100%) rename {vendor => v1/vendor}/github.com/mattn/go-colorable/README.md (100%) rename {vendor => v1/vendor}/github.com/mattn/go-colorable/colorable_appengine.go (100%) rename {vendor => v1/vendor}/github.com/mattn/go-colorable/colorable_others.go (100%) rename {vendor => v1/vendor}/github.com/mattn/go-colorable/colorable_windows.go (100%) rename {vendor => v1/vendor}/github.com/mattn/go-colorable/go.test.sh (100%) rename {vendor => v1/vendor}/github.com/mattn/go-colorable/noncolorable.go (100%) rename {vendor => v1/vendor}/github.com/mattn/go-isatty/LICENSE (100%) rename {vendor => v1/vendor}/github.com/mattn/go-isatty/README.md (100%) rename {vendor => v1/vendor}/github.com/mattn/go-isatty/doc.go (100%) rename {vendor => v1/vendor}/github.com/mattn/go-isatty/go.test.sh (100%) rename {vendor => v1/vendor}/github.com/mattn/go-isatty/isatty_bsd.go (100%) rename {vendor => v1/vendor}/github.com/mattn/go-isatty/isatty_others.go (100%) rename {vendor => v1/vendor}/github.com/mattn/go-isatty/isatty_plan9.go (100%) rename {vendor => v1/vendor}/github.com/mattn/go-isatty/isatty_solaris.go (100%) rename {vendor => v1/vendor}/github.com/mattn/go-isatty/isatty_tcgets.go (100%) rename {vendor => v1/vendor}/github.com/mattn/go-isatty/isatty_windows.go (100%) rename {vendor => v1/vendor}/github.com/pkg/browser/LICENSE (100%) rename {vendor => v1/vendor}/github.com/pkg/browser/README.md (100%) rename {vendor => v1/vendor}/github.com/pkg/browser/browser.go (100%) rename {vendor => v1/vendor}/github.com/pkg/browser/browser_darwin.go (100%) rename {vendor => v1/vendor}/github.com/pkg/browser/browser_freebsd.go (100%) rename {vendor => v1/vendor}/github.com/pkg/browser/browser_linux.go (100%) rename {vendor => v1/vendor}/github.com/pkg/browser/browser_netbsd.go (100%) rename {vendor => v1/vendor}/github.com/pkg/browser/browser_openbsd.go (100%) rename {vendor => v1/vendor}/github.com/pkg/browser/browser_unsupported.go (100%) rename {vendor => v1/vendor}/github.com/pkg/browser/browser_windows.go (100%) rename {vendor => v1/vendor}/github.com/pkg/errors/.gitignore (100%) rename {vendor => v1/vendor}/github.com/pkg/errors/.travis.yml (100%) rename {vendor => v1/vendor}/github.com/pkg/errors/LICENSE (100%) rename {vendor => v1/vendor}/github.com/pkg/errors/Makefile (100%) rename {vendor => v1/vendor}/github.com/pkg/errors/README.md (100%) rename {vendor => v1/vendor}/github.com/pkg/errors/appveyor.yml (100%) rename {vendor => v1/vendor}/github.com/pkg/errors/errors.go (100%) rename {vendor => v1/vendor}/github.com/pkg/errors/go113.go (100%) rename {vendor => v1/vendor}/github.com/pkg/errors/stack.go (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/LICENSE.txt (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/README.md (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/doc.go (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/eastasianwidth.go (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/emojipresentation.go (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/gen_breaktest.go (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/gen_properties.go (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/grapheme.go (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/graphemeproperties.go (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/graphemerules.go (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/line.go (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/lineproperties.go (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/linerules.go (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/properties.go (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/sentence.go (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/sentenceproperties.go (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/sentencerules.go (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/step.go (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/width.go (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/word.go (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/wordproperties.go (100%) rename {vendor => v1/vendor}/github.com/rivo/uniseg/wordrules.go (100%) rename {vendor => v1/vendor}/github.com/samber/lo/.gitignore (100%) rename {vendor => v1/vendor}/github.com/samber/lo/.travis.yml (100%) rename {vendor => v1/vendor}/github.com/samber/lo/CHANGELOG.md (100%) rename {vendor => v1/vendor}/github.com/samber/lo/Dockerfile (100%) rename {vendor => v1/vendor}/github.com/samber/lo/LICENSE (100%) rename {vendor => v1/vendor}/github.com/samber/lo/Makefile (100%) rename {vendor => v1/vendor}/github.com/samber/lo/README.md (100%) rename {vendor => v1/vendor}/github.com/samber/lo/channel.go (100%) rename {vendor => v1/vendor}/github.com/samber/lo/concurrency.go (100%) rename {vendor => v1/vendor}/github.com/samber/lo/condition.go (100%) rename {vendor => v1/vendor}/github.com/samber/lo/constraints.go (100%) rename {vendor => v1/vendor}/github.com/samber/lo/errors.go (100%) rename {vendor => v1/vendor}/github.com/samber/lo/find.go (100%) rename {vendor => v1/vendor}/github.com/samber/lo/func.go (100%) rename {vendor => v1/vendor}/github.com/samber/lo/intersect.go (100%) rename {vendor => v1/vendor}/github.com/samber/lo/map.go (100%) rename {vendor => v1/vendor}/github.com/samber/lo/math.go (100%) rename {vendor => v1/vendor}/github.com/samber/lo/retry.go (100%) rename {vendor => v1/vendor}/github.com/samber/lo/slice.go (100%) rename {vendor => v1/vendor}/github.com/samber/lo/string.go (100%) rename {vendor => v1/vendor}/github.com/samber/lo/tuples.go (100%) rename {vendor => v1/vendor}/github.com/samber/lo/type_manipulation.go (100%) rename {vendor => v1/vendor}/github.com/samber/lo/types.go (100%) rename {vendor => v1/vendor}/github.com/tkrajina/go-reflector/LICENSE.txt (100%) rename {vendor => v1/vendor}/github.com/tkrajina/go-reflector/reflector/reflector.go (100%) rename {vendor => v1/vendor}/github.com/tkrajina/go-reflector/reflector/utils.go (100%) rename {vendor => v1/vendor}/github.com/valyala/bytebufferpool/.travis.yml (100%) rename {vendor => v1/vendor}/github.com/valyala/bytebufferpool/LICENSE (100%) rename {vendor => v1/vendor}/github.com/valyala/bytebufferpool/README.md (100%) rename {vendor => v1/vendor}/github.com/valyala/bytebufferpool/bytebuffer.go (100%) rename {vendor => v1/vendor}/github.com/valyala/bytebufferpool/doc.go (100%) rename {vendor => v1/vendor}/github.com/valyala/bytebufferpool/pool.go (100%) rename {vendor => v1/vendor}/github.com/valyala/fasttemplate/LICENSE (100%) rename {vendor => v1/vendor}/github.com/valyala/fasttemplate/README.md (100%) rename {vendor => v1/vendor}/github.com/valyala/fasttemplate/template.go (100%) rename {vendor => v1/vendor}/github.com/valyala/fasttemplate/unsafe.go (100%) rename {vendor => v1/vendor}/github.com/valyala/fasttemplate/unsafe_gae.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/LICENSE (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/internal/w32/w32.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/combridge/bridge.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/combridge/iunknown.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/combridge/iunknown_impl.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/combridge/syscall.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/combridge/vtables.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/COREWEBVIEW2_BOUNDS_MODE.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/COREWEBVIEW2_COLOR.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/COREWEBVIEW2_HOST_RESOURCE_ACCESS_KIND.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/COREWEBVIEW2_KEY_EVENT_KIND.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/COREWEBVIEW2_MOVE_FOCUS_REASON.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/COREWEBVIEW2_PHYSICAL_KEY_STATUS.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/COREWEBVIEW2_PROCESS_FAILED_KIND.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/COREWEBVIEW2_WEB_RESOURCE_CONTEXT.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2AcceleratorKeyPressedEventArgs.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2AcceleratorKeyPressedEventHandler.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2ContainsFullScreenElementChangedEventArgs.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2ContainsFullScreenElementChangedEventHandler.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2Controller.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2Controller2.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2Controller3.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2Controller4.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2CreateCoreWebView2ControllerCompletedHandler.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2Deferral.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2File.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2HttpHeadersCollectionIterator.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2HttpRequestHeaders.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2HttpResponseHeaders.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2NavigationCompletedEventArgs.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2NavigationCompletedEventHandler.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2ObjectCollectionView.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2ProcessFailedEventArgs.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2ProcessFailedEventHandler.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2RasterizationScaleChangedEventHandler.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2Settings.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2Settings2.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2Settings3.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2Settings4.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2Settings5.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2Settings6.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2WebMessageReceivedEventArgs.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2WebMessageReceivedEventHandler.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2WebResourceRequest.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2WebResourceRequestedEventArgs.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2WebResourceRequestedEventHandler.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2WebResourceResponse.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2_2.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebView2_3.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/ICoreWebViewSettings.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/IStream.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/capabilities.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/chromium.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/chromium_386.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/chromium_amd64.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/chromium_arm64.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/com.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/corewebview2.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/create_env_go.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/create_env_native.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/guid.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/pkg/edge/version_map.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/webviewloader/LICENSE (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/webviewloader/README.md (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/webviewloader/arm64/WebView2Loader.dll (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/webviewloader/env_create.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/webviewloader/env_create_completed.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/webviewloader/env_create_options.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/webviewloader/find_dll.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/webviewloader/find_dll_installed.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/webviewloader/native_module.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/webviewloader/native_module_386.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/webviewloader/native_module_amd64.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/webviewloader/native_module_arm64.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/webviewloader/syscall.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/webviewloader/version.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/webviewloader/x64/WebView2Loader.dll (100%) rename {vendor => v1/vendor}/github.com/wailsapp/go-webview2/webviewloader/x86/WebView2Loader.dll (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/.gitattributes (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/CODE_OF_CONDUCT.md (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/CONTRIBUTING.md (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/LICENSE (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/README.md (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/internal/charset/charset.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/internal/json/json.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/internal/magic/archive.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/internal/magic/audio.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/internal/magic/binary.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/internal/magic/database.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/internal/magic/document.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/internal/magic/font.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/internal/magic/ftyp.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/internal/magic/geo.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/internal/magic/image.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/internal/magic/magic.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/internal/magic/ms_office.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/internal/magic/ogg.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/internal/magic/text.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/internal/magic/text_csv.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/internal/magic/video.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/internal/magic/zip.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/mime.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/mimetype.gif (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/mimetype.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/supported_mimes.md (100%) rename {vendor => v1/vendor}/github.com/wailsapp/mimetype/tree.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/.golangci.yml (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/.prettierrc.yml (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/LICENSE (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/README.md (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/Taskfile.yaml (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/app/app.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/app/app_bindings.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/app/app_debug.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/app/app_debug_not.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/app/app_default_unix.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/app/app_default_windows.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/app/app_dev.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/app/app_devtools.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/app/app_devtools_not.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/app/app_obfuscated.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/app/app_obfuscated_not.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/app/app_preflight_unix.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/app/app_preflight_windows.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/app/app_production.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/binding/binding.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/binding/boundMethod.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/binding/db.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/binding/generate.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/binding/parameter.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/binding/reflect.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/calls.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/AppDelegate.h (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/AppDelegate.m (93%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/Application.h (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/Application.m (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/CustomProtocol.h (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/CustomProtocol.m (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/Role.h (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/WailsAlert.h (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/WailsAlert.m (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/WailsContext.h (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/WailsContext.m (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/WailsMenu.h (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/WailsMenu.m (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/WailsMenuItem.h (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/WailsMenuItem.m (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/WindowDelegate.h (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/WindowDelegate.m (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/browser.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/callbacks.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/calloc.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/clipboard.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/dialog.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/frontend.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/inspector.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/inspector_dev.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/main.m (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/menu.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/menuitem.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/message.h (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/screen.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/single_instance.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/darwin/window.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/desktop_darwin.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/desktop_linux.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/desktop_windows.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/linux/browser.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/linux/calloc.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/linux/clipboard.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/linux/dialog.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/linux/frontend.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/linux/gtk.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/linux/invoke.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/linux/keys.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/linux/menu.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/linux/screen.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/linux/single_instance.go (89%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/linux/webkit2.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/linux/window.c (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/linux/window.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/linux/window.h (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/browser.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/clipboard.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/dialog.go (97%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/frontend.go (99%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/keys.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/menu.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/screen.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/single_instance.go (91%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/theme.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/win32/clipboard.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/win32/consts.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/win32/theme.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/win32/window.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/.gitignore (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/AUTHORS (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/LICENSE (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/README.md (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/app.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/bitmap.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/brush.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/buttons.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/canvas.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/color.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/combobox.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/commondlgs.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/controlbase.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/controller.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/dialog.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/dock_topbottom.png (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/dock_topleft.png (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/edit.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/event.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/eventdata.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/eventmanager.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/font.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/form.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/globalvars.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/icon.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/imagelist.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/imageview.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/imageviewbox.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/init.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/keyboard.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/label.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/layout.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/listview.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/menu.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/mousecontrol.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/msghandlerregistry.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/panel.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/path.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/pen.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/progressbar.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/rect.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/resizer.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/scrollview.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/slider.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/tabview.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/toolbar.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/tooltip.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/treeview.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/utils.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/comctl32.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/comdlg32.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/constants.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/dwmapi.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/gdi32.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/gdiplus.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/idispatch.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/istream.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/iunknown.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/kernel32.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/ole32.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/oleaut32.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/shcore.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/shell32.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/shlwapi.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/toolbar.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/typedef.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/user32.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/utils.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/uxtheme.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/w32/vars.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/winc/wndproc.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/desktop/windows/window.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/devserver/devserver.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/dispatcher.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/dispatcher/browser.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/dispatcher/calls.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/dispatcher/dispatcher.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/dispatcher/events.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/dispatcher/log.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/dispatcher/securecalls.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/dispatcher/systemcalls.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/dispatcher/window.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/events.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/frontend.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/runtime/assets.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/runtime/assets_dev.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/runtime/events.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/runtime/ipc.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/runtime/ipc.js (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/runtime/ipc_websocket.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/runtime/ipc_websocket.js (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/runtime/package-lock.json (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/runtime/package.json (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/runtime/runtime_debug_desktop.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/runtime/runtime_debug_desktop.js (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/runtime/runtime_prod_desktop.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/runtime/runtime_prod_desktop.js (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/runtime/vite.config.ts (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/runtime/wrapper/package.json (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/runtime/wrapper/runtime.d.ts (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/runtime/wrapper/runtime.js (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/frontend/runtime/wrapper/wrapper.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/fs/fs.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/go-common-file-dialog/LICENSE (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/go-common-file-dialog/cfd/CommonFileDialog.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/go-common-file-dialog/cfd/CommonFileDialog_nonWindows.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/go-common-file-dialog/cfd/CommonFileDialog_windows.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/go-common-file-dialog/cfd/DialogConfig.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/go-common-file-dialog/cfd/errors.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/go-common-file-dialog/cfd/iFileOpenDialog.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/go-common-file-dialog/cfd/iFileSaveDialog.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/go-common-file-dialog/cfd/iShellItem.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/go-common-file-dialog/cfd/iShellItemArray.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/go-common-file-dialog/cfd/vtblCommon.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/go-common-file-dialog/cfd/vtblCommonFunc.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/go-common-file-dialog/util/util.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/goversion/build_constraint.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/goversion/min.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/logger/custom_logger.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/logger/default_logger.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/menumanager/applicationmenu.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/menumanager/contextmenu.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/menumanager/menuitemmap.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/menumanager/menumanager.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/menumanager/processedMenu.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/menumanager/traymenu.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/project/project.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/shell/env.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/shell/shell.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/signal/signal.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/system/operatingsystem/os.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/system/operatingsystem/os_darwin.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/system/operatingsystem/os_linux.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/system/operatingsystem/os_windows.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/system/operatingsystem/version_windows.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/typescriptify/LICENSE.txt (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/typescriptify/README.md (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/typescriptify/js-reserved-keywords.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/typescriptify/typescriptify.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/webview2runtime/MicrosoftEdgeWebview2Setup.exe (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/webview2runtime/webview2installer.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/webview2runtime/webview2runtime.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/wv2installer/browser.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/wv2installer/download.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/wv2installer/embed.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/wv2installer/error.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/internal/wv2installer/wv2installer.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/application/application.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/application/events.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/application/init.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/application/init_windows.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/assethandler.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/assethandler_external.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/assetserver.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/assetserver_dev.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/assetserver_webview.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/body_recorder.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/common.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/content_type_sniffer.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/defaultindex.html (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/fs.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/mimecache.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/ringqueue.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/webview/request.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/webview/request_darwin.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/webview/request_finalizer.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/webview/request_linux.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/webview/request_windows.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/webview/responsewriter.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/webview/responsewriter_darwin.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/webview/responsewriter_linux.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/webview/responsewriter_windows.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/webview/webkit2_36+.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/webview/webkit2_36.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/webview/webkit2_40+.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/webview/webkit2_40.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/assetserver/webview/webkit2_legacy.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/logger/default.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/logger/filelogger.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/logger/logger.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/menu/README.md (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/menu/callback.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/menu/cols.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/menu/contextmenu.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/menu/keys/keys.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/menu/keys/macmodifiers.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/menu/keys/parser.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/menu/keys/stringify.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/menu/mac.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/menu/menu.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/menu/menuitem.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/menu/menuroles.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/menu/styledlabel.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/menu/tray.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/menu/type.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/menu/windows.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/options/assetserver/middleware.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/options/assetserver/options.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/options/debug.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/options/linux/linux.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/options/mac/appearance.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/options/mac/mac.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/options/mac/preferences.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/options/mac/titlebar.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/options/options.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/options/windows/windows.go (99%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/runtime/browser.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/runtime/clipboard.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/runtime/dialog.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/runtime/events.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/runtime/log.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/runtime/menu.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/runtime/runtime.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/runtime/screen.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/pkg/runtime/window.go (100%) rename {vendor => v1/vendor}/github.com/wailsapp/wails/v2/wails.go (100%) rename {vendor => v1/vendor}/golang.org/x/crypto/LICENSE (100%) rename {vendor => v1/vendor}/golang.org/x/crypto/PATENTS (100%) rename {vendor => v1/vendor}/golang.org/x/crypto/acme/acme.go (100%) rename {vendor => v1/vendor}/golang.org/x/crypto/acme/autocert/autocert.go (100%) rename {vendor => v1/vendor}/golang.org/x/crypto/acme/autocert/cache.go (100%) rename {vendor => v1/vendor}/golang.org/x/crypto/acme/autocert/listener.go (100%) rename {vendor => v1/vendor}/golang.org/x/crypto/acme/autocert/renewal.go (100%) rename {vendor => v1/vendor}/golang.org/x/crypto/acme/http.go (100%) rename {vendor => v1/vendor}/golang.org/x/crypto/acme/jws.go (100%) rename {vendor => v1/vendor}/golang.org/x/crypto/acme/rfc8555.go (100%) rename {vendor => v1/vendor}/golang.org/x/crypto/acme/types.go (100%) rename {vendor => v1/vendor}/golang.org/x/crypto/acme/version_go112.go (100%) rename {vendor => v1/vendor}/golang.org/x/exp/LICENSE (100%) rename {vendor => v1/vendor}/golang.org/x/exp/PATENTS (100%) rename {vendor => v1/vendor}/golang.org/x/exp/constraints/constraints.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/LICENSE (100%) rename {vendor => v1/vendor}/golang.org/x/net/PATENTS (100%) rename {vendor => v1/vendor}/golang.org/x/net/html/atom/atom.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/html/atom/table.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/html/const.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/html/doc.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/html/doctype.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/html/entity.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/html/escape.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/html/foreign.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/html/node.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/html/parse.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/html/render.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/html/token.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http/httpguts/guts.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http/httpguts/httplex.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/.gitignore (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/ascii.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/ciphers.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/client_conn_pool.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/databuffer.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/errors.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/flow.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/frame.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/gotrack.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/h2c/h2c.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/headermap.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/hpack/encode.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/hpack/hpack.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/hpack/huffman.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/hpack/static_table.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/hpack/tables.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/http2.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/pipe.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/server.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/transport.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/write.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/writesched.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/writesched_priority.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/writesched_random.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/http2/writesched_roundrobin.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/idna/go118.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/idna/idna10.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/idna/idna9.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/idna/pre_go118.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/idna/punycode.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/idna/tables10.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/idna/tables11.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/idna/tables12.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/idna/tables13.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/idna/tables15.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/idna/tables9.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/idna/trie.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/idna/trie12.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/idna/trie13.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/idna/trieval.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/websocket/client.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/websocket/dial.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/websocket/hybi.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/websocket/server.go (100%) rename {vendor => v1/vendor}/golang.org/x/net/websocket/websocket.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/LICENSE (100%) rename {vendor => v1/vendor}/golang.org/x/sys/PATENTS (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/.gitignore (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/README.md (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/affinity_linux.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/aliases.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/asm_aix_ppc64.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/asm_bsd_386.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/asm_bsd_amd64.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/asm_bsd_arm.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/asm_bsd_arm64.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/asm_bsd_ppc64.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/asm_bsd_riscv64.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/asm_linux_386.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/asm_linux_amd64.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/asm_linux_arm.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/asm_linux_arm64.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/asm_linux_loong64.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/asm_linux_mips64x.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/asm_linux_mipsx.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/asm_linux_ppc64x.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/asm_linux_riscv64.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/asm_linux_s390x.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/asm_openbsd_mips64.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/asm_solaris_amd64.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/asm_zos_s390x.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/bluetooth_linux.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/cap_freebsd.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/constants.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/dev_aix_ppc.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/dev_aix_ppc64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/dev_darwin.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/dev_dragonfly.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/dev_freebsd.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/dev_linux.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/dev_netbsd.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/dev_openbsd.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/dev_zos.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/dirent.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/endian_big.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/endian_little.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/env_unix.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/epoll_zos.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/fcntl.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/fcntl_darwin.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/fcntl_linux_32bit.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/fdset.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/fstatfs_zos.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/gccgo.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/gccgo_c.c (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/gccgo_linux_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ifreq_linux.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ioctl_linux.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ioctl_signed.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ioctl_unsigned.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ioctl_zos.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/mkall.sh (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/mkerrors.sh (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/mmap_nomremap.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/mremap.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/pagesize_unix.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/pledge_openbsd.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ptrace_darwin.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ptrace_ios.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/race.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/race0.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/readdirent_getdents.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/readdirent_getdirentries.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/sockcmsg_dragonfly.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/sockcmsg_linux.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/sockcmsg_unix.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/sockcmsg_unix_other.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_aix.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_aix_ppc.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_aix_ppc64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_bsd.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_darwin.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_darwin_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_darwin_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_darwin_libSystem.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_dragonfly.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_dragonfly_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_freebsd.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_freebsd_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_freebsd_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_freebsd_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_freebsd_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_freebsd_riscv64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_hurd.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_hurd_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_illumos.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_linux.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_linux_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_linux_alarm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_linux_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_linux_amd64_gc.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_linux_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_linux_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_linux_gc.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_linux_gc_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_linux_gc_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_linux_gccgo_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_linux_loong64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_linux_mips64x.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_linux_mipsx.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_linux_ppc.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_linux_ppc64x.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_linux_riscv64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_linux_s390x.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_linux_sparc64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_netbsd.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_netbsd_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_netbsd_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_netbsd_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_netbsd_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_openbsd.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_openbsd_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_openbsd_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_openbsd_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_openbsd_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_openbsd_libc.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_openbsd_mips64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_openbsd_ppc64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_openbsd_riscv64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_solaris.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_solaris_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_unix.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_unix_gc.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/syscall_zos_s390x.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/sysvshm_linux.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/sysvshm_unix.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/sysvshm_unix_other.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/timestruct.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/unveil_openbsd.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/xattr_bsd.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_aix_ppc.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_aix_ppc64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_darwin_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_darwin_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_freebsd_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_freebsd_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_freebsd_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_freebsd_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_freebsd_riscv64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_linux.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_linux_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_linux_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_linux_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_linux_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_linux_loong64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_linux_mips.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_linux_mips64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_linux_mips64le.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_linux_mipsle.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_linux_ppc.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_linux_ppc64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_linux_ppc64le.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_linux_riscv64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_linux_s390x.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_linux_sparc64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_netbsd_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_netbsd_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_netbsd_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_netbsd_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_openbsd_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_openbsd_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_openbsd_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_openbsd_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_openbsd_mips64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_openbsd_ppc64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_openbsd_riscv64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_solaris_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zerrors_zos_s390x.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zptrace_armnn_linux.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zptrace_linux_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zptrace_mipsnn_linux.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zptrace_x86_linux.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_aix_ppc.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_aix_ppc64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_darwin_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_darwin_amd64.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_darwin_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_darwin_arm64.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_freebsd_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_freebsd_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_freebsd_riscv64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_illumos_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_linux.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_linux_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_linux_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_linux_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_linux_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_linux_loong64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_linux_mips.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_linux_mips64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_linux_mips64le.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_linux_mipsle.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_linux_ppc.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_linux_ppc64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_linux_riscv64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_linux_s390x.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_linux_sparc64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_netbsd_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_netbsd_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_openbsd_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_openbsd_386.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_openbsd_amd64.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_openbsd_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_openbsd_arm.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_openbsd_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_openbsd_arm64.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_openbsd_mips64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_openbsd_mips64.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_openbsd_ppc64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_openbsd_ppc64.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_openbsd_riscv64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_openbsd_riscv64.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_solaris_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsyscall_zos_s390x.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysctl_openbsd_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysctl_openbsd_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysctl_openbsd_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysctl_openbsd_mips64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysctl_openbsd_ppc64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysctl_openbsd_riscv64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_darwin_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_darwin_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_freebsd_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_freebsd_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_freebsd_riscv64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_linux_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_linux_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_linux_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_linux_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_linux_loong64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_linux_mips.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_linux_mips64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_linux_mips64le.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_linux_mipsle.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_linux_ppc.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_linux_ppc64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_linux_riscv64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_linux_s390x.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_linux_sparc64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_netbsd_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_netbsd_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_openbsd_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_openbsd_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_openbsd_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_openbsd_mips64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_openbsd_ppc64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_openbsd_riscv64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/zsysnum_zos_s390x.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_aix_ppc.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_aix_ppc64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_darwin_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_darwin_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_freebsd_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_freebsd_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_freebsd_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_freebsd_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_freebsd_riscv64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_linux.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_linux_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_linux_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_linux_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_linux_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_linux_loong64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_linux_mips.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_linux_mips64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_linux_mips64le.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_linux_mipsle.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_linux_ppc.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_linux_ppc64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_linux_ppc64le.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_linux_riscv64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_linux_s390x.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_linux_sparc64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_netbsd_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_netbsd_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_netbsd_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_netbsd_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_openbsd_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_openbsd_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_openbsd_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_openbsd_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_openbsd_mips64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_openbsd_ppc64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_openbsd_riscv64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_solaris_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/unix/ztypes_zos_s390x.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/aliases.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/dll_windows.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/empty.s (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/env_windows.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/eventlog.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/exec_windows.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/memory_windows.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/mkerrors.bash (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/mkknownfolderids.bash (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/mksyscall.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/race.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/race0.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/registry/key.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/registry/mksyscall.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/registry/syscall.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/registry/value.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/registry/zsyscall_windows.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/security_windows.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/service.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/setupapi_windows.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/str.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/syscall.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/syscall_windows.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/types_windows.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/types_windows_386.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/types_windows_amd64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/types_windows_arm.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/types_windows_arm64.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/zerrors_windows.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/zknownfolderids_windows.go (100%) rename {vendor => v1/vendor}/golang.org/x/sys/windows/zsyscall_windows.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/LICENSE (100%) rename {vendor => v1/vendor}/golang.org/x/text/PATENTS (100%) rename {vendor => v1/vendor}/golang.org/x/text/secure/bidirule/bidirule.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/secure/bidirule/bidirule10.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/secure/bidirule/bidirule9.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/transform/transform.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/bidi/bidi.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/bidi/bracket.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/bidi/core.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/bidi/prop.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/bidi/tables10.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/bidi/tables11.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/bidi/tables12.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/bidi/tables13.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/bidi/tables15.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/bidi/tables9.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/bidi/trieval.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/norm/composition.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/norm/forminfo.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/norm/input.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/norm/iter.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/norm/normalize.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/norm/readwriter.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/norm/tables10.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/norm/tables11.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/norm/tables12.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/norm/tables13.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/norm/tables15.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/norm/tables9.0.0.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/norm/transform.go (100%) rename {vendor => v1/vendor}/golang.org/x/text/unicode/norm/trie.go (100%) rename {vendor => v1/vendor}/modules.txt (80%) rename wails.json => v1/wails.json (100%) delete mode 100644 vendor/github.com/r3labs/sse/v2/.gitignore delete mode 100644 vendor/github.com/r3labs/sse/v2/.golangci.yml delete mode 100644 vendor/github.com/r3labs/sse/v2/CONTRIBUTING.md delete mode 100644 vendor/github.com/r3labs/sse/v2/LICENSE delete mode 100644 vendor/github.com/r3labs/sse/v2/Makefile delete mode 100644 vendor/github.com/r3labs/sse/v2/README.md delete mode 100644 vendor/github.com/r3labs/sse/v2/client.go delete mode 100644 vendor/github.com/r3labs/sse/v2/event.go delete mode 100644 vendor/github.com/r3labs/sse/v2/event_log.go delete mode 100644 vendor/github.com/r3labs/sse/v2/http.go delete mode 100644 vendor/github.com/r3labs/sse/v2/server.go delete mode 100644 vendor/github.com/r3labs/sse/v2/stream.go delete mode 100644 vendor/github.com/r3labs/sse/v2/subscriber.go delete mode 100644 vendor/github.com/robertkrimen/otto/.clog.toml delete mode 100644 vendor/github.com/robertkrimen/otto/.gitignore delete mode 100644 vendor/github.com/robertkrimen/otto/.golangci.yml delete mode 100644 vendor/github.com/robertkrimen/otto/.goreleaser.yaml delete mode 100644 vendor/github.com/robertkrimen/otto/DESIGN.markdown delete mode 100644 vendor/github.com/robertkrimen/otto/LICENSE delete mode 100644 vendor/github.com/robertkrimen/otto/README.md delete mode 100644 vendor/github.com/robertkrimen/otto/ast/comments.go delete mode 100644 vendor/github.com/robertkrimen/otto/ast/node.go delete mode 100644 vendor/github.com/robertkrimen/otto/ast/walk.go delete mode 100644 vendor/github.com/robertkrimen/otto/builtin.go delete mode 100644 vendor/github.com/robertkrimen/otto/builtin_array.go delete mode 100644 vendor/github.com/robertkrimen/otto/builtin_boolean.go delete mode 100644 vendor/github.com/robertkrimen/otto/builtin_date.go delete mode 100644 vendor/github.com/robertkrimen/otto/builtin_error.go delete mode 100644 vendor/github.com/robertkrimen/otto/builtin_function.go delete mode 100644 vendor/github.com/robertkrimen/otto/builtin_json.go delete mode 100644 vendor/github.com/robertkrimen/otto/builtin_math.go delete mode 100644 vendor/github.com/robertkrimen/otto/builtin_number.go delete mode 100644 vendor/github.com/robertkrimen/otto/builtin_object.go delete mode 100644 vendor/github.com/robertkrimen/otto/builtin_regexp.go delete mode 100644 vendor/github.com/robertkrimen/otto/builtin_string.go delete mode 100644 vendor/github.com/robertkrimen/otto/clone.go delete mode 100644 vendor/github.com/robertkrimen/otto/cmpl.go delete mode 100644 vendor/github.com/robertkrimen/otto/cmpl_evaluate.go delete mode 100644 vendor/github.com/robertkrimen/otto/cmpl_evaluate_expression.go delete mode 100644 vendor/github.com/robertkrimen/otto/cmpl_evaluate_statement.go delete mode 100644 vendor/github.com/robertkrimen/otto/cmpl_parse.go delete mode 100644 vendor/github.com/robertkrimen/otto/console.go delete mode 100644 vendor/github.com/robertkrimen/otto/consts.go delete mode 100644 vendor/github.com/robertkrimen/otto/dbg.go delete mode 100644 vendor/github.com/robertkrimen/otto/dbg/dbg.go delete mode 100644 vendor/github.com/robertkrimen/otto/error.go delete mode 100644 vendor/github.com/robertkrimen/otto/evaluate.go delete mode 100644 vendor/github.com/robertkrimen/otto/file/file.go delete mode 100644 vendor/github.com/robertkrimen/otto/generate.go delete mode 100644 vendor/github.com/robertkrimen/otto/global.go delete mode 100644 vendor/github.com/robertkrimen/otto/inline.go delete mode 100644 vendor/github.com/robertkrimen/otto/locale.go delete mode 100644 vendor/github.com/robertkrimen/otto/object.go delete mode 100644 vendor/github.com/robertkrimen/otto/object_class.go delete mode 100644 vendor/github.com/robertkrimen/otto/otto.go delete mode 100644 vendor/github.com/robertkrimen/otto/otto_.go delete mode 100644 vendor/github.com/robertkrimen/otto/parser/error.go delete mode 100644 vendor/github.com/robertkrimen/otto/parser/expression.go delete mode 100644 vendor/github.com/robertkrimen/otto/parser/lexer.go delete mode 100644 vendor/github.com/robertkrimen/otto/parser/parser.go delete mode 100644 vendor/github.com/robertkrimen/otto/parser/regexp.go delete mode 100644 vendor/github.com/robertkrimen/otto/parser/scope.go delete mode 100644 vendor/github.com/robertkrimen/otto/parser/statement.go delete mode 100644 vendor/github.com/robertkrimen/otto/property.go delete mode 100644 vendor/github.com/robertkrimen/otto/registry/registry.go delete mode 100644 vendor/github.com/robertkrimen/otto/result.go delete mode 100644 vendor/github.com/robertkrimen/otto/runtime.go delete mode 100644 vendor/github.com/robertkrimen/otto/scope.go delete mode 100644 vendor/github.com/robertkrimen/otto/script.go delete mode 100644 vendor/github.com/robertkrimen/otto/stash.go delete mode 100644 vendor/github.com/robertkrimen/otto/token/generate.go delete mode 100644 vendor/github.com/robertkrimen/otto/token/token.go delete mode 100644 vendor/github.com/robertkrimen/otto/token/token_const.go delete mode 100644 vendor/github.com/robertkrimen/otto/type_arguments.go delete mode 100644 vendor/github.com/robertkrimen/otto/type_array.go delete mode 100644 vendor/github.com/robertkrimen/otto/type_boolean.go delete mode 100644 vendor/github.com/robertkrimen/otto/type_date.go delete mode 100644 vendor/github.com/robertkrimen/otto/type_error.go delete mode 100644 vendor/github.com/robertkrimen/otto/type_function.go delete mode 100644 vendor/github.com/robertkrimen/otto/type_go_array.go delete mode 100644 vendor/github.com/robertkrimen/otto/type_go_map.go delete mode 100644 vendor/github.com/robertkrimen/otto/type_go_slice.go delete mode 100644 vendor/github.com/robertkrimen/otto/type_go_struct.go delete mode 100644 vendor/github.com/robertkrimen/otto/type_number.go delete mode 100644 vendor/github.com/robertkrimen/otto/type_reference.go delete mode 100644 vendor/github.com/robertkrimen/otto/type_regexp.go delete mode 100644 vendor/github.com/robertkrimen/otto/type_string.go delete mode 100644 vendor/github.com/robertkrimen/otto/value.go delete mode 100644 vendor/github.com/robertkrimen/otto/value_boolean.go delete mode 100644 vendor/github.com/robertkrimen/otto/value_kind.gen.go delete mode 100644 vendor/github.com/robertkrimen/otto/value_number.go delete mode 100644 vendor/github.com/robertkrimen/otto/value_primitive.go delete mode 100644 vendor/github.com/robertkrimen/otto/value_string.go delete mode 100644 vendor/github.com/tylertravisty/go-utils/LICENSE delete mode 100644 vendor/github.com/tylertravisty/go-utils/random/random.go delete mode 100644 vendor/github.com/tylertravisty/rumble-livestream-lib-go/.gitignore delete mode 100644 vendor/github.com/tylertravisty/rumble-livestream-lib-go/LICENSE delete mode 100644 vendor/github.com/tylertravisty/rumble-livestream-lib-go/README.md delete mode 100644 vendor/github.com/tylertravisty/rumble-livestream-lib-go/chat.go delete mode 100644 vendor/github.com/tylertravisty/rumble-livestream-lib-go/client.go delete mode 100644 vendor/github.com/tylertravisty/rumble-livestream-lib-go/error.go delete mode 100644 vendor/github.com/tylertravisty/rumble-livestream-lib-go/livestream.go delete mode 100644 vendor/github.com/tylertravisty/rumble-livestream-lib-go/md5.js.go delete mode 100644 vendor/golang.org/x/net/context/context.go delete mode 100644 vendor/golang.org/x/net/context/go17.go delete mode 100644 vendor/golang.org/x/net/context/go19.go delete mode 100644 vendor/golang.org/x/net/context/pre_go17.go delete mode 100644 vendor/golang.org/x/net/context/pre_go19.go delete mode 100644 vendor/golang.org/x/text/feature/plural/common.go delete mode 100644 vendor/golang.org/x/text/feature/plural/message.go delete mode 100644 vendor/golang.org/x/text/feature/plural/plural.go delete mode 100644 vendor/golang.org/x/text/feature/plural/tables.go delete mode 100644 vendor/golang.org/x/text/internal/catmsg/catmsg.go delete mode 100644 vendor/golang.org/x/text/internal/catmsg/codec.go delete mode 100644 vendor/golang.org/x/text/internal/catmsg/varint.go delete mode 100644 vendor/golang.org/x/text/internal/format/format.go delete mode 100644 vendor/golang.org/x/text/internal/format/parser.go delete mode 100644 vendor/golang.org/x/text/internal/internal.go delete mode 100644 vendor/golang.org/x/text/internal/language/common.go delete mode 100644 vendor/golang.org/x/text/internal/language/compact.go delete mode 100644 vendor/golang.org/x/text/internal/language/compact/compact.go delete mode 100644 vendor/golang.org/x/text/internal/language/compact/language.go delete mode 100644 vendor/golang.org/x/text/internal/language/compact/parents.go delete mode 100644 vendor/golang.org/x/text/internal/language/compact/tables.go delete mode 100644 vendor/golang.org/x/text/internal/language/compact/tags.go delete mode 100644 vendor/golang.org/x/text/internal/language/compose.go delete mode 100644 vendor/golang.org/x/text/internal/language/coverage.go delete mode 100644 vendor/golang.org/x/text/internal/language/language.go delete mode 100644 vendor/golang.org/x/text/internal/language/lookup.go delete mode 100644 vendor/golang.org/x/text/internal/language/match.go delete mode 100644 vendor/golang.org/x/text/internal/language/parse.go delete mode 100644 vendor/golang.org/x/text/internal/language/tables.go delete mode 100644 vendor/golang.org/x/text/internal/language/tags.go delete mode 100644 vendor/golang.org/x/text/internal/match.go delete mode 100644 vendor/golang.org/x/text/internal/number/common.go delete mode 100644 vendor/golang.org/x/text/internal/number/decimal.go delete mode 100644 vendor/golang.org/x/text/internal/number/format.go delete mode 100644 vendor/golang.org/x/text/internal/number/number.go delete mode 100644 vendor/golang.org/x/text/internal/number/pattern.go delete mode 100644 vendor/golang.org/x/text/internal/number/roundingmode_string.go delete mode 100644 vendor/golang.org/x/text/internal/number/tables.go delete mode 100644 vendor/golang.org/x/text/internal/stringset/set.go delete mode 100644 vendor/golang.org/x/text/internal/tag/tag.go delete mode 100644 vendor/golang.org/x/text/language/coverage.go delete mode 100644 vendor/golang.org/x/text/language/doc.go delete mode 100644 vendor/golang.org/x/text/language/language.go delete mode 100644 vendor/golang.org/x/text/language/match.go delete mode 100644 vendor/golang.org/x/text/language/parse.go delete mode 100644 vendor/golang.org/x/text/language/tables.go delete mode 100644 vendor/golang.org/x/text/language/tags.go delete mode 100644 vendor/golang.org/x/text/message/catalog.go delete mode 100644 vendor/golang.org/x/text/message/catalog/catalog.go delete mode 100644 vendor/golang.org/x/text/message/catalog/dict.go delete mode 100644 vendor/golang.org/x/text/message/catalog/go19.go delete mode 100644 vendor/golang.org/x/text/message/catalog/gopre19.go delete mode 100644 vendor/golang.org/x/text/message/doc.go delete mode 100644 vendor/golang.org/x/text/message/format.go delete mode 100644 vendor/golang.org/x/text/message/message.go delete mode 100644 vendor/golang.org/x/text/message/print.go delete mode 100644 vendor/golang.org/x/text/number/doc.go delete mode 100644 vendor/golang.org/x/text/number/format.go delete mode 100644 vendor/golang.org/x/text/number/number.go delete mode 100644 vendor/golang.org/x/text/number/option.go delete mode 100644 vendor/gopkg.in/cenkalti/backoff.v1/.gitignore delete mode 100644 vendor/gopkg.in/cenkalti/backoff.v1/.travis.yml delete mode 100644 vendor/gopkg.in/cenkalti/backoff.v1/LICENSE delete mode 100644 vendor/gopkg.in/cenkalti/backoff.v1/README.md delete mode 100644 vendor/gopkg.in/cenkalti/backoff.v1/backoff.go delete mode 100644 vendor/gopkg.in/cenkalti/backoff.v1/context.go delete mode 100644 vendor/gopkg.in/cenkalti/backoff.v1/exponential.go delete mode 100644 vendor/gopkg.in/cenkalti/backoff.v1/retry.go delete mode 100644 vendor/gopkg.in/cenkalti/backoff.v1/ticker.go delete mode 100644 vendor/gopkg.in/cenkalti/backoff.v1/tries.go delete mode 100644 vendor/gopkg.in/sourcemap.v1/.travis.yml delete mode 100644 vendor/gopkg.in/sourcemap.v1/LICENSE delete mode 100644 vendor/gopkg.in/sourcemap.v1/Makefile delete mode 100644 vendor/gopkg.in/sourcemap.v1/README.md delete mode 100644 vendor/gopkg.in/sourcemap.v1/base64vlq/base64_vlq.go delete mode 100644 vendor/gopkg.in/sourcemap.v1/consumer.go delete mode 100644 vendor/gopkg.in/sourcemap.v1/sourcemap.go diff --git a/.gitignore b/.gitignore index 1279394..656b796 100644 --- a/.gitignore +++ b/.gitignore @@ -1,8 +1 @@ -build/bin/ -node_modules -frontend/dist -frontend/wailsjs - -.prettierignore - -config.json \ No newline at end of file +.prettierignore \ No newline at end of file diff --git a/app.go b/app.go deleted file mode 100644 index 5cd7ae8..0000000 --- a/app.go +++ /dev/null @@ -1,563 +0,0 @@ -package main - -import ( - "context" - "errors" - "fmt" - "log" - "os" - "path/filepath" - "sync" - "time" - - "github.com/tylertravisty/rum-goggles/internal/api" - "github.com/tylertravisty/rum-goggles/internal/chatbot" - "github.com/tylertravisty/rum-goggles/internal/config" - rumblelivestreamlib "github.com/tylertravisty/rumble-livestream-lib-go" - "github.com/wailsapp/wails/v2/pkg/runtime" -) - -type chat struct { - username string - password string - url string -} - -// App struct -type App struct { - ctx context.Context - cfg *config.App - cfgMu sync.Mutex - api *api.Api - apiMu sync.Mutex - cb *chatbot.ChatBot - cbMu sync.Mutex - logError *log.Logger - logInfo *log.Logger -} - -// NewApp creates a new App application struct -func NewApp() *App { - app := &App{} - err := app.initLog() - if err != nil { - log.Fatal("error initializing log:", err) - } - - app.api = api.NewApi(app.logError, app.logInfo) - - return app -} - -// startup is called when the app starts. The context is saved -// so we can call the runtime methods -func (a *App) startup(ctx context.Context) { - a.ctx = ctx - a.api.Startup(ctx) - - err := a.loadConfig() - if err != nil { - a.logError.Fatal("error loading config: ", err) - } -} - -func (a *App) initLog() error { - f, err := config.LogFile() - if err != nil { - return fmt.Errorf("error opening log file: %v", err) - } - - a.logInfo = log.New(f, "[info]", log.LstdFlags|log.Lshortfile) - a.logError = log.New(f, "[error]", log.LstdFlags|log.Lshortfile) - return nil -} - -func (a *App) loadConfig() error { - cfg, err := config.Load() - if err != nil { - if !errors.Is(err, os.ErrNotExist) { - return fmt.Errorf("error loading config: %v", err) - } - - return a.newConfig() - } - - a.cfg = cfg - return nil -} - -func (a *App) newConfig() error { - cfg := &config.App{Channels: map[string]config.Channel{}} - err := cfg.Save() - if err != nil { - return fmt.Errorf("error saving new config: %v", err) - } - - a.cfg = cfg - return nil -} - -func (a *App) Config() *config.App { - return a.cfg -} - -func (a *App) AddChannel(url string) (*config.App, error) { - client := rumblelivestreamlib.Client{StreamKey: url} - resp, err := client.Request() - if err != nil { - a.logError.Println("error executing api request:", err) - return nil, fmt.Errorf("Error querying API. Verify key and try again.") - } - - name := resp.Username - if resp.ChannelName != "" { - name = resp.ChannelName - } - - a.cfgMu.Lock() - defer a.cfgMu.Unlock() - _, err = a.cfg.NewChannel(url, name) - if err != nil { - a.logError.Println("error creating new channel:", err) - return nil, fmt.Errorf("Error creating new channel. Try again.") - } - - err = a.cfg.Save() - if err != nil { - a.logError.Println("error saving config:", err) - return nil, fmt.Errorf("Error saving channel information. Try again.") - } - - return a.cfg, nil -} - -func (a *App) ChatBotMessages(cid string) (map[string]config.ChatMessage, error) { - a.cfgMu.Lock() - defer a.cfgMu.Unlock() - channel, exists := a.cfg.Channels[cid] - if !exists { - a.logError.Println("channel does not exist:", cid) - return nil, fmt.Errorf("Cannot find channel. Try reloading.") - } - - return channel.ChatBot.Messages, nil -} - -func (a *App) AddChatMessage(cid string, cm config.ChatMessage) (map[string]config.ChatMessage, error) { - var err error - a.cfgMu.Lock() - defer a.cfgMu.Unlock() - _, err = a.cfg.NewChatMessage(cid, cm) - if err != nil { - a.logError.Println("error creating new chat:", err) - return nil, fmt.Errorf("Error creating new chat message. Try again.") - } - - err = a.cfg.Save() - if err != nil { - a.logError.Println("error saving config:", err) - return nil, fmt.Errorf("Error saving chat message information. Try again.") - } - - a.updateChatBotConfig(a.cfg.Channels[cid].ChatBot) - - return a.cfg.Channels[cid].ChatBot.Messages, nil -} - -func (a *App) DeleteChatMessage(cid string, cm config.ChatMessage) (map[string]config.ChatMessage, error) { - a.cbMu.Lock() - if a.cb != nil { - err := a.cb.StopMessage(cm.ID) - if err != nil { - a.logError.Println("error stopping chat bot message:", err) - return nil, fmt.Errorf("Error stopping message. Try Again.") - } - } - a.cbMu.Unlock() - - a.cfgMu.Lock() - defer a.cfgMu.Unlock() - err := a.cfg.DeleteChatMessage(cid, cm) - if err != nil { - a.logError.Println("error deleting chat message:", err) - return nil, fmt.Errorf("Error deleting chat message. Try again.") - } - - err = a.cfg.Save() - if err != nil { - a.logError.Println("error saving config:", err) - return nil, fmt.Errorf("Error saving chat message information. Try again.") - } - - a.updateChatBotConfig(a.cfg.Channels[cid].ChatBot) - - return a.cfg.Channels[cid].ChatBot.Messages, nil -} - -func (a *App) UpdateChatMessage(cid string, cm config.ChatMessage) (map[string]config.ChatMessage, error) { - var err error - a.cfgMu.Lock() - defer a.cfgMu.Unlock() - _, err = a.cfg.UpdateChatMessage(cid, cm) - if err != nil { - a.logError.Println("error updating chat message:", err) - return nil, fmt.Errorf("Error updating chat message. Try again.") - } - - err = a.cfg.Save() - if err != nil { - a.logError.Println("error saving config:", err) - return nil, fmt.Errorf("Error saving chat message information. Try again.") - } - - a.updateChatBotConfig(a.cfg.Channels[cid].ChatBot) - - return a.cfg.Channels[cid].ChatBot.Messages, nil -} - -type NewChatBotResponse struct { - LoggedIn bool `json:"logged_in"` - StreamUrl string `json:"stream_url"` - Username string `json:"username"` -} - -func (a *App) GetChatBot(cid string) (NewChatBotResponse, error) { - if a.cb == nil { - return NewChatBotResponse{}, fmt.Errorf("Chat bot not initalized.") - } - - loggedIn, err := a.cb.LoggedIn() - if err != nil { - a.logError.Println("error checking if chat bot is logged in:", err) - return NewChatBotResponse{}, fmt.Errorf("Error checking if chat bot is logged in. Try again.") - } - - return NewChatBotResponse{loggedIn, a.cb.Cfg.Session.Client.StreamUrl, a.cb.Cfg.Session.Username}, nil -} - -func (a *App) NewChatBot(cid string) (NewChatBotResponse, error) { - a.cbMu.Lock() - defer a.cbMu.Unlock() - - if a.cb != nil { - err := a.resetChatBot() - if err != nil { - a.logError.Println("error resetting chat bot:", err) - return NewChatBotResponse{}, fmt.Errorf("Error creating chat bot. Try Again.") - } - } - channel, exists := a.cfg.Channels[cid] - if !exists { - a.logError.Println("channel does not exist:", cid) - return NewChatBotResponse{}, fmt.Errorf("Channel does not exist.") - } - - if channel.ChatBot.Session.Client.StreamUrl == "" { - return NewChatBotResponse{}, nil - } - - var err error - a.cb, err = chatbot.NewChatBot(a.ctx, channel.ChatBot, a.logError) - if err != nil { - a.logError.Println("error creating new chat bot:", err) - return NewChatBotResponse{}, fmt.Errorf("Error creating new chat bot. Try again.") - } - - loggedIn, err := a.cb.LoggedIn() - if err != nil { - a.logError.Println("error checking if chat bot is logged in:", err) - return NewChatBotResponse{}, fmt.Errorf("Error checking if chat bot is logged in. Try again.") - } - - if loggedIn { - err = a.cb.StartChatStream() - if err != nil { - a.logError.Println("error starting chat stream:", err) - return NewChatBotResponse{}, fmt.Errorf("Error connecting to chat. Try again.") - } - } - - return NewChatBotResponse{loggedIn, channel.ChatBot.Session.Client.StreamUrl, channel.ChatBot.Session.Username}, nil -} - -func (a *App) LoginChatBot(cid string, username string, password string, streamUrl string) error { - a.cbMu.Lock() - defer a.cbMu.Unlock() - a.cfgMu.Lock() - defer a.cfgMu.Unlock() - - if a.cb != nil { - err := a.resetChatBot() - if err != nil { - a.logError.Println("error resetting chat bot:", err) - return fmt.Errorf("Error creating chat bot. Try Again.") - } - } - channel, exists := a.cfg.Channels[cid] - if !exists { - a.logError.Println("channel does not exist:", cid) - return fmt.Errorf("Channel does not exist.") - } - channel.ChatBot.Session.Client.StreamUrl = streamUrl - - var err error - a.cb, err = chatbot.NewChatBot(a.ctx, channel.ChatBot, a.logError) - if err != nil { - a.logError.Println("error creating new chat bot:", err) - return fmt.Errorf("Error creating new chat bot. Try again.") - } - - cookies, err := a.cb.Login(username, password) - if err != nil { - a.logError.Println("error logging into chat bot:", err) - return fmt.Errorf("Error logging in. Try again.") - } - - channel.ChatBot.Session = config.ChatBotSession{ - Client: rumblelivestreamlib.NewClientOptions{ - Cookies: cookies, - StreamUrl: streamUrl, - }, - Username: username, - } - a.cfg.Channels[cid] = channel - err = a.cfg.Save() - if err != nil { - a.logError.Println("error saving config:", err) - return fmt.Errorf("Error saving session information. Try again.") - } - - a.cb.Cfg.Session = channel.ChatBot.Session - - err = a.cb.StartChatStream() - if err != nil { - a.logError.Println("error starting chat stream:", err) - return fmt.Errorf("Error connecting to chat. Try again.") - } - - return nil -} - -func (a *App) StopAllChatBot(cid string) error { - if a.cb == nil { - return fmt.Errorf("Chat bot not initialized.") - } - - err := a.cb.StopAllMessages() - if err != nil { - a.logError.Println("error stopping all chat bot messages:", err) - return fmt.Errorf("Error stopping messages.") - } - - return nil -} - -func (a *App) StartAllChatBot(cid string) error { - if a.cb == nil { - return fmt.Errorf("Chat bot not initialized.") - } - - err := a.cb.StartAllMessages() - if err != nil { - a.logError.Println("error starting all chat bot messages:", err) - return fmt.Errorf("Error starting messages.") - } - - return nil -} - -func (a *App) UpdateChatBotUrl(cid string, streamUrl string) error { - a.cbMu.Lock() - defer a.cbMu.Unlock() - a.cfgMu.Lock() - defer a.cfgMu.Unlock() - - if a.cb == nil { - return fmt.Errorf("Chat bot not initialized.") - } - - err := a.resetChatBot() - if err != nil { - a.logError.Println("error resetting chat bot:", err) - return fmt.Errorf("Error creating chat bot. Try Again.") - } - - channel, exists := a.cfg.Channels[cid] - if !exists { - a.logError.Println("channel does not exist:", cid) - return fmt.Errorf("Channel does not exist.") - } - channel.ChatBot.Session.Client.StreamUrl = streamUrl - - a.cb, err = chatbot.NewChatBot(a.ctx, channel.ChatBot, a.logError) - if err != nil { - a.logError.Println("error creating new chat bot:", err) - return fmt.Errorf("Error creating new chat bot. Try again.") - } - - a.cfg.Channels[cid] = channel - err = a.cfg.Save() - if err != nil { - a.logError.Println("error saving config:", err) - return fmt.Errorf("Error saving session information. Try again.") - } - - a.cb.Cfg.Session.Client.StreamUrl = streamUrl - - err = a.cb.StartChatStream() - if err != nil { - a.logError.Println("error starting chat stream:", err) - return fmt.Errorf("Error connecting to chat. Try again.") - } - - return nil -} - -func (a *App) ResetChatBot(cid string, logout bool) error { - a.cbMu.Lock() - defer a.cbMu.Unlock() - a.cfgMu.Lock() - defer a.cfgMu.Unlock() - - if a.cb == nil { - return nil - } - - err := a.cb.StopAllMessages() - if err != nil { - return fmt.Errorf("error stopping all chat bot messages: %v", err) - } - - if logout { - err := a.cb.Logout() - if err != nil { - return fmt.Errorf("error logging out of chat bot: %v", err) - } - - //TODO: reset session in config - channel, exists := a.cfg.Channels[cid] - if !exists { - a.logError.Println("channel does not exist:", cid) - return fmt.Errorf("Channel does not exist.") - } - - channel.ChatBot.Session = config.ChatBotSession{} - a.cfg.Channels[cid] = channel - err = a.cfg.Save() - if err != nil { - a.logError.Println("error saving config:", err) - return fmt.Errorf("Error saving session information. Try again.") - } - } - - err = a.resetChatBot() - if err != nil { - a.logError.Println("error resetting chat bot:", err) - return fmt.Errorf("Error resetting chat bot. Try Again.") - } - - return nil -} - -func (a *App) resetChatBot() error { - if a.cb == nil { - // return fmt.Errorf("chat bot is nil") - return nil - } - - err := a.cb.StopAllMessages() - if err != nil { - return fmt.Errorf("error stopping all chat bot messages: %v", err) - } - - err = a.cb.StopChatStream() - if err != nil { - return fmt.Errorf("error stopping chat stream: %v", err) - } - - a.cb = nil - - return nil -} - -func (a *App) StartChatBotMessage(mid string) error { - a.cbMu.Lock() - defer a.cbMu.Unlock() - - if a.cb == nil { - return fmt.Errorf("Chat bot not initialized.") - } - - err := a.cb.StartMessage(mid) - if err != nil { - a.logError.Println("error starting chat bot message:", err) - return fmt.Errorf("Error starting message. Try Again.") - } - - return nil -} - -func (a *App) StopChatBotMessage(mid string) error { - a.cbMu.Lock() - defer a.cbMu.Unlock() - - // If chat bot not initialized, then stop does nothing - if a.cb == nil { - return nil - } - - err := a.cb.StopMessage(mid) - if err != nil { - a.logError.Println("error stopping chat bot message:", err) - return fmt.Errorf("Error stopping message. Try Again.") - } - - return nil -} - -func (a *App) StartApi(cid string) error { - channel, found := a.cfg.Channels[cid] - if !found { - a.logError.Println("could not find channel CID:", cid) - return fmt.Errorf("channel CID not found") - } - - err := a.api.Start(channel.ApiUrl, channel.Interval*time.Second) - if err != nil { - a.logError.Println("error starting api:", err) - return fmt.Errorf("error starting API") - } - - return nil -} - -func (a *App) StopApi() { - a.api.Stop() -} - -func (a *App) updateChatBotConfig(cfg config.ChatBot) { - a.cbMu.Lock() - defer a.cbMu.Unlock() - if a.cb != nil { - a.cb.Cfg = cfg - } -} - -func (a *App) OpenFileDialog() (string, error) { - home, err := os.UserHomeDir() - if err != nil { - a.logError.Println("error getting home directory:", err) - return "", fmt.Errorf("Error opening file explorer. Try again.") - } - filepath, err := runtime.OpenFileDialog(a.ctx, runtime.OpenDialogOptions{DefaultDirectory: home}) - if err != nil { - a.logError.Println("error opening file dialog:", err) - return "", fmt.Errorf("Error opening file explorer. Try again.") - } - - return filepath, err -} - -func (a *App) FilepathBase(path string) string { - return filepath.Base(path) -} diff --git a/frontend/src/App.jsx b/frontend/src/App.jsx deleted file mode 100644 index 987b323..0000000 --- a/frontend/src/App.jsx +++ /dev/null @@ -1,21 +0,0 @@ -import { useEffect, useState } from 'react'; -import { MemoryRouter as Router, Route, Routes, Link } from 'react-router-dom'; - -import './App.css'; - -import { NavSignIn, NavDashboard } from './screens/Navigation'; -import Dashboard from './screens/Dashboard'; -import SignIn from './screens/SignIn'; - -function App() { - return ( - - - }> - }> - - - ); -} - -export default App; diff --git a/frontend/src/assets/icons/eye-slash.png b/frontend/src/assets/icons/eye-slash.png deleted file mode 100644 index fe97fa0f57640713589665f97ad0a0f6a55d7091..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4844 zcmbuD`9Bj5{KpZsxnj;7VeYFe$xW6qbLT!|NRF{6cZ%kiD-5|49m+X`<%qfF9Ob@` zg|LV|%anZk{tMsl53l$0@p%3Ae!m`%*AH*3m4z_}s}L�|SQ%-0=24mi?~)=l{)A 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 z z5A~iI+d`?r-t*Ti&nupP!3^p*&wevtHag&kkpfznr`U5i-ilfKopzFN*I;|pRTe0({e z^jA0E;GQgiSwZ^L`w7oe3;wtp2<&n?X9k&32^p1`zaA72l*lm}lvgSc@#w&?Ei`C` zZ_`1xd0z0Ykb7i=uC>8$@c7sVsb4UYyqPae>6GOQescZien7G1t`wlPIf~fWm zvB&<|Tu- zj&gWE={KqH%8ChI4*t5}OiWZPCbk>5R`IeS6{S}Sx=&@tdlfrFR!fUf_^&}byDFVx z?Kf*X{D18uCRW!37XbaD017)^Bdq#E1SF%*z}-yz2|U4dns+X0QWc;R_R6Jb#!IbU zXb|^#qc~BEox}SG?86vk68>FK+pmJ*w^B=_-u9*fGWCMnHlC=1Xd(^%(S&@zXS$!6 z_Io2%@q+qd?~hn=W~{JJh?hfQNa&9W1v~%~`a35iX!Q|@`3oUd{(^eoP`f#Nx-YMw z3WaO!W8c}MrS@n6lK03%k*E)Qz3t^jM=TH223##%?olti90!jt69Sb~s(3Mv?(>AT zcEuS~2?>T|)$d96$7=Jn*b=WYt|)11tjOPk68$by5Hs>pZnpmu=>C7Y&lTN?VU?(> Vm(-h4x%fN)%%PSh^~Q+!{{t5&f3^Ss diff --git a/frontend/src/assets/icons/gear-fill.png b/frontend/src/assets/icons/gear-fill.png deleted file mode 100644 index e0bf42b64d9195e34a44b82f5ac58e1557c48f7c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6141 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 P00000NkvXXu0mjfQ{1M8 diff --git a/frontend/src/assets/icons/gear.png b/frontend/src/assets/icons/gear.png deleted file mode 100644 index c19249563bcb21ef09c20737f493e32a6e5b3143..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6770 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®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 U+5&p@eE005u}1^@s6i_d2*0004SX+uL$X=7sm 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 Hu0mjf&-xx( diff --git a/frontend/src/assets/icons/house.png b/frontend/src/assets/icons/house.png deleted file mode 100644 index 982d5ea472fbfac345e85ad00d72d690c60538e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2425 zcmd6oYd8}O8^^b`9vfksilUmsiVzQyvY5jP6LUV4L&>4YA;)G;J(JUGY)*|FRz%L_ zFw__!!ZSI9QcjbHSQ^<@;pus=_w)OHeLwu}`+r^c^}oOTKm1ehRu{!Z4~qf-0C96O zQ`=v=fUfzNFN?cPpm|e zU6W2>EowZ+QLV>oGE3*E3Ox?NAbCRIm+07c`lr5R zoZ!EhJ})A$JEy%`tLJ%Nf~_Pqax?IfXuBc_m~VGKn|4dRbW|lw&M;#=g3EKL>yW47=(cLE1%1bHM$&VgLm=RUOdKS)f?#<``Zv^4`Z9eXxNrYuLqo%)!G;@H5aSpI&Q?!(AWMQ;ZN$Gd#Zcc$i+Y&1sc}t@fx73=-mw zOpLlctKSAgd0}HaFy>HJNvRzfvw^qnvPa+gJZ5s~;Nk6+wqh?#@UaR9H$HzX+}{^7 zySGKRUaRZrto<>5uw!wX-LTK*p=X&lCrK zhbn|Z6dJ6a5o_JqU5CGXu#a>KAF}Moxe)o*!O5Y6P&8HO_T!Y>JP-)M06?&K02m4Q zFA}F%@A~c@njabw5#hp%Q+d@cSNuA}yMlkE-5_g0`fTjw8pk^H4`gH#*tGrp+1Na< zRm!!kbEe(7Oh_`G(Odog>&9jG?M#LuNa5|(1Y!Xy=?MK=)mw1)!$+dR%wYoZ{Gv8h z5*khIy;;}Glc$e+68aXDjv=;?)@w%#7egs{DtF+k8Cm)e+sQ7#HH+)ZyAMjZz@u3x z_e*G%>T7IzivE1gr5m@0r9Ix%y)>?#KR4(*J9BQYZ&yVJ@HFohft(rKLUM%)lvCp- z!o3Nv5~YYstK+U+gG)rO_ry0%5O@J2TVvi*&&Qt2R`eOZbxBg_io35m=}cs3HGXU< zC#s|5q)zgeYL3Z=4*jlr9ZD%yOxMeWStu}(`4DM&n6i{WZf zZX1%;YuPpO@wxkn%^+zj)=vYEHRMB7^;*aCZ#Zg@Xx;)BTsgIlSWL^U_c`iT08Pk{!rYfk)HgbMSqp6(prmw2;q+6rDkEK+gVdLor@5z-&&HXTY-RiES09Gn z(x*k~ayDe~iKMI_*)3uyPH5+MM_VOy((gRs0OLtKY1b>AxW>`WT(5{>kPlGUaIV=( zs`i|gl4-l1u+2a!HA}iYbQ@ zx-xppyw}*IKZu6*I_dE~E0aoB`lh=MW*2!)o3t zdw?;h#%xJoj-$>#ZG>i7tN+L5CL+Yo;Nc4C9_XFLU-HL5jz6vyv7A{=r2fLn3rvm) ztMX}!S_G`#%Gg>68}6Z3mRf;wamuQ=IOxA_YB)4H2UuZFH}XneSidnV{G8Y%(e!x` zO07?gj|fCWX2YK!A-H`gsV3OsuWx5KH+~))f=!Yze@-iHIm>n&;5#$nE@AmDvoje1 z{u56MOi@p+ z#^{T!1&kkwh6wCkVmz$2XH>kPp$eLVo*p!J{mb6xk~F7=Pp<{d9G#ENtt<9LONRW_ zR+pXfjfH;7zH_DFxcAQG0q-+ka9Qj{!DO2YFA*WYReDf7!s2dDB??hde(OcvS)6=u zLiAf+nH#MbXlHv?ELPcLXI4!Q8lskO=G#%FFl%_Qzd7`NF>u1MjV#XHhJFk?nK#ep{3zxKUYA8v2~q+F(PiRZVZX<+cy3mJ*f|>1BNkkt~eJ2i2v$yfH~I6wAR@3 F?%#_qSY7}C diff --git a/frontend/src/assets/icons/index.jsx b/frontend/src/assets/icons/index.jsx deleted file mode 100644 index b814454..0000000 --- a/frontend/src/assets/icons/index.jsx +++ /dev/null @@ -1,31 +0,0 @@ -import eye from './eye.png'; -import eye_slash from './eye-slash.png'; -import gear from './gear.png'; -import gear_fill from './gear-fill.png'; -import heart from './heart-fill.png'; -import house from './house.png'; -import pause from './pause-fill.png'; -import play from './play-fill.png'; -import play_green from './play-fill-green.png'; -import plus_circle from './plus-circle-fill.png'; -import star from './star-fill.png'; -import stop from './stop-fill.png'; -import thumbs_down from './hand-thumbs-down.png'; -import thumbs_up from './hand-thumbs-up.png'; -import x_lg from './x-lg.png'; - -export const Eye = eye; -export const EyeSlash = eye_slash; -export const Gear = gear; -export const GearFill = gear_fill; -export const Heart = heart; -export const House = house; -export const Pause = pause; -export const Play = play; -export const PlayGreen = play_green; -export const PlusCircle = plus_circle; -export const Star = star; -export const Stop = stop; -export const ThumbsDown = thumbs_down; -export const ThumbsUp = thumbs_up; -export const XLg = x_lg; diff --git a/frontend/src/assets/icons/pause-circle.png b/frontend/src/assets/icons/pause-circle.png deleted file mode 100644 index 686a73d04bee6345f674d758ad38451ac30cab97..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5425 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 bKL783aDxnScX!*i00000NkvXXu0mjf?-Ohw diff --git a/frontend/src/assets/icons/pause-fill.png b/frontend/src/assets/icons/pause-fill.png deleted file mode 100644 index a54d6007894007c269624c5656ccb80242532ed3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1867 zcmeH{`#;kQ7{|Y3#42V=URoguFU(0aVy3eel52E9TG2FX%o&j#wn`y~Mde;nsAM=N zw`MbiZYnXxnaf;WaWG6~t6`2h{R{nee)v4k^V{=!J@3!+N%i)0*$B~t006Mj&Gmrq zTEF*AYN~5Bts~4506=5{2IEZ#2>}4p%$Q7$dyBK~%c8nNSaX#aXw++OZ1L4{gN%S= z1ojXU*JJ!_7xPBRNY;)ve{z(mT?!&`qhcKkQVF?yPi;rUY@(&_DAl7FD{w%}F-&Ca z0o1xLNA~RzRodZlH9B@`cZElIK$?t_K>0^@W@0v=Rn?uV(ndV9az6>XQ|V{7(Q+7vffp9H(8n_%hJ z{Km&QlkMZ%-tAvno>|$|?W6T$qSVbYuWc^3}CuOqk7-E?7uu8+; z0tM`ojm#sy_Axf&l30U$k=K1oc{qHFZem?1qPG;VZ-@blL0TdpQ+)t5FJY zX#HgBEWO1DS13(JDu8{(=ZqU_gz;+#)XA-g%** zsHk7w$0r5qYb3WY+zYAM_K404uWf6$N=umaqy*CRz_F?s^g`%sEb88*1;r63Sy8w) z5_;Q)SM)w^Z=GhU;PXO=uX?1BNKrYnfWm0pGZkO;q({|`WYZ2OHj-Gv$ubVw$gd}B zh*AsvVEwA>bl;f;@f#V@HIkoC$hPNyW~C%}a?Sm{>cUsVLiMmbqs`Y(I$pC+II|*Q zxR^iwN}J*7|II$fAT%-haM|`*duclhHi{M}AS2T`!lG?b&Or`7&uE-7Z-R5Mm1D-O z%vGveq({UjTAhL zd~fa2eO41B63$ev=>0j7a@QRZD0&v{5j!Nr082EB<4d+@I8aXjKsQFT z5kR2BX;a5w&}LZ9Xbl}G!!DYutKm}JqXL`(-hKIPFu1z4)Xvg?PViYdq@;9w)VELv z+FbJ}@&7eHj@G)hz)~8-DjQT0 zQwaAD&!?bVBtiKX{=)}aKAvxS#PPce$_CGLloACefk=1lv)9p~f`LivcDPSIrly~c ze>FBAMO-RnK2#P6d;eM;l8DH5%dWG?cDUQkq3Ka{QsHGW0`-L^q2_3u5)!lRyJRDy zUd>Kq2h`mfv=fsIk@DuS>)T~ElEajpB!mL&cxO8b8ku!v)x8S&;02NgHy=oDAGm)f z2}w$iAFQxl^LfRmnB7Y?TVs3pOCWU-s*0}{{r$NfC3qsOF2bb2Pp;0Hj9XBG{OtJb z+zZN8{c<_lvqkZ=ml(W|Kz(ohil0#+5~8=&FV^X{Zf7g@tlV70vhjIihPjP#8=l(q zO&ZQUIVxi@b4aMj>4_`TigTqj69G4SN=P2ai2G0mpg5d9jwzfE(8HK;^Hv%l`rrt1of@ diff --git a/frontend/src/assets/icons/play-circle.png b/frontend/src/assets/icons/play-circle.png deleted file mode 100644 index def567b70321495e34494adc90925204729d70b0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5411 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 UG%f6A{%rxq`WAWwluOM20p&3KssI20 diff --git a/frontend/src/assets/icons/play-fill.png b/frontend/src/assets/icons/play-fill.png deleted file mode 100644 index 2cbb56cc299b04e1b5d5fd7405f6d91051908540..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2343 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 JPDHLkV1jPW>!|<$ diff --git a/frontend/src/assets/icons/star-fill.png b/frontend/src/assets/icons/star-fill.png deleted file mode 100644 index 3478d596d7a4b762f9728166df3c49473b98d19c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4961 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 diff --git a/frontend/src/assets/icons/stop-fill.png b/frontend/src/assets/icons/stop-fill.png deleted file mode 100644 index 6dccccf3778424063be818250758d8a235a00658..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2302 zcmeH|`9BkmAIE1V+k`nfND&`LcZRt`&N0Un(Q@C!9Fz%qqxFRC1h<(q+xh-B@9`flc@y4dQWv|=-3Sre>ZveRRS`W z+U9FqK}OEK$sSOYH#wiBNifa@JiPkmQk`jzxDF-cePxsX@~0L!;wtGd@Wa_vPEsQWlB-+9l_l`VTDsB2P5B{^Q(Q{GL~TsOX7x1xvY{-3VX1NdfHDo;#gOibkd? zMFrPV!LlH} zi{%WnQcdtB5}GzQQ8>gL#Jo&wm&#{-uL~hZ5eah<>ncCKzV6WVoZqdES?k?zn`1v{ z>B}(D5bn@ETcHDM8Exh6lmFBs^I}sc>fWQ^Q!TNrgTEGwtoV;=Eor+h3$&(Bg-OgU zYmc!tT)#9ms5~0i=N`e@`uP60sA^QU%peO!D|8Fl#s5)l-5%^ zXpbw^4xk*j-th>9Hf6?YTuPQaF^A(HWJi?xnSvh+y^Z1hiC=34AcBQlHp$PPBv+*- z$V2vbM)Cx7zK;i#v$WI2BhYE^s~lk$WL?qp@qA{p{df-Or1Rna`vp{_^cvf_X< zn&k5jgbr#c>>#Nzi`FleB`<}c-e*J#egp!pS(SnYo-xFm5g~Mu5lquxi7h{Lpdc-i zVsl95Iseg00j0wJ^R`7RI?l*83%hLmob=`F6Mg^sTi0lVW>0eNETLM!xegT#-bdL@ ze6?CFzrw=SoENde#X8)j(VXTY|%ZSmnoV}8JcAccaO*iwnbO<>HL?n+lB zdPD8uraBPSJGNN6z0ChylL)oF%sZbFnNtsr z)U_wPjbyZGag=^9=mU`OOr(^We!Vujw<-W~^j}Y&^H8Y3>)%&E-w1f+0 za)>3Iir-tFFIT5)(iOaTd9QtwjrwA_`7v$`i`XoBH5D6Nf-S4ye!4RNQz8yf49}<1 zRTcgq>SsSo?YeThkoo<_b0ANfdvblq3v-xYa@$76;r;mEA3S_Vebwy^3iHI2?((Q+ z(y0}TDMrvVe|ZvBBvs`i3aRZgl&k%DBwlu&@#L?DAm;XzjbrY8#;@t=>|QP&+~?~O z&fM^ET(=>?>4FySmGnccZ;g>&0;NH-7hRYKU#(Fk6?2}uep%x{(=(Or*f*6n=&WYz+o%&eQa!>||Xh1!sB<4k@tM*F8w>LJ!_7vI9 WV6`b5zShTY6<};&s$Z?=68#^V=?Gl_ diff --git a/frontend/src/assets/icons/x-lg.png b/frontend/src/assets/icons/x-lg.png deleted file mode 100644 index 88a3d2b92709bdb888d9d75e1de519879ffd52c2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3129 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 OSypB^(`sXn`2PVuppJh4 diff --git a/frontend/src/components/ChannelList.css b/frontend/src/components/ChannelList.css deleted file mode 100644 index 7cbd1a9..0000000 --- a/frontend/src/components/ChannelList.css +++ /dev/null @@ -1,66 +0,0 @@ -.channel-list { - align-items: center; - display: flex; - flex-direction: column; - justify-content: center; - height: 100%; - width: 100%; -} - -.channel-list-title { - color: #85c742; - font-family: sans-serif; - font-size: 24px; - font-weight: bold; - padding: 5px; -} - -.channels { - background-color: white; - border: 1px solid #D6E0EA; - border-radius: 5px; - height: 100%; - overflow: auto; - width: 100%; -} - -.channel { - align-items: center; - /* border-top: 1px solid #D6E0EA; */ - display: flex; -} - -.channel-add { - background-color: #f3f5f8; - border: none; - padding: 10px; -} - -.channel-add:hover { - cursor: pointer; -} - -.channel-add-icon { - height: 36px; - width: 36px; -} - -.channel-button { - background-color: white; - border: none; - border-radius: 5px; - color: #061726; - font-family: sans-serif; - font-size: 24px; - font-weight: bold; - overflow: hidden; - padding: 10px 10px; - text-align: left; - white-space: nowrap; - width: 100%; -} - -.channel-button:hover { - background-color: #85c742; - cursor: pointer; -} \ No newline at end of file diff --git a/frontend/src/components/ChannelList.jsx b/frontend/src/components/ChannelList.jsx deleted file mode 100644 index 8a64348..0000000 --- a/frontend/src/components/ChannelList.jsx +++ /dev/null @@ -1,39 +0,0 @@ -import { PlusCircle } from '../assets/icons'; -import './ChannelList.css'; - -function ChannelList(props) { - const sortChannelsAlpha = () => { - let keys = Object.keys(props.channels); - // let sorted = [...props.channels].sort((a, b) => - // a.name.toLowerCase() > b.name.toLowerCase() ? 1 : -1 - // ); - - let sorted = [...keys].sort((a, b) => - props.channels[a].name.toLowerCase() > props.channels[b].name.toLowerCase() ? 1 : -1 - ); - return sorted; - }; - - return ( -
- Channels -
- {sortChannelsAlpha().map((channel, index) => ( -
- -
- ))} -
- {/* */} -
- ); -} - -export default ChannelList; diff --git a/frontend/src/components/ChatBot.css b/frontend/src/components/ChatBot.css deleted file mode 100644 index 6b879db..0000000 --- a/frontend/src/components/ChatBot.css +++ /dev/null @@ -1,64 +0,0 @@ -.chat-bot-error { - border: 1px solid red; - box-sizing: border-box; - color: red; - font-family: monospace; - font-size: 16px; - padding: 5px; - text-align: center; - width: 100%; -} - -.chat-bot-modal { - align-items: left; - display: flex; - flex-direction: column; - height: 100%; - justify-content: center; - width: 100%; -} - -.chat-bot-setting { - align-items: start; - display: flex; - flex-direction: column; - padding-top: 10px; - width: 100%; -} - -.chat-bot-setting-label { - color: white; - font-family: sans-serif; - font-size: 20px; - padding-bottom: 5px; - width: 100%; -} - -.chat-bot-setting-input { - border: none; - border-radius: 5px; - box-sizing: border-box; - font-family: monospace; - font-size: 16px; - outline: none; - padding: 10px; - resize: none; - width: 100%; -} - -.chat-bot-description { - align-items: center; - display: flex; - flex-direction: row; - justify-content: start; - padding-top: 10px; - width: 100%; -} - -.chat-bot-description-label { - color: white; - font-family: sans-serif; - font-size: 20px; - padding-bottom: 5px; - padding-right: 5px; -} \ No newline at end of file diff --git a/frontend/src/components/ChatBot.jsx b/frontend/src/components/ChatBot.jsx deleted file mode 100644 index 2296f3a..0000000 --- a/frontend/src/components/ChatBot.jsx +++ /dev/null @@ -1,174 +0,0 @@ -import { useEffect, useState } from 'react'; -import { Modal, SmallModal } from './Modal'; -import { LoginChatBot, UpdateChatBotUrl } from '../../wailsjs/go/main/App'; - -import './ChatBot.css'; - -export function ChatBotModal(props) { - const [error, setError] = useState(''); - const [loggedIn, setLoggedIn] = useState(props.loggedIn); - const [password, setPassword] = useState(''); - const [saving, setSaving] = useState(false); - const updatePassword = (event) => setPassword(event.target.value); - const [url, setUrl] = useState(props.streamUrl); - const updateUrl = (event) => setUrl(event.target.value); - const [username, setUsername] = useState(props.username); - const updateUsername = (event) => setUsername(event.target.value); - - useEffect(() => { - if (saving) { - // let user = username; - // let p = password; - // let u = url; - // props.onSubmit(user, p, u); - // NewChatBot(props.cid, username, password, url) - if (loggedIn) { - UpdateChatBotUrl(props.cid, url) - .then(() => { - reset(); - props.onUpdate(url); - }) - .catch((error) => { - setSaving(false); - setError(error); - console.log('Error updating chat bot:', error); - }); - } else { - LoginChatBot(props.cid, username, password, url) - .then(() => { - reset(); - props.onLogin(); - }) - .catch((error) => { - setSaving(false); - setError(error); - console.log('Error creating new chat bot:', error); - }); - } - } - }, [saving]); - - const reset = () => { - setError(''); - setLoggedIn(false); - setPassword(''); - setSaving(false); - setUrl(''); - setUsername(''); - }; - - const close = () => { - reset(); - props.onClose(); - }; - - const logout = () => { - reset(); - props.onLogout(); - }; - - const submit = () => { - if (username === '') { - setError('Add username'); - return; - } - - if (password === '' && !loggedIn) { - setError('Add password'); - return; - } - - if (url === '') { - setError('Add stream URL'); - return; - } - - setSaving(true); - // let user = username; - // let p = password; - // let u = url; - // reset(); - // props.onSubmit(user, p, u); - }; - - return ( - <> - { - console.log('Saving'); - } - : submit - } - title={'Chat Bot'} - > -
- {loggedIn ? ( -
- Logged in: - - {username} - -
- ) : ( -
- Username - -
- )} - {!loggedIn && ( -
- Password - -
- )} -
- Stream URL - -
-
-
- setError('')} - show={error !== ''} - style={{ minWidth: '300px', maxWidth: '300px', maxHeight: '100px' }} - title={'Error'} - message={error} - submitButton={'OK'} - onSubmit={() => setError('')} - /> - - ); -} - -export function StreamChatMessageItem() {} diff --git a/frontend/src/components/ChatMessage.css b/frontend/src/components/ChatMessage.css deleted file mode 100644 index 5e5a270..0000000 --- a/frontend/src/components/ChatMessage.css +++ /dev/null @@ -1,44 +0,0 @@ -.chat-message { - align-items: start; - background-color: rgba(6,23,38,1); - padding: 10px; - display: flex; - flex-direction: row; -} - -.chat-message-user-image { - border-radius: 50%; - height: 22px; - margin-right: 8px; - width: 22px; -} - -.chat-message-user-initial { - align-items: center; - background-color: #37c; - border: 1px solid #eee; - border-radius: 50%; - color: #eee; - display: flex; - font-family: sans-serif; - font-size: 12px; - font-weight: bold; - height: 22px; - justify-content: center; - margin-right: 8px; - width: 22px; -} - -.chat-message-username { - color: white; - font-family: sans-serif; - font-size: 14px; - font-weight: bold; - margin-right: 3px; -} - -.chat-message-text { - color: white; - font-family: sans-serif; - font-size: 14px; -} \ No newline at end of file diff --git a/frontend/src/components/ChatMessage.jsx b/frontend/src/components/ChatMessage.jsx deleted file mode 100644 index ca18b71..0000000 --- a/frontend/src/components/ChatMessage.jsx +++ /dev/null @@ -1,28 +0,0 @@ -import './ChatMessage.css'; - -function ChatMessage(props) { - const upperInitial = () => { - return props.message.username[0].toUpperCase(); - }; - - return ( -
- {props.message.image === '' || props.message.image === undefined ? ( - {upperInitial()} - ) : ( - - )} -
- - {props.message.username} - - {props.message.text} -
-
- ); -} - -export default ChatMessage; diff --git a/frontend/src/components/Highlight.css b/frontend/src/components/Highlight.css deleted file mode 100644 index 8a67f50..0000000 --- a/frontend/src/components/Highlight.css +++ /dev/null @@ -1,24 +0,0 @@ -.highlight { - align-items: start; - color: white; - display: flex; - background-color: #75a54b; - border-radius: 0.5rem; - flex-direction: column; - font-family: sans-serif; - font-weight: bold; - height: 40px; - justify-content: center; - min-width: 90px; - padding: 5px 10px; - width: 75px; -} - -.highlight-value { - font-family: monospace; - font-size: 20px; -} - -.highlight-description { - font-size: 12px; -} \ No newline at end of file diff --git a/frontend/src/components/Highlight.jsx b/frontend/src/components/Highlight.jsx deleted file mode 100644 index 3d00a63..0000000 --- a/frontend/src/components/Highlight.jsx +++ /dev/null @@ -1,72 +0,0 @@ -import './Highlight.css'; - -function Highlight(props) { - const countString = () => { - switch (true) { - case props.value <= 0: - return '-'; - case props.value < 1000: - return props.value; - case props.value < 1000000: - return (props.value / 1000).toFixed(3).slice(0, -2) + 'K'; - case props.value < 1000000000: - return (props.value / 1000000).toFixed(6).slice(0, -5) + 'M'; - default: - return 'Inf'; - } - }; - - const stopwatchString = () => { - if (isNaN(Date.parse(props.value))) { - return '--:--'; - } - let now = new Date(); - let date = new Date(props.value); - let diff = now - date; - - let msMinute = 1000 * 60; - let msHour = msMinute * 60; - let msDay = msHour * 24; - - let days = Math.floor(diff / msDay); - let hours = Math.floor((diff - days * msDay) / msHour); - let minutes = Math.floor((diff - days * msDay - hours * msHour) / msMinute); - - if (diff >= 100 * msDay) { - return days + 'd'; - } - if (diff >= msDay) { - return days + 'd ' + hours + 'h'; - } - - if (hours < 10) { - hours = '0' + hours; - } - - if (minutes < 10) { - minutes = '0' + minutes; - } - - return hours + ':' + minutes; - }; - - const valueString = () => { - switch (props.type) { - case 'count': - return countString(); - case 'stopwatch': - return stopwatchString(); - default: - return props.value; - } - }; - - return ( -
- {valueString()} - {props.description} -
- ); -} - -export default Highlight; diff --git a/frontend/src/components/Modal.css b/frontend/src/components/Modal.css deleted file mode 100644 index d4da5b4..0000000 --- a/frontend/src/components/Modal.css +++ /dev/null @@ -1,176 +0,0 @@ - -.modal-background { - align-items: center; - background-color: transparent; - display: flex; - height: 100vh; - justify-content: center; - left: 0; - position: absolute; - top: 0; - width: 100vw; -} - -.modal-body { - align-items: center; - display: flex; - height: 80%; - justify-content: center; - width: 100%; -} - -.modal-button { - background-color: #85c742; - border: none; - border-radius: 5px; - color: #061726; - cursor: pointer; - font-size: 18px; - font-weight: bold; - text-decoration: none; - /* width: 20%; */ - width: 70px; -} - -.modal-button-cancel { - background-color: transparent; - border: 1px solid #495a6a; - border-radius: 5px; - color: #495a6a; - cursor: pointer; - font-size: 18px; - font-weight: bold; - text-decoration: none; - /* width: 20%; */ - width: 70px; -} - -.modal-button-delete { - background-color: transparent; - border: 1px solid red; - border-radius: 5px; - color: red; - cursor: pointer; - font-size: 18px; - font-weight: bold; - text-decoration: none; - /* width: 20%; */ - width: 70px; -} - -.modal-close { - align-items: center; - background-color: transparent; - border: none; - display: flex; - flex-direction: center; - padding: 0px; -} - -.modal-close:hover { - cursor: pointer; -} - -.modal-close-icon { - height: 24px; - padding: 0px; - width: 24px; -} - -.modal-container { - align-items: center; - background-color: rgba(6,23,38,1); - border: 1px solid #495a6a; - border-radius: 15px; - color: black; - display: flex; - flex-direction: column; - height: 50%; - justify-content: space-between; - opacity: 1; - padding: 10px 20px; - width: 50%; -} - -.modal-footer { - align-items: center; - display: flex; - flex-direction: row; - justify-content: space-between; - height: 10%; - width: 100%; -} - -.modal-header { - align-items: center; - display: flex; - flex-direction: row; - justify-content: space-between; - height: 10%; - width: 100%; -} - -.modal-title { - color: white; - font-family: sans-serif; - font-size: 24px; -} - -.small-modal-button-delete { - background-color: red; - border: none; - border-radius: 5px; - color: white; - cursor: pointer; - font-size: 18px; - font-weight: bold; - text-decoration: none; - /* width: 20%; */ - width: 70px; -} - -.small-modal-container { - align-items: center; - /* background-color: rgba(6,23,38,1); */ - background-color: white; - border: 1px solid #495a6a; - /* border: 1px solid black; */ - border-radius: 15px; - color: black; - display: flex; - flex-direction: column; - height: 50%; - justify-content: space-between; - opacity: 1; - padding: 10px 20px; - width: 50%; -} - -.small-modal-header { - align-items: center; - display: flex; - flex-direction: row; - justify-content: space-between; - height: 10%; - width: 100%; -} - -.small-modal-footer { - align-items: center; - display: flex; - flex-direction: row; - justify-content: space-between; - height: 20%; - width: 100%; -} - -.small-modal-message { - font-family: sans-serif; - font-size: 18px; -} - -.small-modal-title { - color: black; - font-family: sans-serif; - font-size: 24px; -} \ No newline at end of file diff --git a/frontend/src/components/Modal.jsx b/frontend/src/components/Modal.jsx deleted file mode 100644 index 1be4fe8..0000000 --- a/frontend/src/components/Modal.jsx +++ /dev/null @@ -1,86 +0,0 @@ -import { XLg } from '../assets/icons'; -import './Modal.css'; - -export function Modal(props) { - return ( -
-
event.stopPropagation()} - style={props.style} - > -
- {props.title} - -
-
{props.children}
-
- {props.cancelButton && ( - - )} - {props.deleteButton && ( - - )} - {props.submitButton && ( - - )} -
-
-
- ); -} - -export function SmallModal(props) { - return ( -
-
event.stopPropagation()} - style={props.style} - > -
- {props.title} - -
-
- {props.message} -
-
- {props.cancelButton && ( - - )} - {props.deleteButton && ( - - )} - {props.submitButton && ( - - )} -
-
-
- ); -} diff --git a/frontend/src/components/StreamActivity.css b/frontend/src/components/StreamActivity.css deleted file mode 100644 index 7010da7..0000000 --- a/frontend/src/components/StreamActivity.css +++ /dev/null @@ -1,24 +0,0 @@ -.stream-activity { - width: 100%; - height: 100%; -} - -.stream-activity-header { - text-align: left; - background-color: rgba(6,23,38,1); - border-bottom: 1px solid #495a6a; - height: 19px; - padding: 10px 20px; -} - -.stream-activity-title { - color: white; - font-family: sans-serif; - font-size: 12px; - font-weight: bold; -} - -.stream-activity-list { - overflow-y: auto; - height: calc(100vh - 84px - 40px - 179px); -} \ No newline at end of file diff --git a/frontend/src/components/StreamActivity.jsx b/frontend/src/components/StreamActivity.jsx deleted file mode 100644 index 30f48f0..0000000 --- a/frontend/src/components/StreamActivity.jsx +++ /dev/null @@ -1,20 +0,0 @@ -import StreamEvent from './StreamEvent'; - -import './StreamActivity.css'; - -function StreamActivity(props) { - return ( -
-
- {props.title} -
-
- {props.events.map((event, index) => ( - - ))} -
-
- ); -} - -export default StreamActivity; diff --git a/frontend/src/components/StreamChat.css b/frontend/src/components/StreamChat.css deleted file mode 100644 index e75b20c..0000000 --- a/frontend/src/components/StreamChat.css +++ /dev/null @@ -1,28 +0,0 @@ -.stream-chat { - width: 100%; - height: 100%; -} - -.stream-chat-header { - align-items: center; - background-color: rgba(6,23,38,1); - border-bottom: 1px solid #495a6a; - display: flex; - flex-direction: row; - justify-content: space-between; - height: 19px; - padding: 10px 20px; - text-align: left; -} - -.stream-chat-list { - overflow-y: auto; - height: calc(100vh - 84px - 40px - 179px); -} - -.stream-chat-title { - color: white; - font-family: sans-serif; - font-size: 12px; - font-weight: bold; -} \ No newline at end of file diff --git a/frontend/src/components/StreamChat.jsx b/frontend/src/components/StreamChat.jsx deleted file mode 100644 index 3414bb7..0000000 --- a/frontend/src/components/StreamChat.jsx +++ /dev/null @@ -1,38 +0,0 @@ -import { useState } from 'react'; -import { EventsOn } from '../../wailsjs/runtime/runtime'; -import ChatMessage from './ChatMessage'; -import './StreamChat.css'; - -function StreamChat(props) { - const [messages, setMessages] = useState([ - { - color: '#ec131f', - image: 'https://ak2.rmbl.ws/z0/V/m/v/E/VmvEe.asF.4-18osof-s35kf7.jpeg', - username: 'tylertravisty', - text: 'Hello, world this is si s a a sdf asd f', - }, - { - username: 'tylertravisty', - text: 'Another chat message', - }, - ]); - - EventsOn('ChatMessage', (msg) => { - setMessages(...messages, msg); - }); - - return ( -
-
- {props.title} -
-
- {messages.map((message, index) => ( - - ))} -
-
- ); -} - -export default StreamChat; diff --git a/frontend/src/components/StreamChatBot.css b/frontend/src/components/StreamChatBot.css deleted file mode 100644 index 3526c82..0000000 --- a/frontend/src/components/StreamChatBot.css +++ /dev/null @@ -1,104 +0,0 @@ -.stream-chatbot { - width: 100%; - height: 100%; -} - -.stream-chatbot-button { - align-items: center; - border: none; - display: flex; - justify-content: center; - padding: 0px; -} - -.stream-chatbot-button:hover { - cursor: pointer; -} - -.stream-chatbot-button-title { - background-color: rgba(6,23,38,1); -} - -.stream-chatbot-button-chat { - align-items: center; - background-color: #000312; - display: flex; - justify-content: center; - width: 10%; -} - -.stream-chatbot-icon { - height: 24px; - width: 24px; -} - -.stream-chatbot-controls { - align-items: center; - display: flex; - flex-direction: row; - justify-content: space-between; - width: 55px; -} - -.stream-chatbot-header { - align-items: center; - background-color: rgba(6,23,38,1); - border-bottom: 1px solid #495a6a; - display: flex; - flex-direction: row; - justify-content: space-between; - height: 19px; - padding: 10px 20px; - text-align: left; -} - -.stream-chatbot-item { - border-bottom: 1px solid #82b1ff; - box-sizing: border-box; - color: white; - display: flex; - flex-direction: row; - font-family: sans-serif; - justify-content: space-between; - padding: 10px 20px; - width: 100%; -} - -.stream-chatbot-item-sender { - align-items: center; - box-sizing: border-box; - display: flex; - justify-content: left; - padding-left: 10px; - width: 20%; -} - -.stream-chatbot-item-interval { - align-items: center; - box-sizing: border-box; - display: flex; - justify-content: left; - padding-left: 10px; - width: 20%; -} - -.stream-chatbot-item-message { - align-items: center; - display: flex; - justify-content: left; - overflow: hidden; - white-space: nowrap; - width: 50%; -} - -.stream-chatbot-list { - overflow-y: auto; - height: calc(100vh - 84px - 40px - 179px); -} - -.stream-chatbot-title { - color: white; - font-family: sans-serif; - font-size: 12px; - font-weight: bold; -} \ No newline at end of file diff --git a/frontend/src/components/StreamChatBot.jsx b/frontend/src/components/StreamChatBot.jsx deleted file mode 100644 index 814b119..0000000 --- a/frontend/src/components/StreamChatBot.jsx +++ /dev/null @@ -1,237 +0,0 @@ -import { useEffect, useState } from 'react'; -import { FilepathBase, StartChatBotMessage, StopChatBotMessage } from '../../wailsjs/go/main/App'; -import { EventsOn } from '../../wailsjs/runtime/runtime'; -import { GearFill, Pause, Play, PlayGreen, PlusCircle, Stop } from '../assets/icons'; -import './StreamChatBot.css'; -import { SmallModal } from './Modal'; - -function StreamChatBot(props) { - const sortChatsAlpha = () => { - let keys = Object.keys(props.chats); - - let sorted = [...keys].sort((a, b) => - props.chats[a].text.toLowerCase() > props.chats[b].text.toLowerCase() ? 1 : -1 - ); - return sorted; - }; - - return ( -
-
- {props.title} -
- - -
-
- - -
-
-
- {sortChatsAlpha().map((chat, index) => ( - - ))} -
-
- ); -} - -export default StreamChatBot; - -function StreamChatItem(props) { - // const [active, setActive] = useState(props.isMessageActive(props.chat.id)); - const [active, setActive] = useState(false); - const [error, setError] = useState(''); - const [filename, setFilename] = useState(props.chat.text_file); - - useEffect(() => { - if (props.chat.text_file !== '') { - FilepathBase(props.chat.text_file).then((name) => { - setFilename(name); - }); - } - // setActive(props.isMessageActive(props.chat.id)); - }, [props]); - - const changeActive = (bool) => { - // console.log('ChangeActive:', bool); - // props.chat.active = bool; - // props.activateMessage(props.chat.id, bool); - setActive(bool); - }; - - useEffect(() => { - EventsOn('ChatBotCommandActive-' + props.chat.id, (mid) => { - console.log('ChatBotCommandActive', props.chat.id, mid); - if (mid === props.chat.id) { - changeActive(true); - } - }); - - EventsOn('ChatBotCommandError-' + props.chat.id, (mid) => { - console.log('ChatBotCommandError', props.chat.id, mid); - if (mid === props.chat.id) { - changeActive(false); - } - }); - - EventsOn('ChatBotMessageActive-' + props.chat.id, (mid) => { - console.log('ChatBotMessageActive', props.chat.id, mid); - if (mid === props.chat.id) { - changeActive(true); - } - }); - - EventsOn('ChatBotMessageError-' + props.chat.id, (mid) => { - console.log('ChatBotMessageError', props.chat.id, mid); - if (mid === props.chat.id) { - changeActive(false); - } - }); - }, []); - - const prependZero = (value) => { - if (value < 10) { - return '0' + value; - } - - return '' + value; - }; - - const printInterval = (interval) => { - let hours = Math.floor(interval / 3600); - let minutes = Math.floor(interval / 60 - hours * 60); - let seconds = Math.floor(interval - hours * 3600 - minutes * 60); - - // hours = prependZero(hours); - // minutes = prependZero(minutes); - // seconds = prependZero(seconds); - // return hours + ':' + minutes + ':' + seconds; - - return hours + 'h ' + minutes + 'm ' + seconds + 's'; - }; - - const intervalToTimer = (interval) => { - let hours = Math.floor(interval / 3600); - let minutes = Math.floor(interval / 60 - hours * 60); - let seconds = Math.floor(interval - hours * 3600 - minutes * 60); - - if (minutes !== 0) { - seconds = prependZero(seconds); - } - if (hours !== 0) { - minutes = prependZero(minutes); - } - if (hours === 0) { - hours = ''; - if (minutes === 0) { - minutes = ''; - if (seconds === 0) { - seconds = ''; - } - } - } - - return hours + minutes + seconds; - }; - - const openChat = () => { - props.onItemClick({ - id: props.chat.id, - as_channel: props.chat.as_channel, - command: props.chat.command, - interval: intervalToTimer(props.chat.interval), - on_command: props.chat.on_command, - on_command_follower: props.chat.on_command_follower, - on_command_rant_amount: props.chat.on_command_rant_amount, - on_command_subscriber: props.chat.on_command_subscriber, - text: props.chat.text, - text_file: props.chat.text_file, - }); - }; - - const startMessage = () => { - StartChatBotMessage(props.chat.id) - .then(() => { - changeActive(true); - }) - .catch((error) => { - setError(error); - }); - }; - - const stopMessage = () => { - StopChatBotMessage(props.chat.id).then(() => { - changeActive(false); - }); - }; - - return ( - <> - setError('')} - show={error !== ''} - style={{ minWidth: '300px', maxWidth: '200px', maxHeight: '200px' }} - title={'Error'} - message={error} - submitButton={'OK'} - onSubmit={() => setError('')} - /> -
openChat()}> - - {props.chat.text_file !== '' ? filename : props.chat.text} - - - {props.chat.on_command - ? props.chat.command - : printInterval(props.chat.interval)} - - - {props.chat.as_channel ? 'Channel' : 'User'} - - -
- - ); -} diff --git a/frontend/src/components/StreamChatMessage.css b/frontend/src/components/StreamChatMessage.css deleted file mode 100644 index edfcc30..0000000 --- a/frontend/src/components/StreamChatMessage.css +++ /dev/null @@ -1,358 +0,0 @@ -/* .modal-chat { - align-items: center; - background-color: red; - color: black; - display: flex; - height: 50%; - justify-content: center; - opacity: 1; - width: 50%; -} - -.modal-container { - align-items: center; - display: flex; - height: 100vh; - justify-content: center; - left: 0; - position: absolute; - top: 0; - width: 100vw; -} */ - -.chat-toggle { - align-items: center; - display: flex; - justify-content: space-between; - padding-top: 10px; - width: 100%; -} - -.chat-toggle-label { - color: white; - font-family: sans-serif; - padding-right: 10px; -} - -.chat-command { - align-items: center; - display: flex; - flex-direction: row; - justify-content: center; - padding-top: 10px; - width: 100%; -} - -.chat-command-input { - border: none; - border-radius: 34px; - box-sizing: border-box; - font-family: monospace; - font-size: 16px; - outline: none; - padding: 5px 10px 5px 10px; - text-align: center; - width: 100%; -} - -.chat-command-option { - align-items: center; - display: flex; - flex-direction: row; - justify-content: center; -} - -.chat-command-options { - align-items: center; - display: flex; - flex-direction: column; - justify-content: space-evenly; -} - -.chat-command-label { - color: white; - height: 29px; -} - -.chat-command-rant-amount { - border: none; - /* border-radius: 34px; */ - box-sizing: border-box; - font-family: monospace; - font-size: 16px; - outline: none; - /* padding: 5px 10px 5px 10px; */ - padding: 5px; - text-align: center; -} - -.chat-command-rant-amount-label { - color: white; - font-family: sans-serif; - padding-right: 10px; -} - -.chat-command-rant-amount-symbol { - color: white; - font-family: sans-serif; - font-size: 20px; - padding-right: 1px; -} - -.chat-interval { - align-items: center; - display: flex; - flex-direction: row; - justify-content: space-between; - padding-top: 10px; - width: 100%; -} - -.chat-interval-input { - border: none; - border-radius: 34px; - box-sizing: border-box; - font-family: monospace; - font-size: 16px; - outline: none; - padding: 5px 10px 5px 10px; - text-align: right; -} - -.chat-interval-input-zero::placeholder { - text-align: center; -} - -.chat-interval-input-value::placeholder { - color: black; - opacity: 1; - text-align: center; -} - -.chat-interval-label { - color: white; - font-family: sans-serif; - padding-right: 10px; -} - -.chat-options { - display: flex; - flex-direction: column; - width: 100%; -} - -.stream-chat-message { - align-items: center; - color: white; - display: flex; - flex-direction: column; - font-family: sans-serif; - justify-content: start; - width: 100%; -} - -.stream-chat-message-error { - border: 1px solid red; - box-sizing: border-box; - color: red; - font-family: monospace; - font-size: 16px; - padding: 5px; - text-align: center; - width: 100%; -} - -.stream-chat-message-label { - padding: 5px 0px; - /* width: 50%; */ -} - -.stream-chat-message-modal { - align-items: left; - display: flex; - flex-direction: column; - height: 100%; - justify-content: center; - width: 100%; -} - -.stream-chat-message-textarea { - border: none; - border-radius: 5px; - box-sizing: border-box; - font-family: monospace; - font-size: 16px; - outline: none; - padding: 10px; - resize: none; - width: 100%; -} - -.stream-chat-message-title { - align-items: center; - display: flex; - flex-direction: row; - justify-content: space-between; - width: 100%; -} - -.stream-chat-message-title-right { - align-items: center; - display: flex; - flex-direction: row; - justify-content: center; -} - -.chat-toggle-switch { - position: relative; - display: inline-block; - width: 50px; - height: 24px; -} - -.chat-toggle-switch input { - opacity: 0; - width: 0; - height: 0; -} - -.chat-toggle-slider { - position: absolute; - cursor: pointer; - top: 0; - left: 0; - right: 0; - bottom: 0; - background-color: #495a6a; - -webkit-transition: .4s; - transition: .4s; -} - -.chat-toggle-slider:before { - position: absolute; - content: ""; - height: 16px; - width: 16px; - left: 4px; - bottom: 4px; - background-color: white; - -webkit-transition: .4s; - transition: .4s; -} - -input:checked + .chat-toggle-slider { - background-color: #85c742; -} - -input:checked + .chat-toggle-slider:before { - -webkit-transform: translateX(26px); - -ms-transform: translateX(26px); - transform: translateX(26px); -} -/* Rounded sliders */ -.chat-toggle-slider.round { - border-radius: 34px; -} - -.chat-toggle-slider.round:before { - border-radius: 50%; -} - -.chat-toggle-check-container { - display: block; - position: relative; - padding-left: 16px; - margin-bottom: 15px; - cursor: pointer; - font-size: 15px; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -.chat-toggle-check-container input { - position: absolute; - opacity: 0; - cursor: pointer; - height: 0; - width: 0; -} - -.chat-toggle-check { - border-radius: 3px; - position: absolute; - top: 0; - left: 0; - height: 15px; - width: 15px; - background-color: #495a6a; -} - -.chat-toggle-check-container:hover input ~ .chat-toggle-check { - background-color: #495a6a; -} - -.chat-toggle-check-container input:checked ~ .chat-toggle-check { - background-color: #85c742; -} - -.chat-toggle-check:after { - content: ""; - position: absolute; - display: none; -} - -.chat-toggle-check-container input:checked ~ .chat-toggle-check:after { - display: block; -} - -.chat-toggle-check-container .chat-toggle-check:after { - left: 4px; - top: 1px; - width: 4px; - height: 8px; - border: solid white; - border-width: 0 3px 3px 0; - -webkit-transform: rotate(45deg); - -ms-transform: rotate(45deg); - transform: rotate(45deg); -} - -.chat-toggle-check-label { - color: white; - font-family: sans-serif; - padding-right: 5px; -} - -.choose-file { - align-items: center; - display: flex; - flex-direction: row; - justify-content: space-between; - width: 100%; -} - -.choose-file-button-box { - min-width: 100px; - width: 100px; -} - -.choose-file-button { - background-color: #85c742; - border: none; - border-radius: 5px; - color: #061726; - cursor: pointer; - font-size: 16px; - text-decoration: none; - /* width: 200px; */ - width: 100%; -} - -.choose-file-path { - overflow: scroll; - margin-left: 5px; - white-space: nowrap; -} - diff --git a/frontend/src/components/StreamChatMessage.jsx b/frontend/src/components/StreamChatMessage.jsx deleted file mode 100644 index 774b0b6..0000000 --- a/frontend/src/components/StreamChatMessage.jsx +++ /dev/null @@ -1,404 +0,0 @@ -import { useEffect, useState } from 'react'; - -import { Modal, SmallModal } from './Modal'; - -import { OpenFileDialog } from '../../wailsjs/go/main/App'; - -import './StreamChatMessage.css'; - -export function StreamChatMessageModal(props) { - const [asChannel, setAsChannel] = useState(props.asChannel); - const [chatCommand, setChatCommand] = useState(props.chatCommand); - const [error, setError] = useState(''); - const [onCommand, setOnCommand] = useState(props.onCommand); - const [onCommandFollower, setOnCommandFollower] = useState(props.onCommandFollower); - const [onCommandRantAmount, setOnCommandRantAmount] = useState(props.onCommandRantAmount); - const [onCommandSubscriber, setOnCommandSubscriber] = useState(props.onCommandSubscriber); - const [openDelete, setOpenDelete] = useState(false); - const [readFromFile, setReadFromFile] = useState(false); - const [text, setText] = useState(props.text); - const [textFile, setTextFile] = useState(props.textFile); - const updateText = (event) => setText(event.target.value); - const [timer, setTimer] = useState(props.interval); - - useEffect(() => { - console.log('update chat'); - setAsChannel(props.asChannel); - setOnCommand(props.onCommand); - setOnCommandFollower(props.onCommandFollower); - setOnCommandSubscriber(props.onCommandSubscriber); - setOnCommandRantAmount(props.onCommandRantAmount); - setError(''); - setReadFromFile(props.textFile !== ''); - setText(props.text); - setTextFile(props.textFile); - setTimer(props.interval); - }, []); - - const reset = () => { - setAsChannel(false); - setChatCommand(false); - setError(''); - setReadFromFile(false); - setText(''); - setTextFile(''); - setOnCommand(false); - setOnCommandFollower(false); - setOnCommandSubscriber(false); - setOnCommandRantAmount(0); - setTimer(''); - }; - - const close = () => { - reset(); - props.onClose(); - }; - - const submit = () => { - if (!readFromFile && text === '') { - setError('Add message'); - return; - } - - if (readFromFile && textFile === '') { - setError('Select file containing messages'); - return; - } - - if (timer === '') { - setError('Set timer'); - return; - } - - if (onCommand && chatCommand === '') { - setError('Add command'); - return; - } - - let message = { - id: props.chatID, - as_channel: asChannel, - command: chatCommand, - interval: timerToInterval(), - on_command: onCommand, - on_command_follower: onCommandFollower, - on_command_rant_amount: onCommandRantAmount, - on_command_subscriber: onCommandSubscriber, - text: text, - text_file: textFile, - }; - - props.onSubmit(message); - }; - - const deleteMessage = () => { - if (props.chatID === '') { - close(); - return; - } - - setOpenDelete(true); - }; - - const confirmDelete = () => { - reset(); - setOpenDelete(false); - props.onDelete(props.chatID); - }; - - const updateChatCommand = (e) => { - let command = e.target.value; - - if (command.length === 1) { - if (command !== '!') { - command = '!' + command; - } - } - command = command.toLowerCase(); - let postfix = command.replace('!', ''); - - if (postfix !== '' && !/^[a-z0-9]+$/gi.test(postfix)) { - return; - } - - setChatCommand(command); - }; - - const updateTimerBackspace = (e) => { - if (timer.length === 0) { - return; - } - - if (e.keyCode === 8) { - setTimer(timer.substring(0, timer.length - 1)); - } - }; - - const updateTimer = (e) => { - let nums = '0123456789'; - let digit = e.target.value; - - if (!nums.includes(digit)) { - return; - } - - if (timer.length === 6) { - return; - } - - if (timer.length === 0 && digit === '0') { - return; - } - - setTimer(timer + digit); - }; - - const timerToInterval = () => { - let prefix = '0'.repeat(6 - timer.length); - let t = prefix + timer; - - let hours = parseInt(t.substring(0, 2)); - let minutes = parseInt(t.substring(2, 4)); - let seconds = parseInt(t.substring(4, 6)); - - return hours * 3600 + minutes * 60 + seconds; - }; - - const printTimer = () => { - if (timer === '') { - return '00:00:00'; - } - - let prefix = '0'.repeat(6 - timer.length); - let t = prefix + timer; - - return t.substring(0, 2) + ':' + t.substring(2, 4) + ':' + t.substring(4, 6); - }; - - const checkChannelToggle = (e) => { - setAsChannel(e.target.checked); - }; - - const checkCommandToggle = (e) => { - setOnCommand(e.target.checked); - }; - - const checkCommandFollower = (e) => { - setOnCommandFollower(e.target.checked); - }; - - const checkCommandSubscriber = (e) => { - setOnCommandSubscriber(e.target.checked); - }; - - const updateRantAmount = (e) => { - let amount = parseInt(e.target.value); - if (isNaN(amount)) { - amount = 0; - } - - setOnCommandRantAmount(amount); - }; - - const checkReadFromFile = (e) => { - setReadFromFile(e.target.checked); - if (!e.target.checked) { - setTextFile(''); - } - }; - - const chooseFile = () => { - OpenFileDialog() - .then((filepath) => { - if (filepath !== '') { - setTextFile(filepath); - } - }) - .catch((error) => setError(error)); - }; - - return ( - <> - -
-
- {/* {error && {error}} */} -
- Message -
- Read from file - -
-
- {readFromFile ? ( -
-
- -
- {textFile} -
- ) : ( -