Skip to content

Commit e50b46d

Browse files
committed
补充工具与加密库匹配规则
新增一批本地资源匹配,覆盖数学、加密、通知、选择器、懒加载、图片处理、可访问性和图标相关库。 对短名称和易混淆文件继续限定包目录、专属发行文件或明确资源后缀。 版本递增至 1.3.10。
1 parent e64b1d8 commit e50b46d

3 files changed

Lines changed: 284 additions & 1 deletion

File tree

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "stackprism",
33
"private": true,
4-
"version": "1.3.9",
4+
"version": "1.3.10",
55
"type": "module",
66
"description": "StackPrism 用于检测网页前端、后端、CDN、SaaS、广告营销、统计、登录、支付、网站程序和主题模板线索。",
77
"scripts": {

public/rules/page/frontend-local-libraries.json

Lines changed: 247 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3556,6 +3556,253 @@
35563556
"(?:^|/)@uswds/uswds(?:@[^/\\s\"'<>]+)?/.+\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
35573557
]
35583558
},
3559+
{
3560+
"name": "BigNumber.js",
3561+
"patterns": [
3562+
"(?:^|/)bignumber(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3563+
"(?:^|/)bignumber\\.js(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3564+
]
3565+
},
3566+
{
3567+
"name": "Decimal.js",
3568+
"patterns": [
3569+
"(?:^|/)decimal(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3570+
"(?:^|/)decimal\\.js(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3571+
]
3572+
},
3573+
{
3574+
"name": "JOSE",
3575+
"patterns": [
3576+
"(?:^|/)jose(?:@[^/\\s\"'<>]+)?/dist/.+\\.(?:m?js|cjs)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3577+
"(?:^|/)jose-(?:browser|node)-(?:esm|cjs)-runtime(?:@[^/\\s\"'<>]+)?/.+\\.(?:m?js|cjs)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3578+
]
3579+
},
3580+
{
3581+
"name": "SJCL",
3582+
"patterns": [
3583+
"(?:^|/)sjcl(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3584+
"(?:^|/)sjcl/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3585+
]
3586+
},
3587+
{
3588+
"name": "JSEncrypt",
3589+
"patterns": [
3590+
"(?:^|/)jsencrypt(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3591+
"(?:^|/)jsencrypt(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3592+
]
3593+
},
3594+
{
3595+
"name": "OpenPGP.js",
3596+
"patterns": [
3597+
"(?:^|/)openpgp(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3598+
"(?:^|/)openpgp(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3599+
]
3600+
},
3601+
{
3602+
"name": "vex-js",
3603+
"patterns": [
3604+
"(?:^|/)vex\\.combined(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3605+
"(?:^|/)vex(?:\\.min)?\\.css(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3606+
"(?:^|/)vex-js/.+\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3607+
]
3608+
},
3609+
{
3610+
"name": "jQuery Noty",
3611+
"patterns": [
3612+
"(?:^|/)jquery\\.noty(?:\\.packaged)?(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3613+
"(?:^|/)noty(?:\\.min)?\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3614+
]
3615+
},
3616+
{
3617+
"name": "vue-multiselect",
3618+
"patterns": [
3619+
"(?:^|/)vue-multiselect(?:\\.min)?\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3620+
"(?:^|/)vue-multiselect(?:@[^/\\s\"'<>]+)?/.+\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3621+
]
3622+
},
3623+
{
3624+
"name": "fastdom",
3625+
"patterns": [
3626+
"(?:^|/)fastdom(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3627+
"(?:^|/)fastdom(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3628+
]
3629+
},
3630+
{
3631+
"name": "FitText.js",
3632+
"patterns": [
3633+
"(?:^|/)jquery\\.fittext(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3634+
"(?:^|/)FitText\\.js/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3635+
]
3636+
},
3637+
{
3638+
"name": "Stats.js",
3639+
"patterns": [
3640+
"(?:^|/)stats(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3641+
"(?:^|/)stats\\.js/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3642+
]
3643+
},
3644+
{
3645+
"name": "isomorphic-fetch",
3646+
"patterns": [
3647+
"(?:^|/)fetch-npm-browserify(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3648+
"(?:^|/)isomorphic-fetch(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3649+
]
3650+
},
3651+
{
3652+
"name": "ZeroClipboard",
3653+
"patterns": [
3654+
"(?:^|/)ZeroClipboard(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3655+
"(?:^|/)zeroclipboard/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3656+
]
3657+
},
3658+
{
3659+
"name": "Hamburgers",
3660+
"patterns": [
3661+
"(?:^|/)hamburgers(?:\\.min)?\\.css(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3662+
"(?:^|/)hamburgers/.+\\.css(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3663+
]
3664+
},
3665+
{
3666+
"name": "Glide.js",
3667+
"patterns": [
3668+
"(?:^|/)glide(?:\\.min)?\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3669+
"(?:^|/)@glidejs/glide(?:@[^/\\s\"'<>]+)?/.+\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3670+
]
3671+
},
3672+
{
3673+
"name": "wysihtml5",
3674+
"patterns": [
3675+
"(?:^|/)wysihtml(?:5|5x)(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3676+
"(?:^|/)wysihtml5/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3677+
]
3678+
},
3679+
{
3680+
"name": "React DayPicker",
3681+
"patterns": [
3682+
"(?:^|/)react-day-picker(?:\\.min)?\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3683+
"(?:^|/)react-day-picker(?:@[^/\\s\"'<>]+)?/.+\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3684+
]
3685+
},
3686+
{
3687+
"name": "Chance.js",
3688+
"patterns": [
3689+
"(?:^|/)chance(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3690+
"(?:^|/)chance(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3691+
]
3692+
},
3693+
{
3694+
"name": "Bacon.js",
3695+
"patterns": [
3696+
"(?:^|/)Bacon(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3697+
"(?:^|/)baconjs(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3698+
]
3699+
},
3700+
{
3701+
"name": "Rickshaw",
3702+
"patterns": [
3703+
"(?:^|/)rickshaw(?:\\.min)?\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3704+
"(?:^|/)rickshaw/.+\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3705+
]
3706+
},
3707+
{
3708+
"name": "Choo",
3709+
"patterns": ["(?:^|/)choo(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"]
3710+
},
3711+
{
3712+
"name": "dom-to-image",
3713+
"patterns": [
3714+
"(?:^|/)dom-to-image(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3715+
"(?:^|/)dom-to-image(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3716+
]
3717+
},
3718+
{
3719+
"name": "Choices.js",
3720+
"patterns": [
3721+
"(?:^|/)choices(?:\\.min)?\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3722+
"(?:^|/)choices\\.js/.+\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3723+
]
3724+
},
3725+
{
3726+
"name": "x-editable",
3727+
"patterns": [
3728+
"(?:^|/)bootstrap-editable(?:\\.min)?\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3729+
"(?:^|/)x-editable/.+\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3730+
]
3731+
},
3732+
{
3733+
"name": "lozad.js",
3734+
"patterns": [
3735+
"(?:^|/)lozad(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3736+
"(?:^|/)lozad\\.js/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3737+
]
3738+
},
3739+
{
3740+
"name": "Pixelmatch",
3741+
"patterns": ["(?:^|/)pixelmatch(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"]
3742+
},
3743+
{
3744+
"name": "Keymaster",
3745+
"patterns": [
3746+
"(?:^|/)keymaster(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3747+
"(?:^|/)keymaster/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3748+
]
3749+
},
3750+
{
3751+
"name": "Octicons",
3752+
"patterns": [
3753+
"(?:^|/)octicons(?:\\.min)?\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3754+
"(?:^|/)@primer/octicons(?:-[^/\\s\"'<>]+)?(?:@[^/\\s\"'<>]+)?/.+\\.(?:js|css|svg)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3755+
]
3756+
},
3757+
{
3758+
"name": "Gitalk",
3759+
"patterns": [
3760+
"(?:^|/)gitalk(?:\\.min)?\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3761+
"(?:^|/)gitalk/.+\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3762+
]
3763+
},
3764+
{
3765+
"name": "SimpleBar",
3766+
"patterns": [
3767+
"(?:^|/)simplebar(?:\\.min)?\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3768+
"(?:^|/)simplebar(?:@[^/\\s\"'<>]+)?/.+\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3769+
]
3770+
},
3771+
{
3772+
"name": "URI.js",
3773+
"patterns": [
3774+
"(?:^|/)URI(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3775+
"(?:^|/)URI\\.js/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3776+
]
3777+
},
3778+
{
3779+
"name": "axe-core",
3780+
"patterns": [
3781+
"(?:^|/)axe(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3782+
"(?:^|/)axe-core(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3783+
]
3784+
},
3785+
{
3786+
"name": "Sizzle",
3787+
"patterns": [
3788+
"(?:^|/)sizzle(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3789+
"(?:^|/)sizzle/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3790+
]
3791+
},
3792+
{
3793+
"name": "lightbox2",
3794+
"patterns": [
3795+
"(?:^|/)lightbox(?:\\.min)?\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3796+
"(?:^|/)lightbox2/.+\\.(?:js|css)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3797+
]
3798+
},
3799+
{
3800+
"name": "ZRender",
3801+
"patterns": [
3802+
"(?:^|/)zrender(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
3803+
"(?:^|/)zrender(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
3804+
]
3805+
},
35593806
{
35603807
"name": "Zooming",
35613808
"patterns": ["(?:^|/)zooming(?:\\.min)?\\.js(?:[?#].*)?$"]

public/tech-links.json

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -212,6 +212,7 @@
212212
"Flexbox Grid": "http://flexboxgrid.com",
213213
"USWDS": "https://designsystem.digital.gov",
214214
"Magic CSS": "https://www.minimamente.com/project/magic",
215+
"Hamburgers": "https://jonsuh.com/hamburgers",
215216
"WeUI": "https://github.com/Tencent/weui",
216217
"Naive UI": "https://www.naiveui.com",
217218
"NutUI": "https://nutui.jd.com",
@@ -271,6 +272,8 @@
271272
"js-sequence-diagrams": "https://bramp.github.io/js-sequence-diagrams",
272273
"dynamics.js": "http://dynamicsjs.com",
273274
"NVD3": "https://nvd3.org",
275+
"Rickshaw": "https://shutterstock.github.io/rickshaw",
276+
"ZRender": "https://ecomfe.github.io/zrender",
274277
"Three.js": "https://threejs.org",
275278
"AR.js": "https://github.com/AR-js-org/AR.js",
276279
"particles.js": "https://vincentgarreau.com/particles.js",
@@ -288,6 +291,10 @@
288291
"progressbar.js": "https://kimmobrunfeldt.github.io/progressbar.js",
289292
"jsPlumb": "https://jsplumbtoolkit.com",
290293
"Embla Carousel": "https://www.embla-carousel.com",
294+
"Stats.js": "https://github.com/mrdoob/stats.js",
295+
"Glide.js": "https://glidejs.com",
296+
"Bacon.js": "https://baconjs.github.io",
297+
"Choo": "https://choo.io",
291298
"Swiper": "https://swiperjs.com",
292299
"Slick Carousel": "https://kenwheeler.github.io/slick",
293300
"Splide": "https://splidejs.com",
@@ -311,6 +318,7 @@
311318
"JW Player": "https://www.jwplayer.com",
312319
"mediaelement.js": "https://www.mediaelementjs.com",
313320
"Clappr": "https://clappr.io",
321+
"ZeroClipboard": "https://github.com/zeroclipboard/zeroclipboard",
314322
"Monaco Editor": "https://microsoft.github.io/monaco-editor",
315323
"CodeMirror": "https://codemirror.net",
316324
"Ace Editor": "https://ace.c9.io",
@@ -383,6 +391,34 @@
383391
"Tabulator": "https://tabulator.info",
384392
"Remix Icon": "https://remixicon.com",
385393
"Awesomplete": "https://leaverou.github.io/awesomplete",
394+
"BigNumber.js": "https://mikemcl.github.io/bignumber.js",
395+
"Decimal.js": "https://mikemcl.github.io/decimal.js",
396+
"JOSE": "https://github.com/panva/jose",
397+
"SJCL": "https://github.com/bitwiseshiftleft/sjcl",
398+
"JSEncrypt": "https://travistidwell.com/jsencrypt",
399+
"OpenPGP.js": "https://openpgpjs.org",
400+
"vex-js": "https://github.hubspot.com/vex/docs/welcome",
401+
"jQuery Noty": "https://ned.im/noty",
402+
"vue-multiselect": "https://vue-multiselect.js.org",
403+
"fastdom": "https://github.com/wilsonpage/fastdom",
404+
"FitText.js": "http://fittextjs.com",
405+
"isomorphic-fetch": "https://github.com/matthew-andrews/isomorphic-fetch",
406+
"wysihtml5": "https://github.com/xing/wysihtml5",
407+
"React DayPicker": "https://react-day-picker.js.org",
408+
"Chance.js": "https://chancejs.com",
409+
"dom-to-image": "https://github.com/tsayen/dom-to-image",
410+
"Choices.js": "https://choices-js.github.io/Choices",
411+
"x-editable": "https://vitalets.github.io/x-editable",
412+
"lozad.js": "https://apoorv.pro/lozad.js",
413+
"Pixelmatch": "https://github.com/mapbox/pixelmatch",
414+
"Keymaster": "https://github.com/madrobby/keymaster",
415+
"Octicons": "https://primer.style/octicons",
416+
"Gitalk": "https://gitalk.github.io",
417+
"SimpleBar": "https://grsmto.github.io/simplebar",
418+
"URI.js": "https://medialize.github.io/URI.js",
419+
"axe-core": "https://github.com/dequelabs/axe-core",
420+
"Sizzle": "https://sizzlejs.com",
421+
"lightbox2": "https://lokeshdhakar.com/projects/lightbox2",
386422
"Jasmine": "https://jasmine.github.io",
387423
"Mocha": "https://mochajs.org",
388424
"Chai": "https://www.chaijs.com",

0 commit comments

Comments
 (0)