Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
张文彪
/
employmentBusinessPc
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
ae422217
authored
Nov 26, 2025
by
zwb
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
招聘会演示平台搭建与简历导入
parent
5245b766
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
604 additions
and
0 deletions
employmentBusiness-pc-api/src/main/java/com/bkty/system/api/model/XcxLoginUser.java
employmentBusiness-pc-auth/src/main/java/com/bkty/form/XcxLoginBody.java
employmentBusiness-pc-common/employmentBusiness-pc-common-core/src/main/java/org/dromara/common/core/factory/YmlPropertySourceFactory.java
employmentBusiness-pc-common/employmentBusiness-pc-common-core/src/main/java/org/dromara/common/core/xss/Xss.java
employmentBusiness-pc-common/employmentBusiness-pc-common-core/src/main/java/org/dromara/common/core/xss/XssValidator.java
employmentBusiness-pc-common/employmentBusiness-pc-common-web/src/main/java/org/dromara/common/web/config/properties/XssProperties.java
employmentBusiness-pc-common/employmentBusiness-pc-common-web/src/main/java/org/dromara/common/web/filter/XssFilter.java
employmentBusiness-pc-common/employmentBusiness-pc-common-web/src/main/java/org/dromara/common/web/filter/XssHttpServletRequestWrapper.java
employmentBusiness-pc-modules/employmentBusiness-pc-system/src/main/java/com/bkty/system/config/YyptUrlProperties.java
employmentBusiness-pc-nacos/src/main/java/com/alibaba/nacos/console/filter/XssFilter.java
employmentBusiness-pc-nacos/src/main/resources/static/console-ui/public/js/vs/base/worker/workerMain.js
employmentBusiness-pc-nacos/src/main/resources/static/console-ui/public/js/vs/basic-languages/src/xml.js
employmentBusiness-pc-nacos/src/main/resources/static/console-ui/public/js/vs/basic-languages/src/yaml.js
employmentBusiness-pc-nacos/src/main/resources/static/console-ui/public/js/xml.js
employmentBusiness-pc-api/src/main/java/com/bkty/system/api/model/XcxLoginUser.java
0 → 100644
View file @
ae422217
package
com
.
bkty
.
system
.
api
.
model
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.NoArgsConstructor
;
import
java.io.Serial
;
/**
* 小程序登录用户身份权限
*
* @author Lion Li
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@NoArgsConstructor
public
class
XcxLoginUser
extends
LoginUser
{
@Serial
private
static
final
long
serialVersionUID
=
1L
;
/**
* openid
*/
private
String
openid
;
}
employmentBusiness-pc-auth/src/main/java/com/bkty/form/XcxLoginBody.java
0 → 100644
View file @
ae422217
package
com
.
bkty
.
form
;
import
jakarta.validation.constraints.NotBlank
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
org.dromara.common.core.domain.model.LoginBody
;
/**
* 三方登录对象
*
* @author Lion Li
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
public
class
XcxLoginBody
extends
LoginBody
{
/**
* 小程序id(多个小程序时使用)
*/
private
String
appid
;
/**
* 小程序code
*/
@NotBlank
(
message
=
"{xcx.code.not.blank}"
)
private
String
xcxCode
;
}
employmentBusiness-pc-common/employmentBusiness-pc-common-core/src/main/java/org/dromara/common/core/factory/YmlPropertySourceFactory.java
0 → 100644
View file @
ae422217
package
org
.
dromara
.
common
.
core
.
factory
;
import
org.dromara.common.core.utils.StringUtils
;
import
org.springframework.beans.factory.config.YamlPropertiesFactoryBean
;
import
org.springframework.core.env.PropertiesPropertySource
;
import
org.springframework.core.env.PropertySource
;
import
org.springframework.core.io.support.DefaultPropertySourceFactory
;
import
org.springframework.core.io.support.EncodedResource
;
import
java.io.IOException
;
/**
* yml 配置源工厂
*
* @author Lion Li
*/
public
class
YmlPropertySourceFactory
extends
DefaultPropertySourceFactory
{
@Override
public
PropertySource
<?>
createPropertySource
(
String
name
,
EncodedResource
resource
)
throws
IOException
{
String
sourceName
=
resource
.
getResource
().
getFilename
();
if
(
StringUtils
.
isNotBlank
(
sourceName
)
&&
StringUtils
.
endsWithAny
(
sourceName
,
".yml"
,
".yaml"
))
{
YamlPropertiesFactoryBean
factory
=
new
YamlPropertiesFactoryBean
();
factory
.
setResources
(
resource
.
getResource
());
factory
.
afterPropertiesSet
();
return
new
PropertiesPropertySource
(
sourceName
,
factory
.
getObject
());
}
return
super
.
createPropertySource
(
name
,
resource
);
}
}
employmentBusiness-pc-common/employmentBusiness-pc-common-core/src/main/java/org/dromara/common/core/xss/Xss.java
0 → 100644
View file @
ae422217
package
org
.
dromara
.
common
.
core
.
xss
;
import
jakarta.validation.Constraint
;
import
jakarta.validation.Payload
;
import
java.lang.annotation.ElementType
;
import
java.lang.annotation.Retention
;
import
java.lang.annotation.RetentionPolicy
;
import
java.lang.annotation.Target
;
/**
* 自定义xss校验注解
*
* @author Lion Li
*/
@Retention
(
RetentionPolicy
.
RUNTIME
)
@Target
(
value
=
{
ElementType
.
METHOD
,
ElementType
.
FIELD
,
ElementType
.
CONSTRUCTOR
,
ElementType
.
PARAMETER
})
@Constraint
(
validatedBy
=
{
XssValidator
.
class
})
public
@interface
Xss
{
String
message
()
default
"不允许任何脚本运行"
;
Class
<?>[]
groups
()
default
{};
Class
<?
extends
Payload
>[]
payload
()
default
{};
}
employmentBusiness-pc-common/employmentBusiness-pc-common-core/src/main/java/org/dromara/common/core/xss/XssValidator.java
0 → 100644
View file @
ae422217
package
org
.
dromara
.
common
.
core
.
xss
;
import
cn.hutool.core.util.ReUtil
;
import
cn.hutool.http.HtmlUtil
;
import
jakarta.validation.ConstraintValidator
;
import
jakarta.validation.ConstraintValidatorContext
;
/**
* 自定义xss校验注解实现
*
* @author Lion Li
*/
public
class
XssValidator
implements
ConstraintValidator
<
Xss
,
String
>
{
@Override
public
boolean
isValid
(
String
value
,
ConstraintValidatorContext
constraintValidatorContext
)
{
return
!
ReUtil
.
contains
(
HtmlUtil
.
RE_HTML_MARK
,
value
);
}
}
employmentBusiness-pc-common/employmentBusiness-pc-common-web/src/main/java/org/dromara/common/web/config/properties/XssProperties.java
0 → 100644
View file @
ae422217
package
org
.
dromara
.
common
.
web
.
config
.
properties
;
import
lombok.Data
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
import
org.springframework.cloud.context.config.annotation.RefreshScope
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
* XSS跨站脚本配置
*
* @author Lion Li
*/
@Data
@RefreshScope
@ConfigurationProperties
(
prefix
=
"xss"
)
public
class
XssProperties
{
/**
* Xss开关
*/
private
Boolean
enabled
;
/**
* 排除路径
*/
private
List
<
String
>
excludeUrls
=
new
ArrayList
<>();
}
employmentBusiness-pc-common/employmentBusiness-pc-common-web/src/main/java/org/dromara/common/web/filter/XssFilter.java
0 → 100644
View file @
ae422217
package
org
.
dromara
.
common
.
web
.
filter
;
import
jakarta.servlet.*
;
import
jakarta.servlet.http.HttpServletRequest
;
import
jakarta.servlet.http.HttpServletResponse
;
import
org.dromara.common.core.utils.SpringUtils
;
import
org.dromara.common.core.utils.StringUtils
;
import
org.dromara.common.web.config.properties.XssProperties
;
import
org.springframework.http.HttpMethod
;
import
java.io.IOException
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
* 防止XSS攻击的过滤器
*
* @author ruoyi
*/
public
class
XssFilter
implements
Filter
{
/**
* 排除链接
*/
public
List
<
String
>
excludes
=
new
ArrayList
<>();
@Override
public
void
init
(
FilterConfig
filterConfig
)
throws
ServletException
{
XssProperties
properties
=
SpringUtils
.
getBean
(
XssProperties
.
class
);
String
appName
=
SpringUtils
.
getApplicationName
();
String
appPath
=
"/"
+
StringUtils
.
substring
(
appName
,
appName
.
indexOf
(
"-"
)
+
1
);
List
<
String
>
excludeUrls
=
properties
.
getExcludeUrls
()
.
stream
()
.
filter
(
x
->
StringUtils
.
startsWith
(
x
,
appPath
))
.
map
(
x
->
x
.
replaceFirst
(
appPath
,
StringUtils
.
EMPTY
))
.
toList
();
excludes
.
addAll
(
excludeUrls
);
}
@Override
public
void
doFilter
(
ServletRequest
request
,
ServletResponse
response
,
FilterChain
chain
)
throws
IOException
,
ServletException
{
HttpServletRequest
req
=
(
HttpServletRequest
)
request
;
HttpServletResponse
resp
=
(
HttpServletResponse
)
response
;
if
(
handleExcludeURL
(
req
,
resp
))
{
chain
.
doFilter
(
request
,
response
);
return
;
}
XssHttpServletRequestWrapper
xssRequest
=
new
XssHttpServletRequestWrapper
((
HttpServletRequest
)
request
);
chain
.
doFilter
(
xssRequest
,
response
);
}
private
boolean
handleExcludeURL
(
HttpServletRequest
request
,
HttpServletResponse
response
)
{
String
url
=
request
.
getServletPath
();
String
method
=
request
.
getMethod
();
// GET DELETE 不过滤
if
(
method
==
null
||
HttpMethod
.
GET
.
matches
(
method
)
||
HttpMethod
.
DELETE
.
matches
(
method
))
{
return
true
;
}
return
StringUtils
.
matches
(
url
,
excludes
);
}
@Override
public
void
destroy
()
{
}
}
employmentBusiness-pc-common/employmentBusiness-pc-common-web/src/main/java/org/dromara/common/web/filter/XssHttpServletRequestWrapper.java
0 → 100644
View file @
ae422217
package
org
.
dromara
.
common
.
web
.
filter
;
import
cn.hutool.core.io.IoUtil
;
import
cn.hutool.core.map.MapUtil
;
import
cn.hutool.core.util.ArrayUtil
;
import
cn.hutool.core.util.StrUtil
;
import
cn.hutool.http.HtmlUtil
;
import
jakarta.servlet.ReadListener
;
import
jakarta.servlet.ServletInputStream
;
import
jakarta.servlet.http.HttpServletRequest
;
import
jakarta.servlet.http.HttpServletRequestWrapper
;
import
org.dromara.common.core.utils.StringUtils
;
import
org.springframework.http.HttpHeaders
;
import
org.springframework.http.MediaType
;
import
java.io.ByteArrayInputStream
;
import
java.io.IOException
;
import
java.nio.charset.StandardCharsets
;
import
java.util.HashMap
;
import
java.util.Map
;
/**
* XSS过滤处理
*
* @author ruoyi
*/
public
class
XssHttpServletRequestWrapper
extends
HttpServletRequestWrapper
{
/**
* @param request
*/
public
XssHttpServletRequestWrapper
(
HttpServletRequest
request
)
{
super
(
request
);
}
@Override
public
String
getParameter
(
String
name
)
{
String
value
=
super
.
getParameter
(
name
);
if
(
value
==
null
)
{
return
null
;
}
return
HtmlUtil
.
cleanHtmlTag
(
value
).
trim
();
}
@Override
public
Map
<
String
,
String
[]>
getParameterMap
()
{
Map
<
String
,
String
[]>
valueMap
=
super
.
getParameterMap
();
if
(
MapUtil
.
isEmpty
(
valueMap
))
{
return
valueMap
;
}
// 避免某些容器不允许改参数的情况 copy一份重新改
Map
<
String
,
String
[]>
map
=
new
HashMap
<>(
valueMap
.
size
());
map
.
putAll
(
valueMap
);
for
(
Map
.
Entry
<
String
,
String
[]>
entry
:
map
.
entrySet
())
{
String
[]
values
=
entry
.
getValue
();
if
(
values
!=
null
)
{
int
length
=
values
.
length
;
String
[]
escapseValues
=
new
String
[
length
];
for
(
int
i
=
0
;
i
<
length
;
i
++)
{
// 防xss攻击和过滤前后空格
escapseValues
[
i
]
=
HtmlUtil
.
cleanHtmlTag
(
values
[
i
]).
trim
();
}
map
.
put
(
entry
.
getKey
(),
escapseValues
);
}
}
return
map
;
}
@Override
public
String
[]
getParameterValues
(
String
name
)
{
String
[]
values
=
super
.
getParameterValues
(
name
);
if
(
ArrayUtil
.
isEmpty
(
values
))
{
return
values
;
}
int
length
=
values
.
length
;
String
[]
escapseValues
=
new
String
[
length
];
for
(
int
i
=
0
;
i
<
length
;
i
++)
{
// 防xss攻击和过滤前后空格
escapseValues
[
i
]
=
HtmlUtil
.
cleanHtmlTag
(
values
[
i
]).
trim
();
}
return
escapseValues
;
}
@Override
public
ServletInputStream
getInputStream
()
throws
IOException
{
// 非json类型,直接返回
if
(!
isJsonRequest
())
{
return
super
.
getInputStream
();
}
// 为空,直接返回
String
json
=
StrUtil
.
str
(
IoUtil
.
readBytes
(
super
.
getInputStream
(),
false
),
StandardCharsets
.
UTF_8
);
if
(
StringUtils
.
isEmpty
(
json
))
{
return
super
.
getInputStream
();
}
// xss过滤
json
=
HtmlUtil
.
cleanHtmlTag
(
json
).
trim
();
byte
[]
jsonBytes
=
json
.
getBytes
(
StandardCharsets
.
UTF_8
);
final
ByteArrayInputStream
bis
=
IoUtil
.
toStream
(
jsonBytes
);
return
new
ServletInputStream
()
{
@Override
public
boolean
isFinished
()
{
return
true
;
}
@Override
public
boolean
isReady
()
{
return
true
;
}
@Override
public
int
available
()
throws
IOException
{
return
jsonBytes
.
length
;
}
@Override
public
void
setReadListener
(
ReadListener
readListener
)
{
}
@Override
public
int
read
()
throws
IOException
{
return
bis
.
read
();
}
};
}
/**
* 是否是Json请求
*/
public
boolean
isJsonRequest
()
{
String
header
=
super
.
getHeader
(
HttpHeaders
.
CONTENT_TYPE
);
return
StringUtils
.
startsWithIgnoreCase
(
header
,
MediaType
.
APPLICATION_JSON_VALUE
);
}
}
employmentBusiness-pc-modules/employmentBusiness-pc-system/src/main/java/com/bkty/system/config/YyptUrlProperties.java
0 → 100644
View file @
ae422217
package
com
.
bkty
.
system
.
config
;
import
lombok.Data
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
import
org.springframework.cloud.context.config.annotation.RefreshScope
;
import
org.springframework.stereotype.Component
;
@Data
@Component
@RefreshScope
@ConfigurationProperties
(
prefix
=
"yypt"
)
public
class
YyptUrlProperties
{
/**
* 运营平台登录账号
*/
private
String
account
;
/**
* 运营平台登录密码
*/
private
String
password
;
/**
* 运营平台登录url
*/
private
String
tokenUrl
;
/**
* 学生档案信息推送接口
*/
private
String
studentUrl
;
/**
* 删除学生档案信息推送接口
*/
private
String
delStudentUrl
;
/**
* 查询权益数据(学校端使用)
*/
private
String
vipUrl
;
/**
* 添加权益与学生关联表_学校端
*/
private
String
interestStudentUrl
;
/**
* 修改权益下的用户领取时间使用
*/
private
String
collectTimeTaskUrl
;
/**
* 概览数据预处理
*/
private
String
statisticsOverviewUrl
;
/**
* 查询权益包数据(学校端使用)
*/
private
String
vipUrlPackage
;
/**
* 用户画像求职偏好统计
*/
private
String
portraitJobUrl
;
/**
* 简历智作统计数据预处理
*/
private
String
resumeSmartUrl
;
/**
* 模拟面试统计数据预处理
*/
private
String
simulationInterviewUrl
;
/**
* 获取用户移动端注册时间
*/
private
String
studentUserCreateTimeUrl
;
/**
* 简历下载接口
*/
private
String
resumeDownloadUrl
;
/**
* 学校岗位
*/
private
String
positionRecommendUrl
;
/**
* 查询企业信息列表
*/
private
String
queryCompanyList
;
/**
* 发送企业信息
*/
private
String
sendCompanyRisk
;
/**
* 轮询企业信息
*/
private
String
retrieve
;
/**
* 查询企业信息结果
*/
private
String
queryCompanyRisk
;
/**
* 获取开发token
*/
private
String
getOpenToken
;
/**
* 获取个人画像AI
*/
private
String
queryStudentAi
;
/**
* 教师端接口
*/
private
String
teacherUrl
;
/**
* 文件上传功能Minio
*/
private
String
schoolFileUrl
;
/**
* offce分析
*/
private
String
offerAnalysis
;
/**
* 拿到offce分析结果匹配岗位
*/
private
String
offerAnalysisDetails
;
/**
* 查询结果
*/
private
String
messageList
;
/**
* 查询开始分析offce结果
*/
private
String
offceResult
;
/**
* 学校端简历优化
*/
private
String
resumeOptimization
;
/**
* 学校端简历优化轮询
*/
private
String
resumeOptimizationPolling
;
/**
* 优化后简历地址
*/
private
String
createResumeFile
;
/**
* 查询求职意愿
*/
private
String
queryRecommendBase
;
/**
* AI洞析
*/
private
String
queryAiHoleLeaders
;
private
String
appUrl
;
}
employmentBusiness-pc-nacos/src/main/java/com/alibaba/nacos/console/filter/XssFilter.java
0 → 100644
View file @
ae422217
/*
* Copyright 1999-2018 Alibaba Group Holding Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package
com
.
alibaba
.
nacos
.
console
.
filter
;
import
org.springframework.web.filter.OncePerRequestFilter
;
import
javax.servlet.FilterChain
;
import
javax.servlet.ServletException
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
/**
* XSS filter.
* @author onewe
*/
public
class
XssFilter
extends
OncePerRequestFilter
{
private
static
final
String
CONTENT_SECURITY_POLICY_HEADER
=
"Content-Security-Policy"
;
private
static
final
String
CONTENT_SECURITY_POLICY
=
"script-src 'self'"
;
@Override
protected
void
doFilterInternal
(
HttpServletRequest
request
,
HttpServletResponse
response
,
FilterChain
filterChain
)
throws
ServletException
,
IOException
{
response
.
setHeader
(
CONTENT_SECURITY_POLICY_HEADER
,
CONTENT_SECURITY_POLICY
);
filterChain
.
doFilter
(
request
,
response
);
}
}
employmentBusiness-pc-nacos/src/main/resources/static/console-ui/public/js/vs/base/worker/workerMain.js
0 → 100644
View file @
ae422217
This diff could not be displayed because it is too large.
employmentBusiness-pc-nacos/src/main/resources/static/console-ui/public/js/vs/basic-languages/src/xml.js
0 → 100644
View file @
ae422217
/*!-----------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* monaco-languages version: 0.9.0(e162b4ba29044167bc7181c42b3270fa8a467424)
* Released under the MIT license
* https://github.com/Microsoft/monaco-languages/blob/master/LICENSE.md
*-----------------------------------------------------------------------------*/
define
(
"vs/basic-languages/src/xml"
,[
"require"
,
"exports"
],
function
(
e
,
t
){
"use strict"
;
Object
.
defineProperty
(
t
,
"__esModule"
,{
value
:
!
0
}),
t
.
conf
=
{
comments
:{
blockComment
:[
"\x3c!--"
,
"--\x3e"
]},
brackets
:[[
"<"
,
">"
]],
autoClosingPairs
:[{
open
:
"<"
,
close
:
">"
},{
open
:
"'"
,
close
:
"'"
},{
open
:
'"'
,
close
:
'"'
}],
surroundingPairs
:[{
open
:
"<"
,
close
:
">"
},{
open
:
"'"
,
close
:
"'"
},{
open
:
'"'
,
close
:
'"'
}]},
t
.
language
=
{
defaultToken
:
""
,
tokenPostfix
:
".xml"
,
ignoreCase
:
!
0
,
qualifiedName
:
/
(?:[\w\.\-]
+:
)?[\w\.\-]
+/
,
tokenizer
:{
root
:[[
/
[^
<&
]
+/
,
""
],{
include
:
"@whitespace"
},[
/
(
<
)(
@qualifiedName
)
/
,[{
token
:
"delimiter"
},{
token
:
"tag"
,
next
:
"@tag"
}]],[
/
(
<
\/)(
@qualifiedName
)(\s
*
)(
>
)
/
,[{
token
:
"delimiter"
},{
token
:
"tag"
},
""
,{
token
:
"delimiter"
}]],[
/
(
<
\?)(
@qualifiedName
)
/
,[{
token
:
"delimiter"
},{
token
:
"metatag"
,
next
:
"@tag"
}]],[
/
(
<
\!)(
@qualifiedName
)
/
,[{
token
:
"delimiter"
},{
token
:
"metatag"
,
next
:
"@tag"
}]],[
/<
\!\[
CDATA
\[
/
,{
token
:
"delimiter.cdata"
,
next
:
"@cdata"
}],[
/&
\w
+;/
,
"string.escape"
]],
cdata
:[[
/
[^\]]
+/
,
""
],[
/
\]\]
>/
,{
token
:
"delimiter.cdata"
,
next
:
"@pop"
}],[
/
\]
/
,
""
]],
tag
:[[
/
[
\t\r\n]
+/
,
""
],[
/
(
@qualifiedName
)(\s
*=
\s
*
)(
"
[^
"
]
*"|'
[^
'
]
*'
)
/
,[
"attribute.name"
,
""
,
"attribute.value"
]],[
/
(
@qualifiedName
)(\s
*=
\s
*
)(
"
[^
">?
\/]
*|'
[^
'>?
\/]
*
)(?=[\?\/]\>)
/
,[
"attribute.name"
,
""
,
"attribute.value"
]],[
/
(
@qualifiedName
)(\s
*=
\s
*
)(
"
[^
">
]
*|'
[^
'>
]
*
)
/
,[
"attribute.name"
,
""
,
"attribute.value"
]],[
/@qualifiedName/
,
"attribute.name"
],[
/
\?
>/
,{
token
:
"delimiter"
,
next
:
"@pop"
}],[
/
(\/)(
>
)
/
,[{
token
:
"tag"
},{
token
:
"delimiter"
,
next
:
"@pop"
}]],[
/>/
,{
token
:
"delimiter"
,
next
:
"@pop"
}]],
whitespace
:[[
/
[
\t\r\n]
+/
,
""
],[
/<!--/
,{
token
:
"comment"
,
next
:
"@comment"
}]],
comment
:[[
/
[^
<
\-]
+/
,
"comment.content"
],[
/-->/
,{
token
:
"comment"
,
next
:
"@pop"
}],[
/<!--/
,
"comment.content.invalid"
],[
/
[
<
\-]
/
,
"comment.content"
]]}}});
\ No newline at end of file
employmentBusiness-pc-nacos/src/main/resources/static/console-ui/public/js/vs/basic-languages/src/yaml.js
0 → 100644
View file @
ae422217
/*!-----------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* monaco-languages version: 0.9.0(e162b4ba29044167bc7181c42b3270fa8a467424)
* Released under the MIT license
* https://github.com/Microsoft/monaco-languages/blob/master/LICENSE.md
*-----------------------------------------------------------------------------*/
define
(
"vs/basic-languages/src/yaml"
,[
"require"
,
"exports"
],
function
(
e
,
n
){
"use strict"
;
Object
.
defineProperty
(
n
,
"__esModule"
,{
value
:
!
0
}),
n
.
conf
=
{
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
:
"'"
}]},
n
.
language
=
{
tokenPostfix
:
".yaml"
,
brackets
:[{
token
:
"delimiter.bracket"
,
open
:
"{"
,
close
:
"}"
},{
token
:
"delimiter.square"
,
open
:
"["
,
close
:
"]"
}],
keywords
:[
"true"
,
"True"
,
"TRUE"
,
"false"
,
"False"
,
"FALSE"
,
"null"
,
"Null"
,
"Null"
,
"~"
],
numberInteger
:
/
(?:
0|
[
+-
]?[
0-9
]
+
)
/
,
numberFloat
:
/
(?:
0|
[
+-
]?[
0-9
]
+
)(?:\.[
0-9
]
+
)?(?:
e
[
-+
][
1-9
][
0-9
]
*
)?
/
,
numberOctal
:
/0o
[
0-7
]
+/
,
numberHex
:
/0x
[
0-9a-fA-F
]
+/
,
numberInfinity
:
/
[
+-
]?\.(?:
inf|Inf|INF
)
/
,
numberNaN
:
/
\.(?:
nan|Nan|NAN
)
/
,
numberDate
:
/
\d{4}
-
\d\d
-
\d\d([
Tt
]\d\d
:
\d\d
:
\d\d(\.\d
+
)?((
?[
+-
]\d\d?(
:
\d\d)?)
|Z
)?)?
/
,
escapes
:
/
\\(?:[
btnfr
\\
"'
]
|
[
0-7
][
0-7
]?
|
[
0-3
][
0-7
]{2})
/
,
tokenizer
:{
root
:[{
include
:
"@whitespace"
},{
include
:
"@comment"
},[
/%
[^
]
+.*$/
,
"meta.directive"
],[
/---/
,
"operators.directivesEnd"
],[
/
\.{3}
/
,
"operators.documentEnd"
],[
/
[
-?:
](?=
)
/
,
"operators"
],{
include
:
"@anchor"
},{
include
:
"@tagHandle"
},{
include
:
"@flowCollections"
},{
include
:
"@blockStyle"
},[
/@numberInteger
(?![
\t]
*
\S
+
)
/
,
"number"
],[
/@numberFloat
(?![
\t]
*
\S
+
)
/
,
"number.float"
],[
/@numberOctal
(?![
\t]
*
\S
+
)
/
,
"number.octal"
],[
/@numberHex
(?![
\t]
*
\S
+
)
/
,
"number.hex"
],[
/@numberInfinity
(?![
\t]
*
\S
+
)
/
,
"number.infinity"
],[
/@numberNaN
(?![
\t]
*
\S
+
)
/
,
"number.nan"
],[
/@numberDate
(?![
\t]
*
\S
+
)
/
,
"number.date"
],[
/
(
".*
?
"|'.*
?
'|.*
?)([
\t]
*
)(
:
)(
|$
)
/
,[
"type"
,
"white"
,
"operators"
,
"white"
]],{
include
:
"@flowScalars"
},[
/.+$/
,{
cases
:{
"@keywords"
:
"keyword"
,
"@default"
:
"string"
}}]],
object
:[{
include
:
"@whitespace"
},{
include
:
"@comment"
},[
/
\}
/
,
"@brackets"
,
"@pop"
],[
/,/
,
"delimiter.comma"
],[
/:
(?=
)
/
,
"operators"
],[
/
(?:
".*
?
"|'.*
?
'|
[^
,
\{\[]
+
?)(?=
:
)
/
,
"type"
],{
include
:
"@flowCollections"
},{
include
:
"@flowScalars"
},{
include
:
"@tagHandle"
},{
include
:
"@anchor"
},{
include
:
"@flowNumber"
},[
/
[^\}
,
]
+/
,{
cases
:{
"@keywords"
:
"keyword"
,
"@default"
:
"string"
}}]],
array
:[{
include
:
"@whitespace"
},{
include
:
"@comment"
},[
/
\]
/
,
"@brackets"
,
"@pop"
],[
/,/
,
"delimiter.comma"
],{
include
:
"@flowCollections"
},{
include
:
"@flowScalars"
},{
include
:
"@tagHandle"
},{
include
:
"@anchor"
},{
include
:
"@flowNumber"
},[
/
[^\]
,
]
+/
,{
cases
:{
"@keywords"
:
"keyword"
,
"@default"
:
"string"
}}]],
string
:[[
/
[^\\
"'
]
+/
,
"string"
],[
/@escapes/
,
"string.escape"
],[
/
\\
./
,
"string.escape.invalid"
],[
/
[
"'
]
/
,{
cases
:{
"$#==$S2"
:{
token
:
"string"
,
next
:
"@pop"
},
"@default"
:
"string"
}}]],
multiString
:[[
/^
(
+
)
.+$/
,
"string"
,
"@multiStringContinued.$1"
]],
multiStringContinued
:[[
/^
(
*
)
.+$/
,{
cases
:{
"$1==$S2"
:
"string"
,
"@default"
:{
token
:
"@rematch"
,
next
:
"@popall"
}}}]],
whitespace
:[[
/
[
\t\r\n]
+/
,
"white"
]],
comment
:[[
/#.*$/
,
"comment"
]],
flowCollections
:[[
/
\[
/
,
"@brackets"
,
"@array"
],[
/
\{
/
,
"@brackets"
,
"@object"
]],
flowScalars
:[[
/"/
,
"string"
,
'@string."'
],[
/'/
,
"string"
,
"@string.'"
]],
blockStyle
:[[
/
[
>|
][
0-9
]
*
[
+-
]?
$/
,
"operators"
,
"@multiString"
]],
flowNumber
:[[
/@numberInteger
(?=[
\t]
*
[
,
\]\}])
/
,
"number"
],[
/@numberFloat
(?=[
\t]
*
[
,
\]\}])
/
,
"number.float"
],[
/@numberOctal
(?=[
\t]
*
[
,
\]\}])
/
,
"number.octal"
],[
/@numberHex
(?=[
\t]
*
[
,
\]\}])
/
,
"number.hex"
],[
/@numberInfinity
(?=[
\t]
*
[
,
\]\}])
/
,
"number.infinity"
],[
/@numberNaN
(?=[
\t]
*
[
,
\]\}])
/
,
"number.nan"
],[
/@numberDate
(?=[
\t]
*
[
,
\]\}])
/
,
"number.date"
]],
tagHandle
:[[
/
\![^
]
*/
,
"tag"
]],
anchor
:[[
/
[
&*
][^
]
+/
,
"namespace"
]]}}});
\ No newline at end of file
employmentBusiness-pc-nacos/src/main/resources/static/console-ui/public/js/xml.js
0 → 100644
View file @
ae422217
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment