commit
475fb42be8
37 changed files with 35944 additions and 0 deletions
@ -0,0 +1,30 @@ |
|||
# Logs |
|||
logs |
|||
*.log |
|||
npm-debug.log* |
|||
yarn-debug.log* |
|||
yarn-error.log* |
|||
pnpm-debug.log* |
|||
lerna-debug.log* |
|||
|
|||
node_modules |
|||
.DS_Store |
|||
dist |
|||
dist-ssr |
|||
coverage |
|||
*.local |
|||
|
|||
/cypress/videos/ |
|||
/cypress/screenshots/ |
|||
|
|||
# Editor directories and files |
|||
.vscode/* |
|||
!.vscode/extensions.json |
|||
.idea |
|||
*.suo |
|||
*.ntvs* |
|||
*.njsproj |
|||
*.sln |
|||
*.sw? |
|||
|
|||
*.tsbuildinfo |
@ -0,0 +1,52 @@ |
|||
{ |
|||
"hash": "18d7c5d9", |
|||
"configHash": "08012c5e", |
|||
"lockfileHash": "4ac0157d", |
|||
"browserHash": "49616823", |
|||
"optimized": { |
|||
"vue": { |
|||
"src": "../../../../node_modules/vue/dist/vue.runtime.esm-bundler.js", |
|||
"file": "vue.js", |
|||
"fileHash": "6bce93ce", |
|||
"needsInterop": false |
|||
}, |
|||
"vitepress > @vue/devtools-api": { |
|||
"src": "../../../../node_modules/@vue/devtools-api/dist/index.js", |
|||
"file": "vitepress___@vue_devtools-api.js", |
|||
"fileHash": "cb77e94c", |
|||
"needsInterop": false |
|||
}, |
|||
"vitepress > @vueuse/core": { |
|||
"src": "../../../../node_modules/@vueuse/core/index.mjs", |
|||
"file": "vitepress___@vueuse_core.js", |
|||
"fileHash": "69f454d8", |
|||
"needsInterop": false |
|||
}, |
|||
"vitepress > @vueuse/integrations/useFocusTrap": { |
|||
"src": "../../../../node_modules/@vueuse/integrations/useFocusTrap.mjs", |
|||
"file": "vitepress___@vueuse_integrations_useFocusTrap.js", |
|||
"fileHash": "d7391ff5", |
|||
"needsInterop": false |
|||
}, |
|||
"vitepress > mark.js/src/vanilla.js": { |
|||
"src": "../../../../node_modules/mark.js/src/vanilla.js", |
|||
"file": "vitepress___mark__js_src_vanilla__js.js", |
|||
"fileHash": "4a784580", |
|||
"needsInterop": false |
|||
}, |
|||
"vitepress > minisearch": { |
|||
"src": "../../../../node_modules/minisearch/dist/es/index.js", |
|||
"file": "vitepress___minisearch.js", |
|||
"fileHash": "6e15fe37", |
|||
"needsInterop": false |
|||
} |
|||
}, |
|||
"chunks": { |
|||
"chunk-3GYA4YLH": { |
|||
"file": "chunk-3GYA4YLH.js" |
|||
}, |
|||
"chunk-DDXJJ377": { |
|||
"file": "chunk-DDXJJ377.js" |
|||
} |
|||
} |
|||
} |
File diff suppressed because it is too large
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
File diff suppressed because one or more lines are too long
@ -0,0 +1,3 @@ |
|||
{ |
|||
"type": "module" |
|||
} |
File diff suppressed because it is too large
File diff suppressed because one or more lines are too long
@ -0,0 +1,583 @@ |
|||
import { |
|||
DefaultMagicKeysAliasMap, |
|||
StorageSerializers, |
|||
TransitionPresets, |
|||
assert, |
|||
breakpointsAntDesign, |
|||
breakpointsBootstrapV5, |
|||
breakpointsElement, |
|||
breakpointsMasterCss, |
|||
breakpointsPrimeFlex, |
|||
breakpointsQuasar, |
|||
breakpointsSematic, |
|||
breakpointsTailwind, |
|||
breakpointsVuetify, |
|||
breakpointsVuetifyV2, |
|||
breakpointsVuetifyV3, |
|||
bypassFilter, |
|||
camelize, |
|||
clamp, |
|||
cloneFnJSON, |
|||
computedAsync, |
|||
computedEager, |
|||
computedInject, |
|||
computedWithControl, |
|||
containsProp, |
|||
controlledRef, |
|||
createEventHook, |
|||
createFetch, |
|||
createFilterWrapper, |
|||
createGlobalState, |
|||
createInjectionState, |
|||
createRef, |
|||
createReusableTemplate, |
|||
createSharedComposable, |
|||
createSingletonPromise, |
|||
createTemplatePromise, |
|||
createUnrefFn, |
|||
customStorageEventName, |
|||
debounceFilter, |
|||
defaultDocument, |
|||
defaultLocation, |
|||
defaultNavigator, |
|||
defaultWindow, |
|||
executeTransition, |
|||
extendRef, |
|||
formatDate, |
|||
formatTimeAgo, |
|||
get, |
|||
getLifeCycleTarget, |
|||
getSSRHandler, |
|||
hasOwn, |
|||
hyphenate, |
|||
identity, |
|||
increaseWithUnit, |
|||
injectLocal, |
|||
invoke, |
|||
isClient, |
|||
isDef, |
|||
isDefined, |
|||
isIOS, |
|||
isObject, |
|||
isWorker, |
|||
makeDestructurable, |
|||
mapGamepadToXbox360Controller, |
|||
noop, |
|||
normalizeDate, |
|||
notNullish, |
|||
now, |
|||
objectEntries, |
|||
objectOmit, |
|||
objectPick, |
|||
onClickOutside, |
|||
onElementRemoval, |
|||
onKeyDown, |
|||
onKeyPressed, |
|||
onKeyStroke, |
|||
onKeyUp, |
|||
onLongPress, |
|||
onStartTyping, |
|||
pausableFilter, |
|||
promiseTimeout, |
|||
provideLocal, |
|||
provideSSRWidth, |
|||
pxValue, |
|||
rand, |
|||
reactify, |
|||
reactifyObject, |
|||
reactiveComputed, |
|||
reactiveOmit, |
|||
reactivePick, |
|||
refAutoReset, |
|||
refDebounced, |
|||
refDefault, |
|||
refThrottled, |
|||
refWithControl, |
|||
resolveRef, |
|||
resolveUnref, |
|||
set, |
|||
setSSRHandler, |
|||
syncRef, |
|||
syncRefs, |
|||
templateRef, |
|||
throttleFilter, |
|||
timestamp, |
|||
toArray, |
|||
toReactive, |
|||
toRef, |
|||
toRefs, |
|||
toValue, |
|||
tryOnBeforeMount, |
|||
tryOnBeforeUnmount, |
|||
tryOnMounted, |
|||
tryOnScopeDispose, |
|||
tryOnUnmounted, |
|||
unrefElement, |
|||
until, |
|||
useActiveElement, |
|||
useAnimate, |
|||
useArrayDifference, |
|||
useArrayEvery, |
|||
useArrayFilter, |
|||
useArrayFind, |
|||
useArrayFindIndex, |
|||
useArrayFindLast, |
|||
useArrayIncludes, |
|||
useArrayJoin, |
|||
useArrayMap, |
|||
useArrayReduce, |
|||
useArraySome, |
|||
useArrayUnique, |
|||
useAsyncQueue, |
|||
useAsyncState, |
|||
useBase64, |
|||
useBattery, |
|||
useBluetooth, |
|||
useBreakpoints, |
|||
useBroadcastChannel, |
|||
useBrowserLocation, |
|||
useCached, |
|||
useClipboard, |
|||
useClipboardItems, |
|||
useCloned, |
|||
useColorMode, |
|||
useConfirmDialog, |
|||
useCountdown, |
|||
useCounter, |
|||
useCssVar, |
|||
useCurrentElement, |
|||
useCycleList, |
|||
useDark, |
|||
useDateFormat, |
|||
useDebounceFn, |
|||
useDebouncedRefHistory, |
|||
useDeviceMotion, |
|||
useDeviceOrientation, |
|||
useDevicePixelRatio, |
|||
useDevicesList, |
|||
useDisplayMedia, |
|||
useDocumentVisibility, |
|||
useDraggable, |
|||
useDropZone, |
|||
useElementBounding, |
|||
useElementByPoint, |
|||
useElementHover, |
|||
useElementSize, |
|||
useElementVisibility, |
|||
useEventBus, |
|||
useEventListener, |
|||
useEventSource, |
|||
useEyeDropper, |
|||
useFavicon, |
|||
useFetch, |
|||
useFileDialog, |
|||
useFileSystemAccess, |
|||
useFocus, |
|||
useFocusWithin, |
|||
useFps, |
|||
useFullscreen, |
|||
useGamepad, |
|||
useGeolocation, |
|||
useIdle, |
|||
useImage, |
|||
useInfiniteScroll, |
|||
useIntersectionObserver, |
|||
useInterval, |
|||
useIntervalFn, |
|||
useKeyModifier, |
|||
useLastChanged, |
|||
useLocalStorage, |
|||
useMagicKeys, |
|||
useManualRefHistory, |
|||
useMediaControls, |
|||
useMediaQuery, |
|||
useMemoize, |
|||
useMemory, |
|||
useMounted, |
|||
useMouse, |
|||
useMouseInElement, |
|||
useMousePressed, |
|||
useMutationObserver, |
|||
useNavigatorLanguage, |
|||
useNetwork, |
|||
useNow, |
|||
useObjectUrl, |
|||
useOffsetPagination, |
|||
useOnline, |
|||
usePageLeave, |
|||
useParallax, |
|||
useParentElement, |
|||
usePerformanceObserver, |
|||
usePermission, |
|||
usePointer, |
|||
usePointerLock, |
|||
usePointerSwipe, |
|||
usePreferredColorScheme, |
|||
usePreferredContrast, |
|||
usePreferredDark, |
|||
usePreferredLanguages, |
|||
usePreferredReducedMotion, |
|||
usePreferredReducedTransparency, |
|||
usePrevious, |
|||
useRafFn, |
|||
useRefHistory, |
|||
useResizeObserver, |
|||
useSSRWidth, |
|||
useScreenOrientation, |
|||
useScreenSafeArea, |
|||
useScriptTag, |
|||
useScroll, |
|||
useScrollLock, |
|||
useSessionStorage, |
|||
useShare, |
|||
useSorted, |
|||
useSpeechRecognition, |
|||
useSpeechSynthesis, |
|||
useStepper, |
|||
useStorage, |
|||
useStorageAsync, |
|||
useStyleTag, |
|||
useSupported, |
|||
useSwipe, |
|||
useTemplateRefsList, |
|||
useTextDirection, |
|||
useTextSelection, |
|||
useTextareaAutosize, |
|||
useThrottleFn, |
|||
useThrottledRefHistory, |
|||
useTimeAgo, |
|||
useTimeout, |
|||
useTimeoutFn, |
|||
useTimeoutPoll, |
|||
useTimestamp, |
|||
useTitle, |
|||
useToNumber, |
|||
useToString, |
|||
useToggle, |
|||
useTransition, |
|||
useUrlSearchParams, |
|||
useUserMedia, |
|||
useVModel, |
|||
useVModels, |
|||
useVibrate, |
|||
useVirtualList, |
|||
useWakeLock, |
|||
useWebNotification, |
|||
useWebSocket, |
|||
useWebWorker, |
|||
useWebWorkerFn, |
|||
useWindowFocus, |
|||
useWindowScroll, |
|||
useWindowSize, |
|||
watchArray, |
|||
watchAtMost, |
|||
watchDebounced, |
|||
watchDeep, |
|||
watchIgnorable, |
|||
watchImmediate, |
|||
watchOnce, |
|||
watchPausable, |
|||
watchThrottled, |
|||
watchTriggerable, |
|||
watchWithFilter, |
|||
whenever |
|||
} from "./chunk-3GYA4YLH.js"; |
|||
import "./chunk-DDXJJ377.js"; |
|||
export { |
|||
DefaultMagicKeysAliasMap, |
|||
StorageSerializers, |
|||
TransitionPresets, |
|||
assert, |
|||
computedAsync as asyncComputed, |
|||
refAutoReset as autoResetRef, |
|||
breakpointsAntDesign, |
|||
breakpointsBootstrapV5, |
|||
breakpointsElement, |
|||
breakpointsMasterCss, |
|||
breakpointsPrimeFlex, |
|||
breakpointsQuasar, |
|||
breakpointsSematic, |
|||
breakpointsTailwind, |
|||
breakpointsVuetify, |
|||
breakpointsVuetifyV2, |
|||
breakpointsVuetifyV3, |
|||
bypassFilter, |
|||
camelize, |
|||
clamp, |
|||
cloneFnJSON, |
|||
computedAsync, |
|||
computedEager, |
|||
computedInject, |
|||
computedWithControl, |
|||
containsProp, |
|||
computedWithControl as controlledComputed, |
|||
controlledRef, |
|||
createEventHook, |
|||
createFetch, |
|||
createFilterWrapper, |
|||
createGlobalState, |
|||
createInjectionState, |
|||
reactify as createReactiveFn, |
|||
createRef, |
|||
createReusableTemplate, |
|||
createSharedComposable, |
|||
createSingletonPromise, |
|||
createTemplatePromise, |
|||
createUnrefFn, |
|||
customStorageEventName, |
|||
debounceFilter, |
|||
refDebounced as debouncedRef, |
|||
watchDebounced as debouncedWatch, |
|||
defaultDocument, |
|||
defaultLocation, |
|||
defaultNavigator, |
|||
defaultWindow, |
|||
computedEager as eagerComputed, |
|||
executeTransition, |
|||
extendRef, |
|||
formatDate, |
|||
formatTimeAgo, |
|||
get, |
|||
getLifeCycleTarget, |
|||
getSSRHandler, |
|||
hasOwn, |
|||
hyphenate, |
|||
identity, |
|||
watchIgnorable as ignorableWatch, |
|||
increaseWithUnit, |
|||
injectLocal, |
|||
invoke, |
|||
isClient, |
|||
isDef, |
|||
isDefined, |
|||
isIOS, |
|||
isObject, |
|||
isWorker, |
|||
makeDestructurable, |
|||
mapGamepadToXbox360Controller, |
|||
noop, |
|||
normalizeDate, |
|||
notNullish, |
|||
now, |
|||
objectEntries, |
|||
objectOmit, |
|||
objectPick, |
|||
onClickOutside, |
|||
onElementRemoval, |
|||
onKeyDown, |
|||
onKeyPressed, |
|||
onKeyStroke, |
|||
onKeyUp, |
|||
onLongPress, |
|||
onStartTyping, |
|||
pausableFilter, |
|||
watchPausable as pausableWatch, |
|||
promiseTimeout, |
|||
provideLocal, |
|||
provideSSRWidth, |
|||
pxValue, |
|||
rand, |
|||
reactify, |
|||
reactifyObject, |
|||
reactiveComputed, |
|||
reactiveOmit, |
|||
reactivePick, |
|||
refAutoReset, |
|||
refDebounced, |
|||
refDefault, |
|||
refThrottled, |
|||
refWithControl, |
|||
resolveRef, |
|||
resolveUnref, |
|||
set, |
|||
setSSRHandler, |
|||
syncRef, |
|||
syncRefs, |
|||
templateRef, |
|||
throttleFilter, |
|||
refThrottled as throttledRef, |
|||
watchThrottled as throttledWatch, |
|||
timestamp, |
|||
toArray, |
|||
toReactive, |
|||
toRef, |
|||
toRefs, |
|||
toValue, |
|||
tryOnBeforeMount, |
|||
tryOnBeforeUnmount, |
|||
tryOnMounted, |
|||
tryOnScopeDispose, |
|||
tryOnUnmounted, |
|||
unrefElement, |
|||
until, |
|||
useActiveElement, |
|||
useAnimate, |
|||
useArrayDifference, |
|||
useArrayEvery, |
|||
useArrayFilter, |
|||
useArrayFind, |
|||
useArrayFindIndex, |
|||
useArrayFindLast, |
|||
useArrayIncludes, |
|||
useArrayJoin, |
|||
useArrayMap, |
|||
useArrayReduce, |
|||
useArraySome, |
|||
useArrayUnique, |
|||
useAsyncQueue, |
|||
useAsyncState, |
|||
useBase64, |
|||
useBattery, |
|||
useBluetooth, |
|||
useBreakpoints, |
|||
useBroadcastChannel, |
|||
useBrowserLocation, |
|||
useCached, |
|||
useClipboard, |
|||
useClipboardItems, |
|||
useCloned, |
|||
useColorMode, |
|||
useConfirmDialog, |
|||
useCountdown, |
|||
useCounter, |
|||
useCssVar, |
|||
useCurrentElement, |
|||
useCycleList, |
|||
useDark, |
|||
useDateFormat, |
|||
refDebounced as useDebounce, |
|||
useDebounceFn, |
|||
useDebouncedRefHistory, |
|||
useDeviceMotion, |
|||
useDeviceOrientation, |
|||
useDevicePixelRatio, |
|||
useDevicesList, |
|||
useDisplayMedia, |
|||
useDocumentVisibility, |
|||
useDraggable, |
|||
useDropZone, |
|||
useElementBounding, |
|||
useElementByPoint, |
|||
useElementHover, |
|||
useElementSize, |
|||
useElementVisibility, |
|||
useEventBus, |
|||
useEventListener, |
|||
useEventSource, |
|||
useEyeDropper, |
|||
useFavicon, |
|||
useFetch, |
|||
useFileDialog, |
|||
useFileSystemAccess, |
|||
useFocus, |
|||
useFocusWithin, |
|||
useFps, |
|||
useFullscreen, |
|||
useGamepad, |
|||
useGeolocation, |
|||
useIdle, |
|||
useImage, |
|||
useInfiniteScroll, |
|||
useIntersectionObserver, |
|||
useInterval, |
|||
useIntervalFn, |
|||
useKeyModifier, |
|||
useLastChanged, |
|||
useLocalStorage, |
|||
useMagicKeys, |
|||
useManualRefHistory, |
|||
useMediaControls, |
|||
useMediaQuery, |
|||
useMemoize, |
|||
useMemory, |
|||
useMounted, |
|||
useMouse, |
|||
useMouseInElement, |
|||
useMousePressed, |
|||
useMutationObserver, |
|||
useNavigatorLanguage, |
|||
useNetwork, |
|||
useNow, |
|||
useObjectUrl, |
|||
useOffsetPagination, |
|||
useOnline, |
|||
usePageLeave, |
|||
useParallax, |
|||
useParentElement, |
|||
usePerformanceObserver, |
|||
usePermission, |
|||
usePointer, |
|||
usePointerLock, |
|||
usePointerSwipe, |
|||
usePreferredColorScheme, |
|||
usePreferredContrast, |
|||
usePreferredDark, |
|||
usePreferredLanguages, |
|||
usePreferredReducedMotion, |
|||
usePreferredReducedTransparency, |
|||
usePrevious, |
|||
useRafFn, |
|||
useRefHistory, |
|||
useResizeObserver, |
|||
useSSRWidth, |
|||
useScreenOrientation, |
|||
useScreenSafeArea, |
|||
useScriptTag, |
|||
useScroll, |
|||
useScrollLock, |
|||
useSessionStorage, |
|||
useShare, |
|||
useSorted, |
|||
useSpeechRecognition, |
|||
useSpeechSynthesis, |
|||
useStepper, |
|||
useStorage, |
|||
useStorageAsync, |
|||
useStyleTag, |
|||
useSupported, |
|||
useSwipe, |
|||
useTemplateRefsList, |
|||
useTextDirection, |
|||
useTextSelection, |
|||
useTextareaAutosize, |
|||
refThrottled as useThrottle, |
|||
useThrottleFn, |
|||
useThrottledRefHistory, |
|||
useTimeAgo, |
|||
useTimeout, |
|||
useTimeoutFn, |
|||
useTimeoutPoll, |
|||
useTimestamp, |
|||
useTitle, |
|||
useToNumber, |
|||
useToString, |
|||
useToggle, |
|||
useTransition, |
|||
useUrlSearchParams, |
|||
useUserMedia, |
|||
useVModel, |
|||
useVModels, |
|||
useVibrate, |
|||
useVirtualList, |
|||
useWakeLock, |
|||
useWebNotification, |
|||
useWebSocket, |
|||
useWebWorker, |
|||
useWebWorkerFn, |
|||
useWindowFocus, |
|||
useWindowScroll, |
|||
useWindowSize, |
|||
watchArray, |
|||
watchAtMost, |
|||
watchDebounced, |
|||
watchDeep, |
|||
watchIgnorable, |
|||
watchImmediate, |
|||
watchOnce, |
|||
watchPausable, |
|||
watchThrottled, |
|||
watchTriggerable, |
|||
watchWithFilter, |
|||
whenever |
|||
}; |
|||
//# sourceMappingURL=vitepress___@vueuse_core.js.map
|
@ -0,0 +1,7 @@ |
|||
{ |
|||
"version": 3, |
|||
"sources": [], |
|||
"sourcesContent": [], |
|||
"mappings": "", |
|||
"names": [] |
|||
} |
File diff suppressed because it is too large
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
File diff suppressed because one or more lines are too long
@ -0,0 +1,343 @@ |
|||
import { |
|||
BaseTransition, |
|||
BaseTransitionPropsValidators, |
|||
Comment, |
|||
DeprecationTypes, |
|||
EffectScope, |
|||
ErrorCodes, |
|||
ErrorTypeStrings, |
|||
Fragment, |
|||
KeepAlive, |
|||
ReactiveEffect, |
|||
Static, |
|||
Suspense, |
|||
Teleport, |
|||
Text, |
|||
TrackOpTypes, |
|||
Transition, |
|||
TransitionGroup, |
|||
TriggerOpTypes, |
|||
VueElement, |
|||
assertNumber, |
|||
callWithAsyncErrorHandling, |
|||
callWithErrorHandling, |
|||
camelize, |
|||
capitalize, |
|||
cloneVNode, |
|||
compatUtils, |
|||
compile, |
|||
computed, |
|||
createApp, |
|||
createBaseVNode, |
|||
createBlock, |
|||
createCommentVNode, |
|||
createElementBlock, |
|||
createHydrationRenderer, |
|||
createPropsRestProxy, |
|||
createRenderer, |
|||
createSSRApp, |
|||
createSlots, |
|||
createStaticVNode, |
|||
createTextVNode, |
|||
createVNode, |
|||
customRef, |
|||
defineAsyncComponent, |
|||
defineComponent, |
|||
defineCustomElement, |
|||
defineEmits, |
|||
defineExpose, |
|||
defineModel, |
|||
defineOptions, |
|||
defineProps, |
|||
defineSSRCustomElement, |
|||
defineSlots, |
|||
devtools, |
|||
effect, |
|||
effectScope, |
|||
getCurrentInstance, |
|||
getCurrentScope, |
|||
getCurrentWatcher, |
|||
getTransitionRawChildren, |
|||
guardReactiveProps, |
|||
h, |
|||
handleError, |
|||
hasInjectionContext, |
|||
hydrate, |
|||
hydrateOnIdle, |
|||
hydrateOnInteraction, |
|||
hydrateOnMediaQuery, |
|||
hydrateOnVisible, |
|||
initCustomFormatter, |
|||
initDirectivesForSSR, |
|||
inject, |
|||
isMemoSame, |
|||
isProxy, |
|||
isReactive, |
|||
isReadonly, |
|||
isRef, |
|||
isRuntimeOnly, |
|||
isShallow, |
|||
isVNode, |
|||
markRaw, |
|||
mergeDefaults, |
|||
mergeModels, |
|||
mergeProps, |
|||
nextTick, |
|||
normalizeClass, |
|||
normalizeProps, |
|||
normalizeStyle, |
|||
onActivated, |
|||
onBeforeMount, |
|||
onBeforeUnmount, |
|||
onBeforeUpdate, |
|||
onDeactivated, |
|||
onErrorCaptured, |
|||
onMounted, |
|||
onRenderTracked, |
|||
onRenderTriggered, |
|||
onScopeDispose, |
|||
onServerPrefetch, |
|||
onUnmounted, |
|||
onUpdated, |
|||
onWatcherCleanup, |
|||
openBlock, |
|||
popScopeId, |
|||
provide, |
|||
proxyRefs, |
|||
pushScopeId, |
|||
queuePostFlushCb, |
|||
reactive, |
|||
readonly, |
|||
ref, |
|||
registerRuntimeCompiler, |
|||
render, |
|||
renderList, |
|||
renderSlot, |
|||
resolveComponent, |
|||
resolveDirective, |
|||
resolveDynamicComponent, |
|||
resolveFilter, |
|||
resolveTransitionHooks, |
|||
setBlockTracking, |
|||
setDevtoolsHook, |
|||
setTransitionHooks, |
|||
shallowReactive, |
|||
shallowReadonly, |
|||
shallowRef, |
|||
ssrContextKey, |
|||
ssrUtils, |
|||
stop, |
|||
toDisplayString, |
|||
toHandlerKey, |
|||
toHandlers, |
|||
toRaw, |
|||
toRef, |
|||
toRefs, |
|||
toValue, |
|||
transformVNodeArgs, |
|||
triggerRef, |
|||
unref, |
|||
useAttrs, |
|||
useCssModule, |
|||
useCssVars, |
|||
useHost, |
|||
useId, |
|||
useModel, |
|||
useSSRContext, |
|||
useShadowRoot, |
|||
useSlots, |
|||
useTemplateRef, |
|||
useTransitionState, |
|||
vModelCheckbox, |
|||
vModelDynamic, |
|||
vModelRadio, |
|||
vModelSelect, |
|||
vModelText, |
|||
vShow, |
|||
version, |
|||
warn, |
|||
watch, |
|||
watchEffect, |
|||
watchPostEffect, |
|||
watchSyncEffect, |
|||
withAsyncContext, |
|||
withCtx, |
|||
withDefaults, |
|||
withDirectives, |
|||
withKeys, |
|||
withMemo, |
|||
withModifiers, |
|||
withScopeId |
|||
} from "./chunk-DDXJJ377.js"; |
|||
export { |
|||
BaseTransition, |
|||
BaseTransitionPropsValidators, |
|||
Comment, |
|||
DeprecationTypes, |
|||
EffectScope, |
|||
ErrorCodes, |
|||
ErrorTypeStrings, |
|||
Fragment, |
|||
KeepAlive, |
|||
ReactiveEffect, |
|||
Static, |
|||
Suspense, |
|||
Teleport, |
|||
Text, |
|||
TrackOpTypes, |
|||
Transition, |
|||
TransitionGroup, |
|||
TriggerOpTypes, |
|||
VueElement, |
|||
assertNumber, |
|||
callWithAsyncErrorHandling, |
|||
callWithErrorHandling, |
|||
camelize, |
|||
capitalize, |
|||
cloneVNode, |
|||
compatUtils, |
|||
compile, |
|||
computed, |
|||
createApp, |
|||
createBlock, |
|||
createCommentVNode, |
|||
createElementBlock, |
|||
createBaseVNode as createElementVNode, |
|||
createHydrationRenderer, |
|||
createPropsRestProxy, |
|||
createRenderer, |
|||
createSSRApp, |
|||
createSlots, |
|||
createStaticVNode, |
|||
createTextVNode, |
|||
createVNode, |
|||
customRef, |
|||
defineAsyncComponent, |
|||
defineComponent, |
|||
defineCustomElement, |
|||
defineEmits, |
|||
defineExpose, |
|||
defineModel, |
|||
defineOptions, |
|||
defineProps, |
|||
defineSSRCustomElement, |
|||
defineSlots, |
|||
devtools, |
|||
effect, |
|||
effectScope, |
|||
getCurrentInstance, |
|||
getCurrentScope, |
|||
getCurrentWatcher, |
|||
getTransitionRawChildren, |
|||
guardReactiveProps, |
|||
h, |
|||
handleError, |
|||
hasInjectionContext, |
|||
hydrate, |
|||
hydrateOnIdle, |
|||
hydrateOnInteraction, |
|||
hydrateOnMediaQuery, |
|||
hydrateOnVisible, |
|||
initCustomFormatter, |
|||
initDirectivesForSSR, |
|||
inject, |
|||
isMemoSame, |
|||
isProxy, |
|||
isReactive, |
|||
isReadonly, |
|||
isRef, |
|||
isRuntimeOnly, |
|||
isShallow, |
|||
isVNode, |
|||
markRaw, |
|||
mergeDefaults, |
|||
mergeModels, |
|||
mergeProps, |
|||
nextTick, |
|||
normalizeClass, |
|||
normalizeProps, |
|||
normalizeStyle, |
|||
onActivated, |
|||
onBeforeMount, |
|||
onBeforeUnmount, |
|||
onBeforeUpdate, |
|||
onDeactivated, |
|||
onErrorCaptured, |
|||
onMounted, |
|||
onRenderTracked, |
|||
onRenderTriggered, |
|||
onScopeDispose, |
|||
onServerPrefetch, |
|||
onUnmounted, |
|||
onUpdated, |
|||
onWatcherCleanup, |
|||
openBlock, |
|||
popScopeId, |
|||
provide, |
|||
proxyRefs, |
|||
pushScopeId, |
|||
queuePostFlushCb, |
|||
reactive, |
|||
readonly, |
|||
ref, |
|||
registerRuntimeCompiler, |
|||
render, |
|||
renderList, |
|||
renderSlot, |
|||
resolveComponent, |
|||
resolveDirective, |
|||
resolveDynamicComponent, |
|||
resolveFilter, |
|||
resolveTransitionHooks, |
|||
setBlockTracking, |
|||
setDevtoolsHook, |
|||
setTransitionHooks, |
|||
shallowReactive, |
|||
shallowReadonly, |
|||
shallowRef, |
|||
ssrContextKey, |
|||
ssrUtils, |
|||
stop, |
|||
toDisplayString, |
|||
toHandlerKey, |
|||
toHandlers, |
|||
toRaw, |
|||
toRef, |
|||
toRefs, |
|||
toValue, |
|||
transformVNodeArgs, |
|||
triggerRef, |
|||
unref, |
|||
useAttrs, |
|||
useCssModule, |
|||
useCssVars, |
|||
useHost, |
|||
useId, |
|||
useModel, |
|||
useSSRContext, |
|||
useShadowRoot, |
|||
useSlots, |
|||
useTemplateRef, |
|||
useTransitionState, |
|||
vModelCheckbox, |
|||
vModelDynamic, |
|||
vModelRadio, |
|||
vModelSelect, |
|||
vModelText, |
|||
vShow, |
|||
version, |
|||
warn, |
|||
watch, |
|||
watchEffect, |
|||
watchPostEffect, |
|||
watchSyncEffect, |
|||
withAsyncContext, |
|||
withCtx, |
|||
withDefaults, |
|||
withDirectives, |
|||
withKeys, |
|||
withMemo, |
|||
withModifiers, |
|||
withScopeId |
|||
}; |
|||
//# sourceMappingURL=vue.js.map
|
@ -0,0 +1,7 @@ |
|||
{ |
|||
"version": 3, |
|||
"sources": [], |
|||
"sourcesContent": [], |
|||
"mappings": "", |
|||
"names": [] |
|||
} |
@ -0,0 +1,81 @@ |
|||
<script setup> |
|||
const servers = [ |
|||
{ |
|||
name: "泰国", |
|||
ip: "43.133.103.128", |
|||
domain: "https://ag-th.jiagutech.com", |
|||
userpass: "13951707395 / w12345678", |
|||
config: "main-th", |
|||
app: "—", |
|||
containerized: "否", |
|||
server: "2台8G", |
|||
sync: "是", |
|||
deployTime: "23.04", |
|||
services: "user, drone, oper, tftz, route, udp, canal, sms, framework" |
|||
}, |
|||
{ |
|||
name: "印度1", |
|||
ip: "—", |
|||
domain: "http://ag.xagrotortek.com", |
|||
userpass: "1234512345 / Magicmoment19", |
|||
config: "india", |
|||
app: "india", |
|||
containerized: "是", |
|||
server: "1台", |
|||
sync: "否", |
|||
deployTime: "23.07", |
|||
services: "user, drone, oper, sms, encrypt, udp, framework" |
|||
}, |
|||
// 更多服务器数据... |
|||
] |
|||
</script> |
|||
|
|||
<style scoped> |
|||
.server-grid { |
|||
display: grid; |
|||
grid-template-columns: repeat(auto-fill, minmax(350px, 1fr)); |
|||
gap: 1rem; |
|||
margin-top: 1.5rem; |
|||
} |
|||
.server-card { |
|||
border: 1px solid var(--vp-c-divider); |
|||
border-radius: 8px; |
|||
padding: 1rem; |
|||
background-color: var(--vp-c-bg-soft); |
|||
color: var(--vp-c-text-1); |
|||
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.03); |
|||
transition: background-color 0.3s ease, color 0.3s ease; |
|||
} |
|||
.server-card h3 { |
|||
margin-top: 0; |
|||
margin-bottom: 0.5rem; |
|||
font-size: 1.1rem; |
|||
color: var(--vp-c-brand-1); |
|||
} |
|||
.server-card .label { |
|||
font-weight: bold; |
|||
color: var(--vp-c-text-2); |
|||
} |
|||
.server-card .value { |
|||
margin-bottom: 0.3rem; |
|||
word-break: break-word; |
|||
} |
|||
</style> |
|||
|
|||
<template> |
|||
<div class="server-grid"> |
|||
<div v-for="server in servers" :key="server.name" class="server-card"> |
|||
<h3>{{ server.name }}</h3> |
|||
<div class="value"><span class="label">公网 IP:</span>{{ server.ip }}</div> |
|||
<div class="value"><span class="label">域名:</span><a :href="server.domain" target="_blank">{{ server.domain.replace(/^https?:\/\//, '') }}</a></div> |
|||
<div class="value"><span class="label">用户名/密码:</span>{{ server.userpass }}</div> |
|||
<div class="value"><span class="label">配置:</span>{{ server.config }}</div> |
|||
<div class="value"><span class="label">App:</span>{{ server.app }}</div> |
|||
<div class="value"><span class="label">容器化:</span>{{ server.containerized }}</div> |
|||
<div class="value"><span class="label">服务器:</span>{{ server.server }}</div> |
|||
<div class="value"><span class="label">同步:</span>{{ server.sync }}</div> |
|||
<div class="value"><span class="label">部署时间:</span>{{ server.deployTime }}</div> |
|||
<div class="value"><span class="label">服务:</span>{{ server.services }}</div> |
|||
</div> |
|||
</div> |
|||
</template> |
@ -0,0 +1,38 @@ |
|||
import { defineConfig } from 'vitepress' |
|||
import sidebar from './sidebar.mts' |
|||
import nav from './nav.mts' |
|||
|
|||
export default defineConfig({ |
|||
title: "NIAR", |
|||
description: "项目技术栈、服务器信息、文档一站式平台", |
|||
// head: [["link", { rel: "icon", href: "/logo.svg" }]], // 浏览器标签页logo |
|||
themeConfig: { |
|||
logo: '/logo.png', // 放你自己的图标 |
|||
nav, |
|||
sidebar, |
|||
outlineTitle: "页面导航", // 右侧导航顶层标题 |
|||
outline: "deep", // 右侧导航标题显示 https://vitepress.dev/zh/reference/default-theme-config#outline |
|||
docFooter: { |
|||
prev: "上一页", |
|||
next: "下一页", |
|||
}, |
|||
socialLinks: [ |
|||
{ icon: 'gitea', link: 'http://gitlab.jiagutech.com/' }, |
|||
// { icon: 'github', link: 'https://github.com/vuejs/vitepress' }, |
|||
|
|||
], |
|||
search: { |
|||
provider: 'local' |
|||
}, |
|||
editLink: { |
|||
pattern: 'https://github.com/vuejs/vitepress/edit/main/docs/:path', |
|||
text: '在 Gitea 上编辑此页面' |
|||
}, |
|||
lastUpdated: '上次更新', |
|||
|
|||
// 可选开启暗黑模式切换(默认开启) |
|||
darkMode: true, |
|||
|
|||
// 可添加搜索插件等配置 |
|||
} |
|||
}) |
@ -0,0 +1,36 @@ |
|||
// nav.mts |
|||
export default [ |
|||
// { |
|||
// text: "三国演义", |
|||
// link: "/三国演义/三国演义-上卷/宴桃园豪杰三结义", |
|||
// activeMatch: "/三国演义", |
|||
// }, |
|||
// { text: '首页', link: '/' }, |
|||
{ text: '项目集合', link: '/projects/' }, |
|||
{ text: '服务器配置', link: '/server/full-server-list', activeMatch: '/server' }, |
|||
// { text: '项目管理', link: '/management/' }, |
|||
{ text: 'EXTRAS', link: '/extras/' } |
|||
// { |
|||
// text: "西游记", |
|||
// link: "/西游记/西游记-上卷/灵根育孕源流出", |
|||
// activeMatch: "/西游记", |
|||
// }, |
|||
// { |
|||
// text: "链接", |
|||
// // 内部配置items则该按钮是下拉 |
|||
// items: [ |
|||
// { |
|||
// text: "在线预览", |
|||
// link: "http://101.126.93.137/#/login", |
|||
// }, |
|||
// { |
|||
// text: "Gitee仓库", |
|||
// link: "https://gitee.com/wang_fan_w/SnowAdmin", |
|||
// }, |
|||
// { |
|||
// text: "GitHub仓库", |
|||
// link: "https://github.com/WANG-Fan0912/SnowAdmin", |
|||
// }, |
|||
// ], |
|||
// }, |
|||
]; |
@ -0,0 +1,38 @@ |
|||
// import { DefaultTheme } from 'vitepress' |
|||
|
|||
export default { |
|||
'/server/': [ |
|||
{ |
|||
text: '服务器集合', |
|||
// collapsed: false, |
|||
items: [ |
|||
{text: '全服务器信息', link: '/server/full-server-list'}, |
|||
{text: 'AG服务安装', link: '/server/server-ag-setup'} |
|||
] |
|||
} |
|||
], |
|||
'/project/': { |
|||
text: '项目集合', |
|||
items: [ |
|||
{ text: '文档列表', link: '/project/' } |
|||
] |
|||
}, |
|||
// { |
|||
// text: '服务器配置', |
|||
// items: [ |
|||
// { text: '服务器部署', link: '/servers/' } |
|||
// ] |
|||
// }, |
|||
// { |
|||
// text: '项目管理', |
|||
// items: [ |
|||
// { text: '版本计划', link: '/management/' } |
|||
// ] |
|||
// }, |
|||
// { |
|||
// text: '额外文档', |
|||
// items: [ |
|||
// { text: '笔记', link: '/extras/' } |
|||
// ] |
|||
// } |
|||
} |
@ -0,0 +1,3 @@ |
|||
/*.VPNavBarTitle span {*/ |
|||
/* display: none;*/ |
|||
/*}*/ |
@ -0,0 +1,14 @@ |
|||
// .vitepress/theme/index.js
|
|||
import DefaultTheme from 'vitepress/theme' |
|||
import './var.css'; |
|||
import './custom.css' // 可选,样式覆盖用
|
|||
import ServerList from '../../components/ServerList.vue' |
|||
// import Layout from './Layout.vue' // 如果你自定义了 Layout
|
|||
|
|||
export default { |
|||
extends: DefaultTheme, |
|||
// Layout, // 如果你有 Layout.vue,否则可以省略
|
|||
enhanceApp({ app }) { |
|||
app.component('ServerList', ServerList) |
|||
} |
|||
} |
@ -0,0 +1,43 @@ |
|||
:root { |
|||
/* 标题渐变 */ |
|||
--vp-home-hero-name-color: transparent; |
|||
--vp-home-hero-name-background: linear-gradient( |
|||
135deg, |
|||
#0099e5 0%, |
|||
#00c0fa 40%, |
|||
#00f0dc 100% |
|||
); |
|||
|
|||
/* 图标背景光晕 */ |
|||
/* 图标背景色:柔和蓝色 */ |
|||
--vp-home-hero-image-background-image: linear-gradient( |
|||
135deg, |
|||
#bbe2fe 10%, |
|||
#76c4fd 100% |
|||
); |
|||
|
|||
/* 加模糊,增强光晕效果 */ |
|||
--vp-home-hero-image-filter: blur(150px); |
|||
|
|||
|
|||
/* brand按钮颜色 */ |
|||
--vp-button-brand-border: #0099e5; |
|||
--vp-button-brand-bg: #0099e5; |
|||
|
|||
--vp-button-brand-hover-border: #00bbf2; |
|||
--vp-button-brand-hover-bg: #00bbf2; |
|||
|
|||
--vp-button-brand-active-border: #007acc; |
|||
--vp-button-brand-active-bg: #007acc; |
|||
|
|||
/* 主题色 */ |
|||
--vp-c-indigo-1: #0099e5; |
|||
--vp-c-indigo-2: #00bbf2; |
|||
--vp-c-indigo-3: #00e1fa; |
|||
|
|||
/* 可选绿色强调 */ |
|||
--vp-c-green-1: #6dc13b; |
|||
--vp-c-green-2: #94dd40; |
|||
--vp-c-green-soft: rgba(109, 193, 59, 0.1); |
|||
} |
|||
|
@ -0,0 +1,49 @@ |
|||
--- |
|||
outline: deep |
|||
--- |
|||
|
|||
# Runtime API Examples |
|||
|
|||
This page demonstrates usage of some of the runtime APIs provided by VitePress. |
|||
|
|||
The main `useData()` API can be used to access site, theme, and page data for the current page. It works in both `.md` and `.vue` files: |
|||
|
|||
```md |
|||
<script setup> |
|||
import { useData } from 'vitepress' |
|||
|
|||
const { theme, page, frontmatter } = useData() |
|||
</script> |
|||
|
|||
## Results |
|||
|
|||
### Theme Data |
|||
<pre>{{ theme }}</pre> |
|||
|
|||
### Page Data |
|||
<pre>{{ page }}</pre> |
|||
|
|||
### Page Frontmatter |
|||
<pre>{{ frontmatter }}</pre> |
|||
``` |
|||
|
|||
<script setup> |
|||
import { useData } from 'vitepress' |
|||
|
|||
const { site, theme, page, frontmatter } = useData() |
|||
</script> |
|||
|
|||
## Results |
|||
|
|||
### Theme Data |
|||
<pre>{{ theme }}</pre> |
|||
|
|||
### Page Data |
|||
<pre>{{ page }}</pre> |
|||
|
|||
### Page Frontmatter |
|||
<pre>{{ frontmatter }}</pre> |
|||
|
|||
## More |
|||
|
|||
Check out the documentation for the [full list of runtime APIs](https://vitepress.dev/reference/runtime-api#usedata). |
@ -0,0 +1,221 @@ |
|||
<script setup> |
|||
const servers = [ |
|||
{ |
|||
name: "泰国", |
|||
ip: "43.133.103.128", |
|||
domain: "https://ag-th.jiagutech.com", |
|||
userpass: "13951707395 / w12345678", |
|||
config: "main-th", |
|||
app: "", |
|||
containerized: "否", |
|||
server: "2台8G", |
|||
sync: "是", |
|||
deployTime: "23.04", |
|||
services: "user, drone, oper, tftz, route, udp, canal, sms, framework" |
|||
}, |
|||
{ |
|||
name: "印度1", |
|||
ip: "—", |
|||
domain: "http://ag.xagrotortek.com", |
|||
userpass: "1234512345 / Magicmoment19", |
|||
config: "india", |
|||
app: "india", |
|||
containerized: "是", |
|||
server: "1台", |
|||
sync: "否", |
|||
deployTime: "23.07", |
|||
services: "user, drone, oper, sms, encrypt, udp, framework" |
|||
}, |
|||
{ |
|||
name: "印度2", |
|||
ip: "213.210.37.43", |
|||
domain: "http://syferocompanionpro.com", |
|||
userpass: "admin@syfero.com / Syfero@641005# / zz:+91-13015475375 / w12345678", |
|||
config: "india-second", |
|||
app: "syfero", |
|||
containerized: "是", |
|||
server: "1台32G", |
|||
sync: "否", |
|||
deployTime: "24.06.03", |
|||
services: "同上" |
|||
}, |
|||
{ |
|||
name: "印度3", |
|||
ip: "13.201.99.132", |
|||
domain: "http://pixelrobotics.in", |
|||
userpass: "1234512345 / w12345678 / zz:+91-13015475375 / w12345678", |
|||
config: "india-third", |
|||
app: "hyperindia", |
|||
containerized: "是", |
|||
server: "1台", |
|||
sync: "否", |
|||
deployTime: "24.06.12", |
|||
services: "同上" |
|||
}, |
|||
{ |
|||
name: "印度4", |
|||
ip: "65.2.88.75", |
|||
domain: "http://mgcs.marutdrones.com", |
|||
userpass: "1234512345 / mgcs123456 / zz:13015475375@163.com / w12345678", |
|||
config: "india-fourth", |
|||
app: "marut", |
|||
containerized: "是", |
|||
server: "1台", |
|||
sync: "否", |
|||
deployTime: "24.06.26", |
|||
services: "同上" |
|||
}, |
|||
{ |
|||
name: "印度5", |
|||
ip: "192.250.226.217", |
|||
domain: "http://dgca.aipl.cloud", |
|||
userpass: "1234512345 / AIPL2024 / zz:+91-13015475375 / w12345678", |
|||
config: "india-fifth", |
|||
app: "aipl", |
|||
containerized: "是", |
|||
server: "1台", |
|||
sync: "否", |
|||
deployTime: "24.06.28", |
|||
services: "同上" |
|||
}, |
|||
{ |
|||
name: "印度6", |
|||
ip: "—", |
|||
domain: "http://ec2-13-201-114-254.ap-south-1.compute.amazonaws.com", |
|||
userpass: "1234512345 / asd123456 / zz:+86-13015475375 / asd123456", |
|||
config: "india-sixth", |
|||
app: "skylark", |
|||
containerized: "是", |
|||
server: "1台", |
|||
sync: "否", |
|||
deployTime: "25.03.24", |
|||
services: "同上" |
|||
}, |
|||
{ |
|||
name: "印度6-测试", |
|||
ip: "—", |
|||
domain: "http://ec2-3-7-78-25.ap-south-1.compute.amazonaws.com", |
|||
userpass: "1234512345 / asd123456 / zz:+86-13015475375 / asd123456", |
|||
config: "india-sixth-test", |
|||
app: "skylark", |
|||
containerized: "是", |
|||
server: "1台", |
|||
sync: "否", |
|||
deployTime: "25.01.09", |
|||
services: "同上" |
|||
}, |
|||
{ |
|||
name: "印度7", |
|||
ip: "195.35.21.57", |
|||
domain: "http://astroxaerospace.in", |
|||
userpass: "astrox.aerospace@gmail.com / Astrox@10 / zz:+86-13015475375 / asd123456", |
|||
config: "india-seventh", |
|||
app: "astrox", |
|||
containerized: "是", |
|||
server: "1台", |
|||
sync: "否", |
|||
deployTime: "25.01.09", |
|||
services: "同上" |
|||
}, |
|||
{ |
|||
name: "韩国1", |
|||
ip: "115.68.110.53", |
|||
domain: "http://ag-ko.jiagutech.com", |
|||
userpass: "1035376315 / b12341234", |
|||
config: "korea", |
|||
app: "", |
|||
containerized: "是", |
|||
server: "1台32G", |
|||
sync: "是", |
|||
deployTime: "24.04.25", |
|||
services: "user, drone, oper, tftz, route, canal, udp, sms, framework" |
|||
}, |
|||
{ |
|||
name: "韩国2", |
|||
ip: "221.143.40.104", |
|||
domain: "http://ag.mirair.co.kr", |
|||
userpass: "13951707395 / mirair12345678", |
|||
config: "korea-second", |
|||
app: "", |
|||
containerized: "是", |
|||
server: "1台16G", |
|||
sync: "是", |
|||
deployTime: "24.06.12", |
|||
services: "同上" |
|||
}, |
|||
{ |
|||
name: "韩国3", |
|||
ip: "211.253.9.184", |
|||
domain: "http://helselkorea.com", |
|||
userpass: "1234512345 / asd123456", |
|||
config: "korea-third", |
|||
app: "", |
|||
containerized: "是", |
|||
server: "1台32G", |
|||
sync: "是", |
|||
deployTime: "24.08.27", |
|||
services: "同上" |
|||
}, |
|||
{ |
|||
name: "台湾1", |
|||
ip: "4.145.84.141", |
|||
domain: "http://utm.7adrones.com", |
|||
userpass: "999999999 / pw123456", |
|||
config: "taiwan", |
|||
app: "", |
|||
containerized: "是", |
|||
server: "2台", |
|||
sync: "是", |
|||
deployTime: "24.05.11", |
|||
services: "同上" |
|||
} |
|||
]; |
|||
</script> |
|||
|
|||
<template> |
|||
<div class="server-grid"> |
|||
<div v-for="server in servers" :key="server.name" class="server-card"> |
|||
<h3>{{ server.name }}</h3> |
|||
<div><strong>IP:</strong> {{ server.ip }}</div> |
|||
<div><strong>域名:</strong> <a :href="server.domain" target="_blank">{{ server.domain }}</a></div> |
|||
<div><strong>账号:</strong> {{ server.userpass }}</div> |
|||
<div><strong>配置:</strong> {{ server.config }}</div> |
|||
<div><strong>App:</strong> {{ server.app || "—" }}</div> |
|||
<div><strong>容器化:</strong> {{ server.containerized }}</div> |
|||
<div><strong>服务器:</strong> {{ server.server }}</div> |
|||
<div><strong>同步:</strong> {{ server.sync }}</div> |
|||
<div><strong>部署时间:</strong> {{ server.deployTime }}</div> |
|||
<div><strong>服务:</strong> {{ server.services }}</div> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
|
|||
<style scoped> |
|||
.server-grid { |
|||
display: grid; |
|||
grid-template-columns: repeat(auto-fill, minmax(350px, 1fr)); |
|||
gap: 1rem; |
|||
margin-top: 1.5rem; |
|||
} |
|||
.server-card { |
|||
border: 1px solid var(--vp-c-divider); |
|||
border-radius: 8px; |
|||
padding: 1rem; |
|||
background-color: var(--vp-c-bg-soft); |
|||
color: var(--vp-c-text-1); |
|||
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05); |
|||
transition: background-color 0.3s ease, color 0.3s ease; |
|||
} |
|||
.server-card h3 { |
|||
margin: 0 0 0.5rem; |
|||
font-size: 1.1rem; |
|||
color: var(--vp-c-brand-1); |
|||
} |
|||
.server-card a { |
|||
color: var(--vp-c-brand-2); |
|||
text-decoration: none; |
|||
} |
|||
.server-card a:hover { |
|||
text-decoration: underline; |
|||
} |
|||
</style> |
@ -0,0 +1,32 @@ |
|||
--- |
|||
layout: home |
|||
|
|||
hero: |
|||
name: "NIAR" |
|||
text: "项目配置与服务器信息" |
|||
tagline: 项目集合、服务器信息、EX文档一站式平台 |
|||
image: |
|||
src: /logo.png |
|||
alt: NIAR |
|||
actions: |
|||
- theme: brand |
|||
text: 开始使用 |
|||
link: /project/ |
|||
- theme: alt |
|||
text: Gitea |
|||
target: _blank |
|||
link: http://gitlab.jiagutech.com/ |
|||
|
|||
features: |
|||
- icon: 📁 |
|||
title: 项目集合 |
|||
details: 记录所有团队项目的文档、部署链接、技术说明,一站式查看。 |
|||
- icon: 🖥️ |
|||
title: 服务器配置 |
|||
details: 记录服务器部署、端口映射、域名解析、防火墙等相关信息。 |
|||
- icon: 🧾 |
|||
title: EXTRAS |
|||
details: 记录临时笔记、调研材料、接口定义、组件说明等扩展资料。 |
|||
--- |
|||
|
|||
|
@ -0,0 +1,85 @@ |
|||
# Markdown Extension Examples |
|||
|
|||
This page demonstrates some of the built-in markdown extensions provided by VitePress. |
|||
|
|||
## Syntax Highlighting |
|||
|
|||
VitePress provides Syntax Highlighting powered by [Shiki](https://github.com/shikijs/shiki), with additional features like line-highlighting: |
|||
|
|||
**Input** |
|||
|
|||
````md |
|||
```js{4} |
|||
export default { |
|||
data () { |
|||
return { |
|||
msg: 'Highlighted!' |
|||
} |
|||
} |
|||
} |
|||
``` |
|||
```` |
|||
|
|||
**Output** |
|||
|
|||
```js{4} |
|||
export default { |
|||
data () { |
|||
return { |
|||
msg: 'Highlighted!' |
|||
} |
|||
} |
|||
} |
|||
``` |
|||
|
|||
## Custom Containers |
|||
|
|||
**Input** |
|||
|
|||
```md |
|||
::: info |
|||
This is an info box. |
|||
::: |
|||
|
|||
::: tip |
|||
This is a tip. |
|||
::: |
|||
|
|||
::: warning |
|||
This is a warning. |
|||
::: |
|||
|
|||
::: danger |
|||
This is a dangerous warning. |
|||
::: |
|||
|
|||
::: details |
|||
This is a details block. |
|||
::: |
|||
``` |
|||
|
|||
**Output** |
|||
|
|||
::: info |
|||
This is an info box. |
|||
::: |
|||
|
|||
::: tip |
|||
This is a tip. |
|||
::: |
|||
|
|||
::: warning |
|||
This is a warning. |
|||
::: |
|||
|
|||
::: danger |
|||
This is a dangerous warning. |
|||
::: |
|||
|
|||
::: details |
|||
This is a details block. |
|||
::: |
|||
|
|||
## More |
|||
|
|||
Check out the documentation for the [full list of markdown extensions](https://vitepress.dev/guide/markdown). |
After Width: | Height: | Size: 9.4 KiB |
After Width: | Height: | Size: 323 KiB |
After Width: | Height: | Size: 2.2 KiB |
@ -0,0 +1,4 @@ |
|||
# 现在维护的服务器信息 |
|||
|
|||
## |
|||
<ServerList /> |
@ -0,0 +1,339 @@ |
|||
# AG服务安装 |
|||
## 1、基础环境(以debian为例) |
|||
|
|||
### 1.1、基本能力安装 |
|||
|
|||
``` bash |
|||
# 安装curl,下面也有安装 |
|||
sudo apt install curl |
|||
# 可选 |
|||
sudo apt install lrzsz |
|||
# 安装 https curl等工具、库 |
|||
sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg2 |
|||
``` |
|||
|
|||
### 1.2、docker |
|||
|
|||
1. 安装docker |
|||
``` shell |
|||
# 1、添加 Docker 的官方 GPG 密钥 |
|||
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add - |
|||
# 或是以下这个 |
|||
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg |
|||
|
|||
|
|||
# 2、设置 Docker 的 APT 仓库 |
|||
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable" |
|||
# 或是使用这个 |
|||
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null |
|||
|
|||
|
|||
# 3、更新索引 |
|||
sudo apt-get update |
|||
# 4、安装 Docker |
|||
sudo apt-get install docker-ce |
|||
|
|||
``` |
|||
|
|||
2. 配置及启动docker |
|||
```shell |
|||
# 添加当前用户到docker组中 |
|||
sudo usermod -aG docker xxx |
|||
# 启动docker |
|||
systemctl start docker |
|||
# 开机启动 |
|||
systemctl enable docker |
|||
# 验证 |
|||
docker --version |
|||
|
|||
``` |
|||
|
|||
3. 镜像仓库 |
|||
- 默认的仓库[Docker Hub](https://hub.docker.com/),如果有需要配置自己或加速的镜像仓库地址可通过以下操作配置,目前国外的无需配置 |
|||
`sudo nano /etc/docker/daemon.json` |
|||
|
|||
- 内容: |
|||
```json |
|||
{ |
|||
#本地私有镜像仓库 |
|||
"insecure-registries":["harbor.jiagutech.com"], |
|||
#公有仓库 |
|||
"registry-mirrors": ["https://a8gtbrrd.mirror.aliyuncs.com"] |
|||
} |
|||
``` |
|||
|
|||
4. 创建桥接网络,后续docker-compose进行容器编排部署时需要使用此网络,**同一个网络中的容器可以通过容器名称进行访问**,而不需写死ip |
|||
`docker network create --driver=bridge jiagu` |
|||
|
|||
### 1.3、docker-compose |
|||
1. 安装软件,通过以下命令下载docker-compose |
|||
` sudo curl -L "https://github.com/docker/compose/releases/download/v2.26.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose ` |
|||
或 |
|||
`wget https://github.com/docker/compose/releases/download/v2.26.0/docker-compose-$(uname -s)-$(uname -m)` |
|||
|
|||
**如果以上命令下载失败,需要手动去下载,然后放到/usr/local/bin目录下** |
|||
|
|||
2. 验证是否成功 |
|||
`docker-compose --version` |
|||
3. docker-compose的配置 |
|||
1. **中间件** [[#6.1、middleware的docker-compose.yml|查看]] |
|||
2. **AG服务** [[#6.2、AG相关服务的docker-compose.yml|查看]] |
|||
|
|||
## 2、中间件 |
|||
|
|||
### 2.1、mysql |
|||
1. init脚本,需要挂载到/docker-entrypoint-initdb.d的目录下,这样mysql容器启动时会执行脚本,**可能有语句执行不成功,需要自己手动去执行** |
|||
```sql |
|||
CREATE USER 'jiagu'@'%' IDENTIFIED BY 'jiagu@1058'; |
|||
CREATE USER 'canal'@'%' IDENTIFIED BY 'canal'; |
|||
GRANT ALL PRIVILEGES ON *.* TO 'jiagu'@'%'; |
|||
GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'canal'@'%'; |
|||
FLUSH PRIVILEGES; |
|||
CREATE DATABASE main_drone_jiagu ; |
|||
CREATE DATABASE framework_db ; |
|||
``` |
|||
|
|||
2. 设置my.conf,允许主从同步 |
|||
```bash |
|||
[mysqld] |
|||
# 开启binlog |
|||
log-bin=mysql-bin |
|||
# 选择ROW(行)模式 |
|||
binlog-format=ROW |
|||
# 配置MySQL replaction需要定义,不要和canal的slaveId重复 |
|||
server_id=1 |
|||
``` |
|||
|
|||
3. 数据库数据导入 |
|||
4. |
|||
### 2.2、redis |
|||
|
|||
1. 批量删除key |
|||
`redis-cli -n 15 -a Jiagu0158 keys 'fight*'|xargs redis-cli -n 15 -a Jiagu0158 del` |
|||
2. |
|||
### 2.3、tdengine |
|||
1. 创建用户 |
|||
`create user jiagu pass 'jiagu2058' ; show users;` |
|||
2. 创建数据库 |
|||
`create database track_db;` |
|||
`create database track_hot_db_xxxx_xx_xx; #xxxx_xx_xx为当天日期` |
|||
1. 创建超级表 |
|||
`CREATE STABLE `track` (`ts` TIMESTAMP, `lat` DOUBLE, `lng` DOUBLE, `alt` INT, `height` INT, `hvel` INT, `vvel` INT, `satellite` INT, `loctype` INT, `yaw` INT, `pitch` INT, `roll` INT, `onair` BOOL, `ftime` INT, `area` FLOAT, `flow` INT, `dose` INT, `warning` INT, `pump` INT) TAGS (`droneid` VARCHAR(50))` |
|||
### 2.4、rabbitmq |
|||
### 2.5、meilisearch |
|||
### 2.6、canal |
|||
|
|||
|
|||
## 3、Framework |
|||
|
|||
## 4、Center |
|||
### 4.1、udp服务 |
|||
|
|||
1. 增加对应环境的yml文件 |
|||
``` yaml |
|||
# 1.需要悠mysql的地址及用户名密码 |
|||
# 2.修改tdengine的地址及用户名密码 |
|||
# 3.redis的地址及密码 |
|||
# 4.rabbitmq的地址及密码 |
|||
# 5.framework服务的地址及密码 |
|||
|
|||
``` |
|||
2. pom中添加对应的profile节点 |
|||
3. logback-spring.xml添加对应的springProfile节点 |
|||
## 5、AG服务 |
|||
|
|||
## 6、附录 |
|||
|
|||
### 6.1、middleware的docker-compose.yml |
|||
|
|||
```yml |
|||
version: '3' |
|||
|
|||
services: |
|||
mysql: |
|||
image: mysql/mysql-server:8.0.22 |
|||
container_name: mysql |
|||
restart: always |
|||
environment: |
|||
MYSQL_ROOT_PASSWORD: Jiagu*2058 |
|||
MYSQL_DATABASE: main_drone_jiagu |
|||
ports: |
|||
- "3306:3306" |
|||
command: |
|||
--default-authentication-plugin=mysql_native_password |
|||
--lower_case_table_names=1 |
|||
--character-set-server=utf8mb4 |
|||
--collation-server=utf8mb4_general_ci |
|||
volumes: |
|||
- /home/azureuser/data/mysql/data:/var/lib/mysql |
|||
- /home/azureuser/data/mysql/conf/my.cnf:/etc/mysql/my.cnf |
|||
- /home/azureuser/data/mysql/logs:/var/log/mysql |
|||
- /home/azureuser/data/mysql/mysql-files:/var/lib/mysql-files |
|||
- ./init.sql:/docker-entrypoint-initdb.d/init.sql |
|||
redis: |
|||
image: redis:6.2.14 |
|||
container_name: redis |
|||
ports: |
|||
- 6379:6379 |
|||
environment: |
|||
TZ: Asia/Shanghai |
|||
volumes: |
|||
- /home/azureuser/data/redis/data:/data:rw |
|||
command: "redis-server --requirepass Jiagu0158 --appendonly yes" |
|||
privileged: true |
|||
restart: always |
|||
|
|||
rabbitmq: |
|||
restart: always |
|||
image: rabbitmq:management |
|||
container_name: rabbitmq |
|||
hostname: rabbit |
|||
ports: |
|||
- 5672:5672 |
|||
- 15672:15672 |
|||
environment: |
|||
TZ: Asia/Shanghai |
|||
RABBITMQ_DEFAULT_USER: jiagu |
|||
RABBITMQ_DEFAULT_PASS: jiagu2058 |
|||
volumes: |
|||
- /home/azureuser/data/rabbitmq/data:/var/lib/rabbitmq |
|||
|
|||
tdengine: |
|||
restart: always |
|||
image: tdengine/tdengine:3.2.2.0 |
|||
container_name: tdengine |
|||
hostname: tdengine |
|||
ports: |
|||
- 6030-6041:6030-6041 |
|||
- 6030-6041:6030-6041/udp |
|||
environment: |
|||
TZ: Asia/Shanghai |
|||
volumes: |
|||
- /home/azureuser/data/tdengine/data:/var/lib/taos |
|||
- /home/azureuser/data/tdengine/log:/var/log/taos |
|||
- /home/azureuser/data/tdengine/client:/tmp/ |
|||
meilisearch: |
|||
restart: always |
|||
image: getmeili/meilisearch:v1.5.1 |
|||
container_name: meilisearch |
|||
ports: |
|||
- 7700:7700 |
|||
environment: |
|||
TZ: Asia/Shanghai |
|||
MEILI_MASTER_KEY: |
|||
volumes: |
|||
- /home/azureuser/data/meilisearch/data:/meili_data |
|||
canal-server: |
|||
image: canal/canal-server |
|||
container_name: canal-server |
|||
privileged: true |
|||
restart: always |
|||
depends_on: |
|||
- mysql |
|||
ports: |
|||
- 11111:11111 |
|||
volumes: |
|||
- /home/azureuser/data/canal/example/instance.properties:/home/admin/canal-server/conf/example/instance.properties |
|||
- /home/azureuser/data/canal/log/:/home/admin/canal-server/log/canal/ |
|||
networks: |
|||
default: |
|||
external: true |
|||
name: jiagu |
|||
|
|||
``` |
|||
|
|||
### 6.2、AG相关服务的docker-compose.yml |
|||
|
|||
```yml |
|||
version: '3' |
|||
|
|||
services: |
|||
drone: |
|||
build: |
|||
context: ./ag/drone |
|||
dockerfile: Dockerfile |
|||
container_name: drone |
|||
hostname: drone |
|||
restart: always |
|||
ports: |
|||
- "8083:8083" |
|||
volumes: |
|||
- /home/azureuser/service/logs/drone:/app/log |
|||
tftz: |
|||
build: |
|||
context: ./ag/tftz |
|||
dockerfile: Dockerfile |
|||
container_name: tftz |
|||
hostname: tftz |
|||
restart: always |
|||
ports: |
|||
- "8085:8085" |
|||
volumes: |
|||
- /home/azureuser/service/logs/tftz:/app/log |
|||
oper: |
|||
build: |
|||
context: ./ag/oper |
|||
dockerfile: Dockerfile |
|||
container_name: oper |
|||
hostname: oper |
|||
restart: always |
|||
ports: |
|||
- "8084:8084" |
|||
volumes: |
|||
- /home/azureuser/service/logs/oper:/app/log |
|||
user: |
|||
build: |
|||
context: ./ag/user |
|||
dockerfile: Dockerfile |
|||
container_name: user |
|||
hostname: user |
|||
restart: always |
|||
ports: |
|||
- "8082:8082" |
|||
volumes: |
|||
- /home/azureuser/service/logs/user:/app/log |
|||
route: |
|||
build: |
|||
context: ./ag/route |
|||
dockerfile: Dockerfile |
|||
container_name: route |
|||
hostname: route |
|||
restart: always |
|||
ports: |
|||
- "8088:8088" |
|||
volumes: |
|||
- /home/azureuser/service/logs/route:/app/log |
|||
canal: |
|||
build: |
|||
context: ./ag/canal |
|||
dockerfile: Dockerfile |
|||
container_name: canal |
|||
hostname: canal |
|||
restart: always |
|||
ports: |
|||
- "8012:8012" |
|||
volumes: |
|||
- /home/azureuser/service/logs/canal:/app/log |
|||
udp: |
|||
build: |
|||
context: ./center/udp |
|||
dockerfile: Dockerfile |
|||
container_name: centerudp |
|||
restart: always |
|||
ports: |
|||
- "5003:5003" |
|||
- "9527:9527/udp" |
|||
volumes: |
|||
- /home/azureuser/service/logs/udp:/app/log |
|||
framework: |
|||
build: |
|||
context: ./framework/framework |
|||
dockerfile: Dockerfile |
|||
container_name: framework |
|||
hostname: framework |
|||
restart: always |
|||
ports: |
|||
- "9002:9002" |
|||
volumes: |
|||
- /home/azureuser/service/logs/framework:/app/log |
|||
``` |
File diff suppressed because it is too large
@ -0,0 +1,10 @@ |
|||
{ |
|||
"scripts": { |
|||
"docs:dev": "vitepress dev docs", |
|||
"docs:build": "vitepress build docs", |
|||
"docs:preview": "vitepress preview docs" |
|||
}, |
|||
"devDependencies": { |
|||
"vitepress": "^1.6.3" |
|||
} |
|||
} |
Loading…
Reference in new issue