mirror of
https://github.com/spacebarchat/client.git
synced 2024-11-22 02:12:38 +01:00
e
This commit is contained in:
parent
a63e154431
commit
19fe08b602
@ -3,3 +3,4 @@ dist
|
|||||||
node_modules
|
node_modules
|
||||||
.github
|
.github
|
||||||
.vscode
|
.vscode
|
||||||
|
src-tauri/target
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
<!DOCTYPE html>
|
<!doctype html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<!-- Primary Meta Tags -->
|
<!-- Primary Meta Tags -->
|
||||||
|
33078
pnpm-lock.yaml
33078
pnpm-lock.yaml
File diff suppressed because it is too large
Load Diff
@ -1,116 +1,116 @@
|
|||||||
{
|
{
|
||||||
"images" : [
|
"images": [
|
||||||
{
|
{
|
||||||
"size" : "20x20",
|
"size": "20x20",
|
||||||
"idiom" : "iphone",
|
"idiom": "iphone",
|
||||||
"filename" : "AppIcon-20x20@2x.png",
|
"filename": "AppIcon-20x20@2x.png",
|
||||||
"scale" : "2x"
|
"scale": "2x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"size" : "20x20",
|
"size": "20x20",
|
||||||
"idiom" : "iphone",
|
"idiom": "iphone",
|
||||||
"filename" : "AppIcon-20x20@3x.png",
|
"filename": "AppIcon-20x20@3x.png",
|
||||||
"scale" : "3x"
|
"scale": "3x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"size" : "29x29",
|
"size": "29x29",
|
||||||
"idiom" : "iphone",
|
"idiom": "iphone",
|
||||||
"filename" : "AppIcon-29x29@2x-1.png",
|
"filename": "AppIcon-29x29@2x-1.png",
|
||||||
"scale" : "2x"
|
"scale": "2x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"size" : "29x29",
|
"size": "29x29",
|
||||||
"idiom" : "iphone",
|
"idiom": "iphone",
|
||||||
"filename" : "AppIcon-29x29@3x.png",
|
"filename": "AppIcon-29x29@3x.png",
|
||||||
"scale" : "3x"
|
"scale": "3x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"size" : "40x40",
|
"size": "40x40",
|
||||||
"idiom" : "iphone",
|
"idiom": "iphone",
|
||||||
"filename" : "AppIcon-40x40@2x.png",
|
"filename": "AppIcon-40x40@2x.png",
|
||||||
"scale" : "2x"
|
"scale": "2x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"size" : "40x40",
|
"size": "40x40",
|
||||||
"idiom" : "iphone",
|
"idiom": "iphone",
|
||||||
"filename" : "AppIcon-40x40@3x.png",
|
"filename": "AppIcon-40x40@3x.png",
|
||||||
"scale" : "3x"
|
"scale": "3x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"size" : "60x60",
|
"size": "60x60",
|
||||||
"idiom" : "iphone",
|
"idiom": "iphone",
|
||||||
"filename" : "AppIcon-60x60@2x.png",
|
"filename": "AppIcon-60x60@2x.png",
|
||||||
"scale" : "2x"
|
"scale": "2x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"size" : "60x60",
|
"size": "60x60",
|
||||||
"idiom" : "iphone",
|
"idiom": "iphone",
|
||||||
"filename" : "AppIcon-60x60@3x.png",
|
"filename": "AppIcon-60x60@3x.png",
|
||||||
"scale" : "3x"
|
"scale": "3x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"size" : "20x20",
|
"size": "20x20",
|
||||||
"idiom" : "ipad",
|
"idiom": "ipad",
|
||||||
"filename" : "AppIcon-20x20@1x.png",
|
"filename": "AppIcon-20x20@1x.png",
|
||||||
"scale" : "1x"
|
"scale": "1x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"size" : "20x20",
|
"size": "20x20",
|
||||||
"idiom" : "ipad",
|
"idiom": "ipad",
|
||||||
"filename" : "AppIcon-20x20@2x-1.png",
|
"filename": "AppIcon-20x20@2x-1.png",
|
||||||
"scale" : "2x"
|
"scale": "2x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"size" : "29x29",
|
"size": "29x29",
|
||||||
"idiom" : "ipad",
|
"idiom": "ipad",
|
||||||
"filename" : "AppIcon-29x29@1x.png",
|
"filename": "AppIcon-29x29@1x.png",
|
||||||
"scale" : "1x"
|
"scale": "1x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"size" : "29x29",
|
"size": "29x29",
|
||||||
"idiom" : "ipad",
|
"idiom": "ipad",
|
||||||
"filename" : "AppIcon-29x29@2x.png",
|
"filename": "AppIcon-29x29@2x.png",
|
||||||
"scale" : "2x"
|
"scale": "2x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"size" : "40x40",
|
"size": "40x40",
|
||||||
"idiom" : "ipad",
|
"idiom": "ipad",
|
||||||
"filename" : "AppIcon-40x40@1x.png",
|
"filename": "AppIcon-40x40@1x.png",
|
||||||
"scale" : "1x"
|
"scale": "1x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"size" : "40x40",
|
"size": "40x40",
|
||||||
"idiom" : "ipad",
|
"idiom": "ipad",
|
||||||
"filename" : "AppIcon-40x40@2x-1.png",
|
"filename": "AppIcon-40x40@2x-1.png",
|
||||||
"scale" : "2x"
|
"scale": "2x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"size" : "76x76",
|
"size": "76x76",
|
||||||
"idiom" : "ipad",
|
"idiom": "ipad",
|
||||||
"filename" : "AppIcon-76x76@1x.png",
|
"filename": "AppIcon-76x76@1x.png",
|
||||||
"scale" : "1x"
|
"scale": "1x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"size" : "76x76",
|
"size": "76x76",
|
||||||
"idiom" : "ipad",
|
"idiom": "ipad",
|
||||||
"filename" : "AppIcon-76x76@2x.png",
|
"filename": "AppIcon-76x76@2x.png",
|
||||||
"scale" : "2x"
|
"scale": "2x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"size" : "83.5x83.5",
|
"size": "83.5x83.5",
|
||||||
"idiom" : "ipad",
|
"idiom": "ipad",
|
||||||
"filename" : "AppIcon-83.5x83.5@2x.png",
|
"filename": "AppIcon-83.5x83.5@2x.png",
|
||||||
"scale" : "2x"
|
"scale": "2x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"size" : "1024x1024",
|
"size": "1024x1024",
|
||||||
"idiom" : "ios-marketing",
|
"idiom": "ios-marketing",
|
||||||
"filename" : "AppIcon-512@2x.png",
|
"filename": "AppIcon-512@2x.png",
|
||||||
"scale" : "1x"
|
"scale": "1x"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"info" : {
|
"info": {
|
||||||
"version" : 1,
|
"version": 1,
|
||||||
"author" : "xcode"
|
"author": "xcode"
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"info" : {
|
"info": {
|
||||||
"version" : 1,
|
"version": 1,
|
||||||
"author" : "xcode"
|
"author": "xcode"
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,88 +1,88 @@
|
|||||||
name: app
|
name: app
|
||||||
options:
|
options:
|
||||||
bundleIdPrefix: chat.spacebar
|
bundleIdPrefix: chat.spacebar
|
||||||
deploymentTarget:
|
deploymentTarget:
|
||||||
iOS: 13.0
|
iOS: 13.0
|
||||||
fileGroups: [../../src]
|
fileGroups: [../../src]
|
||||||
configs:
|
configs:
|
||||||
debug: debug
|
debug: debug
|
||||||
release: release
|
release: release
|
||||||
settingGroups:
|
settingGroups:
|
||||||
app:
|
app:
|
||||||
base:
|
base:
|
||||||
PRODUCT_NAME: Spacebar
|
PRODUCT_NAME: Spacebar
|
||||||
PRODUCT_BUNDLE_IDENTIFIER: chat.spacebar.app
|
PRODUCT_BUNDLE_IDENTIFIER: chat.spacebar.app
|
||||||
DEVELOPMENT_TEAM: 47RXBB8X9K
|
DEVELOPMENT_TEAM: 47RXBB8X9K
|
||||||
targetTemplates:
|
targetTemplates:
|
||||||
app:
|
app:
|
||||||
type: application
|
type: application
|
||||||
sources:
|
sources:
|
||||||
- path: Sources
|
- path: Sources
|
||||||
scheme:
|
scheme:
|
||||||
environmentVariables:
|
environmentVariables:
|
||||||
RUST_BACKTRACE: full
|
RUST_BACKTRACE: full
|
||||||
RUST_LOG: info
|
RUST_LOG: info
|
||||||
settings:
|
settings:
|
||||||
groups: [app]
|
groups: [app]
|
||||||
targets:
|
targets:
|
||||||
app_iOS:
|
app_iOS:
|
||||||
type: application
|
type: application
|
||||||
platform: iOS
|
platform: iOS
|
||||||
sources:
|
sources:
|
||||||
- path: Sources
|
- path: Sources
|
||||||
- path: Assets.xcassets
|
- path: Assets.xcassets
|
||||||
- path: Externals
|
- path: Externals
|
||||||
- path: app_iOS
|
- path: app_iOS
|
||||||
- path: assets
|
- path: assets
|
||||||
buildPhase: resources
|
buildPhase: resources
|
||||||
type: folder
|
type: folder
|
||||||
info:
|
info:
|
||||||
path: app_iOS/Info.plist
|
path: app_iOS/Info.plist
|
||||||
properties:
|
properties:
|
||||||
LSRequiresIPhoneOS: true
|
LSRequiresIPhoneOS: true
|
||||||
UILaunchStoryboardName: LaunchScreen
|
UILaunchStoryboardName: LaunchScreen
|
||||||
UIRequiredDeviceCapabilities: [arm64, metal]
|
UIRequiredDeviceCapabilities: [arm64, metal]
|
||||||
UISupportedInterfaceOrientations:
|
UISupportedInterfaceOrientations:
|
||||||
- UIInterfaceOrientationPortrait
|
- UIInterfaceOrientationPortrait
|
||||||
- UIInterfaceOrientationLandscapeLeft
|
- UIInterfaceOrientationLandscapeLeft
|
||||||
- UIInterfaceOrientationLandscapeRight
|
- UIInterfaceOrientationLandscapeRight
|
||||||
UISupportedInterfaceOrientations~ipad:
|
UISupportedInterfaceOrientations~ipad:
|
||||||
- UIInterfaceOrientationPortrait
|
- UIInterfaceOrientationPortrait
|
||||||
- UIInterfaceOrientationPortraitUpsideDown
|
- UIInterfaceOrientationPortraitUpsideDown
|
||||||
- UIInterfaceOrientationLandscapeLeft
|
- UIInterfaceOrientationLandscapeLeft
|
||||||
- UIInterfaceOrientationLandscapeRight
|
- UIInterfaceOrientationLandscapeRight
|
||||||
CFBundleShortVersionString: 0.1.1
|
CFBundleShortVersionString: 0.1.1
|
||||||
CFBundleVersion: 0.1.1
|
CFBundleVersion: 0.1.1
|
||||||
entitlements:
|
entitlements:
|
||||||
path: app_iOS/app_iOS.entitlements
|
path: app_iOS/app_iOS.entitlements
|
||||||
scheme:
|
scheme:
|
||||||
environmentVariables:
|
environmentVariables:
|
||||||
RUST_BACKTRACE: full
|
RUST_BACKTRACE: full
|
||||||
RUST_LOG: info
|
RUST_LOG: info
|
||||||
settings:
|
settings:
|
||||||
base:
|
base:
|
||||||
ENABLE_BITCODE: false
|
ENABLE_BITCODE: false
|
||||||
ARCHS: [arm64, x86_64]
|
ARCHS: [arm64, x86_64]
|
||||||
VALID_ARCHS: arm64 x86_64
|
VALID_ARCHS: arm64 x86_64
|
||||||
LIBRARY_SEARCH_PATHS[arch=x86_64]: $(inherited) $(PROJECT_DIR)/Externals/$(CONFIGURATION) $(SDKROOT)/usr/lib/swift $(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME) $(TOOLCHAIN_DIR)/usr/lib/swift-5.0/$(PLATFORM_NAME)
|
LIBRARY_SEARCH_PATHS[arch=x86_64]: $(inherited) $(PROJECT_DIR)/Externals/$(CONFIGURATION) $(SDKROOT)/usr/lib/swift $(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME) $(TOOLCHAIN_DIR)/usr/lib/swift-5.0/$(PLATFORM_NAME)
|
||||||
LIBRARY_SEARCH_PATHS[arch=arm64]: $(inherited) $(PROJECT_DIR)/Externals/$(CONFIGURATION) $(SDKROOT)/usr/lib/swift $(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME) $(TOOLCHAIN_DIR)/usr/lib/swift-5.0/$(PLATFORM_NAME)
|
LIBRARY_SEARCH_PATHS[arch=arm64]: $(inherited) $(PROJECT_DIR)/Externals/$(CONFIGURATION) $(SDKROOT)/usr/lib/swift $(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME) $(TOOLCHAIN_DIR)/usr/lib/swift-5.0/$(PLATFORM_NAME)
|
||||||
LIBRARY_SEARCH_PATHS[arch=arm64-sim]: $(inherited) $(PROJECT_DIR)/Externals/$(CONFIGURATION) $(SDKROOT)/usr/lib/swift $(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME) $(TOOLCHAIN_DIR)/usr/lib/swift-5.0/$(PLATFORM_NAME)
|
LIBRARY_SEARCH_PATHS[arch=arm64-sim]: $(inherited) $(PROJECT_DIR)/Externals/$(CONFIGURATION) $(SDKROOT)/usr/lib/swift $(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME) $(TOOLCHAIN_DIR)/usr/lib/swift-5.0/$(PLATFORM_NAME)
|
||||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES: true
|
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES: true
|
||||||
groups: [app]
|
groups: [app]
|
||||||
dependencies:
|
dependencies:
|
||||||
- framework: libspacebar.a
|
- framework: libspacebar.a
|
||||||
embed: false
|
embed: false
|
||||||
- sdk: CoreGraphics.framework
|
- sdk: CoreGraphics.framework
|
||||||
- sdk: Metal.framework
|
- sdk: Metal.framework
|
||||||
- sdk: MetalKit.framework
|
- sdk: MetalKit.framework
|
||||||
- sdk: QuartzCore.framework
|
- sdk: QuartzCore.framework
|
||||||
- sdk: Security.framework
|
- sdk: Security.framework
|
||||||
- sdk: UIKit.framework
|
- sdk: UIKit.framework
|
||||||
- sdk: WebKit.framework
|
- sdk: WebKit.framework
|
||||||
preBuildScripts:
|
preBuildScripts:
|
||||||
- script: node /Users/rileyzicafoose/Documents/client/./node_modules/.bin/../@tauri-apps/cli/tauri.js ios xcode-script -v --platform ${PLATFORM_DISPLAY_NAME:?} --sdk-root ${SDKROOT:?} --framework-search-paths "${FRAMEWORK_SEARCH_PATHS:?}" --header-search-paths "${HEADER_SEARCH_PATHS:?}" --gcc-preprocessor-definitions "${GCC_PREPROCESSOR_DEFINITIONS:-}" --configuration ${CONFIGURATION:?} ${FORCE_COLOR} ${ARCHS:?}
|
- script: node /Users/rileyzicafoose/Documents/client/./node_modules/.bin/../@tauri-apps/cli/tauri.js ios xcode-script -v --platform ${PLATFORM_DISPLAY_NAME:?} --sdk-root ${SDKROOT:?} --framework-search-paths "${FRAMEWORK_SEARCH_PATHS:?}" --header-search-paths "${HEADER_SEARCH_PATHS:?}" --gcc-preprocessor-definitions "${GCC_PREPROCESSOR_DEFINITIONS:-}" --configuration ${CONFIGURATION:?} ${FORCE_COLOR} ${ARCHS:?}
|
||||||
name: Build Rust Code
|
name: Build Rust Code
|
||||||
basedOnDependencyAnalysis: false
|
basedOnDependencyAnalysis: false
|
||||||
outputFiles:
|
outputFiles:
|
||||||
- $(SRCROOT)/target/aarch64-apple-ios/${CONFIGURATION}/deps/libspacebar.a
|
- $(SRCROOT)/target/aarch64-apple-ios/${CONFIGURATION}/deps/libspacebar.a
|
||||||
- $(SRCROOT)/target/x86_64-apple-ios/${CONFIGURATION}/deps/libspacebar.a
|
- $(SRCROOT)/target/x86_64-apple-ios/${CONFIGURATION}/deps/libspacebar.a
|
||||||
|
@ -1 +1,27 @@
|
|||||||
{"base":{"identifier":"base","description":"base","local":true,"windows":["main","splashscreen"],"permissions":["path:default","event:default","window:default","app:default","resources:default","menu:default","tray:default","updater:default","notification:default","os:allow-platform","os:allow-arch","os:allow-family","os:allow-locale","os:allow-os-type","os:allow-version","webview:allow-internal-toggle-devtools"],"platforms":["linux","macOS","windows","android","iOS"]}}
|
{
|
||||||
|
"base": {
|
||||||
|
"identifier": "base",
|
||||||
|
"description": "base",
|
||||||
|
"local": true,
|
||||||
|
"windows": ["main", "splashscreen"],
|
||||||
|
"permissions": [
|
||||||
|
"path:default",
|
||||||
|
"event:default",
|
||||||
|
"window:default",
|
||||||
|
"app:default",
|
||||||
|
"resources:default",
|
||||||
|
"menu:default",
|
||||||
|
"tray:default",
|
||||||
|
"updater:default",
|
||||||
|
"notification:default",
|
||||||
|
"os:allow-platform",
|
||||||
|
"os:allow-arch",
|
||||||
|
"os:allow-family",
|
||||||
|
"os:allow-locale",
|
||||||
|
"os:allow-os-type",
|
||||||
|
"os:allow-version",
|
||||||
|
"webview:allow-internal-toggle-devtools"
|
||||||
|
],
|
||||||
|
"platforms": ["linux", "macOS", "windows", "android", "iOS"]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
@ -30,7 +30,9 @@ const Wrapper = styled(Container)<{ active?: boolean; hasImage?: boolean }>`
|
|||||||
border-radius: ${(props) => (props.active ? "30%" : "50%")};
|
border-radius: ${(props) => (props.active ? "30%" : "50%")};
|
||||||
background-color: ${(props) =>
|
background-color: ${(props) =>
|
||||||
props.hasImage ? "transparent" : props.active ? "var(--primary)" : "var(--background-secondary)"};
|
props.hasImage ? "transparent" : props.active ? "var(--primary)" : "var(--background-secondary)"};
|
||||||
transition: border-radius 0.2s ease, background-color 0.2s ease;
|
transition:
|
||||||
|
border-radius 0.2s ease,
|
||||||
|
background-color 0.2s ease;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
border-radius: 30%;
|
border-radius: 30%;
|
||||||
|
@ -59,7 +59,7 @@ function MemberList() {
|
|||||||
<MemberListItem item={x} />
|
<MemberListItem item={x} />
|
||||||
))}
|
))}
|
||||||
/>
|
/>
|
||||||
))
|
))
|
||||||
: null}
|
: null}
|
||||||
</List>
|
</List>
|
||||||
</Container>
|
</Container>
|
||||||
|
@ -22,7 +22,9 @@ const Container = styled.div`
|
|||||||
width: 340px;
|
width: 340px;
|
||||||
max-height: 600px;
|
max-height: 600px;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
box-shadow: 0 0 0 1px rgb(0 0 0 / 15%), 0 4px 8px rgb(0 0 0 / 15%);
|
box-shadow:
|
||||||
|
0 0 0 1px rgb(0 0 0 / 15%),
|
||||||
|
0 4px 8px rgb(0 0 0 / 15%);
|
||||||
color: var(--text);
|
color: var(--text);
|
||||||
`;
|
`;
|
||||||
|
|
||||||
|
@ -8,7 +8,10 @@
|
|||||||
code[class*="language-"],
|
code[class*="language-"],
|
||||||
pre[class*="language-"] {
|
pre[class*="language-"] {
|
||||||
color: #f92aad;
|
color: #f92aad;
|
||||||
text-shadow: 0 0 2px #100c0f, 0 0 5px #dc078e33, 0 0 10px #fff3;
|
text-shadow:
|
||||||
|
0 0 2px #100c0f,
|
||||||
|
0 0 5px #dc078e33,
|
||||||
|
0 0 10px #fff3;
|
||||||
background: none;
|
background: none;
|
||||||
font-family: var(--font-family-code);
|
font-family: var(--font-family-code);
|
||||||
font-size: 1em;
|
font-size: 1em;
|
||||||
@ -74,7 +77,10 @@ pre[class*="language-"] {
|
|||||||
.token.property,
|
.token.property,
|
||||||
.token.selector {
|
.token.selector {
|
||||||
color: #72f1b8;
|
color: #72f1b8;
|
||||||
text-shadow: 0 0 2px #100c0f, 0 0 10px #257c5575, 0 0 35px #21272475;
|
text-shadow:
|
||||||
|
0 0 2px #100c0f,
|
||||||
|
0 0 10px #257c5575,
|
||||||
|
0 0 35px #21272475;
|
||||||
}
|
}
|
||||||
|
|
||||||
.token.function-name {
|
.token.function-name {
|
||||||
@ -85,18 +91,29 @@ pre[class*="language-"] {
|
|||||||
.token.selector .token.id,
|
.token.selector .token.id,
|
||||||
.token.function {
|
.token.function {
|
||||||
color: #fdfdfd;
|
color: #fdfdfd;
|
||||||
text-shadow: 0 0 2px #001716, 0 0 3px #03edf975, 0 0 5px #03edf975, 0 0 8px #03edf975;
|
text-shadow:
|
||||||
|
0 0 2px #001716,
|
||||||
|
0 0 3px #03edf975,
|
||||||
|
0 0 5px #03edf975,
|
||||||
|
0 0 8px #03edf975;
|
||||||
}
|
}
|
||||||
|
|
||||||
.token.class-name {
|
.token.class-name {
|
||||||
color: #fff5f6;
|
color: #fff5f6;
|
||||||
text-shadow: 0 0 2px #000, 0 0 10px #fc1f2c75, 0 0 5px #fc1f2c75, 0 0 25px #fc1f2c75;
|
text-shadow:
|
||||||
|
0 0 2px #000,
|
||||||
|
0 0 10px #fc1f2c75,
|
||||||
|
0 0 5px #fc1f2c75,
|
||||||
|
0 0 25px #fc1f2c75;
|
||||||
}
|
}
|
||||||
|
|
||||||
.token.constant,
|
.token.constant,
|
||||||
.token.symbol {
|
.token.symbol {
|
||||||
color: #f92aad;
|
color: #f92aad;
|
||||||
text-shadow: 0 0 2px #100c0f, 0 0 5px #dc078e33, 0 0 10px #fff3;
|
text-shadow:
|
||||||
|
0 0 2px #100c0f,
|
||||||
|
0 0 5px #dc078e33,
|
||||||
|
0 0 10px #fff3;
|
||||||
}
|
}
|
||||||
|
|
||||||
.token.important,
|
.token.important,
|
||||||
@ -105,7 +122,10 @@ pre[class*="language-"] {
|
|||||||
.token.selector .token.class,
|
.token.selector .token.class,
|
||||||
.token.builtin {
|
.token.builtin {
|
||||||
color: #f4eee4;
|
color: #f4eee4;
|
||||||
text-shadow: 0 0 2px #393a33, 0 0 8px #f39f0575, 0 0 2px #f39f0575;
|
text-shadow:
|
||||||
|
0 0 2px #393a33,
|
||||||
|
0 0 8px #f39f0575,
|
||||||
|
0 0 2px #f39f0575;
|
||||||
}
|
}
|
||||||
|
|
||||||
.token.string,
|
.token.string,
|
||||||
|
@ -197,7 +197,7 @@ function MessageInput({ channel }: Props) {
|
|||||||
channel.type === ChannelType.DM
|
channel.type === ChannelType.DM
|
||||||
? channel.recipients?.[0].username
|
? channel.recipients?.[0].username
|
||||||
: "#" + channel.name
|
: "#" + channel.name
|
||||||
}`
|
}`
|
||||||
: "You do not have permission to send messages in this channel."
|
: "You do not have permission to send messages in this channel."
|
||||||
}
|
}
|
||||||
disabled={!channel.hasPermission("SEND_MESSAGES")}
|
disabled={!channel.hasPermission("SEND_MESSAGES")}
|
||||||
|
@ -54,7 +54,7 @@ export function BanMemberModal({ target, type, ...props }: ModalProps<"ban_membe
|
|||||||
data.reason
|
data.reason
|
||||||
? {
|
? {
|
||||||
"X-Audit-Log-Reason": data.reason,
|
"X-Audit-Log-Reason": data.reason,
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
)
|
)
|
||||||
.then(() => {
|
.then(() => {
|
||||||
|
@ -54,7 +54,7 @@ export function KickMemberModal({ target, ...props }: ModalProps<"kick_member">)
|
|||||||
data.reason
|
data.reason
|
||||||
? {
|
? {
|
||||||
"X-Audit-Log-Reason": data.reason,
|
"X-Audit-Log-Reason": data.reason,
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
)
|
)
|
||||||
.then(() => {
|
.then(() => {
|
||||||
|
@ -62,10 +62,10 @@ export const ModalBase = styled.div<{ closing?: boolean }>`
|
|||||||
> div {
|
> div {
|
||||||
animation-name: ${animationZoomOut};
|
animation-name: ${animationZoomOut};
|
||||||
}
|
}
|
||||||
`
|
`
|
||||||
: css`
|
: css`
|
||||||
animation-name: ${animationFadeIn};
|
animation-name: ${animationFadeIn};
|
||||||
`}
|
`}
|
||||||
`;
|
`;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -53,7 +53,7 @@ export const ContextMenuContextProvider: React.FC<any> = ({ children }) => {
|
|||||||
? ContextMenuComponents[contextMenu.props.type]
|
? ContextMenuComponents[contextMenu.props.type]
|
||||||
: () => {
|
: () => {
|
||||||
return null;
|
return null;
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<ContextMenuContext.Provider
|
<ContextMenuContext.Provider
|
||||||
|
@ -374,11 +374,14 @@ export default class GatewayConnectionStore {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
this.initialHeartbeatTimeout = setTimeout(() => {
|
this.initialHeartbeatTimeout = setTimeout(
|
||||||
this.initialHeartbeatTimeout = null;
|
() => {
|
||||||
this.heartbeater = setInterval(heartbeaterFn, this.heartbeatInterval!);
|
this.initialHeartbeatTimeout = null;
|
||||||
heartbeaterFn();
|
this.heartbeater = setInterval(heartbeaterFn, this.heartbeatInterval!);
|
||||||
}, Math.floor(Math.random() * this.heartbeatInterval!));
|
heartbeaterFn();
|
||||||
|
},
|
||||||
|
Math.floor(Math.random() * this.heartbeatInterval!),
|
||||||
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -198,7 +198,7 @@ export default class Guild {
|
|||||||
reason
|
reason
|
||||||
? {
|
? {
|
||||||
"X-Audit-Log-Reason": reason,
|
"X-Audit-Log-Reason": reason,
|
||||||
}
|
}
|
||||||
: {},
|
: {},
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@ -214,7 +214,7 @@ export default class Guild {
|
|||||||
reason
|
reason
|
||||||
? {
|
? {
|
||||||
"X-Audit-Log-Reason": reason,
|
"X-Audit-Log-Reason": reason,
|
||||||
}
|
}
|
||||||
: {},
|
: {},
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -27,7 +27,10 @@ export default class MessageBase {
|
|||||||
type: MessageType;
|
type: MessageType;
|
||||||
author: User;
|
author: User;
|
||||||
|
|
||||||
constructor(public readonly app: AppStore, data: MessageLikeData) {
|
constructor(
|
||||||
|
public readonly app: AppStore,
|
||||||
|
data: MessageLikeData,
|
||||||
|
) {
|
||||||
this.id = data.id;
|
this.id = data.id;
|
||||||
this.content = data.content;
|
this.content = data.content;
|
||||||
this.timestamp = new Date(data.timestamp);
|
this.timestamp = new Date(data.timestamp);
|
||||||
|
@ -100,16 +100,19 @@ export class Permissions extends BitField {
|
|||||||
|
|
||||||
static channelPermission(overwrites: APIOverwrite[], init?: bigint) {
|
static channelPermission(overwrites: APIOverwrite[], init?: bigint) {
|
||||||
// TODO: do not deny any permissions if admin
|
// TODO: do not deny any permissions if admin
|
||||||
return overwrites.reduce((permission, overwrite) => {
|
return overwrites.reduce(
|
||||||
// apply disallowed permission
|
(permission, overwrite) => {
|
||||||
// * permission: current calculated permission (e.g. 010)
|
// apply disallowed permission
|
||||||
// * deny contains all denied permissions (e.g. 011)
|
// * permission: current calculated permission (e.g. 010)
|
||||||
// * allow contains all explicitly allowed permisions (e.g. 100)
|
// * deny contains all denied permissions (e.g. 011)
|
||||||
return (permission & ~BigInt(overwrite.deny)) | BigInt(overwrite.allow);
|
// * allow contains all explicitly allowed permisions (e.g. 100)
|
||||||
// ~ operator inverts deny (e.g. 011 -> 100)
|
return (permission & ~BigInt(overwrite.deny)) | BigInt(overwrite.allow);
|
||||||
// & operator only allows 1 for both ~deny and permission (e.g. 010 & 100 -> 000)
|
// ~ operator inverts deny (e.g. 011 -> 100)
|
||||||
// | operators adds both together (e.g. 000 + 100 -> 100)
|
// & operator only allows 1 for both ~deny and permission (e.g. 010 & 100 -> 000)
|
||||||
}, init || BigInt(0));
|
// | operators adds both together (e.g. 000 + 100 -> 100)
|
||||||
|
},
|
||||||
|
init || BigInt(0),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
static rolePermission(roles: Role[]) {
|
static rolePermission(roles: Role[]) {
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
{
|
{
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
"composite": true,
|
"composite": true,
|
||||||
"skipLibCheck": true,
|
"skipLibCheck": true,
|
||||||
"module": "ESNext",
|
"module": "ESNext",
|
||||||
"moduleResolution": "bundler",
|
"moduleResolution": "bundler",
|
||||||
"allowSyntheticDefaultImports": true
|
"allowSyntheticDefaultImports": true
|
||||||
},
|
},
|
||||||
"include": ["vite.config.ts"]
|
"include": ["vite.config.ts"]
|
||||||
}
|
}
|
||||||
|
@ -79,7 +79,7 @@ export default defineConfig(async () => ({
|
|||||||
protocol: "ws",
|
protocol: "ws",
|
||||||
host: await internalIpV4(),
|
host: await internalIpV4(),
|
||||||
port: 1421,
|
port: 1421,
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
strictPort: true,
|
strictPort: true,
|
||||||
},
|
},
|
||||||
|
Loading…
Reference in New Issue
Block a user