Compare commits
10 Commits
40150cd66d
..
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 58cae670c5 | |||
| 1f8d0d678d | |||
| 13fd61b571 | |||
| edde4644e1 | |||
| 018a7d5f9b | |||
| 67864994aa | |||
| 1811e351aa | |||
| ebefc60860 | |||
| b6161b0f70 | |||
| 122b73d254 |
@@ -0,0 +1,33 @@
|
|||||||
|
.git
|
||||||
|
.gitignore
|
||||||
|
.dockerignore
|
||||||
|
Dockerfile
|
||||||
|
docker-compose.yml
|
||||||
|
|
||||||
|
.env
|
||||||
|
.env.*
|
||||||
|
|
||||||
|
venv/
|
||||||
|
.venv/
|
||||||
|
__pycache__/
|
||||||
|
**/__pycache__/
|
||||||
|
*.py[cod]
|
||||||
|
*.pyo
|
||||||
|
.pytest_cache/
|
||||||
|
.mypy_cache/
|
||||||
|
|
||||||
|
backend/instance/
|
||||||
|
|
||||||
|
*.log
|
||||||
|
*.zip
|
||||||
|
*.XLSM
|
||||||
|
*.xlsx
|
||||||
|
!data/**/*.XLSM
|
||||||
|
!data/**/*.xlsx
|
||||||
|
sam.txt
|
||||||
|
|
||||||
|
# The Docker image intentionally includes committed data contents. Keep local
|
||||||
|
# env files out of the build context because they may contain credentials.
|
||||||
|
!data/
|
||||||
|
!data/**
|
||||||
|
data/**/.env
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
# Flask
|
|
||||||
SECRET_KEY=your_secret_key
|
|
||||||
FLASK_HOST=0.0.0.0
|
|
||||||
FLASK_PORT=6050
|
|
||||||
FLASK_DEBUG=true
|
|
||||||
|
|
||||||
|
|
||||||
# Paths
|
|
||||||
APP_DATA_DIR=./data
|
|
||||||
|
|
||||||
|
|
||||||
# SocketIO (threading / eventlet / gevent)
|
|
||||||
SOCKETIO_ASYNC_MODE=threading
|
|
||||||
|
|
||||||
|
|
||||||
# Database (운영 시 외부 DB 권장)
|
|
||||||
# DATABASE_URL=postgresql+psycopg://user:pass@host/db
|
|
||||||
|
|
||||||
|
|
||||||
# Telegram (민감정보, 필수 시에만 설정)
|
|
||||||
TELEGRAM_BOT_TOKEN=6719918880:AAHC1on-KlzH0G3ylJP57p-q5qMyorFUGZo
|
|
||||||
TELEGRAM_CHAT_ID=298120612
|
|
||||||
|
|
||||||
# iDRAC 기본 연결 정보 (추가!)
|
|
||||||
IDRAC_DEFAULT_USERNAME=root
|
|
||||||
IDRAC_DEFAULT_PASSWORD=calvin
|
|
||||||
@@ -0,0 +1,97 @@
|
|||||||
|
name: Docker Build
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
pull_request:
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
packages: write
|
||||||
|
|
||||||
|
env:
|
||||||
|
REGISTRY: gitea.mouse84.com
|
||||||
|
IMAGE_NAME: kim.kanghee/idrac-info
|
||||||
|
DOCKERFILE: Dockerfile
|
||||||
|
BUILD_CONTEXT: .
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
docker-build:
|
||||||
|
name: Build Docker image
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout repository
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
git init .
|
||||||
|
git remote add origin "${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}.git"
|
||||||
|
git fetch --depth 1 origin "${GITHUB_REF}"
|
||||||
|
git checkout --force "${GITHUB_SHA}"
|
||||||
|
|
||||||
|
- name: Prepare Docker tag
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
SHORT_SHA="$(printf '%s' "${GITHUB_SHA:-local}" | cut -c1-12)"
|
||||||
|
IMAGE_REPO="${REGISTRY}/${IMAGE_NAME}"
|
||||||
|
echo "IMAGE_REPO=${IMAGE_REPO}" >> "${GITHUB_ENV}"
|
||||||
|
echo "IMAGE_TAG=${IMAGE_REPO}:${SHORT_SHA}" >> "${GITHUB_ENV}"
|
||||||
|
echo "IMAGE_LATEST=${IMAGE_REPO}:latest" >> "${GITHUB_ENV}"
|
||||||
|
echo "SHORT_SHA=${SHORT_SHA}" >> "${GITHUB_ENV}"
|
||||||
|
|
||||||
|
- name: Show Docker version
|
||||||
|
run: docker version
|
||||||
|
|
||||||
|
- name: Validate iDRAC Tools packages
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
test -f iDRACTools/racadm/UBUNTU24/x86_64/srvadmin-hapi_11.4.0.0_amd64.deb
|
||||||
|
test -f iDRACTools/racadm/UBUNTU24/x86_64/srvadmin-idracadm7_11.4.0.0_all.deb
|
||||||
|
test -f iDRACTools/racadm/UBUNTU24/x86_64/srvadmin-idracadm8_11.4.0.0_amd64.deb
|
||||||
|
test -f iDRACTools/ipmitool/UBUNTU24_x86_64/ipmitool_1.8.18_amd64.deb
|
||||||
|
|
||||||
|
- name: Build Docker image
|
||||||
|
run: |
|
||||||
|
docker build \
|
||||||
|
--pull \
|
||||||
|
--file "${DOCKERFILE}" \
|
||||||
|
--tag "${IMAGE_TAG}" \
|
||||||
|
--tag "${IMAGE_LATEST}" \
|
||||||
|
"${BUILD_CONTEXT}"
|
||||||
|
|
||||||
|
- name: Inspect built image
|
||||||
|
run: |
|
||||||
|
docker image inspect "${IMAGE_TAG}" > /dev/null
|
||||||
|
docker images "${IMAGE_REPO}"
|
||||||
|
|
||||||
|
- name: Login to Gitea Container Registry
|
||||||
|
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
REGISTRY_USERNAME="${{ secrets.REGISTRY_USERNAME }}"
|
||||||
|
REGISTRY_PASSWORD="${{ secrets.REGISTRY_TOKEN }}"
|
||||||
|
|
||||||
|
if [ -z "${REGISTRY_USERNAME}" ]; then
|
||||||
|
REGISTRY_USERNAME="${{ github.actor }}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "${REGISTRY_PASSWORD}" ]; then
|
||||||
|
REGISTRY_PASSWORD="${{ secrets.GITHUB_TOKEN }}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "${REGISTRY_PASSWORD}" ]; then
|
||||||
|
echo "REGISTRY_TOKEN or GITHUB_TOKEN is required for docker login." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "${REGISTRY_PASSWORD}" | docker login "${REGISTRY}" \
|
||||||
|
--username "${REGISTRY_USERNAME}" \
|
||||||
|
--password-stdin
|
||||||
|
|
||||||
|
- name: Push Docker image
|
||||||
|
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
|
||||||
|
run: |
|
||||||
|
docker push "${IMAGE_TAG}"
|
||||||
|
docker push "${IMAGE_LATEST}"
|
||||||
+22
@@ -0,0 +1,22 @@
|
|||||||
|
.env
|
||||||
|
*.env
|
||||||
|
venv/
|
||||||
|
__pycache__/
|
||||||
|
*.py[cod]
|
||||||
|
*.pyo
|
||||||
|
|
||||||
|
backend/instance/*.db
|
||||||
|
*.sqlite
|
||||||
|
*.sqlite3
|
||||||
|
|
||||||
|
.pytest_cache/
|
||||||
|
.coverage
|
||||||
|
htmlcov/
|
||||||
|
|
||||||
|
*.log
|
||||||
|
|
||||||
|
# The Docker image bundles data contents. Keep data files visible to Git, but
|
||||||
|
# never commit local env files that may contain credentials.
|
||||||
|
!data/
|
||||||
|
!data/**
|
||||||
|
data/**/.env
|
||||||
@@ -0,0 +1,104 @@
|
|||||||
|
이 프로젝트에서 파일 관리 페이지의 UI/UX를 리디자인해줘.
|
||||||
|
|
||||||
|
목표:
|
||||||
|
현재 페이지를 "도구 영역"과 "결과 확인 영역"으로 명확히 분리하고,
|
||||||
|
탭 / KPI / 필터 / 검색 / 빈 상태가 한눈에 이해되도록 구조를 개선해줘.
|
||||||
|
기존 기능은 유지하고, 마크업 구조와 스타일 중심으로 정리해줘.
|
||||||
|
|
||||||
|
현재 화면 요약:
|
||||||
|
- 상단에 "파일 관리 도구" 카드가 있고, ZIP / 백업 / QUICK MOVE(MAC, GUID, GPU) 기능이 있음
|
||||||
|
- 그 아래에 "FILE WORKSPACE" 영역이 있고, "처리된 파일 / 백업 및 저장소" 탭이 있음
|
||||||
|
- KPI 카드로 MAC 파일 / GUID 파일 / GPU 파일 수가 보임
|
||||||
|
- 검색창이 따로 있음
|
||||||
|
- 하단에는 파일 리스트 대신 empty state가 보이며 "처리된 파일이 없습니다"와 "IP 처리로 이동" 버튼이 있음
|
||||||
|
|
||||||
|
현재 문제:
|
||||||
|
1. 도구 영역과 결과 확인 영역의 구분은 생겼지만, 사용자의 행동 흐름 기준으로는 아직 약간 분산되어 보임
|
||||||
|
2. 탭 / KPI / 검색 / 설명 문구의 위계가 조금 애매함
|
||||||
|
3. KPI 카드가 정보 표시는 되지만 클릭 가능한지, 필터와 연결되는지 직관성이 약함
|
||||||
|
4. 검색창이 현재 보는 범위와 강하게 연결되어 보이지 않음
|
||||||
|
5. empty state는 나쁘지 않지만 더 명확한 안내와 액션 구조로 정리 가능함
|
||||||
|
|
||||||
|
원하는 구조:
|
||||||
|
1. 상단 카드 = 파일 관리 도구
|
||||||
|
- ZIP
|
||||||
|
- 백업
|
||||||
|
- QUICK MOVE(MAC / GUID / GPU)
|
||||||
|
- 이 영역은 "작업 실행" 용도라는 것이 명확해야 함
|
||||||
|
|
||||||
|
2. 하단 메인 카드 = 결과 확인 워크스페이스
|
||||||
|
- 상단 헤더: 페이지 제목 + 짧은 설명
|
||||||
|
- 같은 줄 또는 바로 아래: 메인 탭
|
||||||
|
- 처리된 파일
|
||||||
|
- 백업 및 저장소
|
||||||
|
- 그 아래: KPI 카드
|
||||||
|
- MAC
|
||||||
|
- GUID
|
||||||
|
- GPU
|
||||||
|
- 그 아래: 필터 + 검색
|
||||||
|
- 예: 전체 / MAC / GUID / GPU
|
||||||
|
- 검색창은 현재 활성 탭/필터 기준 검색이라는 점이 드러나야 함
|
||||||
|
- 마지막: 데이터 리스트 또는 empty state
|
||||||
|
|
||||||
|
원하는 UX 방향:
|
||||||
|
- 사용자가 첫눈에 "여기는 결과 확인 영역"이라는 점을 이해할 수 있게 해줘
|
||||||
|
- 탭 → KPI → 필터/검색 → 결과 목록 순서로 자연스럽게 읽히게 해줘
|
||||||
|
- KPI 카드는 클릭하거나 선택 가능한 카드처럼 보이게 해줘
|
||||||
|
- 검색창 placeholder를 더 구체적으로 바꿔줘
|
||||||
|
예: "처리된 파일명, MAC, GUID 검색"
|
||||||
|
- empty state는 더 친절하고 명확하게 보여줘
|
||||||
|
예:
|
||||||
|
- 아이콘
|
||||||
|
- 제목
|
||||||
|
- 설명
|
||||||
|
- 1차 액션 버튼
|
||||||
|
|
||||||
|
디자인 방향:
|
||||||
|
- Bootstrap 기반 유지
|
||||||
|
- 지금보다 조금 더 정돈된 관리자 페이지 느낌
|
||||||
|
- 과한 장식보다 실무형 UI
|
||||||
|
- 카드/버튼/탭의 시각적 계층을 명확히
|
||||||
|
- spacing, alignment, radius, hover state를 정리
|
||||||
|
- 색상은 기존 의미를 유지
|
||||||
|
- MAC = blue 계열
|
||||||
|
- GUID = green 계열
|
||||||
|
- GPU = red/pink 계열
|
||||||
|
|
||||||
|
수정 범위:
|
||||||
|
- templates/index.html
|
||||||
|
- static/ css
|
||||||
|
- 필요 시 js 최소 수정
|
||||||
|
- Flask 백엔드 로직, 라우트, 데이터 구조는 수정하지 말 것
|
||||||
|
|
||||||
|
반드시 유지:
|
||||||
|
- 기존 Jinja 변수명
|
||||||
|
- 기존 form submit 방식
|
||||||
|
- 기존 endpoint 이름
|
||||||
|
- 기존 버튼 동작 로직
|
||||||
|
- 기존 데이터 바인딩 구조
|
||||||
|
|
||||||
|
금지사항:
|
||||||
|
- 새 라이브러리 추가 금지
|
||||||
|
- 전체 페이지를 처음부터 갈아엎는 전면 재작성 금지
|
||||||
|
- 백엔드 로직 변경 금지
|
||||||
|
- 기존 기능 삭제 금지
|
||||||
|
|
||||||
|
완료조건:
|
||||||
|
1. 도구 영역과 결과 영역이 시각적으로 명확히 분리될 것
|
||||||
|
2. 결과 영역은 "탭 → KPI → 필터/검색 → 결과" 흐름이 분명할 것
|
||||||
|
3. KPI 카드가 단순 숫자 표시가 아니라 탐색 요소처럼 보일 것
|
||||||
|
4. 검색창이 현재 탭/필터와 연결되어 보일 것
|
||||||
|
5. empty state가 더 직관적일 것
|
||||||
|
6. 기존 기능은 그대로 동작할 것
|
||||||
|
7. 모바일/좁은 화면에서도 크게 깨지지 않을 것
|
||||||
|
|
||||||
|
작업 방식:
|
||||||
|
1. 먼저 관련 파일을 읽고 현재 구조를 짧게 요약
|
||||||
|
2. 변경 계획을 5~8줄로 먼저 제시
|
||||||
|
3. 그 다음 최소 diff 원칙으로 수정
|
||||||
|
4. 마지막에 변경 파일 목록과 핵심 변경점, 확인할 테스트 포인트를 정리
|
||||||
|
|
||||||
|
가능하면 다음도 반영해줘:
|
||||||
|
- KPI 카드 클릭 시 해당 필터가 활성화되도록 연결할 수 있으면 연결
|
||||||
|
- empty state 버튼 문구와 보조 문구를 더 자연스럽게 개선
|
||||||
|
- 검색창 라벨/placeholder를 활성 탭에 따라 달리 보이게 할 수 있으면 반영
|
||||||
@@ -0,0 +1,165 @@
|
|||||||
|
# Docker Usage
|
||||||
|
|
||||||
|
The default compose file pulls the image from the Gitea Container Registry:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
docker compose pull
|
||||||
|
docker compose up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
Default image:
|
||||||
|
|
||||||
|
```text
|
||||||
|
gitea.mouse84.com/kim.kanghee/idrac-info:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
Use a specific image tag:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
$env:IDRAC_INFO_IMAGE = "gitea.mouse84.com/kim.kanghee/idrac-info:<commit-sha>"
|
||||||
|
docker compose pull
|
||||||
|
docker compose up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
Build locally instead of pulling:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
docker compose -f docker-compose.yml -f docker-compose.build.yml up --build -d
|
||||||
|
```
|
||||||
|
|
||||||
|
Build only:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
docker build -t gitea.mouse84.com/kim.kanghee/idrac-info:local .
|
||||||
|
```
|
||||||
|
|
||||||
|
Run the pulled image without Compose:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
docker run --rm --network host `
|
||||||
|
-e FLASK_PORT=6050 `
|
||||||
|
-e APP_DATA_DIR=/app/data `
|
||||||
|
-e AUTO_BOOTSTRAP_DB=true `
|
||||||
|
-v ${PWD}/backend/instance:/app/backend/instance `
|
||||||
|
gitea.mouse84.com/kim.kanghee/idrac-info:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
Open the app:
|
||||||
|
|
||||||
|
```text
|
||||||
|
http://localhost:6050
|
||||||
|
```
|
||||||
|
|
||||||
|
The compose service uses host networking:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
network_mode: "host"
|
||||||
|
```
|
||||||
|
|
||||||
|
Because of that, `ports:` mappings are not used. Change `FLASK_PORT` if another
|
||||||
|
process already uses `6050` on the host.
|
||||||
|
|
||||||
|
Run in the background:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
docker compose up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
Stop the container:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
docker compose down
|
||||||
|
```
|
||||||
|
|
||||||
|
View logs:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
docker compose logs -f idrac-info
|
||||||
|
```
|
||||||
|
|
||||||
|
## Persistent Data
|
||||||
|
|
||||||
|
The image includes the committed `data` directory, including scripts and
|
||||||
|
server-list files, so the default compose file does not mount `./data` over
|
||||||
|
`/app/data`.
|
||||||
|
|
||||||
|
The compose file only mounts the Flask instance directory:
|
||||||
|
|
||||||
|
```text
|
||||||
|
./backend/instance -> /app/backend/instance
|
||||||
|
```
|
||||||
|
|
||||||
|
This preserves the default SQLite database and other instance files across
|
||||||
|
container restarts.
|
||||||
|
|
||||||
|
## Environment
|
||||||
|
|
||||||
|
The container defaults to port `6050`. To use a different host port:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
$env:FLASK_PORT = "8080"
|
||||||
|
docker compose up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
Then open:
|
||||||
|
|
||||||
|
```text
|
||||||
|
http://localhost:8080
|
||||||
|
```
|
||||||
|
|
||||||
|
Common variables:
|
||||||
|
|
||||||
|
```text
|
||||||
|
SECRET_KEY=change-me
|
||||||
|
AUTO_BOOTSTRAP_DB=true
|
||||||
|
REDFISH_VERIFY_SSL=false
|
||||||
|
REDFISH_TIMEOUT=15
|
||||||
|
TELEGRAM_BOT_TOKEN=
|
||||||
|
TELEGRAM_CHAT_ID=
|
||||||
|
```
|
||||||
|
|
||||||
|
## Notes
|
||||||
|
|
||||||
|
The image is based on Ubuntu 24.04 and installs Dell iDRAC Tools from the local
|
||||||
|
`iDRACTools` directory during image build. It also copies the committed `data`
|
||||||
|
directory into `/app/data` during image build:
|
||||||
|
|
||||||
|
```text
|
||||||
|
iDRACTools/racadm/UBUNTU24/x86_64/*.deb
|
||||||
|
iDRACTools/ipmitool/UBUNTU24_x86_64/*.deb
|
||||||
|
data/ -> /app/data
|
||||||
|
```
|
||||||
|
|
||||||
|
`racadm` is expected on:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/opt/dell/srvadmin/sbin/racadm
|
||||||
|
```
|
||||||
|
|
||||||
|
The Dockerfile adds `/opt/dell/srvadmin/sbin` to `PATH`, so existing scripts can
|
||||||
|
call `racadm` directly.
|
||||||
|
|
||||||
|
After building, verify the tools inside the image:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
docker run --rm gitea.mouse84.com/kim.kanghee/idrac-info:latest sh -lc "command -v racadm && command -v ipmitool && ipmitool -V"
|
||||||
|
```
|
||||||
|
|
||||||
|
## Registry
|
||||||
|
|
||||||
|
Gitea Actions builds and pushes these tags on `main`:
|
||||||
|
|
||||||
|
```text
|
||||||
|
gitea.mouse84.com/kim.kanghee/idrac-info:latest
|
||||||
|
gitea.mouse84.com/kim.kanghee/idrac-info:<short-sha>
|
||||||
|
```
|
||||||
|
|
||||||
|
If the package is private, log in before pulling:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
docker login gitea.mouse84.com
|
||||||
|
```
|
||||||
|
|
||||||
|
Host networking works as expected on Linux Docker hosts. Docker Desktop on
|
||||||
|
Windows can behave differently, so production deployment should use a Linux host
|
||||||
|
or runner when direct access to the iDRAC network is required.
|
||||||
+72
@@ -0,0 +1,72 @@
|
|||||||
|
FROM ubuntu:24.04
|
||||||
|
|
||||||
|
ENV PYTHONDONTWRITEBYTECODE=1 \
|
||||||
|
PYTHONUNBUFFERED=1 \
|
||||||
|
PIP_NO_CACHE_DIR=1 \
|
||||||
|
DEBIAN_FRONTEND=noninteractive \
|
||||||
|
FLASK_HOST=0.0.0.0 \
|
||||||
|
FLASK_PORT=6050 \
|
||||||
|
FLASK_DEBUG=false \
|
||||||
|
APP_DATA_DIR=/app/data \
|
||||||
|
SOCKETIO_ASYNC_MODE=threading \
|
||||||
|
PATH="/opt/venv/bin:/opt/dell/srvadmin/sbin:${PATH}"
|
||||||
|
|
||||||
|
ARG IDRAC_TOOLS_UBUNTU_VERSION=UBUNTU24
|
||||||
|
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
RUN apt-get update \
|
||||||
|
&& apt-get install -y --no-install-recommends \
|
||||||
|
bash \
|
||||||
|
ca-certificates \
|
||||||
|
libargtable2-0 \
|
||||||
|
libssl3t64 \
|
||||||
|
lsb-base \
|
||||||
|
openssl \
|
||||||
|
pciutils \
|
||||||
|
python3 \
|
||||||
|
python3-pip \
|
||||||
|
python3-venv \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
COPY iDRACTools /tmp/iDRACTools
|
||||||
|
|
||||||
|
# Dell iDRAC Tools packages try to start HAPI with systemctl during postinst.
|
||||||
|
# The image only needs remote racadm/ipmitool, so a build-time shim is enough.
|
||||||
|
RUN printf '#!/bin/sh\nexit 0\n' > /usr/bin/systemctl \
|
||||||
|
&& chmod +x /usr/bin/systemctl
|
||||||
|
|
||||||
|
RUN apt-get update \
|
||||||
|
&& apt-get install -y --no-install-recommends \
|
||||||
|
/tmp/iDRACTools/racadm/${IDRAC_TOOLS_UBUNTU_VERSION}/x86_64/srvadmin-hapi_*.deb \
|
||||||
|
/tmp/iDRACTools/racadm/${IDRAC_TOOLS_UBUNTU_VERSION}/x86_64/srvadmin-idracadm7_*.deb \
|
||||||
|
/tmp/iDRACTools/racadm/${IDRAC_TOOLS_UBUNTU_VERSION}/x86_64/srvadmin-idracadm8_*.deb \
|
||||||
|
/tmp/iDRACTools/ipmitool/${IDRAC_TOOLS_UBUNTU_VERSION}_x86_64/ipmitool_*.deb \
|
||||||
|
&& rm -f /usr/bin/systemctl \
|
||||||
|
&& rm -rf /tmp/iDRACTools /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
RUN python3 -m venv /opt/venv
|
||||||
|
|
||||||
|
COPY requirements.txt .
|
||||||
|
RUN pip install --upgrade pip \
|
||||||
|
&& pip install -r requirements.txt
|
||||||
|
|
||||||
|
COPY app.py config.py ./
|
||||||
|
COPY backend ./backend
|
||||||
|
COPY migrations ./migrations
|
||||||
|
COPY data ./data
|
||||||
|
|
||||||
|
RUN mkdir -p /app/data /app/backend/instance \
|
||||||
|
&& find /app/data -type f \( -name "*.sh" -o -name "*.py" \) -exec chmod +x {} \; \
|
||||||
|
&& test -d /app/data/scripts \
|
||||||
|
&& test -d /app/data/server_list \
|
||||||
|
&& test -d /app/data/repository/xml \
|
||||||
|
&& find /app/data/scripts -maxdepth 1 -type f \( -name "*.sh" -o -name "*.py" \) -print -quit | grep -q . \
|
||||||
|
&& find /app/data/repository/xml -type f -name "*.xml" -print -quit | grep -q .
|
||||||
|
|
||||||
|
EXPOSE 6050
|
||||||
|
|
||||||
|
HEALTHCHECK --interval=30s --timeout=5s --start-period=20s --retries=3 \
|
||||||
|
CMD python -c "import os, socket; s = socket.create_connection(('127.0.0.1', int(os.getenv('FLASK_PORT', '6050'))), 5); s.close()"
|
||||||
|
|
||||||
|
CMD ["python", "app.py"]
|
||||||
Binary file not shown.
@@ -0,0 +1,17 @@
|
|||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
|
from datetime import datetime
|
||||||
|
|
||||||
|
from sqlalchemy import DateTime, String, Text
|
||||||
|
from sqlalchemy.orm import Mapped, mapped_column
|
||||||
|
|
||||||
|
from backend.models.user import db
|
||||||
|
|
||||||
|
|
||||||
|
class SystemSetting(db.Model):
|
||||||
|
__tablename__ = "system_setting"
|
||||||
|
|
||||||
|
key: Mapped[str] = mapped_column(String(80), primary_key=True)
|
||||||
|
value: Mapped[str] = mapped_column(Text, nullable=False, default="")
|
||||||
|
updated_at: Mapped[datetime] = mapped_column(DateTime, default=datetime.utcnow, onupdate=datetime.utcnow)
|
||||||
|
|
||||||
+83
-1
@@ -19,6 +19,7 @@ from flask_login import login_required, current_user
|
|||||||
|
|
||||||
from backend.models.user import User, db
|
from backend.models.user import User, db
|
||||||
from backend.models.telegram_bot import TelegramBot
|
from backend.models.telegram_bot import TelegramBot
|
||||||
|
from backend.models.system_setting import SystemSetting
|
||||||
try:
|
try:
|
||||||
from telegram import Bot
|
from telegram import Bot
|
||||||
except ImportError:
|
except ImportError:
|
||||||
@@ -27,6 +28,19 @@ except ImportError:
|
|||||||
admin_bp = Blueprint("admin", __name__)
|
admin_bp = Blueprint("admin", __name__)
|
||||||
|
|
||||||
|
|
||||||
|
def get_system_setting(key: str, default: str = "") -> str:
|
||||||
|
setting = db.session.get(SystemSetting, key)
|
||||||
|
return setting.value if setting else default
|
||||||
|
|
||||||
|
|
||||||
|
def set_system_setting(key: str, value: str) -> None:
|
||||||
|
setting = db.session.get(SystemSetting, key)
|
||||||
|
if setting:
|
||||||
|
setting.value = value
|
||||||
|
else:
|
||||||
|
db.session.add(SystemSetting(key=key, value=value))
|
||||||
|
|
||||||
|
|
||||||
# Blueprint 등록
|
# Blueprint 등록
|
||||||
def register_admin_routes(app):
|
def register_admin_routes(app):
|
||||||
app.register_blueprint(admin_bp)
|
app.register_blueprint(admin_bp)
|
||||||
@@ -69,6 +83,34 @@ def approve_user(user_id: int):
|
|||||||
return redirect(url_for("admin.admin_panel"))
|
return redirect(url_for("admin.admin_panel"))
|
||||||
|
|
||||||
|
|
||||||
|
# 사용자 관리자 승격
|
||||||
|
@admin_bp.route("/admin/users/<int:user_id>/promote", methods=["POST"])
|
||||||
|
@login_required
|
||||||
|
@admin_required
|
||||||
|
def promote_user(user_id: int):
|
||||||
|
user = db.session.get(User, user_id)
|
||||||
|
if not user:
|
||||||
|
abort(404)
|
||||||
|
|
||||||
|
if user.id == current_user.id:
|
||||||
|
flash("본인 계정은 승격 대상이 아닙니다.", "warning")
|
||||||
|
return redirect(url_for("admin.admin_panel"))
|
||||||
|
|
||||||
|
if user.is_admin:
|
||||||
|
flash("이미 관리자 권한을 가진 사용자입니다.", "info")
|
||||||
|
return redirect(url_for("admin.admin_panel"))
|
||||||
|
|
||||||
|
user.is_admin = True
|
||||||
|
db.session.commit()
|
||||||
|
flash(f"{user.username} 사용자를 관리자로 승격했습니다.", "success")
|
||||||
|
logging.info(
|
||||||
|
"ADMIN: promoted user_id=%s to admin by admin_id=%s",
|
||||||
|
user.id,
|
||||||
|
current_user.id,
|
||||||
|
)
|
||||||
|
return redirect(url_for("admin.admin_panel"))
|
||||||
|
|
||||||
|
|
||||||
# 사용자 삭제
|
# 사용자 삭제
|
||||||
@admin_bp.route("/admin/delete/<int:user_id>", methods=["GET"])
|
@admin_bp.route("/admin/delete/<int:user_id>", methods=["GET"])
|
||||||
@login_required
|
@login_required
|
||||||
@@ -142,8 +184,48 @@ def settings():
|
|||||||
except Exception:
|
except Exception:
|
||||||
db.create_all()
|
db.create_all()
|
||||||
bots = []
|
bots = []
|
||||||
|
|
||||||
|
try:
|
||||||
|
tsr_share_settings = {
|
||||||
|
"share_url": get_system_setting("tsr_share_url", "//10.10.3.15/share/"),
|
||||||
|
"share_user": get_system_setting("tsr_share_user", ""),
|
||||||
|
"share_password": get_system_setting("tsr_share_password", ""),
|
||||||
|
}
|
||||||
|
except Exception:
|
||||||
|
db.create_all()
|
||||||
|
tsr_share_settings = {
|
||||||
|
"share_url": "//10.10.3.15/share/",
|
||||||
|
"share_user": "",
|
||||||
|
"share_password": "",
|
||||||
|
}
|
||||||
|
|
||||||
return render_template("admin_settings.html", bots=bots)
|
return render_template("admin_settings.html", bots=bots, tsr_share_settings=tsr_share_settings)
|
||||||
|
|
||||||
|
|
||||||
|
@admin_bp.route("/admin/settings/tsr-share", methods=["POST"])
|
||||||
|
@login_required
|
||||||
|
@admin_required
|
||||||
|
def save_tsr_share_settings():
|
||||||
|
share_url = (request.form.get("share_url") or "").strip()
|
||||||
|
share_user = (request.form.get("share_user") or "").strip()
|
||||||
|
share_password = request.form.get("share_password") or ""
|
||||||
|
|
||||||
|
if not share_url:
|
||||||
|
flash("TSR 저장 Share URL을 입력하세요.", "warning")
|
||||||
|
return redirect(url_for("admin.settings"))
|
||||||
|
|
||||||
|
try:
|
||||||
|
set_system_setting("tsr_share_url", share_url)
|
||||||
|
set_system_setting("tsr_share_user", share_user)
|
||||||
|
set_system_setting("tsr_share_password", share_password)
|
||||||
|
db.session.commit()
|
||||||
|
flash("TSR 저장소 설정이 저장되었습니다.", "success")
|
||||||
|
except Exception as e:
|
||||||
|
db.session.rollback()
|
||||||
|
current_app.logger.exception("TSR share settings save failed: %s", e)
|
||||||
|
flash("TSR 저장소 설정 저장 중 오류가 발생했습니다.", "danger")
|
||||||
|
|
||||||
|
return redirect(url_for("admin.settings"))
|
||||||
|
|
||||||
|
|
||||||
@admin_bp.route("/admin/settings/bot/add", methods=["POST"])
|
@admin_bp.route("/admin/settings/bot/add", methods=["POST"])
|
||||||
|
|||||||
+264
-9
@@ -38,6 +38,55 @@ def register_main_routes(app, socketio):
|
|||||||
session.modified = True
|
session.modified = True
|
||||||
|
|
||||||
|
|
||||||
|
def _is_safe_backup_folder_name(folder_name: str) -> bool:
|
||||||
|
if not folder_name or folder_name == "archive":
|
||||||
|
return False
|
||||||
|
if ".." in folder_name:
|
||||||
|
return False
|
||||||
|
return "/" not in folder_name and "\\" not in folder_name
|
||||||
|
|
||||||
|
|
||||||
|
def _get_repository_folder(repo_type: str) -> tuple[str, Path] | tuple[None, None]:
|
||||||
|
repositories = {
|
||||||
|
"mac": ("MAC", Path(Config.MAC_FOLDER)),
|
||||||
|
"guid": ("GUID", Path(Config.GUID_FOLDER)),
|
||||||
|
"gpu": ("GPU", Path(Config.GPU_FOLDER)),
|
||||||
|
}
|
||||||
|
return repositories.get(repo_type, (None, None))
|
||||||
|
|
||||||
|
|
||||||
|
def _safe_upload_filename(filename: str) -> str:
|
||||||
|
return Path(filename or "").name.strip()
|
||||||
|
|
||||||
|
|
||||||
|
def _unique_upload_path(target_dir: Path, filename: str) -> Path:
|
||||||
|
candidate = target_dir / filename
|
||||||
|
if not candidate.exists():
|
||||||
|
return candidate
|
||||||
|
|
||||||
|
stem = candidate.stem
|
||||||
|
suffix = candidate.suffix
|
||||||
|
index = 1
|
||||||
|
while True:
|
||||||
|
renamed = target_dir / f"{stem}_{index}{suffix}"
|
||||||
|
if not renamed.exists():
|
||||||
|
return renamed
|
||||||
|
index += 1
|
||||||
|
|
||||||
|
|
||||||
|
def _safe_repo_file_path(source_dir: Path, filename: str) -> Path | None:
|
||||||
|
safe_name = Path(filename or "").name
|
||||||
|
if not safe_name:
|
||||||
|
return None
|
||||||
|
|
||||||
|
target = (source_dir / safe_name).resolve()
|
||||||
|
try:
|
||||||
|
target.relative_to(source_dir.resolve())
|
||||||
|
except Exception:
|
||||||
|
return None
|
||||||
|
return target if target.is_file() else None
|
||||||
|
|
||||||
|
|
||||||
@main_bp.route("/")
|
@main_bp.route("/")
|
||||||
@main_bp.route("/index", methods=["GET"])
|
@main_bp.route("/index", methods=["GET"])
|
||||||
@login_required
|
@login_required
|
||||||
@@ -100,6 +149,7 @@ def index():
|
|||||||
# 4. 백업 폴더 목록
|
# 4. 백업 폴더 목록
|
||||||
backup_dirs = [d for d in backup_dir.iterdir() if d.is_dir() and d.name != "archive"]
|
backup_dirs = [d for d in backup_dir.iterdir() if d.is_dir() and d.name != "archive"]
|
||||||
backup_dirs.sort(key=lambda p: p.stat().st_mtime, reverse=True)
|
backup_dirs.sort(key=lambda p: p.stat().st_mtime, reverse=True)
|
||||||
|
backup_folder_names = [d.name for d in backup_dirs]
|
||||||
|
|
||||||
backup_page = int(request.args.get("backup_page", 1))
|
backup_page = int(request.args.get("backup_page", 1))
|
||||||
start_b = (backup_page - 1) * Config.BACKUP_FILES_PER_PAGE
|
start_b = (backup_page - 1) * Config.BACKUP_FILES_PER_PAGE
|
||||||
@@ -123,6 +173,7 @@ def index():
|
|||||||
total_backup_pages=total_backup_pages,
|
total_backup_pages=total_backup_pages,
|
||||||
backup_page=backup_page,
|
backup_page=backup_page,
|
||||||
server_info_files=backup_files, # Server Info (Paginated)
|
server_info_files=backup_files, # Server Info (Paginated)
|
||||||
|
backup_folder_names=backup_folder_names,
|
||||||
scripts=all_scripts, # 기존 리스트 호환
|
scripts=all_scripts, # 기존 리스트 호환
|
||||||
grouped_scripts=grouped_scripts_sorted, # 카테고리별 분류
|
grouped_scripts=grouped_scripts_sorted, # 카테고리별 분류
|
||||||
xml_files=xml_files,
|
xml_files=xml_files,
|
||||||
@@ -252,22 +303,46 @@ def progress_status(job_id: str):
|
|||||||
@main_bp.route("/backup", methods=["POST"])
|
@main_bp.route("/backup", methods=["POST"])
|
||||||
@login_required
|
@login_required
|
||||||
def backup_files():
|
def backup_files():
|
||||||
prefix = request.form.get("backup_prefix", "")
|
selected_folder = request.form.get("backup_target_folder", "").strip()
|
||||||
if not prefix.startswith("PO"):
|
new_folder = request.form.get("backup_prefix", "").strip()
|
||||||
flash("Backup 이름은 PO로 시작해야 합니다.")
|
is_new_folder = not selected_folder or selected_folder == "__new__"
|
||||||
|
|
||||||
|
folder_name = new_folder if is_new_folder else selected_folder
|
||||||
|
if not _is_safe_backup_folder_name(folder_name):
|
||||||
|
flash("사용할 수 없는 백업 폴더명입니다.")
|
||||||
|
return redirect(url_for("main.index"))
|
||||||
|
if is_new_folder and not folder_name.startswith("PO"):
|
||||||
|
flash("새 백업 폴더명은 PO로 시작해야 합니다.")
|
||||||
|
return redirect(url_for("main.index"))
|
||||||
|
|
||||||
|
backup_root = Path(Config.BACKUP_FOLDER).resolve()
|
||||||
|
backup_path = (backup_root / folder_name).resolve()
|
||||||
|
if backup_root not in backup_path.parents:
|
||||||
|
flash("사용할 수 없는 백업 경로입니다.")
|
||||||
return redirect(url_for("main.index"))
|
return redirect(url_for("main.index"))
|
||||||
|
|
||||||
folder_name = f"{prefix}_{time.strftime('%Y%m%d')}"
|
|
||||||
backup_path = Path(Config.BACKUP_FOLDER) / folder_name
|
|
||||||
backup_path.mkdir(parents=True, exist_ok=True)
|
backup_path.mkdir(parents=True, exist_ok=True)
|
||||||
|
|
||||||
info_dir = Path(Config.IDRAC_INFO_FOLDER)
|
info_dir = Path(Config.IDRAC_INFO_FOLDER)
|
||||||
|
moved_count = 0
|
||||||
|
skipped_count = 0
|
||||||
for file in info_dir.iterdir():
|
for file in info_dir.iterdir():
|
||||||
if file.is_file():
|
if file.is_file():
|
||||||
shutil.move(str(file), str(backup_path / file.name))
|
target_file = backup_path / file.name
|
||||||
|
if target_file.exists():
|
||||||
|
skipped_count += 1
|
||||||
|
continue
|
||||||
|
shutil.move(str(file), str(target_file))
|
||||||
|
moved_count += 1
|
||||||
|
|
||||||
flash("백업 완료되었습니다.")
|
if moved_count:
|
||||||
logging.info(f"백업 완료: {folder_name}")
|
message = f"'{folder_name}' 폴더에 {moved_count}개 파일을 백업했습니다."
|
||||||
|
if skipped_count:
|
||||||
|
message += f" 중복 파일 {skipped_count}개는 건너뛰었습니다."
|
||||||
|
flash(message)
|
||||||
|
else:
|
||||||
|
flash("백업할 처리된 파일이 없습니다.")
|
||||||
|
logging.info(f"백업 완료: {folder_name}, moved={moved_count}, skipped={skipped_count}")
|
||||||
return redirect(url_for("main.index"))
|
return redirect(url_for("main.index"))
|
||||||
|
|
||||||
|
|
||||||
@@ -417,4 +492,184 @@ def archive_backup_folder(folder_name: str):
|
|||||||
flash("폴더 이동 중 오류가 발생했습니다.", "danger")
|
flash("폴더 이동 중 오류가 발생했습니다.", "danger")
|
||||||
else:
|
else:
|
||||||
flash("폴더가 존재하지 않습니다.", "warning")
|
flash("폴더가 존재하지 않습니다.", "warning")
|
||||||
return redirect(url_for("main.index"))
|
return redirect(url_for("main.index"))
|
||||||
|
|
||||||
|
|
||||||
|
@main_bp.route("/archive_repository/<repo_type>", methods=["POST"])
|
||||||
|
@login_required
|
||||||
|
def archive_repository(repo_type: str):
|
||||||
|
label, source_dir = _get_repository_folder(repo_type)
|
||||||
|
if not label or not source_dir:
|
||||||
|
flash("알 수 없는 저장소입니다.", "warning")
|
||||||
|
return redirect(url_for("main.index"))
|
||||||
|
|
||||||
|
files = [f for f in source_dir.iterdir() if f.is_file()] if source_dir.exists() else []
|
||||||
|
if not files:
|
||||||
|
flash(f"{label} 저장소에 아카이브할 파일이 없습니다.", "warning")
|
||||||
|
return redirect(url_for("main.index"))
|
||||||
|
|
||||||
|
timestamp = time.strftime("%Y%m%d_%H%M%S")
|
||||||
|
archive_dir = Path(Config.ARCHIVE_FOLDER) / "repository" / repo_type / timestamp
|
||||||
|
archive_dir.mkdir(parents=True, exist_ok=True)
|
||||||
|
|
||||||
|
moved_count = 0
|
||||||
|
try:
|
||||||
|
for file in files:
|
||||||
|
shutil.move(str(file), str(archive_dir / file.name))
|
||||||
|
moved_count += 1
|
||||||
|
|
||||||
|
flash(f"{label} 파일 {moved_count}개를 아카이브로 이동했습니다.", "success")
|
||||||
|
logging.info(f"{label} 저장소 아카이빙 성공: {moved_count} files -> {archive_dir}")
|
||||||
|
except Exception as e:
|
||||||
|
logging.error(f"{label} 저장소 아카이빙 오류: {e}")
|
||||||
|
flash("저장소 파일을 아카이브로 이동하는 중 오류가 발생했습니다.", "danger")
|
||||||
|
|
||||||
|
return redirect(url_for("main.index"))
|
||||||
|
|
||||||
|
|
||||||
|
@main_bp.route("/download_repository_files/<repo_type>", methods=["POST"])
|
||||||
|
@login_required
|
||||||
|
def download_repository_files(repo_type: str):
|
||||||
|
label, source_dir = _get_repository_folder(repo_type)
|
||||||
|
if not label or not source_dir:
|
||||||
|
flash("알 수 없는 저장소입니다.", "warning")
|
||||||
|
return redirect(url_for("main.index", workspace=repo_type))
|
||||||
|
|
||||||
|
selected_paths = []
|
||||||
|
for filename in request.form.getlist("files"):
|
||||||
|
file_path = _safe_repo_file_path(source_dir, filename)
|
||||||
|
if file_path:
|
||||||
|
selected_paths.append(file_path)
|
||||||
|
|
||||||
|
if not selected_paths:
|
||||||
|
flash("다운로드할 파일을 선택하세요.", "warning")
|
||||||
|
return redirect(url_for("main.index", workspace=repo_type))
|
||||||
|
|
||||||
|
if len(selected_paths) == 1:
|
||||||
|
return send_from_directory(str(source_dir), selected_paths[0].name, as_attachment=True)
|
||||||
|
|
||||||
|
timestamp = time.strftime("%Y%m%d_%H%M%S")
|
||||||
|
zip_path = Path(Config.TEMP_ZIP_FOLDER) / f"{repo_type}_selected_{timestamp}.zip"
|
||||||
|
with zipfile.ZipFile(zip_path, "w", compression=zipfile.ZIP_DEFLATED) as zipf:
|
||||||
|
for file_path in selected_paths:
|
||||||
|
zipf.write(file_path, arcname=file_path.name)
|
||||||
|
|
||||||
|
try:
|
||||||
|
return send_file(str(zip_path), as_attachment=True, download_name=zip_path.name)
|
||||||
|
finally:
|
||||||
|
try:
|
||||||
|
if zip_path.exists():
|
||||||
|
zip_path.unlink()
|
||||||
|
except Exception as e:
|
||||||
|
logging.warning("선택 파일 ZIP 삭제 실패: %s", e)
|
||||||
|
|
||||||
|
|
||||||
|
@main_bp.route("/delete_repository_file/<repo_type>", methods=["POST"])
|
||||||
|
@login_required
|
||||||
|
def delete_repository_file(repo_type: str):
|
||||||
|
label, source_dir = _get_repository_folder(repo_type)
|
||||||
|
if not label or not source_dir:
|
||||||
|
flash("알 수 없는 저장소입니다.", "warning")
|
||||||
|
return redirect(url_for("main.index", workspace=repo_type))
|
||||||
|
|
||||||
|
file_path = _safe_repo_file_path(source_dir, request.form.get("filename", ""))
|
||||||
|
if not file_path:
|
||||||
|
flash("삭제할 파일을 찾을 수 없습니다.", "warning")
|
||||||
|
return redirect(url_for("main.index", workspace=repo_type))
|
||||||
|
|
||||||
|
try:
|
||||||
|
file_path.unlink()
|
||||||
|
flash(f"{label} 파일 '{file_path.name}'을 삭제했습니다.", "success")
|
||||||
|
except Exception as e:
|
||||||
|
logging.error("%s 저장소 파일 삭제 오류: %s", label, e)
|
||||||
|
flash("파일 삭제 중 오류가 발생했습니다.", "danger")
|
||||||
|
|
||||||
|
return redirect(url_for("main.index", workspace=repo_type))
|
||||||
|
|
||||||
|
|
||||||
|
@main_bp.route("/delete_repository_files/<repo_type>", methods=["POST"])
|
||||||
|
@login_required
|
||||||
|
def delete_repository_files(repo_type: str):
|
||||||
|
label, source_dir = _get_repository_folder(repo_type)
|
||||||
|
if not label or not source_dir:
|
||||||
|
flash("알 수 없는 저장소입니다.", "warning")
|
||||||
|
return redirect(url_for("main.index", workspace=repo_type))
|
||||||
|
|
||||||
|
deleted_count = 0
|
||||||
|
skipped_count = 0
|
||||||
|
for filename in request.form.getlist("files"):
|
||||||
|
file_path = _safe_repo_file_path(source_dir, filename)
|
||||||
|
if not file_path:
|
||||||
|
skipped_count += 1
|
||||||
|
continue
|
||||||
|
|
||||||
|
try:
|
||||||
|
file_path.unlink()
|
||||||
|
deleted_count += 1
|
||||||
|
except Exception as e:
|
||||||
|
skipped_count += 1
|
||||||
|
logging.error("%s 저장소 선택 파일 삭제 오류: %s -> %s", label, filename, e)
|
||||||
|
|
||||||
|
if deleted_count:
|
||||||
|
message = f"{label} 파일 {deleted_count}개를 삭제했습니다."
|
||||||
|
if skipped_count:
|
||||||
|
message += f" {skipped_count}개는 건너뛰었습니다."
|
||||||
|
flash(message, "success")
|
||||||
|
else:
|
||||||
|
flash("삭제할 파일을 선택하세요.", "warning")
|
||||||
|
|
||||||
|
return redirect(url_for("main.index", workspace=repo_type))
|
||||||
|
|
||||||
|
|
||||||
|
@main_bp.route("/upload_workspace_files/<target_type>", methods=["POST"])
|
||||||
|
@login_required
|
||||||
|
def upload_workspace_files(target_type: str):
|
||||||
|
if target_type == "server_info":
|
||||||
|
folder_name = request.form.get("folder_name", "").strip()
|
||||||
|
if not _is_safe_backup_folder_name(folder_name):
|
||||||
|
flash("업로드할 서버 정보 폴더를 확인할 수 없습니다.", "warning")
|
||||||
|
return redirect(url_for("main.index"))
|
||||||
|
|
||||||
|
base_dir = Path(Config.BACKUP_FOLDER).resolve()
|
||||||
|
target_dir = (base_dir / folder_name).resolve()
|
||||||
|
if base_dir not in target_dir.parents or not target_dir.is_dir():
|
||||||
|
flash("업로드할 서버 정보 폴더가 존재하지 않습니다.", "warning")
|
||||||
|
return redirect(url_for("main.index"))
|
||||||
|
label = f"서버 정보 '{folder_name}'"
|
||||||
|
else:
|
||||||
|
label, target_dir = _get_repository_folder(target_type)
|
||||||
|
if not label or not target_dir:
|
||||||
|
flash("알 수 없는 업로드 대상입니다.", "warning")
|
||||||
|
return redirect(url_for("main.index"))
|
||||||
|
target_dir.mkdir(parents=True, exist_ok=True)
|
||||||
|
|
||||||
|
duplicate_policy = request.form.get("duplicate_policy", "rename")
|
||||||
|
should_overwrite = duplicate_policy == "overwrite"
|
||||||
|
uploaded_files = request.files.getlist("files")
|
||||||
|
saved_count = 0
|
||||||
|
skipped_count = 0
|
||||||
|
|
||||||
|
for uploaded in uploaded_files:
|
||||||
|
filename = _safe_upload_filename(uploaded.filename)
|
||||||
|
if not filename:
|
||||||
|
skipped_count += 1
|
||||||
|
continue
|
||||||
|
|
||||||
|
destination = target_dir / filename if should_overwrite else _unique_upload_path(target_dir, filename)
|
||||||
|
try:
|
||||||
|
uploaded.save(destination)
|
||||||
|
saved_count += 1
|
||||||
|
except Exception as e:
|
||||||
|
skipped_count += 1
|
||||||
|
logging.error("워크스페이스 파일 업로드 실패: %s -> %s", filename, e)
|
||||||
|
|
||||||
|
if saved_count:
|
||||||
|
message = f"{label}에 파일 {saved_count}개를 업로드했습니다."
|
||||||
|
if skipped_count:
|
||||||
|
message += f" {skipped_count}개는 건너뛰었습니다."
|
||||||
|
flash(message, "success")
|
||||||
|
else:
|
||||||
|
flash("업로드할 파일을 선택하지 않았거나 저장할 수 없습니다.", "warning")
|
||||||
|
|
||||||
|
logging.info("워크스페이스 업로드 완료: target=%s saved=%s skipped=%s", target_type, saved_count, skipped_count)
|
||||||
|
return redirect(url_for("main.index", workspace=target_type))
|
||||||
|
|||||||
@@ -80,7 +80,7 @@ def get_profiles_by_category(category):
|
|||||||
return jsonify(profiles)
|
return jsonify(profiles)
|
||||||
|
|
||||||
|
|
||||||
@script_manager_bp.route("/api/profiles/<category>/<name>", methods=["GET"])
|
@script_manager_bp.route("/api/profiles/<category>/<path:name>", methods=["GET"])
|
||||||
@login_required
|
@login_required
|
||||||
def get_profile(category, name):
|
def get_profile(category, name):
|
||||||
"""특정 프로파일 상세 정보 (편집용)"""
|
"""특정 프로파일 상세 정보 (편집용)"""
|
||||||
@@ -109,7 +109,7 @@ def get_profile(category, name):
|
|||||||
return jsonify({"error": str(e)}), 500
|
return jsonify({"error": str(e)}), 500
|
||||||
|
|
||||||
|
|
||||||
@script_manager_bp.route("/api/profiles/<category>/<name>", methods=["PUT"])
|
@script_manager_bp.route("/api/profiles/<category>/<path:name>", methods=["PUT"])
|
||||||
@login_required
|
@login_required
|
||||||
def update_profile(category, name):
|
def update_profile(category, name):
|
||||||
"""프로파일 업데이트"""
|
"""프로파일 업데이트"""
|
||||||
@@ -175,7 +175,7 @@ def create_profile(category):
|
|||||||
return jsonify({"error": str(e)}), 500
|
return jsonify({"error": str(e)}), 500
|
||||||
|
|
||||||
|
|
||||||
@script_manager_bp.route("/api/profiles/<category>/<name>", methods=["DELETE"])
|
@script_manager_bp.route("/api/profiles/<category>/<path:name>", methods=["DELETE"])
|
||||||
@login_required
|
@login_required
|
||||||
def delete_profile(category, name):
|
def delete_profile(category, name):
|
||||||
"""프로파일 삭제"""
|
"""프로파일 삭제"""
|
||||||
@@ -209,10 +209,13 @@ def delete_profile(category, name):
|
|||||||
return jsonify({"error": str(e)}), 500
|
return jsonify({"error": str(e)}), 500
|
||||||
|
|
||||||
|
|
||||||
@script_manager_bp.route("/api/profiles/<category>/<name>/export", methods=["GET"])
|
@script_manager_bp.route("/api/profiles/<category>/export", methods=["GET"])
|
||||||
@login_required
|
@login_required
|
||||||
def export_profile(category, name):
|
def export_profile(category):
|
||||||
"""프로파일 YAML 파일 다운로드"""
|
"""프로파일 YAML 파일 다운로드"""
|
||||||
|
name = request.args.get("name", "")
|
||||||
|
if not name:
|
||||||
|
return jsonify({"error": "프로파일 이름 필요"}), 400
|
||||||
profile_file = PROFILES_DIR / f"{category}_profiles.yaml"
|
profile_file = PROFILES_DIR / f"{category}_profiles.yaml"
|
||||||
|
|
||||||
if not profile_file.exists():
|
if not profile_file.exists():
|
||||||
@@ -243,12 +246,6 @@ def export_profile(category, name):
|
|||||||
return jsonify({"error": str(e)}), 500
|
return jsonify({"error": str(e)}), 500
|
||||||
|
|
||||||
|
|
||||||
return send_file(export_file, as_attachment=True, download_name=f"{name}_profile.yaml")
|
|
||||||
except Exception as e:
|
|
||||||
logging.error(f"프로파일 내보내기 오류: {e}")
|
|
||||||
return jsonify({"error": str(e)}), 500
|
|
||||||
|
|
||||||
|
|
||||||
@script_manager_bp.route("/api/test_racadm", methods=["POST"])
|
@script_manager_bp.route("/api/test_racadm", methods=["POST"])
|
||||||
@login_required
|
@login_required
|
||||||
def test_racadm():
|
def test_racadm():
|
||||||
@@ -296,9 +293,6 @@ def test_racadm():
|
|||||||
return jsonify({"success": False, "error": str(e)})
|
return jsonify({"success": False, "error": str(e)})
|
||||||
|
|
||||||
|
|
||||||
return jsonify({"success": False, "error": str(e)})
|
|
||||||
|
|
||||||
|
|
||||||
def _count_items(profile: dict, category: str) -> int:
|
def _count_items(profile: dict, category: str) -> int:
|
||||||
"""프로파일에서 수집할 항목 개수 계산"""
|
"""프로파일에서 수집할 항목 개수 계산"""
|
||||||
count = 0
|
count = 0
|
||||||
|
|||||||
+129
-7
@@ -4,14 +4,26 @@ import sys
|
|||||||
import shutil
|
import shutil
|
||||||
import subprocess
|
import subprocess
|
||||||
import logging
|
import logging
|
||||||
|
import zipfile
|
||||||
|
import time
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from flask import Blueprint, request, redirect, url_for, flash, jsonify, send_file
|
from flask import Blueprint, request, redirect, url_for, flash, jsonify, send_file
|
||||||
from flask_login import login_required
|
from flask_login import login_required
|
||||||
from config import Config
|
from config import Config
|
||||||
|
from backend.models.user import db
|
||||||
|
from backend.models.system_setting import SystemSetting
|
||||||
|
|
||||||
utils_bp = Blueprint("utils", __name__)
|
utils_bp = Blueprint("utils", __name__)
|
||||||
|
|
||||||
|
|
||||||
|
def get_system_setting(key: str, default: str = "") -> str:
|
||||||
|
try:
|
||||||
|
setting = db.session.get(SystemSetting, key)
|
||||||
|
return setting.value if setting else default
|
||||||
|
except Exception:
|
||||||
|
return default
|
||||||
|
|
||||||
|
|
||||||
def register_util_routes(app):
|
def register_util_routes(app):
|
||||||
app.register_blueprint(utils_bp)
|
app.register_blueprint(utils_bp)
|
||||||
|
|
||||||
@@ -558,18 +570,24 @@ def system_control():
|
|||||||
|
|
||||||
# 스크립트 실행: python unified/system_control.py <action> <ip_file>
|
# 스크립트 실행: python unified/system_control.py <action> <ip_file>
|
||||||
cmd = [sys.executable, str(script_path), action, temp_ip_file]
|
cmd = [sys.executable, str(script_path), action, temp_ip_file]
|
||||||
|
env = os.environ.copy()
|
||||||
|
if action == "tsr_save":
|
||||||
|
env["TSR_SHARE_URL"] = get_system_setting("tsr_share_url", "//10.10.3.15/share/")
|
||||||
|
env["OME_USER"] = get_system_setting("tsr_share_user", env.get("OME_USER", ""))
|
||||||
|
env["OME_PASS"] = get_system_setting("tsr_share_password", env.get("OME_PASS", ""))
|
||||||
|
|
||||||
logging.info(f"[SystemControl] Executing {action} with {len(ips)} IPs (Unified Script)...")
|
logging.info(f"[SystemControl] Executing {action} with {len(ips)} IPs (Unified Script)...")
|
||||||
|
|
||||||
# 타임아웃 넉넉하게 (작업에 따라 다름)
|
# 타임아웃 넉넉하게 (작업에 따라 다름)
|
||||||
timeout = 600 if action in ["tsr_collect", "tsr_save"] else 300
|
timeout = 1200 if action == "tsr_save" else 600 if action == "tsr_collect" else 300
|
||||||
|
|
||||||
result = subprocess.run(
|
result = subprocess.run(
|
||||||
cmd,
|
cmd,
|
||||||
capture_output=True,
|
capture_output=True,
|
||||||
text=True,
|
text=True,
|
||||||
check=False, # 에러 발생해도 결과 받음
|
check=False, # 에러 발생해도 결과 받음
|
||||||
timeout=timeout
|
timeout=timeout,
|
||||||
|
env=env
|
||||||
)
|
)
|
||||||
|
|
||||||
# 임시 파일 삭제
|
# 임시 파일 삭제
|
||||||
@@ -578,22 +596,126 @@ def system_control():
|
|||||||
except OSError:
|
except OSError:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
output = "\n".join(
|
||||||
|
part for part in [result.stdout.strip(), result.stderr.strip()] if part
|
||||||
|
)
|
||||||
|
|
||||||
if result.returncode == 0:
|
if result.returncode == 0:
|
||||||
logging.info(f"[SystemControl] Success: {result.stdout}")
|
logging.info(f"[SystemControl] Success: {output}")
|
||||||
return jsonify({
|
return jsonify({
|
||||||
"success": True,
|
"success": True,
|
||||||
"message": f"작업({action})이 성공적으로 완료되었습니다.",
|
"message": f"작업({action})이 성공적으로 완료되었습니다.",
|
||||||
"details": result.stdout
|
"details": output
|
||||||
})
|
})
|
||||||
else:
|
else:
|
||||||
logging.error(f"[SystemControl] Failed: {result.stderr}")
|
logging.error(f"[SystemControl] Failed: {output}")
|
||||||
return jsonify({
|
return jsonify({
|
||||||
"success": False,
|
"success": False,
|
||||||
"error": f"스크립트 실행 중 오류가 발생했습니다.\n{result.stderr}"
|
"error": f"스크립트 실행 중 오류가 발생했습니다.\n{output}"
|
||||||
}), 500
|
}), 500
|
||||||
|
|
||||||
except subprocess.TimeoutExpired:
|
except subprocess.TimeoutExpired:
|
||||||
return jsonify({"success": False, "error": "스크립트 실행 시간이 초과되었습니다."}), 504
|
return jsonify({"success": False, "error": "스크립트 실행 시간이 초과되었습니다."}), 504
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logging.error(f"[SystemControl] Exception: {e}")
|
logging.error(f"[SystemControl] Exception: {e}")
|
||||||
return jsonify({"success": False, "error": str(e)}), 500
|
return jsonify({"success": False, "error": str(e)}), 500
|
||||||
|
|
||||||
|
|
||||||
|
@utils_bp.route("/api/export_by_service_tag", methods=["POST"])
|
||||||
|
@login_required
|
||||||
|
def export_by_service_tag():
|
||||||
|
"""
|
||||||
|
서비스태그 목록(텍스트 입력 또는 .txt 파일)을 받아
|
||||||
|
하위 폴더에서 <서비스태그>.txt 파일을 검색하고 ZIP으로 묶어 다운로드.
|
||||||
|
"""
|
||||||
|
tags_text = request.form.get("service_tags", "").strip()
|
||||||
|
tag_file = request.files.get("tag_file")
|
||||||
|
|
||||||
|
if tag_file and tag_file.filename:
|
||||||
|
try:
|
||||||
|
tags_text = tag_file.read().decode("utf-8", errors="ignore")
|
||||||
|
except Exception as e:
|
||||||
|
return jsonify({"success": False, "error": f"파일 읽기 실패: {e}"}), 400
|
||||||
|
|
||||||
|
if not tags_text:
|
||||||
|
return jsonify({"success": False, "error": "서비스태그를 입력하거나 .txt 파일을 업로드하세요."}), 400
|
||||||
|
|
||||||
|
# 서비스태그 파싱 (줄 단위, 중복 제거, 공백 제거)
|
||||||
|
tags = list(dict.fromkeys(
|
||||||
|
line.strip() for line in tags_text.splitlines() if line.strip()
|
||||||
|
))
|
||||||
|
|
||||||
|
if not tags:
|
||||||
|
return jsonify({"success": False, "error": "유효한 서비스태그가 없습니다."}), 400
|
||||||
|
|
||||||
|
# 검색 대상 디렉토리 (재귀 검색)
|
||||||
|
search_dirs = [
|
||||||
|
Path(Config.BACKUP_FOLDER), # data/system/backup (날짜 하위폴더 포함)
|
||||||
|
Path(Config.MAC_FOLDER), # data/repository/mac
|
||||||
|
Path(Config.GUID_FOLDER), # data/repository/guid_file
|
||||||
|
Path(Config.GPU_FOLDER), # data/repository/gpu_serial
|
||||||
|
Path(Config.IDRAC_INFO_FOLDER), # data/temp/staging
|
||||||
|
]
|
||||||
|
|
||||||
|
found = [] # (Path, arcname) 튜플 목록
|
||||||
|
not_found = []
|
||||||
|
|
||||||
|
for tag in tags:
|
||||||
|
target_name = f"{tag}.txt"
|
||||||
|
tag_found = False
|
||||||
|
for search_dir in search_dirs:
|
||||||
|
if not search_dir.exists():
|
||||||
|
continue
|
||||||
|
matches = list(search_dir.rglob(target_name))
|
||||||
|
if matches:
|
||||||
|
# 검색된 파일만, 파일명 그대로 (flat 구조)
|
||||||
|
found.append((matches[0], matches[0].name))
|
||||||
|
tag_found = True
|
||||||
|
break
|
||||||
|
if not tag_found:
|
||||||
|
not_found.append(tag)
|
||||||
|
|
||||||
|
if not found:
|
||||||
|
msg = f"검색된 파일이 없습니다. ({len(not_found)}개 태그)"
|
||||||
|
return jsonify({"success": False, "error": msg, "not_found": not_found}), 404
|
||||||
|
|
||||||
|
# 사용자 지정 파일명 처리
|
||||||
|
user_zip_name = request.form.get("zip_name", "").strip()
|
||||||
|
# 위험 문자 제거
|
||||||
|
import re
|
||||||
|
safe_name = re.sub(r'[\\/:*?"<>|]', '_', user_zip_name) if user_zip_name else ""
|
||||||
|
if not safe_name:
|
||||||
|
safe_name = f"service_tag_export_{time.strftime('%Y%m%d_%H%M%S')}"
|
||||||
|
zip_name = safe_name if safe_name.endswith(".zip") else safe_name + ".zip"
|
||||||
|
zip_path = Path(Config.TEMP_ZIP_FOLDER) / zip_name
|
||||||
|
|
||||||
|
try:
|
||||||
|
with zipfile.ZipFile(zip_path, "w", compression=zipfile.ZIP_DEFLATED) as zipf:
|
||||||
|
for file_path, arcname in found:
|
||||||
|
# writestr 사용 → 폴더 구조 없이 파일명만 ZIP에 저장
|
||||||
|
with open(file_path, "rb") as f:
|
||||||
|
zipf.writestr(arcname, f.read())
|
||||||
|
|
||||||
|
not_found_header = ",".join(not_found) if not_found else ""
|
||||||
|
response = send_file(
|
||||||
|
str(zip_path),
|
||||||
|
as_attachment=True,
|
||||||
|
download_name=zip_name,
|
||||||
|
mimetype="application/zip",
|
||||||
|
)
|
||||||
|
response.headers["X-Found-Count"] = str(len(found))
|
||||||
|
response.headers["X-Not-Found-Count"] = str(len(not_found))
|
||||||
|
response.headers["X-Not-Found-Tags"] = not_found_header
|
||||||
|
response.headers["Access-Control-Expose-Headers"] = (
|
||||||
|
"X-Found-Count, X-Not-Found-Count, X-Not-Found-Tags"
|
||||||
|
)
|
||||||
|
return response
|
||||||
|
except Exception as e:
|
||||||
|
logging.error(f"[ServiceTagExport] ZIP 생성 오류: {e}")
|
||||||
|
return jsonify({"success": False, "error": str(e)}), 500
|
||||||
|
finally:
|
||||||
|
try:
|
||||||
|
if zip_path.exists():
|
||||||
|
zip_path.unlink()
|
||||||
|
except Exception as e:
|
||||||
|
logging.warning(f"임시 ZIP 삭제 실패: {e}")
|
||||||
|
|||||||
@@ -15,4 +15,62 @@
|
|||||||
line-clamp: 2;
|
line-clamp: 2;
|
||||||
-webkit-box-orient: vertical;
|
-webkit-box-orient: vertical;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* TSR Share URL */
|
||||||
|
.tsr-share-url-box {
|
||||||
|
padding: 1rem;
|
||||||
|
border: 1px solid rgba(13, 110, 253, 0.18);
|
||||||
|
border-radius: 0.75rem;
|
||||||
|
background: linear-gradient(180deg, rgba(13, 110, 253, 0.04), rgba(248, 249, 250, 0.9));
|
||||||
|
}
|
||||||
|
|
||||||
|
.tsr-share-url-badge {
|
||||||
|
display: inline-flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.15rem;
|
||||||
|
padding: 0.35rem 0.65rem;
|
||||||
|
border: 1px solid rgba(13, 110, 253, 0.18);
|
||||||
|
border-radius: 999px;
|
||||||
|
background-color: #fff;
|
||||||
|
color: #0d6efd;
|
||||||
|
font-size: 0.75rem;
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tsr-share-url-input .input-group-text {
|
||||||
|
border-color: rgba(13, 110, 253, 0.24);
|
||||||
|
background-color: #fff;
|
||||||
|
color: #0d6efd;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tsr-share-url-input .form-control {
|
||||||
|
border-color: rgba(13, 110, 253, 0.24);
|
||||||
|
font-size: 0.95rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tsr-share-url-input .form-control:focus {
|
||||||
|
border-color: #0d6efd;
|
||||||
|
box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.12);
|
||||||
|
}
|
||||||
|
|
||||||
|
.tsr-share-url-help {
|
||||||
|
color: #6c757d;
|
||||||
|
font-size: 0.8125rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 575.98px) {
|
||||||
|
.tsr-share-url-box {
|
||||||
|
padding: 0.875rem;
|
||||||
|
border-radius: 0.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tsr-share-url-input {
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tsr-share-url-input .form-control {
|
||||||
|
min-width: 0;
|
||||||
|
font-size: 0.875rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
+433
-10
@@ -92,7 +92,7 @@ document.addEventListener('DOMContentLoaded', () => {
|
|||||||
*/
|
*/
|
||||||
window.filterTable = function (tableId, text) {
|
window.filterTable = function (tableId, text) {
|
||||||
const table = document.getElementById(tableId);
|
const table = document.getElementById(tableId);
|
||||||
if (!table) return;
|
if (!table) return 0;
|
||||||
const tbody = table.querySelector('tbody');
|
const tbody = table.querySelector('tbody');
|
||||||
const rows = tbody.querySelectorAll('tr');
|
const rows = tbody.querySelectorAll('tr');
|
||||||
const query = text.toLowerCase().trim();
|
const query = text.toLowerCase().trim();
|
||||||
@@ -112,6 +112,7 @@ document.addEventListener('DOMContentLoaded', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
// 검색 결과 없음 처리 (Optional)
|
// 검색 결과 없음 처리 (Optional)
|
||||||
|
return visibleCount;
|
||||||
};
|
};
|
||||||
|
|
||||||
// 줄 수 카운터 (script.js에서 가져옴)
|
// 줄 수 카운터 (script.js에서 가져옴)
|
||||||
@@ -253,6 +254,8 @@ document.addEventListener('DOMContentLoaded', () => {
|
|||||||
if (data.active_ips && data.active_ips.length > 0) {
|
if (data.active_ips && data.active_ips.length > 0) {
|
||||||
ipsTextarea.value = data.active_ips.join('\n');
|
ipsTextarea.value = data.active_ips.join('\n');
|
||||||
ipsTextarea.dispatchEvent(new Event('input')); // 저장 및 카운트 갱신
|
ipsTextarea.dispatchEvent(new Event('input')); // 저장 및 카운트 갱신
|
||||||
|
const btnCopy = document.getElementById('btnCopyIps');
|
||||||
|
if (btnCopy) btnCopy.disabled = false;
|
||||||
alert(`스캔 완료: ${data.active_ips.length}개의 활성 IP를 찾았습니다.`);
|
alert(`스캔 완료: ${data.active_ips.length}개의 활성 IP를 찾았습니다.`);
|
||||||
} else {
|
} else {
|
||||||
alert('활성 IP를 발견하지 못했습니다.');
|
alert('활성 IP를 발견하지 못했습니다.');
|
||||||
@@ -278,7 +281,29 @@ document.addEventListener('DOMContentLoaded', () => {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// 2-4. IP 지우기 버튼
|
// 2-4. IP 복사 버튼
|
||||||
|
const btnCopyIps = document.getElementById('btnCopyIps');
|
||||||
|
if (btnCopyIps) {
|
||||||
|
btnCopyIps.addEventListener('click', async () => {
|
||||||
|
const ipsTextarea = document.getElementById('ips');
|
||||||
|
if (!ipsTextarea || !ipsTextarea.value.trim()) return;
|
||||||
|
try {
|
||||||
|
await navigator.clipboard.writeText(ipsTextarea.value.trim());
|
||||||
|
const original = btnCopyIps.innerHTML;
|
||||||
|
btnCopyIps.innerHTML = '<i class="bi bi-clipboard-check me-1"></i>복사됨';
|
||||||
|
btnCopyIps.classList.replace('btn-outline-secondary', 'btn-outline-success');
|
||||||
|
setTimeout(() => {
|
||||||
|
btnCopyIps.innerHTML = original;
|
||||||
|
btnCopyIps.classList.replace('btn-outline-success', 'btn-outline-secondary');
|
||||||
|
}, 1500);
|
||||||
|
} catch {
|
||||||
|
ipsTextarea.select();
|
||||||
|
document.execCommand('copy');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// 2-5. IP 지우기 버튼
|
||||||
const btnClear = document.getElementById('btnClearIps');
|
const btnClear = document.getElementById('btnClearIps');
|
||||||
if (btnClear) {
|
if (btnClear) {
|
||||||
btnClear.addEventListener('click', () => {
|
btnClear.addEventListener('click', () => {
|
||||||
@@ -286,6 +311,8 @@ document.addEventListener('DOMContentLoaded', () => {
|
|||||||
if (ipsTextarea && confirm('입력된 IP 목록을 모두 지우시겠습니까?')) {
|
if (ipsTextarea && confirm('입력된 IP 목록을 모두 지우시겠습니까?')) {
|
||||||
ipsTextarea.value = '';
|
ipsTextarea.value = '';
|
||||||
ipsTextarea.dispatchEvent(new Event('input'));
|
ipsTextarea.dispatchEvent(new Event('input'));
|
||||||
|
const btnCopy = document.getElementById('btnCopyIps');
|
||||||
|
if (btnCopy) btnCopy.disabled = true;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -449,11 +476,12 @@ document.addEventListener('DOMContentLoaded', () => {
|
|||||||
function updateFolderCount(folderDate) {
|
function updateFolderCount(folderDate) {
|
||||||
const container = document.querySelector(`.backup-files-container[data-folder="${folderDate}"]`);
|
const container = document.querySelector(`.backup-files-container[data-folder="${folderDate}"]`);
|
||||||
if (container) {
|
if (container) {
|
||||||
const listItem = container.closest('.list-group-item');
|
const accordionItem = container.closest('.accordion-item');
|
||||||
if (listItem) {
|
if (accordionItem) {
|
||||||
const badge = listItem.querySelector('.badge');
|
const badge = accordionItem.querySelector('.accordion-button .badge');
|
||||||
if (badge) {
|
if (badge) {
|
||||||
badge.textContent = `${container.children.length} 파일`;
|
const visibleRows = Array.from(container.children).filter(row => row.matches('.backup-file-item')).length;
|
||||||
|
badge.textContent = `${visibleRows} 파일`;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -467,6 +495,8 @@ document.addEventListener('DOMContentLoaded', () => {
|
|||||||
group: 'backup-files',
|
group: 'backup-files',
|
||||||
animation: 150,
|
animation: 150,
|
||||||
ghostClass: 'sortable-ghost',
|
ghostClass: 'sortable-ghost',
|
||||||
|
dragClass: 'sortable-drag',
|
||||||
|
handle: '.backup-drag-handle',
|
||||||
delay: 100,
|
delay: 100,
|
||||||
delayOnTouchOnly: true,
|
delayOnTouchOnly: true,
|
||||||
onStart: function (evt) {
|
onStart: function (evt) {
|
||||||
@@ -487,7 +517,9 @@ document.addEventListener('DOMContentLoaded', () => {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
let itemsToMove = Array.from(selectedItems);
|
let itemsToMove = Array.from(selectedItems).filter(item => {
|
||||||
|
return item.closest('.backup-files-container')?.getAttribute('data-folder') === sourceFolder;
|
||||||
|
});
|
||||||
if (itemsToMove.length === 0) itemsToMove = [evt.item];
|
if (itemsToMove.length === 0) itemsToMove = [evt.item];
|
||||||
else if (!itemsToMove.includes(evt.item)) itemsToMove.push(evt.item);
|
else if (!itemsToMove.includes(evt.item)) itemsToMove.push(evt.item);
|
||||||
|
|
||||||
@@ -899,6 +931,185 @@ document.addEventListener('DOMContentLoaded', () => {
|
|||||||
// ─────────────────────────────────────────────────────────────
|
// ─────────────────────────────────────────────────────────────
|
||||||
// 7. 커스텀 탭 전환 로직
|
// 7. 커스텀 탭 전환 로직
|
||||||
// ─────────────────────────────────────────────────────────────
|
// ─────────────────────────────────────────────────────────────
|
||||||
|
const globalFileSearch = document.getElementById('globalFileSearch');
|
||||||
|
const repoTabs = document.getElementById('repoTabs');
|
||||||
|
const activeFileModeBadge = document.getElementById('activeFileModeBadge');
|
||||||
|
const fileToolbarHint = document.getElementById('fileToolbarHint');
|
||||||
|
const fileSearchScopeText = document.getElementById('fileSearchScopeText');
|
||||||
|
const clearFileSearchButton = document.getElementById('btnClearFileSearch');
|
||||||
|
const kpiButtons = document.querySelectorAll('.file-kpi-button');
|
||||||
|
|
||||||
|
function filterBackupAccordion(text) {
|
||||||
|
const accordion = document.getElementById('backupAccordion');
|
||||||
|
const backupSearchEmpty = document.getElementById('backupSearchEmpty');
|
||||||
|
if (!accordion) return 0;
|
||||||
|
|
||||||
|
const query = text.toLowerCase().trim();
|
||||||
|
const items = accordion.querySelectorAll('.accordion-item');
|
||||||
|
let visibleSections = 0;
|
||||||
|
|
||||||
|
items.forEach(item => {
|
||||||
|
const headerText = item.querySelector('.accordion-button')?.textContent.toLowerCase() || '';
|
||||||
|
const rows = item.querySelectorAll('.backup-file-item');
|
||||||
|
const headerMatched = query === '' || headerText.includes(query);
|
||||||
|
let visibleRows = 0;
|
||||||
|
|
||||||
|
rows.forEach(row => {
|
||||||
|
const rowMatched = headerMatched || row.textContent.toLowerCase().includes(query);
|
||||||
|
row.classList.toggle('match-hidden', !rowMatched);
|
||||||
|
row.style.display = rowMatched ? '' : 'none';
|
||||||
|
if (rowMatched) visibleRows++;
|
||||||
|
});
|
||||||
|
|
||||||
|
const isVisible = query === '' || headerMatched || visibleRows > 0;
|
||||||
|
item.style.display = isVisible ? '' : 'none';
|
||||||
|
if (isVisible) visibleSections++;
|
||||||
|
});
|
||||||
|
|
||||||
|
if (backupSearchEmpty) {
|
||||||
|
backupSearchEmpty.classList.toggle('show', query !== '' && visibleSections === 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
return visibleSections;
|
||||||
|
}
|
||||||
|
|
||||||
|
function getActiveSearchContext() {
|
||||||
|
const repositoryTab = document.getElementById('repository-tab');
|
||||||
|
const isRepositoryMode = repositoryTab?.classList.contains('active');
|
||||||
|
|
||||||
|
if (!isRepositoryMode) {
|
||||||
|
return {
|
||||||
|
label: '처리된 파일',
|
||||||
|
hint: '현재 스테이징 폴더에서 처리된 결과 파일을 확인합니다.',
|
||||||
|
placeholder: '처리된 파일명을 검색하세요',
|
||||||
|
scopeText: '처리된 파일',
|
||||||
|
tableId: 'tableProcessed'
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
const activeSubTab = document.querySelector('#repoTabs .nav-link.active');
|
||||||
|
const activePanelId = activeSubTab?.getAttribute('data-bs-target');
|
||||||
|
|
||||||
|
switch (activePanelId) {
|
||||||
|
case '#subpanel-mac':
|
||||||
|
return {
|
||||||
|
label: 'MAC',
|
||||||
|
hint: '정리된 MAC 파일 저장소를 검색합니다.',
|
||||||
|
placeholder: 'MAC 파일명을 검색하세요',
|
||||||
|
scopeText: 'MAC 저장소',
|
||||||
|
tableId: 'tableMac',
|
||||||
|
repo: 'mac'
|
||||||
|
};
|
||||||
|
case '#subpanel-guid':
|
||||||
|
return {
|
||||||
|
label: 'GUID',
|
||||||
|
hint: '정리된 GUID 파일 저장소를 검색합니다.',
|
||||||
|
placeholder: 'GUID 파일명을 검색하세요',
|
||||||
|
scopeText: 'GUID 저장소',
|
||||||
|
tableId: 'tableGuid',
|
||||||
|
repo: 'guid'
|
||||||
|
};
|
||||||
|
case '#subpanel-gpu':
|
||||||
|
return {
|
||||||
|
label: 'GPU',
|
||||||
|
hint: '정리된 GPU 파일 저장소를 검색합니다.',
|
||||||
|
placeholder: 'GPU 파일명을 검색하세요',
|
||||||
|
scopeText: 'GPU 저장소',
|
||||||
|
tableId: 'tableGpu',
|
||||||
|
repo: 'gpu'
|
||||||
|
};
|
||||||
|
default:
|
||||||
|
return {
|
||||||
|
label: '서버 정보',
|
||||||
|
hint: '백업 폴더명과 내부 파일명을 함께 검색합니다.',
|
||||||
|
placeholder: '백업 폴더명 또는 서버 정보 파일명을 검색하세요',
|
||||||
|
scopeText: '서버 정보 백업',
|
||||||
|
backup: true
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function applyGlobalFileSearch() {
|
||||||
|
if (!globalFileSearch) return;
|
||||||
|
|
||||||
|
const query = globalFileSearch.value || '';
|
||||||
|
const context = getActiveSearchContext();
|
||||||
|
|
||||||
|
if (context.backup) {
|
||||||
|
filterBackupAccordion(query);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (context.tableId) {
|
||||||
|
window.filterTable(context.tableId, query);
|
||||||
|
if (context.repo) {
|
||||||
|
updateRepoSelectionState(context.repo);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function updateFileBrowserState() {
|
||||||
|
const context = getActiveSearchContext();
|
||||||
|
const activePanelId = document.querySelector('#repoTabs .nav-link.active')?.getAttribute('data-bs-target');
|
||||||
|
|
||||||
|
if (repoTabs) {
|
||||||
|
repoTabs.classList.toggle('d-none', context.tableId === 'tableProcessed');
|
||||||
|
}
|
||||||
|
|
||||||
|
if (activeFileModeBadge) {
|
||||||
|
activeFileModeBadge.textContent = context.label;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (fileToolbarHint) {
|
||||||
|
fileToolbarHint.textContent = context.hint;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (globalFileSearch) {
|
||||||
|
globalFileSearch.placeholder = context.placeholder;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (fileSearchScopeText) {
|
||||||
|
fileSearchScopeText.textContent = context.scopeText || context.label;
|
||||||
|
}
|
||||||
|
|
||||||
|
kpiButtons.forEach(button => {
|
||||||
|
const kpiTarget = button.getAttribute('data-kpi-target');
|
||||||
|
const isActive = activePanelId === `#${kpiTarget?.replace('-tab', '')}` && context.tableId !== 'tableProcessed';
|
||||||
|
button.classList.toggle('is-active', Boolean(isActive));
|
||||||
|
});
|
||||||
|
|
||||||
|
applyGlobalFileSearch();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (globalFileSearch) {
|
||||||
|
globalFileSearch.addEventListener('input', applyGlobalFileSearch);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (clearFileSearchButton && globalFileSearch) {
|
||||||
|
clearFileSearchButton.addEventListener('click', () => {
|
||||||
|
globalFileSearch.value = '';
|
||||||
|
applyGlobalFileSearch();
|
||||||
|
globalFileSearch.focus();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
if (kpiButtons.length) {
|
||||||
|
kpiButtons.forEach(button => {
|
||||||
|
button.addEventListener('click', () => {
|
||||||
|
const repositoryTab = document.getElementById('repository-tab');
|
||||||
|
const targetTabId = button.getAttribute('data-kpi-target');
|
||||||
|
const targetTab = targetTabId ? document.getElementById(targetTabId) : null;
|
||||||
|
|
||||||
|
if (repositoryTab && !repositoryTab.classList.contains('active')) {
|
||||||
|
repositoryTab.click();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (targetTab) {
|
||||||
|
targetTab.click();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// 메인 탭 전환
|
// 메인 탭 전환
|
||||||
const mainTabButtons = document.querySelectorAll('#fileTabs button[data-custom-toggle="tab"]');
|
const mainTabButtons = document.querySelectorAll('#fileTabs button[data-custom-toggle="tab"]');
|
||||||
@@ -907,9 +1118,13 @@ document.addEventListener('DOMContentLoaded', () => {
|
|||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
|
|
||||||
// 모든 탭 버튼 비활성화
|
// 모든 탭 버튼 비활성화
|
||||||
mainTabButtons.forEach(b => b.classList.remove('active'));
|
mainTabButtons.forEach(b => {
|
||||||
|
b.classList.remove('active');
|
||||||
|
b.setAttribute('aria-selected', 'false');
|
||||||
|
});
|
||||||
// 클릭한 탭 버튼 활성화
|
// 클릭한 탭 버튼 활성화
|
||||||
this.classList.add('active');
|
this.classList.add('active');
|
||||||
|
this.setAttribute('aria-selected', 'true');
|
||||||
|
|
||||||
// 모든 탭 패널 숨기기
|
// 모든 탭 패널 숨기기
|
||||||
document.querySelectorAll('.custom-tab-panel').forEach(panel => {
|
document.querySelectorAll('.custom-tab-panel').forEach(panel => {
|
||||||
@@ -924,6 +1139,8 @@ document.addEventListener('DOMContentLoaded', () => {
|
|||||||
targetPanel.classList.add('custom-active');
|
targetPanel.classList.add('custom-active');
|
||||||
targetPanel.style.display = 'block'; // 인라인 스타일도 변경
|
targetPanel.style.display = 'block'; // 인라인 스타일도 변경
|
||||||
}
|
}
|
||||||
|
|
||||||
|
updateFileBrowserState();
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -935,7 +1152,12 @@ document.addEventListener('DOMContentLoaded', () => {
|
|||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
|
|
||||||
// 모든 서브 탭 버튼 비활성화
|
// 모든 서브 탭 버튼 비활성화
|
||||||
subTabButtons.forEach(b => b.classList.remove('active'));
|
subTabButtons.forEach(b => {
|
||||||
|
b.classList.remove('active');
|
||||||
|
b.setAttribute('aria-selected', 'false');
|
||||||
|
});
|
||||||
|
this.classList.add('active');
|
||||||
|
this.setAttribute('aria-selected', 'true');
|
||||||
// 모든 서브 탭 패널 숨기기
|
// 모든 서브 탭 패널 숨기기
|
||||||
document.querySelectorAll('.custom-sub-panel').forEach(panel => {
|
document.querySelectorAll('.custom-sub-panel').forEach(panel => {
|
||||||
panel.classList.remove('custom-sub-active');
|
panel.classList.remove('custom-sub-active');
|
||||||
@@ -959,11 +1181,158 @@ document.addEventListener('DOMContentLoaded', () => {
|
|||||||
targetPanel.classList.remove('display-none'); // 혹시 모를 클래스 제거
|
targetPanel.classList.remove('display-none'); // 혹시 모를 클래스 제거
|
||||||
targetPanel.style.setProperty('display', 'block', 'important');
|
targetPanel.style.setProperty('display', 'block', 'important');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
updateFileBrowserState();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
updateFileBrowserState();
|
||||||
|
|
||||||
|
// ─────────────────────────────────────────────────────────────
|
||||||
|
// 8. 저장소 파일 선택 작업 (MAC/GUID/GPU)
|
||||||
|
// ─────────────────────────────────────────────────────────────
|
||||||
|
const repoCheckboxes = document.querySelectorAll('.repo-file-checkbox');
|
||||||
|
const repoSelectAllButtons = document.querySelectorAll('.repo-select-all');
|
||||||
|
const repoSelectedActionButtons = document.querySelectorAll('.repo-selected-action');
|
||||||
|
|
||||||
|
function getRepoCheckedFiles(repo) {
|
||||||
|
return Array.from(document.querySelectorAll(`.repo-file-checkbox[data-repo="${repo}"]:checked`))
|
||||||
|
.map(input => input.value)
|
||||||
|
.filter(Boolean);
|
||||||
|
}
|
||||||
|
|
||||||
|
function updateRepoSelectionState(repo) {
|
||||||
|
const checkedFiles = getRepoCheckedFiles(repo);
|
||||||
|
repoSelectedActionButtons.forEach(button => {
|
||||||
|
if (button.getAttribute('data-repo') === repo) {
|
||||||
|
button.disabled = checkedFiles.length === 0;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
repoSelectAllButtons.forEach(selectAll => {
|
||||||
|
if (selectAll.getAttribute('data-repo') !== repo) return;
|
||||||
|
|
||||||
|
const tableId = selectAll.getAttribute('data-table-id');
|
||||||
|
const table = tableId ? document.getElementById(tableId) : null;
|
||||||
|
const checkboxes = table
|
||||||
|
? Array.from(table.querySelectorAll('.repo-file-checkbox'))
|
||||||
|
: [];
|
||||||
|
const visibleCheckboxes = checkboxes.filter(input => {
|
||||||
|
const row = input.closest('tr');
|
||||||
|
return row && row.style.display !== 'none';
|
||||||
|
});
|
||||||
|
const visibleChecked = visibleCheckboxes.filter(input => input.checked);
|
||||||
|
|
||||||
|
selectAll.checked = visibleCheckboxes.length > 0 && visibleChecked.length === visibleCheckboxes.length;
|
||||||
|
selectAll.indeterminate = visibleChecked.length > 0 && visibleChecked.length < visibleCheckboxes.length;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function submitRepoSelection(actionUrl, files) {
|
||||||
|
const form = document.createElement('form');
|
||||||
|
form.method = 'POST';
|
||||||
|
form.action = actionUrl;
|
||||||
|
form.className = 'd-none';
|
||||||
|
|
||||||
|
const csrfInput = document.createElement('input');
|
||||||
|
csrfInput.type = 'hidden';
|
||||||
|
csrfInput.name = 'csrf_token';
|
||||||
|
csrfInput.value = window.APP_CONFIG?.csrfToken || '';
|
||||||
|
form.appendChild(csrfInput);
|
||||||
|
|
||||||
|
files.forEach(filename => {
|
||||||
|
const input = document.createElement('input');
|
||||||
|
input.type = 'hidden';
|
||||||
|
input.name = 'files';
|
||||||
|
input.value = filename;
|
||||||
|
form.appendChild(input);
|
||||||
|
});
|
||||||
|
|
||||||
|
document.body.appendChild(form);
|
||||||
|
form.submit();
|
||||||
|
}
|
||||||
|
|
||||||
|
repoCheckboxes.forEach(input => {
|
||||||
|
input.addEventListener('change', () => {
|
||||||
|
updateRepoSelectionState(input.getAttribute('data-repo'));
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
repoSelectAllButtons.forEach(selectAll => {
|
||||||
|
selectAll.addEventListener('change', () => {
|
||||||
|
const table = document.getElementById(selectAll.getAttribute('data-table-id'));
|
||||||
|
const repo = selectAll.getAttribute('data-repo');
|
||||||
|
if (!table || !repo) return;
|
||||||
|
|
||||||
|
table.querySelectorAll('.repo-file-checkbox').forEach(input => {
|
||||||
|
const row = input.closest('tr');
|
||||||
|
if (row && row.style.display !== 'none') {
|
||||||
|
input.checked = selectAll.checked;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
updateRepoSelectionState(repo);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
repoSelectedActionButtons.forEach(button => {
|
||||||
|
button.addEventListener('click', () => {
|
||||||
|
const repo = button.getAttribute('data-repo');
|
||||||
|
const actionUrl = button.getAttribute('data-action');
|
||||||
|
const files = getRepoCheckedFiles(repo);
|
||||||
|
const confirmMessage = button.getAttribute('data-confirm');
|
||||||
|
|
||||||
|
if (!repo || !actionUrl || files.length === 0) return;
|
||||||
|
if (confirmMessage && !confirm(confirmMessage)) return;
|
||||||
|
|
||||||
|
submitRepoSelection(actionUrl, files);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
['mac', 'guid', 'gpu'].forEach(updateRepoSelectionState);
|
||||||
|
|
||||||
|
// ─────────────────────────────────────────────────────────────
|
||||||
|
// 9. 워크스페이스 업로드 중복 처리
|
||||||
|
// ─────────────────────────────────────────────────────────────
|
||||||
|
document.querySelectorAll('.workspace-file-upload-input').forEach(input => {
|
||||||
|
input.addEventListener('change', () => {
|
||||||
|
const form = input.form;
|
||||||
|
if (!form || !input.files || input.files.length === 0) return;
|
||||||
|
|
||||||
|
let existingFiles = [];
|
||||||
|
try {
|
||||||
|
existingFiles = JSON.parse(input.getAttribute('data-existing-files') || '[]');
|
||||||
|
} catch (_) {
|
||||||
|
existingFiles = [];
|
||||||
|
}
|
||||||
|
|
||||||
|
const existingSet = new Set(existingFiles.map(name => String(name).toLowerCase()));
|
||||||
|
const duplicates = Array.from(input.files)
|
||||||
|
.map(file => file.name)
|
||||||
|
.filter(name => existingSet.has(String(name).toLowerCase()));
|
||||||
|
|
||||||
|
const policyInput = form.querySelector('input[name="duplicate_policy"]');
|
||||||
|
if (policyInput) {
|
||||||
|
policyInput.value = 'rename';
|
||||||
|
}
|
||||||
|
|
||||||
|
if (duplicates.length > 0) {
|
||||||
|
const preview = duplicates.slice(0, 5).join('\n');
|
||||||
|
const extra = duplicates.length > 5 ? `\n...외 ${duplicates.length - 5}개` : '';
|
||||||
|
const overwrite = confirm(
|
||||||
|
`동일한 이름의 파일이 이미 있습니다.\n\n${preview}${extra}\n\n확인: 덮어쓰기\n취소: 다른 이름으로 저장`
|
||||||
|
);
|
||||||
|
|
||||||
|
if (policyInput) {
|
||||||
|
policyInput.value = overwrite ? 'overwrite' : 'rename';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
form.submit();
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
// ─────────────────────────────────────────────────────────────
|
// ─────────────────────────────────────────────────────────────
|
||||||
// 8. URL 파라미터 기반 탭 활성화 (페이지네이션 지원)
|
// 10. URL 파라미터 기반 탭 활성화 (페이지네이션 지원)
|
||||||
// ─────────────────────────────────────────────────────────────
|
// ─────────────────────────────────────────────────────────────
|
||||||
const urlParams = new URLSearchParams(window.location.search);
|
const urlParams = new URLSearchParams(window.location.search);
|
||||||
|
|
||||||
@@ -984,11 +1353,35 @@ document.addEventListener('DOMContentLoaded', () => {
|
|||||||
}, 50);
|
}, 50);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const workspaceParam = urlParams.get('workspace');
|
||||||
|
if (workspaceParam) {
|
||||||
|
const repoTabBtn = document.getElementById('repository-tab');
|
||||||
|
const targetSubTabId = {
|
||||||
|
server_info: 'subpanel-backup-tab',
|
||||||
|
mac: 'subpanel-mac-tab',
|
||||||
|
guid: 'subpanel-guid-tab',
|
||||||
|
gpu: 'subpanel-gpu-tab'
|
||||||
|
}[workspaceParam];
|
||||||
|
const targetSubTabBtn = targetSubTabId ? document.getElementById(targetSubTabId) : null;
|
||||||
|
|
||||||
|
if (repoTabBtn) {
|
||||||
|
repoTabBtn.click();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (targetSubTabBtn) {
|
||||||
|
setTimeout(() => {
|
||||||
|
targetSubTabBtn.click();
|
||||||
|
}, 50);
|
||||||
|
}
|
||||||
|
}
|
||||||
// ─────────────────────────────────────────────────────────────
|
// ─────────────────────────────────────────────────────────────
|
||||||
// 9. 시스템 제어 패널 토글 아이콘 회전
|
// 9. 시스템 제어 패널 토글 아이콘 회전
|
||||||
// ─────────────────────────────────────────────────────────────
|
// ─────────────────────────────────────────────────────────────
|
||||||
const systemControlPanel = document.getElementById('systemControlPanel');
|
const systemControlPanel = document.getElementById('systemControlPanel');
|
||||||
const systemControlHint = document.getElementById('systemControlHint');
|
const systemControlHint = document.getElementById('systemControlHint');
|
||||||
|
const fileToolsPanel = document.getElementById('fileToolsPanel');
|
||||||
|
const fileToolsHint = document.getElementById('fileToolsHint');
|
||||||
|
|
||||||
if (systemControlPanel) {
|
if (systemControlPanel) {
|
||||||
systemControlPanel.addEventListener('show.bs.collapse', () => {
|
systemControlPanel.addEventListener('show.bs.collapse', () => {
|
||||||
@@ -1021,4 +1414,34 @@ document.addEventListener('DOMContentLoaded', () => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (fileToolsPanel) {
|
||||||
|
fileToolsPanel.addEventListener('show.bs.collapse', () => {
|
||||||
|
const icon = document.querySelector('button[data-bs-target="#fileToolsPanel"] i');
|
||||||
|
if (icon) {
|
||||||
|
icon.classList.remove('bi-chevron-down');
|
||||||
|
icon.classList.add('bi-chevron-up');
|
||||||
|
}
|
||||||
|
if (fileToolsHint) {
|
||||||
|
fileToolsHint.style.display = 'none';
|
||||||
|
}
|
||||||
|
});
|
||||||
|
fileToolsPanel.addEventListener('hide.bs.collapse', () => {
|
||||||
|
const icon = document.querySelector('button[data-bs-target="#fileToolsPanel"] i');
|
||||||
|
if (icon) {
|
||||||
|
icon.classList.remove('bi-chevron-up');
|
||||||
|
icon.classList.add('bi-chevron-down');
|
||||||
|
}
|
||||||
|
if (fileToolsHint) {
|
||||||
|
fileToolsHint.style.display = 'inline';
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
if (fileToolsHint) {
|
||||||
|
fileToolsHint.addEventListener('click', () => {
|
||||||
|
const btn = document.querySelector('button[data-bs-target="#fileToolsPanel"]');
|
||||||
|
if (btn) btn.click();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|||||||
+5
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
BIN
Binary file not shown.
+8
@@ -0,0 +1,8 @@
|
|||||||
|
/*!-----------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/vscode/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------*/define("vs/base/common/worker/simpleWorker.nls.de",{"vs/base/common/platform":["_"],"vs/editor/common/languages":["Array","Boolescher Wert","Klasse","Konstante","Konstruktor","Enumeration","Enumerationsmember","Ereignis","Feld","Datei","Funktion","Schnittstelle","Schl\xFCssel","Methode","Modul","Namespace","NULL","Zahl","Objekt","Operator","Paket","Eigenschaft","Zeichenfolge","Struktur","Typparameter","Variable","{0} ({1})"]});
|
||||||
|
|
||||||
|
//# sourceMappingURL=../../../../../min-maps/vs/base/common/worker/simpleWorker.nls.de.js.map
|
||||||
+8
@@ -0,0 +1,8 @@
|
|||||||
|
/*!-----------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/vscode/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------*/define("vs/base/common/worker/simpleWorker.nls.es",{"vs/base/common/platform":["_"],"vs/editor/common/languages":["matriz","booleano","clase","constante","constructor","enumeraci\xF3n","miembro de la enumeraci\xF3n","evento","campo","archivo","funci\xF3n","interfaz","clave","m\xE9todo","m\xF3dulo","espacio de nombres","NULL","n\xFAmero","objeto","operador","paquete","propiedad","cadena","estructura","par\xE1metro de tipo","variable","{0} ({1})"]});
|
||||||
|
|
||||||
|
//# sourceMappingURL=../../../../../min-maps/vs/base/common/worker/simpleWorker.nls.es.js.map
|
||||||
+8
@@ -0,0 +1,8 @@
|
|||||||
|
/*!-----------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/vscode/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------*/define("vs/base/common/worker/simpleWorker.nls.fr",{"vs/base/common/platform":["_"],"vs/editor/common/languages":["tableau","bool\xE9en","classe","constante","constructeur","\xE9num\xE9ration","membre d'\xE9num\xE9ration","\xE9v\xE9nement","champ","fichier","fonction","interface","cl\xE9","m\xE9thode","module","espace de noms","NULL","nombre","objet","op\xE9rateur","package","propri\xE9t\xE9","cha\xEEne","struct","param\xE8tre de type","variable","{0} ({1})"]});
|
||||||
|
|
||||||
|
//# sourceMappingURL=../../../../../min-maps/vs/base/common/worker/simpleWorker.nls.fr.js.map
|
||||||
+8
@@ -0,0 +1,8 @@
|
|||||||
|
/*!-----------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/vscode/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------*/define("vs/base/common/worker/simpleWorker.nls.it",{"vs/base/common/platform":["_"],"vs/editor/common/languages":["matrice","valore booleano","classe","costante","costruttore","enumerazione","membro di enumerazione","evento","campo","file","funzione","interfaccia","chiave","metodo","modulo","spazio dei nomi","Null","numero","oggetto","operatore","pacchetto","propriet\xE0","stringa","struct","parametro di tipo","variabile","{0} ({1})"]});
|
||||||
|
|
||||||
|
//# sourceMappingURL=../../../../../min-maps/vs/base/common/worker/simpleWorker.nls.it.js.map
|
||||||
+8
@@ -0,0 +1,8 @@
|
|||||||
|
/*!-----------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/vscode/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------*/define("vs/base/common/worker/simpleWorker.nls.ja",{"vs/base/common/platform":["_"],"vs/editor/common/languages":["\u914D\u5217","\u30D6\u30FC\u30EB\u5024","\u30AF\u30E9\u30B9","\u5B9A\u6570","\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF\u30FC","\u5217\u6319\u578B","\u5217\u6319\u578B\u30E1\u30F3\u30D0\u30FC","\u30A4\u30D9\u30F3\u30C8","\u30D5\u30A3\u30FC\u30EB\u30C9","\u30D5\u30A1\u30A4\u30EB","\u95A2\u6570","\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9","\u30AD\u30FC","\u30E1\u30BD\u30C3\u30C9","\u30E2\u30B8\u30E5\u30FC\u30EB","\u540D\u524D\u7A7A\u9593","NULL","\u6570\u5024","\u30AA\u30D6\u30B8\u30A7\u30AF\u30C8","\u6F14\u7B97\u5B50","\u30D1\u30C3\u30B1\u30FC\u30B8","\u30D7\u30ED\u30D1\u30C6\u30A3","\u6587\u5B57\u5217","\u69CB\u9020\u4F53","\u578B\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC","\u5909\u6570","{0} ({1})"]});
|
||||||
|
|
||||||
|
//# sourceMappingURL=../../../../../min-maps/vs/base/common/worker/simpleWorker.nls.ja.js.map
|
||||||
+8
@@ -0,0 +1,8 @@
|
|||||||
|
/*!-----------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/vscode/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------*/define("vs/base/common/worker/simpleWorker.nls",{"vs/base/common/platform":["_"],"vs/editor/common/languages":["array","boolean","class","constant","constructor","enumeration","enumeration member","event","field","file","function","interface","key","method","module","namespace","null","number","object","operator","package","property","string","struct","type parameter","variable","{0} ({1})"]});
|
||||||
|
|
||||||
|
//# sourceMappingURL=../../../../../min-maps/vs/base/common/worker/simpleWorker.nls.js.map
|
||||||
+8
@@ -0,0 +1,8 @@
|
|||||||
|
/*!-----------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/vscode/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------*/define("vs/base/common/worker/simpleWorker.nls.ko",{"vs/base/common/platform":["_"],"vs/editor/common/languages":["\uBC30\uC5F4","\uBD80\uC6B8","\uD074\uB798\uC2A4","\uC0C1\uC218","\uC0DD\uC131\uC790","\uC5F4\uAC70\uD615","\uC5F4\uAC70\uD615 \uBA64\uBC84","\uC774\uBCA4\uD2B8","\uD544\uB4DC","\uD30C\uC77C","\uD568\uC218","\uC778\uD130\uD398\uC774\uC2A4","\uD0A4","\uBA54\uC11C\uB4DC","\uBAA8\uB4C8","\uB124\uC784\uC2A4\uD398\uC774\uC2A4","Null","\uC22B\uC790","\uAC1C\uCCB4","\uC5F0\uC0B0\uC790","\uD328\uD0A4\uC9C0","\uC18D\uC131","\uBB38\uC790\uC5F4","\uAD6C\uC870\uCCB4","\uD615\uC2DD \uB9E4\uAC1C \uBCC0\uC218","\uBCC0\uC218","{0}({1})"]});
|
||||||
|
|
||||||
|
//# sourceMappingURL=../../../../../min-maps/vs/base/common/worker/simpleWorker.nls.ko.js.map
|
||||||
+8
@@ -0,0 +1,8 @@
|
|||||||
|
/*!-----------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/vscode/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------*/define("vs/base/common/worker/simpleWorker.nls.ru",{"vs/base/common/platform":["_"],"vs/editor/common/languages":["\u043C\u0430\u0441\u0441\u0438\u0432","\u043B\u043E\u0433\u0438\u0447\u0435\u0441\u043A\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435","\u043A\u043B\u0430\u0441\u0441","\u043A\u043E\u043D\u0441\u0442\u0430\u043D\u0442\u0430","\u043A\u043E\u043D\u0441\u0442\u0440\u0443\u043A\u0442\u043E\u0440","\u043F\u0435\u0440\u0435\u0447\u0438\u0441\u043B\u0435\u043D\u0438\u0435","\u044D\u043B\u0435\u043C\u0435\u043D\u0442 \u043F\u0435\u0440\u0435\u0447\u0438\u0441\u043B\u0435\u043D\u0438\u044F","\u0441\u043E\u0431\u044B\u0442\u0438\u0435","\u043F\u043E\u043B\u0435","\u0444\u0430\u0439\u043B","\u0444\u0443\u043D\u043A\u0446\u0438\u044F","\u0438\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441","\u043A\u043B\u044E\u0447","\u043C\u0435\u0442\u043E\u0434","\u043C\u043E\u0434\u0443\u043B\u044C","\u043F\u0440\u043E\u0441\u0442\u0440\u0430\u043D\u0441\u0442\u0432\u043E \u0438\u043C\u0435\u043D","NULL","\u0447\u0438\u0441\u043B\u043E","\u043E\u0431\u044A\u0435\u043A\u0442","\u043E\u043F\u0435\u0440\u0430\u0442\u043E\u0440","\u043F\u0430\u043A\u0435\u0442","\u0441\u0432\u043E\u0439\u0441\u0442\u0432\u043E","\u0441\u0442\u0440\u043E\u043A\u0430","\u0441\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u0430","\u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440 \u0442\u0438\u043F\u0430","\u041F\u0435\u0440\u0435\u043C\u0435\u043D\u043D\u0430\u044F","{0} ({1})"]});
|
||||||
|
|
||||||
|
//# sourceMappingURL=../../../../../min-maps/vs/base/common/worker/simpleWorker.nls.ru.js.map
|
||||||
+8
@@ -0,0 +1,8 @@
|
|||||||
|
/*!-----------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/vscode/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------*/define("vs/base/common/worker/simpleWorker.nls.zh-cn",{"vs/base/common/platform":["_"],"vs/editor/common/languages":["\u6570\u7EC4","\u5E03\u5C14\u503C","\u7C7B","\u5E38\u6570","\u6784\u9020\u51FD\u6570","\u679A\u4E3E","\u679A\u4E3E\u6210\u5458","\u4E8B\u4EF6","\u5B57\u6BB5","\u6587\u4EF6","\u51FD\u6570","\u63A5\u53E3","\u952E","\u65B9\u6CD5","\u6A21\u5757","\u547D\u540D\u7A7A\u95F4","Null","\u6570\u5B57","\u5BF9\u8C61","\u8FD0\u7B97\u7B26","\u5305","\u5C5E\u6027","\u5B57\u7B26\u4E32","\u7ED3\u6784","\u7C7B\u578B\u53C2\u6570","\u53D8\u91CF","{0} ({1})"]});
|
||||||
|
|
||||||
|
//# sourceMappingURL=../../../../../min-maps/vs/base/common/worker/simpleWorker.nls.zh-cn.js.map
|
||||||
+8
@@ -0,0 +1,8 @@
|
|||||||
|
/*!-----------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/vscode/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------*/define("vs/base/common/worker/simpleWorker.nls.zh-tw",{"vs/base/common/platform":["_"],"vs/editor/common/languages":["\u9663\u5217","\u5E03\u6797\u503C","\u985E\u5225","\u5E38\u6578","\u5EFA\u69CB\u51FD\u5F0F","\u5217\u8209","\u5217\u8209\u6210\u54E1","\u4E8B\u4EF6","\u6B04\u4F4D","\u6A94\u6848","\u51FD\u5F0F","\u4ECB\u9762","\u7D22\u5F15\u9375","\u65B9\u6CD5","\u6A21\u7D44","\u547D\u540D\u7A7A\u9593","null","\u6578\u5B57","\u7269\u4EF6","\u904B\u7B97\u5B50","\u5957\u4EF6","\u5C6C\u6027","\u5B57\u4E32","\u7D50\u69CB","\u578B\u5225\u53C3\u6578","\u8B8A\u6578","{0} ({1})"]});
|
||||||
|
|
||||||
|
//# sourceMappingURL=../../../../../min-maps/vs/base/common/worker/simpleWorker.nls.zh-tw.js.map
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/apex/apex", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var i=Object.defineProperty;var r=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var d=(e,t)=>{for(var s in t)i(e,s,{get:t[s],enumerable:!0})},g=(e,t,s,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of c(t))!l.call(e,o)&&o!==s&&i(e,o,{get:()=>t[o],enumerable:!(a=r(t,o))||a.enumerable});return e};var p=e=>g(i({},"__esModule",{value:!0}),e);var h={};d(h,{conf:()=>m,language:()=>b});var m={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}],folding:{markers:{start:new RegExp("^\\s*//\\s*(?:(?:#?region\\b)|(?:<editor-fold\\b))"),end:new RegExp("^\\s*//\\s*(?:(?:#?endregion\\b)|(?:</editor-fold>))")}}},u=["abstract","activate","and","any","array","as","asc","assert","autonomous","begin","bigdecimal","blob","boolean","break","bulk","by","case","cast","catch","char","class","collect","commit","const","continue","convertcurrency","decimal","default","delete","desc","do","double","else","end","enum","exception","exit","export","extends","false","final","finally","float","for","from","future","get","global","goto","group","having","hint","if","implements","import","in","inner","insert","instanceof","int","interface","into","join","last_90_days","last_month","last_n_days","last_week","like","limit","list","long","loop","map","merge","native","new","next_90_days","next_month","next_n_days","next_week","not","null","nulls","number","object","of","on","or","outer","override","package","parallel","pragma","private","protected","public","retrieve","return","returning","rollback","savepoint","search","select","set","short","sort","stat","static","strictfp","super","switch","synchronized","system","testmethod","then","this","this_month","this_week","throw","throws","today","tolabel","tomorrow","transaction","transient","trigger","true","try","type","undelete","update","upsert","using","virtual","void","volatile","webservice","when","where","while","yesterday"],f=e=>e.charAt(0).toUpperCase()+e.substr(1),n=[];u.forEach(e=>{n.push(e),n.push(e.toUpperCase()),n.push(f(e))});var b={defaultToken:"",tokenPostfix:".apex",keywords:n,operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,tokenizer:{root:[[/[a-z_$][\w$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],[/[A-Z][\w\$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"type.identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/@\s*[a-zA-Z_\$][\w\$]*/,"annotation"],[/(@digits)[eE]([\-+]?(@digits))?[fFdD]?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?[fFdD]?/,"number.float"],[/(@digits)[fFdD]/,"number.float"],[/(@digits)[lL]?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string",'@string."'],[/'/,"string","@string.'"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@apexdoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],apexdoc:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]]}};return p(h);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/azcli/azcli", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var s=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var r=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var c=(t,e)=>{for(var o in e)s(t,o,{get:e[o],enumerable:!0})},k=(t,e,o,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of r(e))!l.call(t,n)&&n!==o&&s(t,n,{get:()=>e[n],enumerable:!(a=i(e,n))||a.enumerable});return t};var p=t=>k(s({},"__esModule",{value:!0}),t);var d={};c(d,{conf:()=>f,language:()=>g});var f={comments:{lineComment:"#"}},g={defaultToken:"keyword",ignoreCase:!0,tokenPostfix:".azcli",str:/[^#\s]/,tokenizer:{root:[{include:"@comment"},[/\s-+@str*\s*/,{cases:{"@eos":{token:"key.identifier",next:"@popall"},"@default":{token:"key.identifier",next:"@type"}}}],[/^-+@str*\s*/,{cases:{"@eos":{token:"key.identifier",next:"@popall"},"@default":{token:"key.identifier",next:"@type"}}}]],type:[{include:"@comment"},[/-+@str*\s*/,{cases:{"@eos":{token:"key.identifier",next:"@popall"},"@default":"key.identifier"}}],[/@str+\s*/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}]],comment:[[/#.*$/,{cases:{"@eos":{token:"comment",next:"@popall"}}}]]}};return p(d);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/bat/bat", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var n=Object.defineProperty;var r=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var i=Object.prototype.hasOwnProperty;var g=(o,e)=>{for(var t in e)n(o,t,{get:e[t],enumerable:!0})},c=(o,e,t,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of l(e))!i.call(o,s)&&s!==t&&n(o,s,{get:()=>e[s],enumerable:!(a=r(e,s))||a.enumerable});return o};var p=o=>c(n({},"__esModule",{value:!0}),o);var k={};g(k,{conf:()=>d,language:()=>m});var d={comments:{lineComment:"REM"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],surroundingPairs:[{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],folding:{markers:{start:new RegExp("^\\s*(::\\s*|REM\\s+)#region"),end:new RegExp("^\\s*(::\\s*|REM\\s+)#endregion")}}},m={defaultToken:"",ignoreCase:!0,tokenPostfix:".bat",brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"}],keywords:/call|defined|echo|errorlevel|exist|for|goto|if|pause|set|shift|start|title|not|pushd|popd/,symbols:/[=><!~?&|+\-*\/\^;\.,]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/^(\s*)(rem(?:\s.*|))$/,["","comment"]],[/(\@?)(@keywords)(?!\w)/,[{token:"keyword"},{token:"keyword.$2"}]],[/[ \t\r\n]+/,""],[/setlocal(?!\w)/,"keyword.tag-setlocal"],[/endlocal(?!\w)/,"keyword.tag-setlocal"],[/[a-zA-Z_]\w*/,""],[/:\w*/,"metatag"],[/%[^%]+%/,"variable"],[/%%[\w]+(?!\w)/,"variable"],[/[{}()\[\]]/,"@brackets"],[/@symbols/,"delimiter"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],string:[[/[^\\"'%]+/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/%[\w ]+%/,"variable"],[/%%[\w]+(?!\w)/,"variable"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/$/,"string","@popall"]]}};return p(k);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/bicep/bicep", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var r=Object.defineProperty;var s=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var a=Object.prototype.hasOwnProperty;var g=(e,n)=>{for(var o in n)r(e,o,{get:n[o],enumerable:!0})},l=(e,n,o,i)=>{if(n&&typeof n=="object"||typeof n=="function")for(let t of c(n))!a.call(e,t)&&t!==o&&r(e,t,{get:()=>n[t],enumerable:!(i=s(n,t))||i.enumerable});return e};var m=e=>l(r({},"__esModule",{value:!0}),e);var y={};g(y,{conf:()=>$,language:()=>w});var p=e=>`\\b${e}\\b`,k="[_a-zA-Z]",x="[_a-zA-Z0-9]",u=p(`${k}${x}*`),d=["targetScope","resource","module","param","var","output","for","in","if","existing"],b=["true","false","null"],f="[ \\t\\r\\n]",C="[0-9]+",$={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"'",close:"'"},{open:"'''",close:"'''"}],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"'",close:"'",notIn:["string","comment"]},{open:"'''",close:"'''",notIn:["string","comment"]}],autoCloseBefore:`:.,=}])'
|
||||||
|
`,indentationRules:{increaseIndentPattern:new RegExp("^((?!\\/\\/).)*(\\{[^}\"'`]*|\\([^)\"'`]*|\\[[^\\]\"'`]*)$"),decreaseIndentPattern:new RegExp("^((?!.*?\\/\\*).*\\*/)?\\s*[\\}\\]].*$")}},w={defaultToken:"",tokenPostfix:".bicep",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],symbols:/[=><!~?:&|+\-*/^%]+/,keywords:d,namedLiterals:b,escapes:"\\\\(u{[0-9A-Fa-f]+}|n|r|t|\\\\|'|\\${)",tokenizer:{root:[{include:"@expression"},{include:"@whitespace"}],stringVerbatim:[{regex:"(|'|'')[^']",action:{token:"string"}},{regex:"'''",action:{token:"string.quote",next:"@pop"}}],stringLiteral:[{regex:"\\${",action:{token:"delimiter.bracket",next:"@bracketCounting"}},{regex:"[^\\\\'$]+",action:{token:"string"}},{regex:"@escapes",action:{token:"string.escape"}},{regex:"\\\\.",action:{token:"string.escape.invalid"}},{regex:"'",action:{token:"string",next:"@pop"}}],bracketCounting:[{regex:"{",action:{token:"delimiter.bracket",next:"@bracketCounting"}},{regex:"}",action:{token:"delimiter.bracket",next:"@pop"}},{include:"expression"}],comment:[{regex:"[^\\*]+",action:{token:"comment"}},{regex:"\\*\\/",action:{token:"comment",next:"@pop"}},{regex:"[\\/*]",action:{token:"comment"}}],whitespace:[{regex:f},{regex:"\\/\\*",action:{token:"comment",next:"@comment"}},{regex:"\\/\\/.*$",action:{token:"comment"}}],expression:[{regex:"'''",action:{token:"string.quote",next:"@stringVerbatim"}},{regex:"'",action:{token:"string.quote",next:"@stringLiteral"}},{regex:C,action:{token:"number"}},{regex:u,action:{cases:{"@keywords":{token:"keyword"},"@namedLiterals":{token:"keyword"},"@default":{token:"identifier"}}}}]}};return m(y);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
+10
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/cameligo/cameligo", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var s=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var c=(o,e)=>{for(var n in e)s(o,n,{get:e[n],enumerable:!0})},m=(o,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of a(e))!l.call(o,t)&&t!==n&&s(o,t,{get:()=>e[t],enumerable:!(r=i(e,t))||r.enumerable});return o};var p=o=>m(s({},"__esModule",{value:!0}),o);var u={};c(u,{conf:()=>d,language:()=>g});var d={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"},{open:'"',close:'"'},{open:"(*",close:"*)"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"},{open:'"',close:'"'},{open:"(*",close:"*)"}]},g={defaultToken:"",tokenPostfix:".cameligo",ignoreCase:!0,brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],keywords:["abs","assert","block","Bytes","case","Crypto","Current","else","failwith","false","for","fun","if","in","let","let%entry","let%init","List","list","Map","map","match","match%nat","mod","not","operation","Operation","of","record","Set","set","sender","skip","source","String","then","to","true","type","with"],typeKeywords:["int","unit","string","tz","nat","bool"],operators:["=",">","<","<=",">=","<>",":",":=","and","mod","or","+","-","*","/","@","&","^","%","->","<-","&&","||"],symbols:/[=><:@\^&|+\-*\/\^%]+/,tokenizer:{root:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\$[0-9a-fA-F]{1,16}/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/'/,"string","@string"],[/'[^\\']'/,"string"],[/'/,"string.invalid"],[/\#\d+/,"string"]],comment:[[/[^\(\*]+/,"comment"],[/\*\)/,"comment","@pop"],[/\(\*/,"comment"]],string:[[/[^\\']+/,"string"],[/\\./,"string.escape.invalid"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,"white"],[/\(\*/,"comment","@comment"],[/\/\/.*$/,"comment"]]}};return p(u);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
+10
File diff suppressed because one or more lines are too long
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/coffee/coffee", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var s=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var a=Object.prototype.hasOwnProperty;var l=(n,e)=>{for(var t in e)s(n,t,{get:e[t],enumerable:!0})},p=(n,e,t,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of g(e))!a.call(n,r)&&r!==t&&s(n,r,{get:()=>e[r],enumerable:!(o=i(e,r))||o.enumerable});return n};var c=n=>p(s({},"__esModule",{value:!0}),n);var m={};l(m,{conf:()=>d,language:()=>x});var d={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#%\^\&\*\(\)\=\$\-\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{blockComment:["###","###"],lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},x={defaultToken:"",ignoreCase:!0,tokenPostfix:".coffee",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],regEx:/\/(?!\/\/)(?:[^\/\\]|\\.)*\/[igm]*/,keywords:["and","or","is","isnt","not","on","yes","@","no","off","true","false","null","this","new","delete","typeof","in","instanceof","return","throw","break","continue","debugger","if","else","switch","for","while","do","try","catch","finally","class","extends","super","undefined","then","unless","until","loop","of","by","when"],symbols:/[=><!~?&%|+\-*\/\^\.,\:]+/,escapes:/\\(?:[abfnrtv\\"'$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/\@[a-zA-Z_]\w*/,"variable.predefined"],[/[a-zA-Z_]\w*/,{cases:{this:"variable.predefined","@keywords":{token:"keyword.$0"},"@default":""}}],[/[ \t\r\n]+/,""],[/###/,"comment","@comment"],[/#.*$/,"comment"],["///",{token:"regexp",next:"@hereregexp"}],[/^(\s*)(@regEx)/,["","regexp"]],[/(\()(\s*)(@regEx)/,["@brackets","","regexp"]],[/(\,)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\=)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\:)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\[)(\s*)(@regEx)/,["@brackets","","regexp"]],[/(\!)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\&)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\|)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\?)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\{)(\s*)(@regEx)/,["@brackets","","regexp"]],[/(\;)(\s*)(@regEx)/,["","","regexp"]],[/}/,{cases:{"$S2==interpolatedstring":{token:"string",next:"@pop"},"@default":"@brackets"}}],[/[{}()\[\]]/,"@brackets"],[/@symbols/,"delimiter"],[/\d+[eE]([\-+]?\d+)?/,"number.float"],[/\d+\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+/,"number.hex"],[/0[0-7]+(?!\d)/,"number.octal"],[/\d+/,"number"],[/[,.]/,"delimiter"],[/"""/,"string",'@herestring."""'],[/'''/,"string","@herestring.'''"],[/"/,{cases:{"@eos":"string","@default":{token:"string",next:'@string."'}}}],[/'/,{cases:{"@eos":"string","@default":{token:"string",next:"@string.'"}}}]],string:[[/[^"'\#\\]+/,"string"],[/@escapes/,"string.escape"],[/\./,"string.escape.invalid"],[/\./,"string.escape.invalid"],[/#{/,{cases:{'$S2=="':{token:"string",next:"root.interpolatedstring"},"@default":"string"}}],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/#/,"string"]],herestring:[[/("""|''')/,{cases:{"$1==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/[^#\\'"]+/,"string"],[/['"]+/,"string"],[/@escapes/,"string.escape"],[/\./,"string.escape.invalid"],[/#{/,{token:"string.quote",next:"root.interpolatedstring"}],[/#/,"string"]],comment:[[/[^#]+/,"comment"],[/###/,"comment","@pop"],[/#/,"comment"]],hereregexp:[[/[^\\\/#]+/,"regexp"],[/\\./,"regexp"],[/#.*$/,"comment"],["///[igm]*",{token:"regexp",next:"@pop"}],[/\//,"regexp"]]}};return c(m);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/csharp/csharp", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var s=Object.defineProperty;var r=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var c=Object.prototype.hasOwnProperty;var l=(t,e)=>{for(var o in e)s(t,o,{get:e[o],enumerable:!0})},p=(t,e,o,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of a(e))!c.call(t,n)&&n!==o&&s(t,n,{get:()=>e[n],enumerable:!(i=r(e,n))||i.enumerable});return t};var g=t=>p(s({},"__esModule",{value:!0}),t);var u={};l(u,{conf:()=>d,language:()=>m});var d={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\$\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"'",close:"'",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"},{open:'"',close:'"'}],folding:{markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},m={defaultToken:"",tokenPostfix:".cs",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],keywords:["extern","alias","using","bool","decimal","sbyte","byte","short","ushort","int","uint","long","ulong","char","float","double","object","dynamic","string","assembly","is","as","ref","out","this","base","new","typeof","void","checked","unchecked","default","delegate","var","const","if","else","switch","case","while","do","for","foreach","in","break","continue","goto","return","throw","try","catch","finally","lock","yield","from","let","where","join","on","equals","into","orderby","ascending","descending","select","group","by","namespace","partial","class","field","event","method","param","public","protected","internal","private","abstract","sealed","static","struct","readonly","volatile","virtual","override","params","get","set","add","remove","operator","true","false","implicit","explicit","interface","enum","null","async","await","fixed","sizeof","stackalloc","unsafe","nameof","when"],namespaceFollows:["namespace","using"],parenFollows:["if","for","while","switch","foreach","using","catch","when"],operators:["=","??","||","&&","|","^","&","==","!=","<=",">=","<<","+","-","*","/","%","!","~","++","--","+=","-=","*=","/=","%=","&=","|=","^=","<<=",">>=",">>","=>"],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/\@?[a-zA-Z_]\w*/,{cases:{"@namespaceFollows":{token:"keyword.$0",next:"@namespace"},"@keywords":{token:"keyword.$0",next:"@qualified"},"@default":{token:"identifier",next:"@qualified"}}}],{include:"@whitespace"},[/}/,{cases:{"$S2==interpolatedstring":{token:"string.quote",next:"@pop"},"$S2==litinterpstring":{token:"string.quote",next:"@pop"},"@default":"@brackets"}}],[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/[0-9_]*\.[0-9_]+([eE][\-+]?\d+)?[fFdD]?/,"number.float"],[/0[xX][0-9a-fA-F_]+/,"number.hex"],[/0[bB][01_]+/,"number.hex"],[/[0-9_]+/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,{token:"string.quote",next:"@string"}],[/\$\@"/,{token:"string.quote",next:"@litinterpstring"}],[/\@"/,{token:"string.quote",next:"@litstring"}],[/\$"/,{token:"string.quote",next:"@interpolatedstring"}],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],qualified:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],[/\./,"delimiter"],["","","@pop"]],namespace:[{include:"@whitespace"},[/[A-Z]\w*/,"namespace"],[/[\.=]/,"delimiter"],["","","@pop"]],comment:[[/[^\/*]+/,"comment"],["\\*/","comment","@pop"],[/[\/*]/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",next:"@pop"}]],litstring:[[/[^"]+/,"string"],[/""/,"string.escape"],[/"/,{token:"string.quote",next:"@pop"}]],litinterpstring:[[/[^"{]+/,"string"],[/""/,"string.escape"],[/{{/,"string.escape"],[/}}/,"string.escape"],[/{/,{token:"string.quote",next:"root.litinterpstring"}],[/"/,{token:"string.quote",next:"@pop"}]],interpolatedstring:[[/[^\\"{]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/{{/,"string.escape"],[/}}/,"string.escape"],[/{/,{token:"string.quote",next:"root.interpolatedstring"}],[/"/,{token:"string.quote",next:"@pop"}]],whitespace:[[/^[ \t\v\f]*#((r)|(load))(?=\s)/,"directive.csx"],[/^[ \t\v\f]*#\w.*$/,"namespace.cpp"],[/[ \t\v\f\r\n]+/,""],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]]}};return g(u);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/csp/csp", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var o=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var u=Object.getOwnPropertyNames;var g=Object.prototype.hasOwnProperty;var a=(r,t)=>{for(var s in t)o(r,s,{get:t[s],enumerable:!0})},c=(r,t,s,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let e of u(t))!g.call(r,e)&&e!==s&&o(r,e,{get:()=>t[e],enumerable:!(n=i(t,e))||n.enumerable});return r};var q=r=>c(o({},"__esModule",{value:!0}),r);var p={};a(p,{conf:()=>f,language:()=>l});var f={brackets:[],autoClosingPairs:[],surroundingPairs:[]},l={keywords:[],typeKeywords:[],tokenPostfix:".csp",operators:[],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/child-src/,"string.quote"],[/connect-src/,"string.quote"],[/default-src/,"string.quote"],[/font-src/,"string.quote"],[/frame-src/,"string.quote"],[/img-src/,"string.quote"],[/manifest-src/,"string.quote"],[/media-src/,"string.quote"],[/object-src/,"string.quote"],[/script-src/,"string.quote"],[/style-src/,"string.quote"],[/worker-src/,"string.quote"],[/base-uri/,"string.quote"],[/plugin-types/,"string.quote"],[/sandbox/,"string.quote"],[/disown-opener/,"string.quote"],[/form-action/,"string.quote"],[/frame-ancestors/,"string.quote"],[/report-uri/,"string.quote"],[/report-to/,"string.quote"],[/upgrade-insecure-requests/,"string.quote"],[/block-all-mixed-content/,"string.quote"],[/require-sri-for/,"string.quote"],[/reflected-xss/,"string.quote"],[/referrer/,"string.quote"],[/policy-uri/,"string.quote"],[/'self'/,"string.quote"],[/'unsafe-inline'/,"string.quote"],[/'unsafe-eval'/,"string.quote"],[/'strict-dynamic'/,"string.quote"],[/'unsafe-hashed-attributes'/,"string.quote"]]}};return q(p);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/css/css", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var r=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var s=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var m=(t,e)=>{for(var o in e)r(t,o,{get:e[o],enumerable:!0})},c=(t,e,o,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of s(e))!l.call(t,n)&&n!==o&&r(t,n,{get:()=>e[n],enumerable:!(i=a(e,n))||i.enumerable});return t};var d=t=>c(r({},"__esModule",{value:!0}),t);var k={};m(k,{conf:()=>u,language:()=>p});var u={wordPattern:/(#?-?\d*\.\d\w*%?)|((::|[@#.!:])?[\w-?]+%?)|::|[@#.!:]/g,comments:{blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*\\/\\*\\s*#region\\b\\s*(.*?)\\s*\\*\\/"),end:new RegExp("^\\s*\\/\\*\\s*#endregion\\b.*\\*\\/")}}},p={defaultToken:"",tokenPostfix:".css",ws:`[
|
||||||
|
\r\f]*`,identifier:"-?-?([a-zA-Z]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",brackets:[{open:"{",close:"}",token:"delimiter.bracket"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],tokenizer:{root:[{include:"@selector"}],selector:[{include:"@comments"},{include:"@import"},{include:"@strings"},["[@](keyframes|-webkit-keyframes|-moz-keyframes|-o-keyframes)",{token:"keyword",next:"@keyframedeclaration"}],["[@](page|content|font-face|-moz-document)",{token:"keyword"}],["[@](charset|namespace)",{token:"keyword",next:"@declarationbody"}],["(url-prefix)(\\()",["attribute.value",{token:"delimiter.parenthesis",next:"@urldeclaration"}]],["(url)(\\()",["attribute.value",{token:"delimiter.parenthesis",next:"@urldeclaration"}]],{include:"@selectorname"},["[\\*]","tag"],["[>\\+,]","delimiter"],["\\[",{token:"delimiter.bracket",next:"@selectorattribute"}],["{",{token:"delimiter.bracket",next:"@selectorbody"}]],selectorbody:[{include:"@comments"},["[*_]?@identifier@ws:(?=(\\s|\\d|[^{;}]*[;}]))","attribute.name","@rulevalue"],["}",{token:"delimiter.bracket",next:"@pop"}]],selectorname:[["(\\.|#(?=[^{])|%|(@identifier)|:)+","tag"]],selectorattribute:[{include:"@term"},["]",{token:"delimiter.bracket",next:"@pop"}]],term:[{include:"@comments"},["(url-prefix)(\\()",["attribute.value",{token:"delimiter.parenthesis",next:"@urldeclaration"}]],["(url)(\\()",["attribute.value",{token:"delimiter.parenthesis",next:"@urldeclaration"}]],{include:"@functioninvocation"},{include:"@numbers"},{include:"@name"},{include:"@strings"},["([<>=\\+\\-\\*\\/\\^\\|\\~,])","delimiter"],[",","delimiter"]],rulevalue:[{include:"@comments"},{include:"@strings"},{include:"@term"},["!important","keyword"],[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}]],warndebug:[["[@](warn|debug)",{token:"keyword",next:"@declarationbody"}]],import:[["[@](import)",{token:"keyword",next:"@declarationbody"}]],urldeclaration:[{include:"@strings"},[`[^)\r
|
||||||
|
]+`,"string"],["\\)",{token:"delimiter.parenthesis",next:"@pop"}]],parenthizedterm:[{include:"@term"},["\\)",{token:"delimiter.parenthesis",next:"@pop"}]],declarationbody:[{include:"@term"},[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[/[^*/]+/,"comment"],[/./,"comment"]],name:[["@identifier","attribute.value"]],numbers:[["-?(\\d*\\.)?\\d+([eE][\\-+]?\\d+)?",{token:"attribute.value.number",next:"@units"}],["#[0-9a-fA-F_]+(?!\\w)","attribute.value.hex"]],units:[["(em|ex|ch|rem|fr|vmin|vmax|vw|vh|vm|cm|mm|in|px|pt|pc|deg|grad|rad|turn|s|ms|Hz|kHz|%)?","attribute.value.unit","@pop"]],keyframedeclaration:[["@identifier","attribute.value"],["{",{token:"delimiter.bracket",switchTo:"@keyframebody"}]],keyframebody:[{include:"@term"},["{",{token:"delimiter.bracket",next:"@selectorbody"}],["}",{token:"delimiter.bracket",next:"@pop"}]],functioninvocation:[["@identifier\\(",{token:"attribute.value",next:"@functionarguments"}]],functionarguments:[["\\$@identifier@ws:","attribute.name"],["[,]","delimiter"],{include:"@term"},["\\)",{token:"attribute.value",next:"@pop"}]],strings:[['~?"',{token:"string",next:"@stringenddoublequote"}],["~?'",{token:"string",next:"@stringendquote"}]],stringenddoublequote:[["\\\\.","string"],['"',{token:"string",next:"@pop"}],[/[^\\"]+/,"string"],[".","string"]],stringendquote:[["\\\\.","string"],["'",{token:"string",next:"@pop"}],[/[^\\']+/,"string"],[".","string"]]}};return d(k);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/cypher/cypher", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var s=Object.defineProperty;var r=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var c=(i,e)=>{for(var n in e)s(i,n,{get:e[n],enumerable:!0})},g=(i,e,n,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of a(e))!l.call(i,t)&&t!==n&&s(i,t,{get:()=>e[t],enumerable:!(o=r(e,t))||o.enumerable});return i};var p=i=>g(s({},"__esModule",{value:!0}),i);var u={};c(u,{conf:()=>d,language:()=>m});var d={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}]},m={defaultToken:"",tokenPostfix:".cypher",ignoreCase:!0,brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["ALL","AND","AS","ASC","ASCENDING","BY","CALL","CASE","CONTAINS","CREATE","DELETE","DESC","DESCENDING","DETACH","DISTINCT","ELSE","END","ENDS","EXISTS","IN","IS","LIMIT","MANDATORY","MATCH","MERGE","NOT","ON","ON","OPTIONAL","OR","ORDER","REMOVE","RETURN","SET","SKIP","STARTS","THEN","UNION","UNWIND","WHEN","WHERE","WITH","XOR","YIELD"],builtinLiterals:["true","TRUE","false","FALSE","null","NULL"],builtinFunctions:["abs","acos","asin","atan","atan2","avg","ceil","coalesce","collect","cos","cot","count","degrees","e","endNode","exists","exp","floor","head","id","keys","labels","last","left","length","log","log10","lTrim","max","min","nodes","percentileCont","percentileDisc","pi","properties","radians","rand","range","relationships","replace","reverse","right","round","rTrim","sign","sin","size","split","sqrt","startNode","stDev","stDevP","substring","sum","tail","tan","timestamp","toBoolean","toFloat","toInteger","toLower","toString","toUpper","trim","type"],operators:["+","-","*","/","%","^","=","<>","<",">","<=",">=","->","<-","-->","<--"],escapes:/\\(?:[tbnrf\\"'`]|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+/,octaldigits:/[0-7]+/,hexdigits:/[0-9a-fA-F]+/,tokenizer:{root:[[/[{}[\]()]/,"@brackets"],{include:"common"}],common:[{include:"@whitespace"},{include:"@numbers"},{include:"@strings"},[/:[a-zA-Z_][\w]*/,"type.identifier"],[/[a-zA-Z_][\w]*(?=\()/,{cases:{"@builtinFunctions":"predefined.function"}}],[/[a-zA-Z_$][\w$]*/,{cases:{"@keywords":"keyword","@builtinLiterals":"predefined.literal","@default":"identifier"}}],[/`/,"identifier.escape","@identifierBacktick"],[/[;,.:|]/,"delimiter"],[/[<>=%+\-*/^]+/,{cases:{"@operators":"delimiter","@default":""}}]],numbers:[[/-?(@digits)[eE](-?(@digits))?/,"number.float"],[/-?(@digits)?\.(@digits)([eE]-?(@digits))?/,"number.float"],[/-?0x(@hexdigits)/,"number.hex"],[/-?0(@octaldigits)/,"number.octal"],[/-?(@digits)/,"number"]],strings:[[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string","@stringDouble"],[/'/,"string","@stringSingle"]],whitespace:[[/[ \t\r\n]+/,"white"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/\/\/.*/,"comment"],[/[^/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[/*]/,"comment"]],stringDouble:[[/[^\\"]+/,"string"],[/@escapes/,"string"],[/\\./,"string.invalid"],[/"/,"string","@pop"]],stringSingle:[[/[^\\']+/,"string"],[/@escapes/,"string"],[/\\./,"string.invalid"],[/'/,"string","@pop"]],identifierBacktick:[[/[^\\`]+/,"identifier.escape"],[/@escapes/,"identifier.escape"],[/\\./,"identifier.escape.invalid"],[/`/,"identifier.escape","@pop"]]}};return p(u);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/dart/dart", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var r=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var a=Object.prototype.hasOwnProperty;var p=(n,e)=>{for(var t in e)r(n,t,{get:e[t],enumerable:!0})},g=(n,e,t,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of c(e))!a.call(n,o)&&o!==t&&r(n,o,{get:()=>e[o],enumerable:!(s=i(e,o))||s.enumerable});return n};var l=n=>g(r({},"__esModule",{value:!0}),n);var x={};p(x,{conf:()=>d,language:()=>m});var d={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"'",close:"'",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string"]},{open:"`",close:"`",notIn:["string","comment"]},{open:"/**",close:" */",notIn:["string"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"},{open:"(",close:")"},{open:'"',close:'"'},{open:"`",close:"`"}],folding:{markers:{start:/^\s*\s*#?region\b/,end:/^\s*\s*#?endregion\b/}}},m={defaultToken:"invalid",tokenPostfix:".dart",keywords:["abstract","dynamic","implements","show","as","else","import","static","assert","enum","in","super","async","export","interface","switch","await","extends","is","sync","break","external","library","this","case","factory","mixin","throw","catch","false","new","true","class","final","null","try","const","finally","on","typedef","continue","for","operator","var","covariant","Function","part","void","default","get","rethrow","while","deferred","hide","return","with","do","if","set","yield"],typeKeywords:["int","double","String","bool"],operators:["+","-","*","/","~/","%","++","--","==","!=",">","<",">=","<=","=","-=","/=","%=",">>=","^=","+=","*=","~/=","<<=","&=","!=","||","&&","&","|","^","~","<<",">>","!",">>>","??","?",":","|="],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,regexpctl:/[(){}\[\]\$\^|\-*+?\.]/,regexpesc:/\\(?:[bBdDfnrstvwWn0\\\/]|@regexpctl|c[A-Z]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4})/,tokenizer:{root:[[/[{}]/,"delimiter.bracket"],{include:"common"}],common:[[/[a-z_$][\w$]*/,{cases:{"@typeKeywords":"type.identifier","@keywords":"keyword","@default":"identifier"}}],[/[A-Z_$][\w\$]*/,"type.identifier"],{include:"@whitespace"},[/\/(?=([^\\\/]|\\.)+\/([gimsuy]*)(\s*)(\.|;|,|\)|\]|\}|$))/,{token:"regexp",bracket:"@open",next:"@regexp"}],[/@[a-zA-Z]+/,"annotation"],[/[()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/!(?=([^=]|$))/,"delimiter"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/(@digits)[eE]([\-+]?(@digits))?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?/,"number.float"],[/0[xX](@hexdigits)n?/,"number.hex"],[/0[oO]?(@octaldigits)n?/,"number.octal"],[/0[bB](@binarydigits)n?/,"number.binary"],[/(@digits)n?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string_double"],[/'/,"string","@string_single"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@jsdoc"],[/\/\*/,"comment","@comment"],[/\/\/\/.*$/,"comment.doc"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],jsdoc:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],regexp:[[/(\{)(\d+(?:,\d*)?)(\})/,["regexp.escape.control","regexp.escape.control","regexp.escape.control"]],[/(\[)(\^?)(?=(?:[^\]\\\/]|\\.)+)/,["regexp.escape.control",{token:"regexp.escape.control",next:"@regexrange"}]],[/(\()(\?:|\?=|\?!)/,["regexp.escape.control","regexp.escape.control"]],[/[()]/,"regexp.escape.control"],[/@regexpctl/,"regexp.escape.control"],[/[^\\\/]/,"regexp"],[/@regexpesc/,"regexp.escape"],[/\\\./,"regexp.invalid"],[/(\/)([gimsuy]*)/,[{token:"regexp",bracket:"@close",next:"@pop"},"keyword.other"]]],regexrange:[[/-/,"regexp.escape.control"],[/\^/,"regexp.invalid"],[/@regexpesc/,"regexp.escape"],[/[^\]]/,"regexp"],[/\]/,{token:"regexp.escape.control",next:"@pop",bracket:"@close"}]],string_double:[[/[^\\"\$]+/,"string"],[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"],[/\$\w+/,"identifier"]],string_single:[[/[^\\'\$]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'/,"string","@pop"],[/\$\w+/,"identifier"]]}};return l(x);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
+10
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/dockerfile/dockerfile", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var a=Object.defineProperty;var l=Object.getOwnPropertyDescriptor;var r=Object.getOwnPropertyNames;var i=Object.prototype.hasOwnProperty;var p=(o,e)=>{for(var s in e)a(o,s,{get:e[s],enumerable:!0})},g=(o,e,s,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of r(e))!i.call(o,n)&&n!==s&&a(o,n,{get:()=>e[n],enumerable:!(t=l(e,n))||t.enumerable});return o};var c=o=>g(a({},"__esModule",{value:!0}),o);var k={};p(k,{conf:()=>u,language:()=>d});var u={brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},d={defaultToken:"",tokenPostfix:".dockerfile",variable:/\${?[\w]+}?/,tokenizer:{root:[{include:"@whitespace"},{include:"@comment"},[/(ONBUILD)(\s+)/,["keyword",""]],[/(ENV)(\s+)([\w]+)/,["keyword","",{token:"variable",next:"@arguments"}]],[/(FROM|MAINTAINER|RUN|EXPOSE|ENV|ADD|ARG|VOLUME|LABEL|USER|WORKDIR|COPY|CMD|STOPSIGNAL|SHELL|HEALTHCHECK|ENTRYPOINT)/,{token:"keyword",next:"@arguments"}]],arguments:[{include:"@whitespace"},{include:"@strings"},[/(@variable)/,{cases:{"@eos":{token:"variable",next:"@popall"},"@default":"variable"}}],[/\\/,{cases:{"@eos":"","@default":""}}],[/./,{cases:{"@eos":{token:"",next:"@popall"},"@default":""}}]],whitespace:[[/\s+/,{cases:{"@eos":{token:"",next:"@popall"},"@default":""}}]],comment:[[/(^#.*$)/,"comment","@popall"]],strings:[[/\\'$/,"","@popall"],[/\\'/,""],[/'$/,"string","@popall"],[/'/,"string","@stringBody"],[/"$/,"string","@popall"],[/"/,"string","@dblStringBody"]],stringBody:[[/[^\\\$']/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/\\./,"string.escape"],[/'$/,"string","@popall"],[/'/,"string","@pop"],[/(@variable)/,"variable"],[/\\$/,"string"],[/$/,"string","@popall"]],dblStringBody:[[/[^\\\$"]/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/\\./,"string.escape"],[/"$/,"string","@popall"],[/"/,"string","@pop"],[/(@variable)/,"variable"],[/\\$/,"string"],[/$/,"string","@popall"]]}};return c(k);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/flow9/flow9", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var s=Object.defineProperty;var r=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var c=(o,e)=>{for(var t in e)s(o,t,{get:e[t],enumerable:!0})},m=(o,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of a(e))!l.call(o,n)&&n!==t&&s(o,n,{get:()=>e[n],enumerable:!(i=r(e,n))||i.enumerable});return o};var p=o=>m(s({},"__esModule",{value:!0}),o);var u={};c(u,{conf:()=>g,language:()=>f});var g={comments:{blockComment:["/*","*/"],lineComment:"//"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string"]},{open:"[",close:"]",notIn:["string"]},{open:"(",close:")",notIn:["string"]},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}]},f={defaultToken:"",tokenPostfix:".flow",keywords:["import","require","export","forbid","native","if","else","cast","unsafe","switch","default"],types:["io","mutable","bool","int","double","string","flow","void","ref","true","false","with"],operators:["=",">","<","<=",">=","==","!","!=",":=","::=","&&","||","+","-","*","/","@","&","%",":","->","\\","$","??","^"],symbols:/[@$=><!~?:&|+\-*\\\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":"keyword","@types":"type","@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"delimiter"],[/[<>](?!@symbols)/,"delimiter"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/((0(x|X)[0-9a-fA-F]*)|(([0-9]+\.?[0-9]*)|(\.[0-9]+))((e|E)(\+|-)?[0-9]+)?)/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]]}};return p(u);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
+12
File diff suppressed because one or more lines are too long
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/fsharp/fsharp", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var s=Object.defineProperty;var r=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var c=(n,e)=>{for(var o in e)s(n,o,{get:e[o],enumerable:!0})},g=(n,e,o,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of a(e))!l.call(n,t)&&t!==o&&s(n,t,{get:()=>e[t],enumerable:!(i=r(e,t))||i.enumerable});return n};var f=n=>g(s({},"__esModule",{value:!0}),n);var d={};c(d,{conf:()=>m,language:()=>u});var m={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*//\\s*#region\\b|^\\s*\\(\\*\\s*#region(.*)\\*\\)"),end:new RegExp("^\\s*//\\s*#endregion\\b|^\\s*\\(\\*\\s*#endregion\\s*\\*\\)")}}},u={defaultToken:"",tokenPostfix:".fs",keywords:["abstract","and","atomic","as","assert","asr","base","begin","break","checked","component","const","constraint","constructor","continue","class","default","delegate","do","done","downcast","downto","elif","else","end","exception","eager","event","external","extern","false","finally","for","fun","function","fixed","functor","global","if","in","include","inherit","inline","interface","internal","land","lor","lsl","lsr","lxor","lazy","let","match","member","mod","module","mutable","namespace","method","mixin","new","not","null","of","open","or","object","override","private","parallel","process","protected","pure","public","rec","return","static","sealed","struct","sig","then","to","true","tailcall","trait","try","type","upcast","use","val","void","virtual","volatile","when","while","with","yield"],symbols:/[=><!~?:&|+\-*\^%;\.,\/]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,integersuffix:/[uU]?[yslnLI]?/,floatsuffix:/[fFmM]?/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/\[<.*>\]/,"annotation"],[/^#(if|else|endif)/,"keyword"],[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,"delimiter"],[/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/,"number.float"],[/0x[0-9a-fA-F]+LF/,"number.float"],[/0x[0-9a-fA-F]+(@integersuffix)/,"number.hex"],[/0b[0-1]+(@integersuffix)/,"number.bin"],[/\d+(@integersuffix)/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"""/,"string",'@string."""'],[/"/,"string",'@string."'],[/\@"/,{token:"string.quote",next:"@litstring"}],[/'[^\\']'B?/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\(\*(?!\))/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^*(]+/,"comment"],[/\*\)/,"comment","@pop"],[/\*/,"comment"],[/\(\*\)/,"comment"],[/\(/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/("""|"B?)/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]],litstring:[[/[^"]+/,"string"],[/""/,"string.escape"],[/"/,{token:"string.quote",next:"@pop"}]]}};return f(d);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/go/go", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var s=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var c=Object.prototype.hasOwnProperty;var m=(n,e)=>{for(var t in e)s(n,t,{get:e[t],enumerable:!0})},l=(n,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of a(e))!c.call(n,o)&&o!==t&&s(n,o,{get:()=>e[o],enumerable:!(r=i(e,o))||r.enumerable});return n};var g=n=>l(s({},"__esModule",{value:!0}),n);var d={};m(d,{conf:()=>p,language:()=>u});var p={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"`",close:"`",notIn:["string"]},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"`",close:"`"},{open:'"',close:'"'},{open:"'",close:"'"}]},u={defaultToken:"",tokenPostfix:".go",keywords:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var","bool","true","false","uint8","uint16","uint32","uint64","int8","int16","int32","int64","float32","float64","complex64","complex128","byte","rune","uint","int","uintptr","string","nil"],operators:["+","-","*","/","%","&","|","^","<<",">>","&^","+=","-=","*=","/=","%=","&=","|=","^=","<<=",">>=","&^=","&&","||","<-","++","--","==","<",">","=","!","!=","<=",">=",":=","...","(",")","","]","{","}",",",";",".",":"],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/\[\[.*\]\]/,"annotation"],[/^\s*#\w+/,"keyword"],[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\d+[eE]([\-+]?\d+)?/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F]/,"number.hex"],[/0[0-7']*[0-7]/,"number.octal"],[/0[bB][0-1']*[0-1]/,"number.binary"],[/\d[\d']*/,"number"],[/\d/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"],[/`/,"string","@rawstring"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@doccomment"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],doccomment:[[/[^\/*]+/,"comment.doc"],[/\/\*/,"comment.doc.invalid"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],rawstring:[[/[^\`]/,"string"],[/`/,"string","@pop"]]}};return g(d);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
+10
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/graphql/graphql", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var s=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var c=(n,e)=>{for(var t in e)s(n,t,{get:e[t],enumerable:!0})},d=(n,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of i(e))!l.call(n,o)&&o!==t&&s(n,o,{get:()=>e[o],enumerable:!(r=a(e,o))||r.enumerable});return n};var p=n=>d(s({},"__esModule",{value:!0}),n);var u={};c(u,{conf:()=>g,language:()=>I});var g={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"""',close:'"""',notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"""',close:'"""'},{open:'"',close:'"'}],folding:{offSide:!0}},I={defaultToken:"invalid",tokenPostfix:".gql",keywords:["null","true","false","query","mutation","subscription","extend","schema","directive","scalar","type","interface","union","enum","input","implements","fragment","on"],typeKeywords:["Int","Float","String","Boolean","ID"],directiveLocations:["SCHEMA","SCALAR","OBJECT","FIELD_DEFINITION","ARGUMENT_DEFINITION","INTERFACE","UNION","ENUM","ENUM_VALUE","INPUT_OBJECT","INPUT_FIELD_DEFINITION","QUERY","MUTATION","SUBSCRIPTION","FIELD","FRAGMENT_DEFINITION","FRAGMENT_SPREAD","INLINE_FRAGMENT","VARIABLE_DEFINITION"],operators:["=","!","?",":","&","|"],symbols:/[=!?:&|]+/,escapes:/\\(?:["\\\/bfnrt]|u[0-9A-Fa-f]{4})/,tokenizer:{root:[[/[a-z_][\w$]*/,{cases:{"@keywords":"keyword","@default":"key.identifier"}}],[/[$][\w$]*/,{cases:{"@keywords":"keyword","@default":"argument.identifier"}}],[/[A-Z][\w\$]*/,{cases:{"@typeKeywords":"keyword","@default":"type.identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/@symbols/,{cases:{"@operators":"operator","@default":""}}],[/@\s*[a-zA-Z_\$][\w\$]*/,{token:"annotation",log:"annotation token: $0"}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/"""/,{token:"string",next:"@mlstring",nextEmbedded:"markdown"}],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,{token:"string.quote",bracket:"@open",next:"@string"}]],mlstring:[[/[^"]+/,"string"],['"""',{token:"string",next:"@pop",nextEmbedded:"@pop"}]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,""],[/#.*$/,"comment"]]}};return p(u);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
+10
File diff suppressed because one or more lines are too long
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/hcl/hcl", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var r=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var c=Object.prototype.hasOwnProperty;var l=(t,e)=>{for(var o in e)r(t,o,{get:e[o],enumerable:!0})},d=(t,e,o,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of i(e))!c.call(t,s)&&s!==o&&r(t,s,{get:()=>e[s],enumerable:!(n=a(e,s))||n.enumerable});return t};var m=t=>d(r({},"__esModule",{value:!0}),t);var f={};l(f,{conf:()=>p,language:()=>g});var p={comments:{lineComment:"#",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}]},g={defaultToken:"",tokenPostfix:".hcl",keywords:["var","local","path","for_each","any","string","number","bool","true","false","null","if ","else ","endif ","for ","in","endfor"],operators:["=",">=","<=","==","!=","+","-","*","/","%","&&","||","!","<",">","?","...",":"],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,terraformFunctions:/(abs|ceil|floor|log|max|min|pow|signum|chomp|format|formatlist|indent|join|lower|regex|regexall|replace|split|strrev|substr|title|trimspace|upper|chunklist|coalesce|coalescelist|compact|concat|contains|distinct|element|flatten|index|keys|length|list|lookup|map|matchkeys|merge|range|reverse|setintersection|setproduct|setunion|slice|sort|transpose|values|zipmap|base64decode|base64encode|base64gzip|csvdecode|jsondecode|jsonencode|urlencode|yamldecode|yamlencode|abspath|dirname|pathexpand|basename|file|fileexists|fileset|filebase64|templatefile|formatdate|timeadd|timestamp|base64sha256|base64sha512|bcrypt|filebase64sha256|filebase64sha512|filemd5|filemd1|filesha256|filesha512|md5|rsadecrypt|sha1|sha256|sha512|uuid|uuidv5|cidrhost|cidrnetmask|cidrsubnet|tobool|tolist|tomap|tonumber|toset|tostring)/,terraformMainBlocks:/(module|data|terraform|resource|provider|variable|output|locals)/,tokenizer:{root:[[/^@terraformMainBlocks([ \t]*)([\w-]+|"[\w-]+"|)([ \t]*)([\w-]+|"[\w-]+"|)([ \t]*)(\{)/,["type","","string","","string","","@brackets"]],[/(\w+[ \t]+)([ \t]*)([\w-]+|"[\w-]+"|)([ \t]*)([\w-]+|"[\w-]+"|)([ \t]*)(\{)/,["identifier","","string","","string","","@brackets"]],[/(\w+[ \t]+)([ \t]*)([\w-]+|"[\w-]+"|)([ \t]*)([\w-]+|"[\w-]+"|)(=)(\{)/,["identifier","","string","","operator","","@brackets"]],{include:"@terraform"}],terraform:[[/@terraformFunctions(\()/,["type","@brackets"]],[/[a-zA-Z_]\w*-*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"variable"}}],{include:"@whitespace"},{include:"@heredoc"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"operator","@default":""}}],[/\d*\d+[eE]([\-+]?\d+)?/,"number.float"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\d[\d']*/,"number"],[/\d/,"number"],[/[;,.]/,"delimiter"],[/"/,"string","@string"],[/'/,"invalid"]],heredoc:[[/<<[-]*\s*["]?([\w\-]+)["]?/,{token:"string.heredoc.delimiter",next:"@heredocBody.$1"}]],heredocBody:[[/([\w\-]+)$/,{cases:{"$1==$S2":[{token:"string.heredoc.delimiter",next:"@popall"}],"@default":"string.heredoc"}}],[/./,"string.heredoc"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"],[/#.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],string:[[/\$\{/,{token:"delimiter",next:"@stringExpression"}],[/[^\\"\$]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@popall"]],stringInsideExpression:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],stringExpression:[[/\}/,{token:"delimiter",next:"@pop"}],[/"/,"string","@stringInsideExpression"],{include:"@terraform"}]}};return m(f);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/ini/ini", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var t=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var r=Object.getOwnPropertyNames;var g=Object.prototype.hasOwnProperty;var c=(n,e)=>{for(var s in e)t(n,s,{get:e[s],enumerable:!0})},l=(n,e,s,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of r(e))!g.call(n,o)&&o!==s&&t(n,o,{get:()=>e[o],enumerable:!(a=i(e,o))||a.enumerable});return n};var p=n=>l(t({},"__esModule",{value:!0}),n);var f={};c(f,{conf:()=>u,language:()=>m});var u={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},m={defaultToken:"",tokenPostfix:".ini",escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/^\[[^\]]*\]/,"metatag"],[/(^\w+)(\s*)(\=)/,["key","","delimiter"]],{include:"@whitespace"},[/\d+/,"number"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],whitespace:[[/[ \t\r\n]+/,""],[/^\s*[#;].*$/,"comment"]],string:[[/[^\\"']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]]}};return p(f);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/java/java", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var s=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var r=Object.getOwnPropertyNames;var c=Object.prototype.hasOwnProperty;var l=(t,e)=>{for(var o in e)s(t,o,{get:e[o],enumerable:!0})},d=(t,e,o,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of r(e))!c.call(t,n)&&n!==o&&s(t,n,{get:()=>e[n],enumerable:!(i=a(e,n))||i.enumerable});return t};var g=t=>d(s({},"__esModule",{value:!0}),t);var f={};l(f,{conf:()=>m,language:()=>p});var m={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}],folding:{markers:{start:new RegExp("^\\s*//\\s*(?:(?:#?region\\b)|(?:<editor-fold\\b))"),end:new RegExp("^\\s*//\\s*(?:(?:#?endregion\\b)|(?:</editor-fold>))")}}},p={defaultToken:"",tokenPostfix:".java",keywords:["abstract","continue","for","new","switch","assert","default","goto","package","synchronized","boolean","do","if","private","this","break","double","implements","protected","throw","byte","else","import","public","throws","case","enum","instanceof","return","transient","catch","extends","int","short","try","char","final","interface","static","void","class","finally","long","strictfp","volatile","const","float","native","super","while","true","false","yield","record","sealed","non-sealed","permits"],operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,tokenizer:{root:[["non-sealed","keyword.non-sealed"],[/[a-zA-Z_$][\w$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/@\s*[a-zA-Z_\$][\w\$]*/,"annotation"],[/(@digits)[eE]([\-+]?(@digits))?[fFdD]?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?[fFdD]?/,"number.float"],[/0[xX](@hexdigits)[Ll]?/,"number.hex"],[/0(@octaldigits)[Ll]?/,"number.octal"],[/0[bB](@binarydigits)[Ll]?/,"number.binary"],[/(@digits)[fFdD]/,"number.float"],[/(@digits)[lL]?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"""/,"string","@multistring"],[/"/,"string","@string"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@javadoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],javadoc:[[/[^\/*]+/,"comment.doc"],[/\/\*/,"comment.doc.invalid"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],multistring:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"""/,"string","@pop"],[/./,"string"]]}};return g(f);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
+10
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/kotlin/kotlin", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var o=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var r=Object.getOwnPropertyNames;var c=Object.prototype.hasOwnProperty;var l=(n,e)=>{for(var i in e)o(n,i,{get:e[i],enumerable:!0})},d=(n,e,i,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of r(e))!c.call(n,t)&&t!==i&&o(n,t,{get:()=>e[t],enumerable:!(s=a(e,t))||s.enumerable});return n};var g=n=>d(o({},"__esModule",{value:!0}),n);var f={};l(f,{conf:()=>m,language:()=>p});var m={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}],folding:{markers:{start:new RegExp("^\\s*//\\s*(?:(?:#?region\\b)|(?:<editor-fold\\b))"),end:new RegExp("^\\s*//\\s*(?:(?:#?endregion\\b)|(?:</editor-fold>))")}}},p={defaultToken:"",tokenPostfix:".kt",keywords:["as","as?","break","class","continue","do","else","false","for","fun","if","in","!in","interface","is","!is","null","object","package","return","super","this","throw","true","try","typealias","val","var","when","while","by","catch","constructor","delegate","dynamic","field","file","finally","get","import","init","param","property","receiver","set","setparam","where","actual","abstract","annotation","companion","const","crossinline","data","enum","expect","external","final","infix","inline","inner","internal","lateinit","noinline","open","operator","out","override","private","protected","public","reified","sealed","suspend","tailrec","vararg","field","it"],operators:["+","-","*","/","%","=","+=","-=","*=","/=","%=","++","--","&&","||","!","==","!=","===","!==",">","<","<=",">=","[","]","!!","?.","?:","::","..",":","?","->","@",";","$","_"],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,tokenizer:{root:[[/[A-Z][\w\$]*/,"type.identifier"],[/[a-zA-Z_$][\w$]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/@\s*[a-zA-Z_\$][\w\$]*/,"annotation"],[/(@digits)[eE]([\-+]?(@digits))?[fFdD]?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?[fFdD]?/,"number.float"],[/0[xX](@hexdigits)[Ll]?/,"number.hex"],[/0(@octaldigits)[Ll]?/,"number.octal"],[/0[bB](@binarydigits)[Ll]?/,"number.binary"],[/(@digits)[fFdD]/,"number.float"],[/(@digits)[lL]?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"""/,"string","@multistring"],[/"/,"string","@string"],[/'[^\\']'/,"string"],[/(')(@escapes)(')/,["string","string.escape","string"]],[/'/,"string.invalid"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@javadoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\/\*/,"comment","@comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],javadoc:[[/[^\/*]+/,"comment.doc"],[/\/\*/,"comment.doc","@push"],[/\/\*/,"comment.doc.invalid"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],multistring:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"""/,"string","@pop"],[/./,"string"]]}};return g(f);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/less/less", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var r=Object.defineProperty;var s=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var d=(t,e)=>{for(var i in e)r(t,i,{get:e[i],enumerable:!0})},u=(t,e,i,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of a(e))!l.call(t,n)&&n!==i&&r(t,n,{get:()=>e[n],enumerable:!(o=s(e,n))||o.enumerable});return t};var c=t=>u(r({},"__esModule",{value:!0}),t);var p={};d(p,{conf:()=>m,language:()=>g});var m={wordPattern:/(#?-?\d*\.\d\w*%?)|([@#!.:]?[\w-?]+%?)|[@#!.]/g,comments:{blockComment:["/*","*/"],lineComment:"//"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*\\/\\*\\s*#region\\b\\s*(.*?)\\s*\\*\\/"),end:new RegExp("^\\s*\\/\\*\\s*#endregion\\b.*\\*\\/")}}},g={defaultToken:"",tokenPostfix:".less",identifier:"-?-?([a-zA-Z]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",identifierPlus:"-?-?([a-zA-Z:.]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-:.]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],tokenizer:{root:[{include:"@nestedJSBegin"},["[ \\t\\r\\n]+",""],{include:"@comments"},{include:"@keyword"},{include:"@strings"},{include:"@numbers"},["[*_]?[a-zA-Z\\-\\s]+(?=:.*(;|(\\\\$)))","attribute.name","@attribute"],["url(\\-prefix)?\\(",{token:"tag",next:"@urldeclaration"}],["[{}()\\[\\]]","@brackets"],["[,:;]","delimiter"],["#@identifierPlus","tag.id"],["&","tag"],["\\.@identifierPlus(?=\\()","tag.class","@attribute"],["\\.@identifierPlus","tag.class"],["@identifierPlus","tag"],{include:"@operators"},["@(@identifier(?=[:,\\)]))","variable","@attribute"],["@(@identifier)","variable"],["@","key","@atRules"]],nestedJSBegin:[["``","delimiter.backtick"],["`",{token:"delimiter.backtick",next:"@nestedJSEnd",nextEmbedded:"text/javascript"}]],nestedJSEnd:[["`",{token:"delimiter.backtick",next:"@pop",nextEmbedded:"@pop"}]],operators:[["[<>=\\+\\-\\*\\/\\^\\|\\~]","operator"]],keyword:[["(@[\\s]*import|![\\s]*important|true|false|when|iscolor|isnumber|isstring|iskeyword|isurl|ispixel|ispercentage|isem|hue|saturation|lightness|alpha|lighten|darken|saturate|desaturate|fadein|fadeout|fade|spin|mix|round|ceil|floor|percentage)\\b","keyword"]],urldeclaration:[{include:"@strings"},[`[^)\r
|
||||||
|
]+`,"string"],["\\)",{token:"tag",next:"@pop"}]],attribute:[{include:"@nestedJSBegin"},{include:"@comments"},{include:"@strings"},{include:"@numbers"},{include:"@keyword"},["[a-zA-Z\\-]+(?=\\()","attribute.value","@attribute"],[">","operator","@pop"],["@identifier","attribute.value"],{include:"@operators"},["@(@identifier)","variable"],["[)\\}]","@brackets","@pop"],["[{}()\\[\\]>]","@brackets"],["[;]","delimiter","@pop"],["[,=:]","delimiter"],["\\s",""],[".","attribute.value"]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[".","comment"]],numbers:[["(\\d*\\.)?\\d+([eE][\\-+]?\\d+)?",{token:"attribute.value.number",next:"@units"}],["#[0-9a-fA-F_]+(?!\\w)","attribute.value.hex"]],units:[["(em|ex|ch|rem|fr|vmin|vmax|vw|vh|vm|cm|mm|in|px|pt|pc|deg|grad|rad|turn|s|ms|Hz|kHz|%)?","attribute.value.unit","@pop"]],strings:[['~?"',{token:"string.delimiter",next:"@stringsEndDoubleQuote"}],["~?'",{token:"string.delimiter",next:"@stringsEndQuote"}]],stringsEndDoubleQuote:[['\\\\"',"string"],['"',{token:"string.delimiter",next:"@popall"}],[".","string"]],stringsEndQuote:[["\\\\'","string"],["'",{token:"string.delimiter",next:"@popall"}],[".","string"]],atRules:[{include:"@comments"},{include:"@strings"},["[()]","delimiter"],["[\\{;]","delimiter","@pop"],[".","key"]]}};return c(p);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/lexon/lexon", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var n=Object.defineProperty;var s=Object.getOwnPropertyDescriptor;var d=Object.getOwnPropertyNames;var a=Object.prototype.hasOwnProperty;var l=(t,e)=>{for(var i in e)n(t,i,{get:e[i],enumerable:!0})},p=(t,e,i,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of d(e))!a.call(t,o)&&o!==i&&n(t,o,{get:()=>e[o],enumerable:!(r=s(e,o))||r.enumerable});return t};var c=t=>p(n({},"__esModule",{value:!0}),t);var k={};l(k,{conf:()=>m,language:()=>u});var m={comments:{lineComment:"COMMENT"},brackets:[["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:":",close:"."}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"`",close:"`"},{open:'"',close:'"'},{open:"'",close:"'"},{open:":",close:"."}],folding:{markers:{start:new RegExp("^\\s*(::\\s*|COMMENT\\s+)#region"),end:new RegExp("^\\s*(::\\s*|COMMENT\\s+)#endregion")}}},u={tokenPostfix:".lexon",ignoreCase:!0,keywords:["lexon","lex","clause","terms","contracts","may","pay","pays","appoints","into","to"],typeKeywords:["amount","person","key","time","date","asset","text"],operators:["less","greater","equal","le","gt","or","and","add","added","subtract","subtracted","multiply","multiplied","times","divide","divided","is","be","certified"],symbols:/[=><!~?:&|+\-*\/\^%]+/,tokenizer:{root:[[/^(\s*)(comment:?(?:\s.*|))$/,["","comment"]],[/"/,{token:"identifier.quote",bracket:"@open",next:"@quoted_identifier"}],["LEX$",{token:"keyword",bracket:"@open",next:"@identifier_until_period"}],["LEXON",{token:"keyword",bracket:"@open",next:"@semver"}],[":",{token:"delimiter",bracket:"@open",next:"@identifier_until_period"}],[/[a-z_$][\w$]*/,{cases:{"@operators":"operator","@typeKeywords":"keyword.type","@keywords":"keyword","@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,"delimiter"],[/\d*\.\d*\.\d*/,"number.semver"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"]],quoted_identifier:[[/[^\\"]+/,"identifier"],[/"/,{token:"identifier.quote",bracket:"@close",next:"@pop"}]],space_identifier_until_period:[[":","delimiter"],[" ",{token:"white",next:"@identifier_rest"}]],identifier_until_period:[{include:"@whitespace"},[":",{token:"delimiter",next:"@identifier_rest"}],[/[^\\.]+/,"identifier"],[/\./,{token:"delimiter",bracket:"@close",next:"@pop"}]],identifier_rest:[[/[^\\.]+/,"identifier"],[/\./,{token:"delimiter",bracket:"@close",next:"@pop"}]],semver:[{include:"@whitespace"},[":","delimiter"],[/\d*\.\d*\.\d*/,{token:"number.semver",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,"white"]]}};return c(k);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/liquid/liquid", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var p=Object.create;var a=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var w=Object.getOwnPropertyNames;var h=Object.getPrototypeOf,q=Object.prototype.hasOwnProperty;var f=(e=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(e,{get:(t,i)=>(typeof require!="undefined"?require:t)[i]}):e)(function(e){if(typeof require!="undefined")return require.apply(this,arguments);throw new Error('Dynamic require of "'+e+'" is not supported')});var b=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),T=(e,t)=>{for(var i in t)a(e,i,{get:t[i],enumerable:!0})},r=(e,t,i,l)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of w(t))!q.call(e,o)&&o!==i&&a(e,o,{get:()=>t[o],enumerable:!(l=g(t,o))||l.enumerable});return e},d=(e,t,i)=>(r(e,t,"default"),i&&r(i,t,"default")),s=(e,t,i)=>(i=e!=null?p(h(e)):{},r(t||!e||!e.__esModule?a(i,"default",{value:e,enumerable:!0}):i,e)),k=e=>r(a({},"__esModule",{value:!0}),e);var c=b((y,u)=>{var _=s(f("vs/editor/editor.api"));u.exports=_});var $={};T($,{conf:()=>x,language:()=>S});var n={};d(n,s(c()));var m=["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"],x={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,brackets:[["<!--","-->"],["<",">"],["{{","}}"],["{%","%}"],["{","}"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"%",close:"%"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"<",close:">"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:new RegExp(`<(?!(?:${m.join("|")}))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$`,"i"),afterText:/^<\/(\w[\w\d]*)\s*>$/i,action:{indentAction:n.languages.IndentAction.IndentOutdent}},{beforeText:new RegExp(`<(?!(?:${m.join("|")}))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$`,"i"),action:{indentAction:n.languages.IndentAction.Indent}}]},S={defaultToken:"",tokenPostfix:"",builtinTags:["if","else","elseif","endif","render","assign","capture","endcapture","case","endcase","comment","endcomment","cycle","decrement","for","endfor","include","increment","layout","raw","endraw","render","tablerow","endtablerow","unless","endunless"],builtinFilters:["abs","append","at_least","at_most","capitalize","ceil","compact","date","default","divided_by","downcase","escape","escape_once","first","floor","join","json","last","lstrip","map","minus","modulo","newline_to_br","plus","prepend","remove","remove_first","replace","replace_first","reverse","round","rstrip","size","slice","sort","sort_natural","split","strip","strip_html","strip_newlines","times","truncate","truncatewords","uniq","upcase","url_decode","url_encode","where"],constants:["true","false"],operators:["==","!=",">","<",">=","<="],symbol:/[=><!]+/,identifier:/[a-zA-Z_][\w]*/,tokenizer:{root:[[/\{\%\s*comment\s*\%\}/,"comment.start.liquid","@comment"],[/\{\{/,{token:"@rematch",switchTo:"@liquidState.root"}],[/\{\%/,{token:"@rematch",switchTo:"@liquidState.root"}],[/(<)([\w\-]+)(\/>)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)([:\w]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/(<\/)([\w\-]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/</,"delimiter.html"],[/\{/,"delimiter.html"],[/[^<{]+/]],comment:[[/\{\%\s*endcomment\s*\%\}/,"comment.end.liquid","@pop"],[/./,"comment.content.liquid"]],otherTag:[[/\{\{/,{token:"@rematch",switchTo:"@liquidState.otherTag"}],[/\{\%/,{token:"@rematch",switchTo:"@liquidState.otherTag"}],[/\/?>/,"delimiter.html","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],liquidState:[[/\{\{/,"delimiter.output.liquid"],[/\}\}/,{token:"delimiter.output.liquid",switchTo:"@$S2.$S3"}],[/\{\%/,"delimiter.tag.liquid"],[/raw\s*\%\}/,"delimiter.tag.liquid","@liquidRaw"],[/\%\}/,{token:"delimiter.tag.liquid",switchTo:"@$S2.$S3"}],{include:"liquidRoot"}],liquidRaw:[[/^(?!\{\%\s*endraw\s*\%\}).+/],[/\{\%/,"delimiter.tag.liquid"],[/@identifier/],[/\%\}/,{token:"delimiter.tag.liquid",next:"@root"}]],liquidRoot:[[/\d+(\.\d+)?/,"number.liquid"],[/"[^"]*"/,"string.liquid"],[/'[^']*'/,"string.liquid"],[/\s+/],[/@symbol/,{cases:{"@operators":"operator.liquid","@default":""}}],[/\./],[/@identifier/,{cases:{"@constants":"keyword.liquid","@builtinFilters":"predefined.liquid","@builtinTags":"predefined.liquid","@default":"variable.liquid"}}],[/[^}|%]/,"variable.liquid"]]}};return k($);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/lua/lua", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var s=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var c=(o,e)=>{for(var t in e)s(o,t,{get:e[t],enumerable:!0})},m=(o,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of i(e))!l.call(o,n)&&n!==t&&s(o,n,{get:()=>e[n],enumerable:!(r=a(e,n))||r.enumerable});return o};var p=o=>m(s({},"__esModule",{value:!0}),o);var u={};c(u,{conf:()=>d,language:()=>g});var d={comments:{lineComment:"--",blockComment:["--[[","]]"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},g={defaultToken:"",tokenPostfix:".lua",keywords:["and","break","do","else","elseif","end","false","for","function","goto","if","in","local","nil","not","or","repeat","return","then","true","until","while"],brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.array",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"}],operators:["+","-","*","/","%","^","#","==","~=","<=",">=","<",">","=",";",":",",",".","..","..."],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/[a-zA-Z_]\w*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/(,)(\s*)([a-zA-Z_]\w*)(\s*)(:)(?!:)/,["delimiter","","key","","delimiter"]],[/({)(\s*)([a-zA-Z_]\w*)(\s*)(:)(?!:)/,["@brackets","","key","","delimiter"]],[/[{}()\[\]]/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],whitespace:[[/[ \t\r\n]+/,""],[/--\[([=]*)\[/,"comment","@comment.$1"],[/--.*$/,"comment"]],comment:[[/[^\]]+/,"comment"],[/\]([=]*)\]/,{cases:{"$1==$S2":{token:"comment",next:"@pop"},"@default":"comment"}}],[/./,"comment"]],string:[[/[^\\"']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]]}};return p(u);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/m3/m3", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var r=Object.defineProperty;var E=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var i=Object.prototype.hasOwnProperty;var R=(o,e)=>{for(var s in e)r(o,s,{get:e[s],enumerable:!0})},c=(o,e,s,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of a(e))!i.call(o,t)&&t!==s&&r(o,t,{get:()=>e[t],enumerable:!(n=E(e,t))||n.enumerable});return o};var m=o=>c(r({},"__esModule",{value:!0}),o);var N={};R(N,{conf:()=>A,language:()=>p});var A={comments:{blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"[",close:"]"},{open:"{",close:"}"},{open:"(",close:")"},{open:"(*",close:"*)"},{open:"<*",close:"*>"},{open:"'",close:"'",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]}]},p={defaultToken:"",tokenPostfix:".m3",brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"}],keywords:["AND","ANY","ARRAY","AS","BEGIN","BITS","BRANDED","BY","CASE","CONST","DIV","DO","ELSE","ELSIF","END","EVAL","EXCEPT","EXCEPTION","EXIT","EXPORTS","FINALLY","FOR","FROM","GENERIC","IF","IMPORT","IN","INTERFACE","LOCK","LOOP","METHODS","MOD","MODULE","NOT","OBJECT","OF","OR","OVERRIDES","PROCEDURE","RAISE","RAISES","READONLY","RECORD","REF","REPEAT","RETURN","REVEAL","SET","THEN","TO","TRY","TYPE","TYPECASE","UNSAFE","UNTIL","UNTRACED","VALUE","VAR","WHILE","WITH"],reservedConstNames:["ABS","ADR","ADRSIZE","BITSIZE","BYTESIZE","CEILING","DEC","DISPOSE","FALSE","FIRST","FLOAT","FLOOR","INC","ISTYPE","LAST","LOOPHOLE","MAX","MIN","NARROW","NEW","NIL","NUMBER","ORD","ROUND","SUBARRAY","TRUE","TRUNC","TYPECODE","VAL"],reservedTypeNames:["ADDRESS","ANY","BOOLEAN","CARDINAL","CHAR","EXTENDED","INTEGER","LONGCARD","LONGINT","LONGREAL","MUTEX","NULL","REAL","REFANY","ROOT","TEXT"],operators:["+","-","*","/","&","^","."],relations:["=","#","<","<=",">",">=","<:",":"],delimiters:["|","..","=>",",",";",":="],symbols:/[>=<#.,:;+\-*/&^]+/,escapes:/\\(?:[\\fnrt"']|[0-7]{3})/,tokenizer:{root:[[/_\w*/,"invalid"],[/[a-zA-Z][a-zA-Z0-9_]*/,{cases:{"@keywords":{token:"keyword.$0"},"@reservedConstNames":{token:"constant.reserved.$0"},"@reservedTypeNames":{token:"type.reserved.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[0-9]+\.[0-9]+(?:[DdEeXx][\+\-]?[0-9]+)?/,"number.float"],[/[0-9]+(?:\_[0-9a-fA-F]+)?L?/,"number"],[/@symbols/,{cases:{"@operators":"operators","@relations":"operators","@delimiters":"delimiter","@default":"invalid"}}],[/'[^\\']'/,"string.char"],[/(')(@escapes)(')/,["string.char","string.escape","string.char"]],[/'/,"invalid"],[/"([^"\\]|\\.)*$/,"invalid"],[/"/,"string.text","@text"]],text:[[/[^\\"]+/,"string.text"],[/@escapes/,"string.escape"],[/\\./,"invalid"],[/"/,"string.text","@pop"]],comment:[[/\(\*/,"comment","@push"],[/\*\)/,"comment","@pop"],[/./,"comment"]],pragma:[[/<\*/,"keyword.pragma","@push"],[/\*>/,"keyword.pragma","@pop"],[/./,"keyword.pragma"]],whitespace:[[/[ \t\r\n]+/,"white"],[/\(\*/,"comment","@comment"],[/<\*/,"keyword.pragma","@pragma"]]}};return m(N);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
+10
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/markdown/markdown", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var s=Object.defineProperty;var r=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var i=Object.prototype.hasOwnProperty;var l=(t,e)=>{for(var o in e)s(t,o,{get:e[o],enumerable:!0})},m=(t,e,o,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of c(e))!i.call(t,n)&&n!==o&&s(t,n,{get:()=>e[n],enumerable:!(a=r(e,n))||a.enumerable});return t};var d=t=>m(s({},"__esModule",{value:!0}),t);var b={};l(b,{conf:()=>p,language:()=>g});var p={comments:{blockComment:["<!--","-->"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">",notIn:["string"]}],surroundingPairs:[{open:"(",close:")"},{open:"[",close:"]"},{open:"`",close:"`"}],folding:{markers:{start:new RegExp("^\\s*<!--\\s*#?region\\b.*-->"),end:new RegExp("^\\s*<!--\\s*#?endregion\\b.*-->")}}},g={defaultToken:"",tokenPostfix:".md",control:/[\\`*_\[\]{}()#+\-\.!]/,noncontrol:/[^\\`*_\[\]{}()#+\-\.!]/,escapes:/\\(?:@control)/,jsescapes:/\\(?:[btnfr\\"']|[0-7][0-7]?|[0-3][0-7]{2})/,empty:["area","base","basefont","br","col","frame","hr","img","input","isindex","link","meta","param"],tokenizer:{root:[[/^\s*\|/,"@rematch","@table_header"],[/^(\s{0,3})(#+)((?:[^\\#]|@escapes)+)((?:#+)?)/,["white","keyword","keyword","keyword"]],[/^\s*(=+|\-+)\s*$/,"keyword"],[/^\s*((\*[ ]?)+)\s*$/,"meta.separator"],[/^\s*>+/,"comment"],[/^\s*([\*\-+:]|\d+\.)\s/,"keyword"],[/^(\t|[ ]{4})[^ ].*$/,"string"],[/^\s*~~~\s*((?:\w|[\/\-#])+)?\s*$/,{token:"string",next:"@codeblock"}],[/^\s*```\s*((?:\w|[\/\-#])+).*$/,{token:"string",next:"@codeblockgh",nextEmbedded:"$1"}],[/^\s*```\s*$/,{token:"string",next:"@codeblock"}],{include:"@linecontent"}],table_header:[{include:"@table_common"},[/[^\|]+/,"keyword.table.header"]],table_body:[{include:"@table_common"},{include:"@linecontent"}],table_common:[[/\s*[\-:]+\s*/,{token:"keyword",switchTo:"table_body"}],[/^\s*\|/,"keyword.table.left"],[/^\s*[^\|]/,"@rematch","@pop"],[/^\s*$/,"@rematch","@pop"],[/\|/,{cases:{"@eos":"keyword.table.right","@default":"keyword.table.middle"}}]],codeblock:[[/^\s*~~~\s*$/,{token:"string",next:"@pop"}],[/^\s*```\s*$/,{token:"string",next:"@pop"}],[/.*$/,"variable.source"]],codeblockgh:[[/```\s*$/,{token:"string",next:"@pop",nextEmbedded:"@pop"}],[/[^`]+/,"variable.source"]],linecontent:[[/&\w+;/,"string.escape"],[/@escapes/,"escape"],[/\b__([^\\_]|@escapes|_(?!_))+__\b/,"strong"],[/\*\*([^\\*]|@escapes|\*(?!\*))+\*\*/,"strong"],[/\b_[^_]+_\b/,"emphasis"],[/\*([^\\*]|@escapes)+\*/,"emphasis"],[/`([^\\`]|@escapes)+`/,"variable"],[/\{+[^}]+\}+/,"string.target"],[/(!?\[)((?:[^\]\\]|@escapes)*)(\]\([^\)]+\))/,["string.link","","string.link"]],[/(!?\[)((?:[^\]\\]|@escapes)*)(\])/,"string.link"],{include:"html"}],html:[[/<(\w+)\/>/,"tag"],[/<(\w+)(\-|\w)*/,{cases:{"@empty":{token:"tag",next:"@tag.$1"},"@default":{token:"tag",next:"@tag.$1"}}}],[/<\/(\w+)(\-|\w)*\s*>/,{token:"tag"}],[/<!--/,"comment","@comment"]],comment:[[/[^<\-]+/,"comment.content"],[/-->/,"comment","@pop"],[/<!--/,"comment.content.invalid"],[/[<\-]/,"comment.content"]],tag:[[/[ \t\r\n]+/,"white"],[/(type)(\s*=\s*)(")([^"]+)(")/,["attribute.name.html","delimiter.html","string.html",{token:"string.html",switchTo:"@tag.$S2.$4"},"string.html"]],[/(type)(\s*=\s*)(')([^']+)(')/,["attribute.name.html","delimiter.html","string.html",{token:"string.html",switchTo:"@tag.$S2.$4"},"string.html"]],[/(\w+)(\s*=\s*)("[^"]*"|'[^']*')/,["attribute.name.html","delimiter.html","string.html"]],[/\w+/,"attribute.name.html"],[/\/>/,"tag","@pop"],[/>/,{cases:{"$S2==style":{token:"tag",switchTo:"embeddedStyle",nextEmbedded:"text/css"},"$S2==script":{cases:{$S3:{token:"tag",switchTo:"embeddedScript",nextEmbedded:"$S3"},"@default":{token:"tag",switchTo:"embeddedScript",nextEmbedded:"text/javascript"}}},"@default":{token:"tag",next:"@pop"}}}]],embeddedStyle:[[/[^<]+/,""],[/<\/style\s*>/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/</,""]],embeddedScript:[[/[^<]+/,""],[/<\/script\s*>/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/</,""]]}};return d(b);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/mips/mips", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var s=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var o=Object.getOwnPropertyNames;var g=Object.prototype.hasOwnProperty;var l=(t,e)=>{for(var n in e)s(t,n,{get:e[n],enumerable:!0})},d=(t,e,n,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of o(e))!g.call(t,r)&&r!==n&&s(t,r,{get:()=>e[r],enumerable:!(i=a(e,r))||i.enumerable});return t};var m=t=>d(s({},"__esModule",{value:!0}),t);var x={};l(x,{conf:()=>p,language:()=>u});var p={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#%\^\&\*\(\)\=\$\-\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{blockComment:["###","###"],lineComment:"#"},folding:{markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},u={defaultToken:"",ignoreCase:!1,tokenPostfix:".mips",regEx:/\/(?!\/\/)(?:[^\/\\]|\\.)*\/[igm]*/,keywords:[".data",".text","syscall","trap","add","addu","addi","addiu","and","andi","div","divu","mult","multu","nor","or","ori","sll","slv","sra","srav","srl","srlv","sub","subu","xor","xori","lhi","lho","lhi","llo","slt","slti","sltu","sltiu","beq","bgtz","blez","bne","j","jal","jalr","jr","lb","lbu","lh","lhu","lw","li","la","sb","sh","sw","mfhi","mflo","mthi","mtlo","move"],symbols:/[\.,\:]+/,escapes:/\\(?:[abfnrtv\\"'$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/\$[a-zA-Z_]\w*/,"variable.predefined"],[/[.a-zA-Z_]\w*/,{cases:{this:"variable.predefined","@keywords":{token:"keyword.$0"},"@default":""}}],[/[ \t\r\n]+/,""],[/#.*$/,"comment"],["///",{token:"regexp",next:"@hereregexp"}],[/^(\s*)(@regEx)/,["","regexp"]],[/(\,)(\s*)(@regEx)/,["delimiter","","regexp"]],[/(\:)(\s*)(@regEx)/,["delimiter","","regexp"]],[/@symbols/,"delimiter"],[/\d+[eE]([\-+]?\d+)?/,"number.float"],[/\d+\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+/,"number.hex"],[/0[0-7]+(?!\d)/,"number.octal"],[/\d+/,"number"],[/[,.]/,"delimiter"],[/"""/,"string",'@herestring."""'],[/'''/,"string","@herestring.'''"],[/"/,{cases:{"@eos":"string","@default":{token:"string",next:'@string."'}}}],[/'/,{cases:{"@eos":"string","@default":{token:"string",next:"@string.'"}}}]],string:[[/[^"'\#\\]+/,"string"],[/@escapes/,"string.escape"],[/\./,"string.escape.invalid"],[/\./,"string.escape.invalid"],[/#{/,{cases:{'$S2=="':{token:"string",next:"root.interpolatedstring"},"@default":"string"}}],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/#/,"string"]],herestring:[[/("""|''')/,{cases:{"$1==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/[^#\\'"]+/,"string"],[/['"]+/,"string"],[/@escapes/,"string.escape"],[/\./,"string.escape.invalid"],[/#{/,{token:"string.quote",next:"root.interpolatedstring"}],[/#/,"string"]],comment:[[/[^#]+/,"comment"],[/#/,"comment"]],hereregexp:[[/[^\\\/#]+/,"regexp"],[/\\./,"regexp"],[/#.*$/,"comment"],["///[igm]*",{token:"regexp",next:"@pop"}],[/\//,"regexp"]]}};return m(x);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+10
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/objective-c/objective-c", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var s=Object.defineProperty;var r=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var a=Object.prototype.hasOwnProperty;var l=(o,e)=>{for(var t in e)s(o,t,{get:e[t],enumerable:!0})},p=(o,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of c(e))!a.call(o,n)&&n!==t&&s(o,n,{get:()=>e[n],enumerable:!(i=r(e,n))||i.enumerable});return o};var d=o=>p(s({},"__esModule",{value:!0}),o);var u={};l(u,{conf:()=>g,language:()=>m});var g={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},m={defaultToken:"",tokenPostfix:".objective-c",keywords:["#import","#include","#define","#else","#endif","#if","#ifdef","#ifndef","#ident","#undef","@class","@defs","@dynamic","@encode","@end","@implementation","@interface","@package","@private","@protected","@property","@protocol","@public","@selector","@synthesize","__declspec","assign","auto","BOOL","break","bycopy","byref","case","char","Class","const","copy","continue","default","do","double","else","enum","extern","FALSE","false","float","for","goto","if","in","int","id","inout","IMP","long","nil","nonatomic","NULL","oneway","out","private","public","protected","readwrite","readonly","register","return","SEL","self","short","signed","sizeof","static","struct","super","switch","typedef","TRUE","true","union","unsigned","volatile","void","while"],decpart:/\d(_?\d)*/,decimal:/0|@decpart/,tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@numbers"},{include:"@strings"},[/[,:;]/,"delimiter"],[/[{}\[\]()<>]/,"@brackets"],[/[a-zA-Z@#]\w*/,{cases:{"@keywords":"keyword","@default":"identifier"}}],[/[<>=\\+\\-\\*\\/\\^\\|\\~,]|and\\b|or\\b|not\\b]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[".","comment"]],numbers:[[/0[xX][0-9a-fA-F]*(_?[0-9a-fA-F])*/,"number.hex"],[/@decimal((\.@decpart)?([eE][\-+]?@decpart)?)[fF]*/,{cases:{"(\\d)*":"number",$0:"number.float"}}]],strings:[[/'$/,"string.escape","@popall"],[/'/,"string.escape","@stringBody"],[/"$/,"string.escape","@popall"],[/"/,"string.escape","@dblStringBody"]],stringBody:[[/[^\\']+$/,"string","@popall"],[/[^\\']+/,"string"],[/\\./,"string"],[/'/,"string.escape","@popall"],[/\\$/,"string"]],dblStringBody:[[/[^\\"]+$/,"string","@popall"],[/[^\\"]+/,"string"],[/\\./,"string"],[/"/,"string.escape","@popall"],[/\\$/,"string"]]}};return d(u);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/pascal/pascal", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var n=Object.defineProperty;var s=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var c=(t,e)=>{for(var r in e)n(t,r,{get:e[r],enumerable:!0})},d=(t,e,r,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of a(e))!l.call(t,o)&&o!==r&&n(t,o,{get:()=>e[o],enumerable:!(i=s(e,o))||i.enumerable});return t};var p=t=>d(n({},"__esModule",{value:!0}),t);var g={};c(g,{conf:()=>m,language:()=>u});var m={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["{","}"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*\\{\\$REGION(\\s\\'.*\\')?\\}"),end:new RegExp("^\\s*\\{\\$ENDREGION\\}")}}},u={defaultToken:"",tokenPostfix:".pascal",ignoreCase:!0,brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],keywords:["absolute","abstract","all","and_then","array","as","asm","attribute","begin","bindable","case","class","const","contains","default","div","else","end","except","exports","external","far","file","finalization","finally","forward","generic","goto","if","implements","import","in","index","inherited","initialization","interrupt","is","label","library","mod","module","name","near","not","object","of","on","only","operator","or_else","otherwise","override","package","packed","pow","private","program","protected","public","published","interface","implementation","qualified","read","record","resident","requires","resourcestring","restricted","segment","set","shl","shr","specialize","stored","strict","then","threadvar","to","try","type","unit","uses","var","view","virtual","dynamic","overload","reintroduce","with","write","xor","true","false","procedure","function","constructor","destructor","property","break","continue","exit","abort","while","do","for","raise","repeat","until"],typeKeywords:["boolean","double","byte","integer","shortint","char","longint","float","string"],operators:["=",">","<","<=",">=","<>",":",":=","and","or","+","-","*","/","@","&","^","%"],symbols:/[=><:@\^&|+\-*\/\^%]+/,tokenizer:{root:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\$[0-9a-fA-F]{1,16}/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/'/,"string","@string"],[/'[^\\']'/,"string"],[/'/,"string.invalid"],[/\#\d+/,"string"]],comment:[[/[^\*\}]+/,"comment"],[/\}/,"comment","@pop"],[/[\{]/,"comment"]],string:[[/[^\\']+/,"string"],[/\\./,"string.escape.invalid"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,"white"],[/\{/,"comment","@comment"],[/\/\/.*$/,"comment"]]}};return p(g);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
+10
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/pascaligo/pascaligo", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var s=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var c=(o,e)=>{for(var t in e)s(o,t,{get:e[t],enumerable:!0})},m=(o,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of a(e))!l.call(o,n)&&n!==t&&s(o,n,{get:()=>e[n],enumerable:!(r=i(e,n))||r.enumerable});return o};var p=o=>m(s({},"__esModule",{value:!0}),o);var u={};c(u,{conf:()=>d,language:()=>g});var d={comments:{lineComment:"//",blockComment:["(*","*)"]},brackets:[["{","}"],["[","]"],["(",")"],["<",">"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:"'",close:"'"}]},g={defaultToken:"",tokenPostfix:".pascaligo",ignoreCase:!0,brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],keywords:["begin","block","case","const","else","end","fail","for","from","function","if","is","nil","of","remove","return","skip","then","type","var","while","with","option","None","transaction"],typeKeywords:["bool","int","list","map","nat","record","string","unit","address","map","mtz","xtz"],operators:["=",">","<","<=",">=","<>",":",":=","and","mod","or","+","-","*","/","@","&","^","%"],symbols:/[=><:@\^&|+\-*\/\^%]+/,tokenizer:{root:[[/[a-zA-Z_][\w]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\$[0-9a-fA-F]{1,16}/,"number.hex"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/'/,"string","@string"],[/'[^\\']'/,"string"],[/'/,"string.invalid"],[/\#\d+/,"string"]],comment:[[/[^\(\*]+/,"comment"],[/\*\)/,"comment","@pop"],[/\(\*/,"comment"]],string:[[/[^\\']+/,"string"],[/\\./,"string.escape.invalid"],[/'/,{token:"string.quote",bracket:"@close",next:"@pop"}]],whitespace:[[/[ \t\r\n]+/,"white"],[/\(\*/,"comment","@comment"],[/\/\/.*$/,"comment"]]}};return p(u);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/pla/pla", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var s=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var r=Object.getOwnPropertyNames;var p=Object.prototype.hasOwnProperty;var l=(o,e)=>{for(var n in e)s(o,n,{get:e[n],enumerable:!0})},c=(o,e,n,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of r(e))!p.call(o,t)&&t!==n&&s(o,t,{get:()=>e[t],enumerable:!(i=a(e,t))||i.enumerable});return o};var d=o=>c(s({},"__esModule",{value:!0}),o);var u={};l(u,{conf:()=>k,language:()=>m});var k={comments:{lineComment:"#"},brackets:[["[","]"],["<",">"],["(",")"]],autoClosingPairs:[{open:"[",close:"]"},{open:"<",close:">"},{open:"(",close:")"}],surroundingPairs:[{open:"[",close:"]"},{open:"<",close:">"},{open:"(",close:")"}]},m={defaultToken:"",tokenPostfix:".pla",brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"<",close:">",token:"delimiter.angle"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:[".i",".o",".mv",".ilb",".ob",".label",".type",".phase",".pair",".symbolic",".symbolic-output",".kiss",".p",".e",".end"],comment:/#.*$/,identifier:/[a-zA-Z]+[a-zA-Z0-9_\-]*/,plaContent:/[01\-~\|]+/,tokenizer:{root:[{include:"@whitespace"},[/@comment/,"comment"],[/\.([a-zA-Z_\-]+)/,{cases:{"@eos":{token:"keyword.$1"},"@keywords":{cases:{".type":{token:"keyword.$1",next:"@type"},"@default":{token:"keyword.$1",next:"@keywordArg"}}},"@default":{token:"keyword.$1"}}}],[/@identifier/,"identifier"],[/@plaContent/,"string"]],whitespace:[[/[ \t\r\n]+/,""]],type:[{include:"@whitespace"},[/\w+/,{token:"type",next:"@pop"}]],keywordArg:[[/[ \t\r\n]+/,{cases:{"@eos":{token:"",next:"@pop"},"@default":""}}],[/@comment/,"comment","@pop"],[/[<>()\[\]]/,{cases:{"@eos":{token:"@brackets",next:"@pop"},"@default":"@brackets"}}],[/\-?\d+/,{cases:{"@eos":{token:"number",next:"@pop"},"@default":"number"}}],[/@identifier/,{cases:{"@eos":{token:"identifier",next:"@pop"},"@default":"identifier"}}],[/[;=]/,{cases:{"@eos":{token:"delimiter",next:"@pop"},"@default":"delimiter"}}]]}};return d(u);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
+10
File diff suppressed because one or more lines are too long
+10
File diff suppressed because one or more lines are too long
+10
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/powershell/powershell", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var o=Object.defineProperty;var r=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var c=(n,e)=>{for(var t in e)o(n,t,{get:e[t],enumerable:!0})},g=(n,e,t,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of i(e))!l.call(n,s)&&s!==t&&o(n,s,{get:()=>e[s],enumerable:!(a=r(e,s))||a.enumerable});return n};var p=n=>g(o({},"__esModule",{value:!0}),n);var u={};c(u,{conf:()=>d,language:()=>m});var d={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#%\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"#",blockComment:["<#","#>"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},m={defaultToken:"",ignoreCase:!0,tokenPostfix:".ps1",brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.square",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"}],keywords:["begin","break","catch","class","continue","data","define","do","dynamicparam","else","elseif","end","exit","filter","finally","for","foreach","from","function","if","in","param","process","return","switch","throw","trap","try","until","using","var","while","workflow","parallel","sequence","inlinescript","configuration"],helpKeywords:/SYNOPSIS|DESCRIPTION|PARAMETER|EXAMPLE|INPUTS|OUTPUTS|NOTES|LINK|COMPONENT|ROLE|FUNCTIONALITY|FORWARDHELPTARGETNAME|FORWARDHELPCATEGORY|REMOTEHELPRUNSPACE|EXTERNALHELP/,symbols:/[=><!~?&%|+\-*\/\^;\.,]+/,escapes:/`(?:[abfnrtv\\"'$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[[/[a-zA-Z_][\w-]*/,{cases:{"@keywords":{token:"keyword.$0"},"@default":""}}],[/[ \t\r\n]+/,""],[/^:\w*/,"metatag"],[/\$(\{((global|local|private|script|using):)?[\w]+\}|((global|local|private|script|using):)?[\w]+)/,"variable"],[/<#/,"comment","@comment"],[/#.*$/,"comment"],[/[{}()\[\]]/,"@brackets"],[/@symbols/,"delimiter"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+?/,"number"],[/[;,.]/,"delimiter"],[/\@"/,"string",'@herestring."'],[/\@'/,"string","@herestring.'"],[/"/,{cases:{"@eos":"string","@default":{token:"string",next:'@string."'}}}],[/'/,{cases:{"@eos":"string","@default":{token:"string",next:"@string.'"}}}]],string:[[/[^"'\$`]+/,{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}],[/@escapes/,{cases:{"@eos":{token:"string.escape",next:"@popall"},"@default":"string.escape"}}],[/`./,{cases:{"@eos":{token:"string.escape.invalid",next:"@popall"},"@default":"string.escape.invalid"}}],[/\$[\w]+$/,{cases:{'$S2=="':{token:"variable",next:"@popall"},"@default":{token:"string",next:"@popall"}}}],[/\$[\w]+/,{cases:{'$S2=="':"variable","@default":"string"}}],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":{cases:{"@eos":{token:"string",next:"@popall"},"@default":"string"}}}}]],herestring:[[/^\s*(["'])@/,{cases:{"$1==$S2":{token:"string",next:"@pop"},"@default":"string"}}],[/[^\$`]+/,"string"],[/@escapes/,"string.escape"],[/`./,"string.escape.invalid"],[/\$[\w]+/,{cases:{'$S2=="':"variable","@default":"string"}}]],comment:[[/[^#\.]+/,"comment"],[/#>/,"comment","@pop"],[/(\.)(@helpKeywords)(?!\w)/,{token:"comment.keyword.$2"}],[/[\.#]/,"comment"]]}};return p(u);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
+11
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/python/python", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var d=Object.create;var i=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var _=Object.getOwnPropertyNames;var u=Object.getPrototypeOf,f=Object.prototype.hasOwnProperty;var b=(e=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(e,{get:(n,t)=>(typeof require!="undefined"?require:n)[t]}):e)(function(e){if(typeof require!="undefined")return require.apply(this,arguments);throw new Error('Dynamic require of "'+e+'" is not supported')});var h=(e,n)=>()=>(n||e((n={exports:{}}).exports,n),n.exports),y=(e,n)=>{for(var t in n)i(e,t,{get:n[t],enumerable:!0})},o=(e,n,t,a)=>{if(n&&typeof n=="object"||typeof n=="function")for(let r of _(n))!f.call(e,r)&&r!==t&&i(e,r,{get:()=>n[r],enumerable:!(a=m(n,r))||a.enumerable});return e},l=(e,n,t)=>(o(e,n,"default"),t&&o(t,n,"default")),c=(e,n,t)=>(t=e!=null?d(u(e)):{},o(n||!e||!e.__esModule?i(t,"default",{value:e,enumerable:!0}):t,e)),x=e=>o(i({},"__esModule",{value:!0}),e);var g=h((v,p)=>{var w=c(b("vs/editor/editor.api"));p.exports=w});var D={};y(D,{conf:()=>k,language:()=>$});var s={};l(s,c(g()));var k={comments:{lineComment:"#",blockComment:["'''","'''"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:new RegExp("^\\s*(?:def|class|for|if|elif|else|while|try|with|finally|except|async|match|case).*?:\\s*$"),action:{indentAction:s.languages.IndentAction.Indent}}],folding:{offSide:!0,markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}},$={defaultToken:"",tokenPostfix:".python",keywords:["False","None","True","_","and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","exec","finally","for","from","global","if","import","in","is","lambda","match","nonlocal","not","or","pass","print","raise","return","try","while","with","yield","int","float","long","complex","hex","abs","all","any","apply","basestring","bin","bool","buffer","bytearray","callable","chr","classmethod","cmp","coerce","compile","complex","delattr","dict","dir","divmod","enumerate","eval","execfile","file","filter","format","frozenset","getattr","globals","hasattr","hash","help","id","input","intern","isinstance","issubclass","iter","len","locals","list","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","reversed","range","raw_input","reduce","reload","repr","reversed","round","self","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","unichr","unicode","vars","xrange","zip","__dict__","__methods__","__members__","__class__","__bases__","__name__","__mro__","__subclasses__","__init__","__import__"],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"}],tokenizer:{root:[{include:"@whitespace"},{include:"@numbers"},{include:"@strings"},[/[,:;]/,"delimiter"],[/[{}\[\]()]/,"@brackets"],[/@[a-zA-Z_]\w*/,"tag"],[/[a-zA-Z_]\w*/,{cases:{"@keywords":"keyword","@default":"identifier"}}]],whitespace:[[/\s+/,"white"],[/(^#.*$)/,"comment"],[/'''/,"string","@endDocString"],[/"""/,"string","@endDblDocString"]],endDocString:[[/[^']+/,"string"],[/\\'/,"string"],[/'''/,"string","@popall"],[/'/,"string"]],endDblDocString:[[/[^"]+/,"string"],[/\\"/,"string"],[/"""/,"string","@popall"],[/"/,"string"]],numbers:[[/-?0x([abcdef]|[ABCDEF]|\d)+[lL]?/,"number.hex"],[/-?(\d*\.)?\d+([eE][+\-]?\d+)?[jJ]?[lL]?/,"number"]],strings:[[/'$/,"string.escape","@popall"],[/'/,"string.escape","@stringBody"],[/"$/,"string.escape","@popall"],[/"/,"string.escape","@dblStringBody"]],stringBody:[[/[^\\']+$/,"string","@popall"],[/[^\\']+/,"string"],[/\\./,"string"],[/'/,"string.escape","@popall"],[/\\$/,"string"]],dblStringBody:[[/[^\\"]+$/,"string","@popall"],[/[^\\"]+/,"string"],[/\\./,"string"],[/"/,"string.escape","@popall"],[/\\$/,"string"]]}};return x(D);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/qsharp/qsharp", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var a=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var r=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var c=(t,e)=>{for(var n in e)a(t,n,{get:e[n],enumerable:!0})},u=(t,e,n,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of r(e))!l.call(t,o)&&o!==n&&a(t,o,{get:()=>e[o],enumerable:!(s=i(e,o))||s.enumerable});return t};var p=t=>u(a({},"__esModule",{value:!0}),t);var m={};c(m,{conf:()=>d,language:()=>g});var d={comments:{lineComment:"//"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}]},g={keywords:["namespace","open","as","operation","function","body","adjoint","newtype","controlled","if","elif","else","repeat","until","fixup","for","in","while","return","fail","within","apply","Adjoint","Controlled","Adj","Ctl","is","self","auto","distribute","invert","intrinsic","let","set","w/","new","not","and","or","use","borrow","using","borrowing","mutable","internal"],typeKeywords:["Unit","Int","BigInt","Double","Bool","String","Qubit","Result","Pauli","Range"],invalidKeywords:["abstract","base","bool","break","byte","case","catch","char","checked","class","const","continue","decimal","default","delegate","do","double","enum","event","explicit","extern","finally","fixed","float","foreach","goto","implicit","int","interface","lock","long","null","object","operator","out","override","params","private","protected","public","readonly","ref","sbyte","sealed","short","sizeof","stackalloc","static","string","struct","switch","this","throw","try","typeof","unit","ulong","unchecked","unsafe","ushort","virtual","void","volatile"],constants:["true","false","PauliI","PauliX","PauliY","PauliZ","One","Zero"],builtin:["X","Y","Z","H","HY","S","T","SWAP","CNOT","CCNOT","MultiX","R","RFrac","Rx","Ry","Rz","R1","R1Frac","Exp","ExpFrac","Measure","M","MultiM","Message","Length","Assert","AssertProb","AssertEqual"],operators:["and=","<-","->","*","*=","@","!","^","^=",":","::","..","==","...","=","=>",">",">=","<","<=","-","-=","!=","or=","%","%=","|","+","+=","?","/","/=","&&&","&&&=","^^^","^^^=",">>>",">>>=","<<<","<<<=","|||","|||=","~~~","_","w/","w/="],namespaceFollows:["namespace","open"],symbols:/[=><!~?:&|+\-*\/\^%@._]+/,escapes:/\\[\s\S]/,tokenizer:{root:[[/[a-zA-Z_$][\w$]*/,{cases:{"@namespaceFollows":{token:"keyword.$0",next:"@namespace"},"@typeKeywords":"type","@keywords":"keyword","@constants":"constant","@builtin":"keyword","@invalidKeywords":"invalid","@default":"identifier"}}],{include:"@whitespace"},[/[{}()\[\]]/,"@brackets"],[/@symbols/,{cases:{"@operators":"operator","@default":""}}],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/\d+/,"number"],[/[;,.]/,"delimiter"],[/"/,{token:"string.quote",bracket:"@open",next:"@string"}]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/"/,{token:"string.quote",bracket:"@close",next:"@pop"}]],namespace:[{include:"@whitespace"},[/[A-Za-z]\w*/,"namespace"],[/[\.=]/,"delimiter"],["","","@pop"]],whitespace:[[/[ \t\r\n]+/,"white"],[/(\/\/).*/,"comment"]]}};return p(m);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/r/r", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var a=Object.defineProperty;var s=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var c=Object.prototype.hasOwnProperty;var l=(o,e)=>{for(var t in e)a(o,t,{get:e[t],enumerable:!0})},p=(o,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of i(e))!c.call(o,r)&&r!==t&&a(o,r,{get:()=>e[r],enumerable:!(n=s(e,r))||n.enumerable});return o};var m=o=>p(a({},"__esModule",{value:!0}),o);var u={};l(u,{conf:()=>d,language:()=>g});var d={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}]},g={defaultToken:"",tokenPostfix:".r",roxygen:["@alias","@aliases","@assignee","@author","@backref","@callGraph","@callGraphDepth","@callGraphPrimitives","@concept","@describeIn","@description","@details","@docType","@encoding","@evalNamespace","@evalRd","@example","@examples","@export","@exportClass","@exportMethod","@exportPattern","@family","@field","@formals","@format","@import","@importClassesFrom","@importFrom","@importMethodsFrom","@include","@inherit","@inheritDotParams","@inheritParams","@inheritSection","@keywords","@md","@method","@name","@noMd","@noRd","@note","@param","@rawNamespace","@rawRd","@rdname","@references","@return","@S3method","@section","@seealso","@setClass","@slot","@source","@template","@templateVar","@title","@TODO","@usage","@useDynLib"],constants:["NULL","FALSE","TRUE","NA","Inf","NaN","NA_integer_","NA_real_","NA_complex_","NA_character_","T","F","LETTERS","letters","month.abb","month.name","pi","R.version.string"],keywords:["break","next","return","if","else","for","in","repeat","while","array","category","character","complex","double","function","integer","list","logical","matrix","numeric","vector","data.frame","factor","library","require","attach","detach","source"],special:["\\n","\\r","\\t","\\b","\\a","\\f","\\v","\\'",'\\"',"\\\\"],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"}],tokenizer:{root:[{include:"@numbers"},{include:"@strings"},[/[{}\[\]()]/,"@brackets"],{include:"@operators"},[/#'$/,"comment.doc"],[/#'/,"comment.doc","@roxygen"],[/(^#.*$)/,"comment"],[/\s+/,"white"],[/[,:;]/,"delimiter"],[/@[a-zA-Z]\w*/,"tag"],[/[a-zA-Z]\w*/,{cases:{"@keywords":"keyword","@constants":"constant","@default":"identifier"}}]],roxygen:[[/@\w+/,{cases:{"@roxygen":"tag","@eos":{token:"comment.doc",next:"@pop"},"@default":"comment.doc"}}],[/\s+/,{cases:{"@eos":{token:"comment.doc",next:"@pop"},"@default":"comment.doc"}}],[/.*/,{token:"comment.doc",next:"@pop"}]],numbers:[[/0[xX][0-9a-fA-F]+/,"number.hex"],[/-?(\d*\.)?\d+([eE][+\-]?\d+)?/,"number"]],operators:[[/<{1,2}-/,"operator"],[/->{1,2}/,"operator"],[/%[^%\s]+%/,"operator"],[/\*\*/,"operator"],[/%%/,"operator"],[/&&/,"operator"],[/\|\|/,"operator"],[/<</,"operator"],[/>>/,"operator"],[/[-+=&|!<>^~*/:$]/,"operator"]],strings:[[/'/,"string.escape","@stringBody"],[/"/,"string.escape","@dblStringBody"]],stringBody:[[/\\./,{cases:{"@special":"string","@default":"error-token"}}],[/'/,"string.escape","@popall"],[/./,"string"]],dblStringBody:[[/\\./,{cases:{"@special":"string","@default":"error-token"}}],[/"/,"string.escape","@popall"],[/./,"string"]]}};return m(u);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/redis/redis", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var R=Object.defineProperty;var n=Object.getOwnPropertyDescriptor;var N=Object.getOwnPropertyNames;var s=Object.prototype.hasOwnProperty;var A=(S,E)=>{for(var T in E)R(S,T,{get:E[T],enumerable:!0})},O=(S,E,T,o)=>{if(E&&typeof E=="object"||typeof E=="function")for(let e of N(E))!s.call(S,e)&&e!==T&&R(S,e,{get:()=>E[e],enumerable:!(o=n(E,e))||o.enumerable});return S};var L=S=>O(R({},"__esModule",{value:!0}),S);var r={};A(r,{conf:()=>I,language:()=>i});var I={brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},i={defaultToken:"",tokenPostfix:".redis",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],keywords:["APPEND","AUTH","BGREWRITEAOF","BGSAVE","BITCOUNT","BITFIELD","BITOP","BITPOS","BLPOP","BRPOP","BRPOPLPUSH","CLIENT","KILL","LIST","GETNAME","PAUSE","REPLY","SETNAME","CLUSTER","ADDSLOTS","COUNT-FAILURE-REPORTS","COUNTKEYSINSLOT","DELSLOTS","FAILOVER","FORGET","GETKEYSINSLOT","INFO","KEYSLOT","MEET","NODES","REPLICATE","RESET","SAVECONFIG","SET-CONFIG-EPOCH","SETSLOT","SLAVES","SLOTS","COMMAND","COUNT","GETKEYS","CONFIG","GET","REWRITE","SET","RESETSTAT","DBSIZE","DEBUG","OBJECT","SEGFAULT","DECR","DECRBY","DEL","DISCARD","DUMP","ECHO","EVAL","EVALSHA","EXEC","EXISTS","EXPIRE","EXPIREAT","FLUSHALL","FLUSHDB","GEOADD","GEOHASH","GEOPOS","GEODIST","GEORADIUS","GEORADIUSBYMEMBER","GETBIT","GETRANGE","GETSET","HDEL","HEXISTS","HGET","HGETALL","HINCRBY","HINCRBYFLOAT","HKEYS","HLEN","HMGET","HMSET","HSET","HSETNX","HSTRLEN","HVALS","INCR","INCRBY","INCRBYFLOAT","KEYS","LASTSAVE","LINDEX","LINSERT","LLEN","LPOP","LPUSH","LPUSHX","LRANGE","LREM","LSET","LTRIM","MGET","MIGRATE","MONITOR","MOVE","MSET","MSETNX","MULTI","PERSIST","PEXPIRE","PEXPIREAT","PFADD","PFCOUNT","PFMERGE","PING","PSETEX","PSUBSCRIBE","PUBSUB","PTTL","PUBLISH","PUNSUBSCRIBE","QUIT","RANDOMKEY","READONLY","READWRITE","RENAME","RENAMENX","RESTORE","ROLE","RPOP","RPOPLPUSH","RPUSH","RPUSHX","SADD","SAVE","SCARD","SCRIPT","FLUSH","LOAD","SDIFF","SDIFFSTORE","SELECT","SETBIT","SETEX","SETNX","SETRANGE","SHUTDOWN","SINTER","SINTERSTORE","SISMEMBER","SLAVEOF","SLOWLOG","SMEMBERS","SMOVE","SORT","SPOP","SRANDMEMBER","SREM","STRLEN","SUBSCRIBE","SUNION","SUNIONSTORE","SWAPDB","SYNC","TIME","TOUCH","TTL","TYPE","UNSUBSCRIBE","UNLINK","UNWATCH","WAIT","WATCH","ZADD","ZCARD","ZCOUNT","ZINCRBY","ZINTERSTORE","ZLEXCOUNT","ZRANGE","ZRANGEBYLEX","ZREVRANGEBYLEX","ZRANGEBYSCORE","ZRANK","ZREM","ZREMRANGEBYLEX","ZREMRANGEBYRANK","ZREMRANGEBYSCORE","ZREVRANGE","ZREVRANGEBYSCORE","ZREVRANK","ZSCORE","ZUNIONSTORE","SCAN","SSCAN","HSCAN","ZSCAN"],operators:[],builtinFunctions:[],builtinVariables:[],pseudoColumns:[],tokenizer:{root:[{include:"@whitespace"},{include:"@pseudoColumns"},{include:"@numbers"},{include:"@strings"},{include:"@scopes"},[/[;,.]/,"delimiter"],[/[()]/,"@brackets"],[/[\w@#$]+/,{cases:{"@keywords":"keyword","@operators":"operator","@builtinVariables":"predefined","@builtinFunctions":"predefined","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],pseudoColumns:[[/[$][A-Za-z_][\w@#$]*/,{cases:{"@pseudoColumns":"predefined","@default":"identifier"}}]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[$][+-]*\d*(\.\d*)?/,"number"],[/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/,"number"]],strings:[[/'/,{token:"string",next:"@string"}],[/"/,{token:"string.double",next:"@stringDouble"}]],string:[[/[^']+/,"string"],[/''/,"string"],[/'/,{token:"string",next:"@pop"}]],stringDouble:[[/[^"]+/,"string.double"],[/""/,"string.double"],[/"/,{token:"string.double",next:"@pop"}]],scopes:[]}};return L(r);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
+10
File diff suppressed because one or more lines are too long
Vendored
+10
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/restructuredtext/restructuredtext", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var t=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var r=Object.prototype.hasOwnProperty;var k=(n,e)=>{for(var i in e)t(n,i,{get:e[i],enumerable:!0})},c=(n,e,i,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of l(e))!r.call(n,s)&&s!==i&&t(n,s,{get:()=>e[s],enumerable:!(o=a(e,s))||o.enumerable});return n};var p=n=>c(t({},"__esModule",{value:!0}),n);var g={};k(g,{conf:()=>u,language:()=>m});var u={brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">",notIn:["string"]}],surroundingPairs:[{open:"(",close:")"},{open:"[",close:"]"},{open:"`",close:"`"}],folding:{markers:{start:new RegExp("^\\s*<!--\\s*#?region\\b.*-->"),end:new RegExp("^\\s*<!--\\s*#?endregion\\b.*-->")}}},m={defaultToken:"",tokenPostfix:".rst",control:/[\\`*_\[\]{}()#+\-\.!]/,escapes:/\\(?:@control)/,empty:["area","base","basefont","br","col","frame","hr","img","input","isindex","link","meta","param"],alphanumerics:/[A-Za-z0-9]/,simpleRefNameWithoutBq:/(?:@alphanumerics[-_+:.]*@alphanumerics)+|(?:@alphanumerics+)/,simpleRefName:/(?:`@phrase`|@simpleRefNameWithoutBq)/,phrase:/@simpleRefNameWithoutBq(?:\s@simpleRefNameWithoutBq)*/,citationName:/[A-Za-z][A-Za-z0-9-_.]*/,blockLiteralStart:/(?:[!"#$%&'()*+,-./:;<=>?@\[\]^_`{|}~]|[\s])/,precedingChars:/(?:[ -:/'"<([{])/,followingChars:/(?:[ -.,:;!?/'")\]}>]|$)/,punctuation:/(=|-|~|`|#|"|\^|\+|\*|:|\.|'|_|\+)/,tokenizer:{root:[[/^(@punctuation{3,}$){1,1}?/,"keyword"],[/^\s*([\*\-+‣•]|[a-zA-Z0-9]+\.|\([a-zA-Z0-9]+\)|[a-zA-Z0-9]+\))\s/,"keyword"],[/([ ]::)\s*$/,"keyword","@blankLineOfLiteralBlocks"],[/(::)\s*$/,"keyword","@blankLineOfLiteralBlocks"],{include:"@tables"},{include:"@explicitMarkupBlocks"},{include:"@inlineMarkup"}],explicitMarkupBlocks:[{include:"@citations"},{include:"@footnotes"},[/^(\.\.\s)(@simpleRefName)(::\s)(.*)$/,[{token:"",next:"subsequentLines"},"keyword","",""]],[/^(\.\.)(\s+)(_)(@simpleRefName)(:)(\s+)(.*)/,[{token:"",next:"hyperlinks"},"","","string.link","","","string.link"]],[/^((?:(?:\.\.)(?:\s+))?)(__)(:)(\s+)(.*)/,[{token:"",next:"subsequentLines"},"","","","string.link"]],[/^(__\s+)(.+)/,["","string.link"]],[/^(\.\.)( \|)([^| ]+[^|]*[^| ]*)(\| )(@simpleRefName)(:: .*)/,[{token:"",next:"subsequentLines"},"","string.link","","keyword",""],"@rawBlocks"],[/(\|)([^| ]+[^|]*[^| ]*)(\|_{0,2})/,["","string.link",""]],[/^(\.\.)([ ].*)$/,[{token:"",next:"@comments"},"comment"]]],inlineMarkup:[{include:"@citationsReference"},{include:"@footnotesReference"},[/(@simpleRefName)(_{1,2})/,["string.link",""]],[/(`)([^<`]+\s+)(<)(.*)(>)(`)(_)/,["","string.link","","string.link","","",""]],[/\*\*([^\\*]|\*(?!\*))+\*\*/,"strong"],[/\*[^*]+\*/,"emphasis"],[/(``)((?:[^`]|\`(?!`))+)(``)/,["","keyword",""]],[/(__\s+)(.+)/,["","keyword"]],[/(:)((?:@simpleRefNameWithoutBq)?)(:`)([^`]+)(`)/,["","keyword","","",""]],[/(`)([^`]+)(`:)((?:@simpleRefNameWithoutBq)?)(:)/,["","","","keyword",""]],[/(`)([^`]+)(`)/,""],[/(_`)(@phrase)(`)/,["","string.link",""]]],citations:[[/^(\.\.\s+\[)((?:@citationName))(\]\s+)(.*)/,[{token:"",next:"@subsequentLines"},"string.link","",""]]],citationsReference:[[/(\[)(@citationName)(\]_)/,["","string.link",""]]],footnotes:[[/^(\.\.\s+\[)((?:[0-9]+))(\]\s+.*)/,[{token:"",next:"@subsequentLines"},"string.link",""]],[/^(\.\.\s+\[)((?:#@simpleRefName?))(\]\s+)(.*)/,[{token:"",next:"@subsequentLines"},"string.link","",""]],[/^(\.\.\s+\[)((?:\*))(\]\s+)(.*)/,[{token:"",next:"@subsequentLines"},"string.link","",""]]],footnotesReference:[[/(\[)([0-9]+)(\])(_)/,["","string.link","",""]],[/(\[)(#@simpleRefName?)(\])(_)/,["","string.link","",""]],[/(\[)(\*)(\])(_)/,["","string.link","",""]]],blankLineOfLiteralBlocks:[[/^$/,"","@subsequentLinesOfLiteralBlocks"],[/^.*$/,"","@pop"]],subsequentLinesOfLiteralBlocks:[[/(@blockLiteralStart+)(.*)/,["keyword",""]],[/^(?!blockLiteralStart)/,"","@popall"]],subsequentLines:[[/^[\s]+.*/,""],[/^(?!\s)/,"","@pop"]],hyperlinks:[[/^[\s]+.*/,"string.link"],[/^(?!\s)/,"","@pop"]],comments:[[/^[\s]+.*/,"comment"],[/^(?!\s)/,"","@pop"]],tables:[[/\+-[+-]+/,"keyword"],[/\+=[+=]+/,"keyword"]]}};return p(g);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/rust/rust", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var r=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var c=Object.prototype.hasOwnProperty;var _=(t,e)=>{for(var n in e)r(t,n,{get:e[n],enumerable:!0})},u=(t,e,n,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of a(e))!c.call(t,o)&&o!==n&&r(t,o,{get:()=>e[o],enumerable:!(s=i(e,o))||s.enumerable});return t};var l=t=>u(r({},"__esModule",{value:!0}),t);var m={};_(m,{conf:()=>f,language:()=>p});var f={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"[",close:"]"},{open:"{",close:"}"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*#pragma\\s+region\\b"),end:new RegExp("^\\s*#pragma\\s+endregion\\b")}}},p={tokenPostfix:".rust",defaultToken:"invalid",keywords:["as","async","await","box","break","const","continue","crate","dyn","else","enum","extern","false","fn","for","if","impl","in","let","loop","match","mod","move","mut","pub","ref","return","self","static","struct","super","trait","true","try","type","unsafe","use","where","while","catch","default","union","static","abstract","alignof","become","do","final","macro","offsetof","override","priv","proc","pure","sizeof","typeof","unsized","virtual","yield"],typeKeywords:["Self","m32","m64","m128","f80","f16","f128","int","uint","float","char","bool","u8","u16","u32","u64","f32","f64","i8","i16","i32","i64","str","Option","Either","c_float","c_double","c_void","FILE","fpos_t","DIR","dirent","c_char","c_schar","c_uchar","c_short","c_ushort","c_int","c_uint","c_long","c_ulong","size_t","ptrdiff_t","clock_t","time_t","c_longlong","c_ulonglong","intptr_t","uintptr_t","off_t","dev_t","ino_t","pid_t","mode_t","ssize_t"],constants:["true","false","Some","None","Left","Right","Ok","Err"],supportConstants:["EXIT_FAILURE","EXIT_SUCCESS","RAND_MAX","EOF","SEEK_SET","SEEK_CUR","SEEK_END","_IOFBF","_IONBF","_IOLBF","BUFSIZ","FOPEN_MAX","FILENAME_MAX","L_tmpnam","TMP_MAX","O_RDONLY","O_WRONLY","O_RDWR","O_APPEND","O_CREAT","O_EXCL","O_TRUNC","S_IFIFO","S_IFCHR","S_IFBLK","S_IFDIR","S_IFREG","S_IFMT","S_IEXEC","S_IWRITE","S_IREAD","S_IRWXU","S_IXUSR","S_IWUSR","S_IRUSR","F_OK","R_OK","W_OK","X_OK","STDIN_FILENO","STDOUT_FILENO","STDERR_FILENO"],supportMacros:["format!","print!","println!","panic!","format_args!","unreachable!","write!","writeln!"],operators:["!","!=","%","%=","&","&=","&&","*","*=","+","+=","-","-=","->",".","..","...","/","/=",":",";","<<","<<=","<","<=","=","==","=>",">",">=",">>",">>=","@","^","^=","|","|=","||","_","?","#"],escapes:/\\([nrt0\"''\\]|x\h{2}|u\{\h{1,6}\})/,delimiters:/[,]/,symbols:/[\#\!\%\&\*\+\-\.\/\:\;\<\=\>\@\^\|_\?]+/,intSuffixes:/[iu](8|16|32|64|128|size)/,floatSuffixes:/f(32|64)/,tokenizer:{root:[[/r(#*)"/,{token:"string.quote",bracket:"@open",next:"@stringraw.$1"}],[/[a-zA-Z][a-zA-Z0-9_]*!?|_[a-zA-Z0-9_]+/,{cases:{"@typeKeywords":"keyword.type","@keywords":"keyword","@supportConstants":"keyword","@supportMacros":"keyword","@constants":"keyword","@default":"identifier"}}],[/\$/,"identifier"],[/'[a-zA-Z_][a-zA-Z0-9_]*(?=[^\'])/,"identifier"],[/'(\S|@escapes)'/,"string.byteliteral"],[/"/,{token:"string.quote",bracket:"@open",next:"@string"}],{include:"@numbers"},{include:"@whitespace"},[/@delimiters/,{cases:{"@keywords":"keyword","@default":"delimiter"}}],[/[{}()\[\]<>]/,"@brackets"],[/@symbols/,{cases:{"@operators":"operator","@default":""}}]],whitespace:[[/[ \t\r\n]+/,"white"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\/\*/,"comment","@push"],["\\*/","comment","@pop"],[/[\/*]/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",bracket:"@close",next:"@pop"}]],stringraw:[[/[^"#]+/,{token:"string"}],[/"(#*)/,{cases:{"$1==$S2":{token:"string.quote",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/["#]/,{token:"string"}]],numbers:[[/(0o[0-7_]+)(@intSuffixes)?/,{token:"number"}],[/(0b[0-1_]+)(@intSuffixes)?/,{token:"number"}],[/[\d][\d_]*(\.[\d][\d_]*)?[eE][+-][\d_]+(@floatSuffixes)?/,{token:"number"}],[/\b(\d\.?[\d_]*)(@floatSuffixes)?\b/,{token:"number"}],[/(0x[\da-fA-F]+)_?(@intSuffixes)?/,{token:"number"}],[/[\d][\d_]*(@intSuffixes?)?/,{token:"number"}]]}};return l(m);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/sb/sb", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var r=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var d=(o,e)=>{for(var t in e)r(o,t,{get:e[t],enumerable:!0})},c=(o,e,t,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of a(e))!l.call(o,n)&&n!==t&&r(o,n,{get:()=>e[n],enumerable:!(s=i(e,n))||s.enumerable});return o};var g=o=>c(r({},"__esModule",{value:!0}),o);var m={};d(m,{conf:()=>p,language:()=>f});var p={comments:{lineComment:"'"},brackets:[["(",")"],["[","]"],["If","EndIf"],["While","EndWhile"],["For","EndFor"],["Sub","EndSub"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]}]},f={defaultToken:"",tokenPostfix:".sb",ignoreCase:!0,brackets:[{token:"delimiter.array",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"keyword.tag-if",open:"If",close:"EndIf"},{token:"keyword.tag-while",open:"While",close:"EndWhile"},{token:"keyword.tag-for",open:"For",close:"EndFor"},{token:"keyword.tag-sub",open:"Sub",close:"EndSub"}],keywords:["Else","ElseIf","EndFor","EndIf","EndSub","EndWhile","For","Goto","If","Step","Sub","Then","To","While"],tagwords:["If","Sub","While","For"],operators:[">","<","<>","<=",">=","And","Or","+","-","*","/","="],identifier:/[a-zA-Z_][\w]*/,symbols:/[=><:+\-*\/%\.,]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[{include:"@whitespace"},[/(@identifier)(?=[.])/,"type"],[/@identifier/,{cases:{"@keywords":{token:"keyword.$0"},"@operators":"operator","@default":"variable.name"}}],[/([.])(@identifier)/,{cases:{$2:["delimiter","type.member"],"@default":""}}],[/\d*\.\d+/,"number.float"],[/\d+/,"number"],[/[()\[\]]/,"@brackets"],[/@symbols/,{cases:{"@operators":"operator","@default":"delimiter"}}],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"]],whitespace:[[/[ \t\r\n]+/,""],[/(\').*$/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"C?/,"string","@pop"]]}};return g(m);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/scheme/scheme", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var s=Object.defineProperty;var r=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var c=(o,e)=>{for(var t in e)s(o,t,{get:e[t],enumerable:!0})},m=(o,e,t,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of i(e))!l.call(o,n)&&n!==t&&s(o,n,{get:()=>e[n],enumerable:!(a=r(e,n))||a.enumerable});return o};var p=o=>m(s({},"__esModule",{value:!0}),o);var u={};c(u,{conf:()=>d,language:()=>g});var d={comments:{lineComment:";",blockComment:["#|","|#"]},brackets:[["(",")"],["{","}"],["[","]"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'}]},g={defaultToken:"",ignoreCase:!0,tokenPostfix:".scheme",brackets:[{open:"(",close:")",token:"delimiter.parenthesis"},{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"}],keywords:["case","do","let","loop","if","else","when","cons","car","cdr","cond","lambda","lambda*","syntax-rules","format","set!","quote","eval","append","list","list?","member?","load"],constants:["#t","#f"],operators:["eq?","eqv?","equal?","and","or","not","null?"],tokenizer:{root:[[/#[xXoObB][0-9a-fA-F]+/,"number.hex"],[/[+-]?\d+(?:(?:\.\d*)?(?:[eE][+-]?\d+)?)?/,"number.float"],[/(?:\b(?:(define|define-syntax|define-macro))\b)(\s+)((?:\w|\-|\!|\?)*)/,["keyword","white","variable"]],{include:"@whitespace"},{include:"@strings"},[/[a-zA-Z_#][a-zA-Z0-9_\-\?\!\*]*/,{cases:{"@keywords":"keyword","@constants":"constant","@operators":"operators","@default":"identifier"}}]],comment:[[/[^\|#]+/,"comment"],[/#\|/,"comment","@push"],[/\|#/,"comment","@pop"],[/[\|#]/,"comment"]],whitespace:[[/[ \t\r\n]+/,"white"],[/#\|/,"comment","@comment"],[/;.*$/,"comment"]],strings:[[/"$/,"string","@popall"],[/"(?=.)/,"string","@multiLineString"]],multiLineString:[[/[^\\"]+$/,"string","@popall"],[/[^\\"]+/,"string"],[/\\./,"string.escape"],[/"/,"string","@popall"],[/\\$/,"string"]]}};return p(u);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/scss/scss", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var i=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var d=Object.prototype.hasOwnProperty;var c=(t,e)=>{for(var o in e)i(t,o,{get:e[o],enumerable:!0})},m=(t,e,o,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of l(e))!d.call(t,n)&&n!==o&&i(t,n,{get:()=>e[n],enumerable:!(r=a(e,n))||r.enumerable});return t};var s=t=>m(i({},"__esModule",{value:!0}),t);var k={};c(k,{conf:()=>u,language:()=>p});var u={wordPattern:/(#?-?\d*\.\d\w*%?)|([@$#!.:]?[\w-?]+%?)|[@#!.]/g,comments:{blockComment:["/*","*/"],lineComment:"//"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:new RegExp("^\\s*\\/\\*\\s*#region\\b\\s*(.*?)\\s*\\*\\/"),end:new RegExp("^\\s*\\/\\*\\s*#endregion\\b.*\\*\\/")}}},p={defaultToken:"",tokenPostfix:".scss",ws:`[
|
||||||
|
\r\f]*`,identifier:"-?-?([a-zA-Z]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],tokenizer:{root:[{include:"@selector"}],selector:[{include:"@comments"},{include:"@import"},{include:"@variabledeclaration"},{include:"@warndebug"},["[@](include)",{token:"keyword",next:"@includedeclaration"}],["[@](keyframes|-webkit-keyframes|-moz-keyframes|-o-keyframes)",{token:"keyword",next:"@keyframedeclaration"}],["[@](page|content|font-face|-moz-document)",{token:"keyword"}],["[@](charset|namespace)",{token:"keyword",next:"@declarationbody"}],["[@](function)",{token:"keyword",next:"@functiondeclaration"}],["[@](mixin)",{token:"keyword",next:"@mixindeclaration"}],["url(\\-prefix)?\\(",{token:"meta",next:"@urldeclaration"}],{include:"@controlstatement"},{include:"@selectorname"},["[&\\*]","tag"],["[>\\+,]","delimiter"],["\\[",{token:"delimiter.bracket",next:"@selectorattribute"}],["{",{token:"delimiter.curly",next:"@selectorbody"}]],selectorbody:[["[*_]?@identifier@ws:(?=(\\s|\\d|[^{;}]*[;}]))","attribute.name","@rulevalue"],{include:"@selector"},["[@](extend)",{token:"keyword",next:"@extendbody"}],["[@](return)",{token:"keyword",next:"@declarationbody"}],["}",{token:"delimiter.curly",next:"@pop"}]],selectorname:[["#{",{token:"meta",next:"@variableinterpolation"}],["(\\.|#(?=[^{])|%|(@identifier)|:)+","tag"]],selectorattribute:[{include:"@term"},["]",{token:"delimiter.bracket",next:"@pop"}]],term:[{include:"@comments"},["url(\\-prefix)?\\(",{token:"meta",next:"@urldeclaration"}],{include:"@functioninvocation"},{include:"@numbers"},{include:"@strings"},{include:"@variablereference"},["(and\\b|or\\b|not\\b)","operator"],{include:"@name"},["([<>=\\+\\-\\*\\/\\^\\|\\~,])","operator"],[",","delimiter"],["!default","literal"],["\\(",{token:"delimiter.parenthesis",next:"@parenthizedterm"}]],rulevalue:[{include:"@term"},["!important","literal"],[";","delimiter","@pop"],["{",{token:"delimiter.curly",switchTo:"@nestedproperty"}],["(?=})",{token:"",next:"@pop"}]],nestedproperty:[["[*_]?@identifier@ws:","attribute.name","@rulevalue"],{include:"@comments"},["}",{token:"delimiter.curly",next:"@pop"}]],warndebug:[["[@](warn|debug)",{token:"keyword",next:"@declarationbody"}]],import:[["[@](import)",{token:"keyword",next:"@declarationbody"}]],variabledeclaration:[["\\$@identifier@ws:","variable.decl","@declarationbody"]],urldeclaration:[{include:"@strings"},[`[^)\r
|
||||||
|
]+`,"string"],["\\)",{token:"meta",next:"@pop"}]],parenthizedterm:[{include:"@term"},["\\)",{token:"delimiter.parenthesis",next:"@pop"}]],declarationbody:[{include:"@term"},[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}]],extendbody:[{include:"@selectorname"},["!optional","literal"],[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}]],variablereference:[["\\$@identifier","variable.ref"],["\\.\\.\\.","operator"],["#{",{token:"meta",next:"@variableinterpolation"}]],variableinterpolation:[{include:"@variablereference"},["}",{token:"meta",next:"@pop"}]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[".","comment"]],name:[["@identifier","attribute.value"]],numbers:[["(\\d*\\.)?\\d+([eE][\\-+]?\\d+)?",{token:"number",next:"@units"}],["#[0-9a-fA-F_]+(?!\\w)","number.hex"]],units:[["(em|ex|ch|rem|fr|vmin|vmax|vw|vh|vm|cm|mm|in|px|pt|pc|deg|grad|rad|turn|s|ms|Hz|kHz|%)?","number","@pop"]],functiondeclaration:[["@identifier@ws\\(",{token:"meta",next:"@parameterdeclaration"}],["{",{token:"delimiter.curly",switchTo:"@functionbody"}]],mixindeclaration:[["@identifier@ws\\(",{token:"meta",next:"@parameterdeclaration"}],["@identifier","meta"],["{",{token:"delimiter.curly",switchTo:"@selectorbody"}]],parameterdeclaration:[["\\$@identifier@ws:","variable.decl"],["\\.\\.\\.","operator"],[",","delimiter"],{include:"@term"},["\\)",{token:"meta",next:"@pop"}]],includedeclaration:[{include:"@functioninvocation"},["@identifier","meta"],[";","delimiter","@pop"],["(?=})",{token:"",next:"@pop"}],["{",{token:"delimiter.curly",switchTo:"@selectorbody"}]],keyframedeclaration:[["@identifier","meta"],["{",{token:"delimiter.curly",switchTo:"@keyframebody"}]],keyframebody:[{include:"@term"},["{",{token:"delimiter.curly",next:"@selectorbody"}],["}",{token:"delimiter.curly",next:"@pop"}]],controlstatement:[["[@](if|else|for|while|each|media)",{token:"keyword.flow",next:"@controlstatementdeclaration"}]],controlstatementdeclaration:[["(in|from|through|if|to)\\b",{token:"keyword.flow"}],{include:"@term"},["{",{token:"delimiter.curly",switchTo:"@selectorbody"}]],functionbody:[["[@](return)",{token:"keyword"}],{include:"@variabledeclaration"},{include:"@term"},{include:"@controlstatement"},[";","delimiter"],["}",{token:"delimiter.curly",next:"@pop"}]],functioninvocation:[["@identifier\\(",{token:"meta",next:"@functionarguments"}]],functionarguments:[["\\$@identifier@ws:","attribute.name"],["[,]","delimiter"],{include:"@term"},["\\)",{token:"meta",next:"@pop"}]],strings:[['~?"',{token:"string.delimiter",next:"@stringenddoublequote"}],["~?'",{token:"string.delimiter",next:"@stringendquote"}]],stringenddoublequote:[["\\\\.","string"],['"',{token:"string.delimiter",next:"@pop"}],[".","string"]],stringendquote:[["\\\\.","string"],["'",{token:"string.delimiter",next:"@pop"}],[".","string"]]}};return s(k);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
"use strict";/*!-----------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Version: 0.45.0(5e5af013f8d295555a7210df0d5f2cea0bf5dd56)
|
||||||
|
* Released under the MIT license
|
||||||
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
||||||
|
*-----------------------------------------------------------------------------*/
|
||||||
|
define("vs/basic-languages/shell/shell", ["require","require"],(require)=>{
|
||||||
|
var moduleExports=(()=>{var a=Object.defineProperty;var s=Object.getOwnPropertyDescriptor;var n=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var c=(r,e)=>{for(var i in e)a(r,i,{get:e[i],enumerable:!0})},d=(r,e,i,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of n(e))!l.call(r,t)&&t!==i&&a(r,t,{get:()=>e[t],enumerable:!(o=s(e,t))||o.enumerable});return r};var p=r=>d(a({},"__esModule",{value:!0}),r);var g={};c(g,{conf:()=>m,language:()=>u});var m={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}]},u={defaultToken:"",ignoreCase:!0,tokenPostfix:".shell",brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"}],keywords:["if","then","do","else","elif","while","until","for","in","esac","fi","fin","fil","done","exit","set","unset","export","function"],builtins:["ab","awk","bash","beep","cat","cc","cd","chown","chmod","chroot","clear","cp","curl","cut","diff","echo","find","gawk","gcc","get","git","grep","hg","kill","killall","ln","ls","make","mkdir","openssl","mv","nc","node","npm","ping","ps","restart","rm","rmdir","sed","service","sh","shopt","shred","source","sort","sleep","ssh","start","stop","su","sudo","svn","tee","telnet","top","touch","vi","vim","wall","wc","wget","who","write","yes","zsh"],startingWithDash:/\-+\w+/,identifiersWithDashes:/[a-zA-Z]\w+(?:@startingWithDash)+/,symbols:/[=><!~?&|+\-*\/\^;\.,]+/,tokenizer:{root:[[/@identifiersWithDashes/,""],[/(\s)((?:@startingWithDash)+)/,["white","attribute.name"]],[/[a-zA-Z]\w*/,{cases:{"@keywords":"keyword","@builtins":"type.identifier","@default":""}}],{include:"@whitespace"},{include:"@strings"},{include:"@parameters"},{include:"@heredoc"},[/[{}\[\]()]/,"@brackets"],[/@symbols/,"delimiter"],{include:"@numbers"},[/[,;]/,"delimiter"]],whitespace:[[/\s+/,"white"],[/(^#!.*$)/,"metatag"],[/(^#.*$)/,"comment"]],numbers:[[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/,"number.hex"],[/\d+/,"number"]],strings:[[/'/,"string","@stringBody"],[/"/,"string","@dblStringBody"]],stringBody:[[/'/,"string","@popall"],[/./,"string"]],dblStringBody:[[/"/,"string","@popall"],[/./,"string"]],heredoc:[[/(<<[-<]?)(\s*)(['"`]?)([\w\-]+)(['"`]?)/,["constants","white","string.heredoc.delimiter","string.heredoc","string.heredoc.delimiter"]]],parameters:[[/\$\d+/,"variable.predefined"],[/\$\w+/,"variable"],[/\$[*@#?\-$!0_]/,"variable"],[/\$'/,"variable","@parameterBodyQuote"],[/\$"/,"variable","@parameterBodyDoubleQuote"],[/\$\(/,"variable","@parameterBodyParen"],[/\$\{/,"variable","@parameterBodyCurlyBrace"]],parameterBodyQuote:[[/[^#:%*@\-!_']+/,"variable"],[/[#:%*@\-!_]/,"delimiter"],[/[']/,"variable","@pop"]],parameterBodyDoubleQuote:[[/[^#:%*@\-!_"]+/,"variable"],[/[#:%*@\-!_]/,"delimiter"],[/["]/,"variable","@pop"]],parameterBodyParen:[[/[^#:%*@\-!_)]+/,"variable"],[/[#:%*@\-!_]/,"delimiter"],[/[)]/,"variable","@pop"]],parameterBodyCurlyBrace:[[/[^#:%*@\-!_}]+/,"variable"],[/[#:%*@\-!_]/,"delimiter"],[/[}]/,"variable","@pop"]]}};return p(g);})();
|
||||||
|
return moduleExports;
|
||||||
|
});
|
||||||
+10
File diff suppressed because one or more lines are too long
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user