Skip to content

Commit 0c00fa8

Browse files
committed
补充文档与编码库匹配规则
补充文档导出、二维码、条码、压缩和文件保存相关库的本地资源匹配规则。 规则继续优先使用明确发行文件名和包目录,避免依赖页面文本或短词线索。 同步补充技术链接并将版本号提升到 1.3.17。
1 parent 0144ea4 commit 0c00fa8

3 files changed

Lines changed: 100 additions & 2 deletions

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.16",
4+
"version": "1.3.17",
55
"type": "module",
66
"description": "StackPrism 用于检测网页前端、后端、CDN、SaaS、广告营销、统计、登录、支付、网站程序和主题模板线索。",
77
"scripts": {

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

Lines changed: 96 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,45 @@
133133
"name": "qrcode",
134134
"patterns": ["(?:^|/)qrcode(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"]
135135
},
136+
{
137+
"name": "qrcode.react",
138+
"patterns": ["(?:^|/)qrcode\\.react(?:@[^/\\s\"'<>]+)?/.+\\.(?:m?js|cjs)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"]
139+
},
140+
{
141+
"name": "qrcode-generator",
142+
"patterns": [
143+
"(?:^|/)qrcode-generator(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
144+
"(?:^|/)qrcode-generator(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
145+
]
146+
},
147+
{
148+
"name": "html5-qrcode",
149+
"patterns": [
150+
"(?:^|/)html5-qrcode(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
151+
"(?:^|/)html5-qrcode(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
152+
]
153+
},
154+
{
155+
"name": "qr-code-styling",
156+
"patterns": [
157+
"(?:^|/)qr-code-styling(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
158+
"(?:^|/)qr-code-styling(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
159+
]
160+
},
161+
{
162+
"name": "jsbarcode",
163+
"patterns": [
164+
"(?:^|/)[Jj]s[Bb]arcode(?:\\.[a-z0-9_-]+)?(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
165+
"(?:^|/)jsbarcode(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
166+
]
167+
},
168+
{
169+
"name": "bwip-js",
170+
"patterns": [
171+
"(?:^|/)bwip-js(?:-min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
172+
"(?:^|/)bwip-js(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
173+
]
174+
},
136175
{
137176
"name": "jquery.qrcode",
138177
"patterns": ["(?:^|/)jquery\\.qrcode(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"]
@@ -652,27 +691,83 @@
652691
"name": "html2canvas",
653692
"patterns": ["(?:^|/)html2canvas(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"]
654693
},
694+
{
695+
"name": "html-to-image",
696+
"patterns": ["(?:^|/)html-to-image(?:@[^/\\s\"'<>]+)?/.+\\.(?:m?js|cjs)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"]
697+
},
655698
{
656699
"name": "html2pdf.js",
657700
"patterns": ["(?:^|/)html2pdf(?:\\.bundle)?(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"]
658701
},
702+
{
703+
"name": "pdf-lib",
704+
"patterns": [
705+
"(?:^|/)pdf-lib(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
706+
"(?:^|/)pdf-lib(?:@[^/\\s\"'<>]+)?/.+\\.(?:m?js|cjs)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
707+
]
708+
},
709+
{
710+
"name": "canvg",
711+
"patterns": [
712+
"(?:^|/)canvg(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
713+
"(?:^|/)canvg(?:@[^/\\s\"'<>]+)?/.+\\.(?:m?js|cjs)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
714+
]
715+
},
716+
{
717+
"name": "mammoth",
718+
"patterns": [
719+
"(?:^|/)mammoth\\.browser(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
720+
"(?:^|/)mammoth(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
721+
]
722+
},
659723
{
660724
"name": "xlsx",
661725
"patterns": [
662726
"(?:^|/)xlsx(?:\\.full)?(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
663727
"(?:^|/)sheetjs/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
664728
]
665729
},
730+
{
731+
"name": "xlsx-populate",
732+
"patterns": [
733+
"(?:^|/)xlsx-populate(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
734+
"(?:^|/)xlsx-populate(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
735+
]
736+
},
666737
{
667738
"name": "jszip",
668739
"patterns": [
669740
"(?:^|/)jszip(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
670741
"(?:^|/)jszip/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
671742
]
672743
},
744+
{
745+
"name": "pako",
746+
"patterns": [
747+
"(?:^|/)pako(?:\\.deflate|\\.inflate)?(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
748+
"(?:^|/)pako(?:@[^/\\s\"'<>]+)?/.+\\.(?:m?js|cjs)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
749+
]
750+
},
751+
{
752+
"name": "fflate",
753+
"patterns": [
754+
"(?:^|/)fflate(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
755+
"(?:^|/)fflate(?:@[^/\\s\"'<>]+)?/.+\\.(?:m?js|cjs)(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
756+
]
757+
},
673758
{
674759
"name": "FileSaver.js",
675-
"patterns": ["(?:^|/)FileSaver(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"]
760+
"patterns": [
761+
"(?:^|/)(?:FileSaver|file-saver)(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
762+
"(?:^|/)file-saver(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
763+
]
764+
},
765+
{
766+
"name": "StreamSaver.js",
767+
"patterns": [
768+
"(?:^|/)StreamSaver(?:\\.min)?\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)",
769+
"(?:^|/)streamsaver(?:@[^/\\s\"'<>]+)?/.+\\.js(?:[?#][^\\s\"'<>]*)?(?:[\"'<>\\s]|$)"
770+
]
676771
},
677772
{
678773
"name": "highlight.js",

public/tech-links.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,9 @@
5050
"Lunr.js": "https://lunrjs.com",
5151
"Markdoc": "https://markdoc.dev",
5252
"MDX": "https://mdxjs.com",
53+
"qrcode.react": "https://github.com/zpao/qrcode.react",
54+
"qr-code-styling": "https://github.com/kozakdenys/qr-code-styling",
55+
"StreamSaver.js": "https://github.com/jimmywarting/StreamSaver.js",
5356
"ProseMirror": "https://prosemirror.net",
5457
"Slate": "https://www.slatejs.org",
5558
"Tiptap": "https://tiptap.dev",

0 commit comments

Comments
 (0)