Skip to content

Commit b49ec89

Browse files
committed
feat: 补充捐赠筹款识别规则
扩展 SaaS 页面规则,新增 20 个捐赠、筹款和非营利 donation widget 的资源 URL 匹配。 覆盖 Donorbox、Givebutter、Fundraise Up、Classy、GoFundMe Charity、JustGiving、Raisely、Donately、Qgiv、Give Lively、Network for Good、Bloomerang、Kindful、Neon CRM、EveryAction、ActBlue、Anedot、GiveForms、Tiltify 和 DonorPerfect,并补充对应技术链接。 将版本升至 1.1.72。 验证:npx prettier --write .;npx prettier --check .;pnpm run typecheck;pnpm run lint;JSON/正则全量校验;pnpm run build;版本一致性检查;git diff --check。
1 parent 44d0469 commit b49ec89

3 files changed

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

public/rules/page/saas-services-page.json

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3438,6 +3438,96 @@
34383438
}
34393439
]
34403440
},
3441+
{
3442+
"defaults": {
3443+
"kind": "捐赠 / 筹款",
3444+
"matchIn": ["resources"]
3445+
},
3446+
"rules": [
3447+
{
3448+
"name": "Donorbox Widget",
3449+
"patterns": ["donorbox\\.org/(?:widget\\.js|embed)|donorbox\\.org/[^\\s\"'<>]*(?:donate|campaign|checkout)"]
3450+
},
3451+
{
3452+
"name": "Givebutter Donations",
3453+
"patterns": ["widgets\\.givebutter\\.com|givebutter\\.com/[^\\s\"'<>]*(?:embed|widget|campaign|donate|checkout)"]
3454+
},
3455+
{
3456+
"name": "Fundraise Up",
3457+
"patterns": ["cdn\\.fundraiseup\\.com|donate\\.fundraiseup\\.com|fundraiseup\\.com/[^\\s\"'<>]*(?:widget|checkout|donate)"]
3458+
},
3459+
{
3460+
"name": "Classy Fundraising",
3461+
"patterns": ["cdn\\.classy\\.org|classy\\.org/[^\\s\"'<>]*(?:give|campaign|event|checkout|donate)"]
3462+
},
3463+
{
3464+
"name": "GoFundMe Charity",
3465+
"patterns": ["charity\\.gofundme\\.com|gofundme\\.com/[^\\s\"'<>]*(?:charity|donate|fundraising-widget)"]
3466+
},
3467+
{
3468+
"name": "JustGiving",
3469+
"patterns": ["widgets\\.justgiving\\.com|justgiving\\.com/[^\\s\"'<>]*(?:campaign|crowdfunding|fundraising|donation)"]
3470+
},
3471+
{
3472+
"name": "Raisely",
3473+
"patterns": ["cdn\\.raisely\\.com|raisely\\.com/[^\\s\"'<>]*(?:donate|campaign|embed|checkout)"]
3474+
},
3475+
{
3476+
"name": "Donately",
3477+
"patterns": ["cdn\\.donately\\.com|donately\\.com/[^\\s\"'<>]*(?:checkout|donate|embed|campaign)"]
3478+
},
3479+
{
3480+
"name": "Qgiv",
3481+
"patterns": ["secure\\.qgiv\\.com/for/|qgiv\\.com/[^\\s\"'<>]*(?:event|donate|embed|form|widget)"]
3482+
},
3483+
{
3484+
"name": "Give Lively",
3485+
"patterns": ["secure\\.givelively\\.org|givelively\\.org/[^\\s\"'<>]*(?:donate|widget|campaign|checkout)"]
3486+
},
3487+
{
3488+
"name": "Network for Good Donations",
3489+
"patterns": ["networkforgood\\.org/[^\\s\"'<>]*(?:donate|fundraising|donation)|nfg\\.org/[^\\s\"'<>]*(?:donate|fundraising)"]
3490+
},
3491+
{
3492+
"name": "Bloomerang Donation Forms",
3493+
"patterns": [
3494+
"crm\\.bloomerang\\.co/HostedDonation|bloomerang\\.co/HostedDonation|bloomerang\\.com/[^\\s\"'<>]*(?:donation|form|embed)"
3495+
]
3496+
},
3497+
{
3498+
"name": "Kindful Donation Forms",
3499+
"patterns": ["kindful\\.com/[^\\s\"'<>]*(?:register|campaigns|checkout|donate|embeds?)"]
3500+
},
3501+
{
3502+
"name": "Neon CRM Donation Forms",
3503+
"patterns": ["app\\.neoncrm\\.com/np/clients|neoncrm\\.com/np/clients|neonone\\.com/[^\\s\"'<>]*(?:donation|forms|embed)"]
3504+
},
3505+
{
3506+
"name": "EveryAction Forms",
3507+
"patterns": ["secure\\.everyaction\\.com|everyaction\\.com/[^\\s\"'<>]*(?:donate|forms|signup|contribute)"]
3508+
},
3509+
{
3510+
"name": "ActBlue Donations",
3511+
"patterns": ["secure\\.actblue\\.com/(?:donate|contribute)|actblue\\.com/[^\\s\"'<>]*(?:donate|contribute)"]
3512+
},
3513+
{
3514+
"name": "Anedot",
3515+
"patterns": ["secure\\.anedot\\.com|anedot\\.com/[^\\s\"'<>]*(?:donate|embed|campaign|checkout)"]
3516+
},
3517+
{
3518+
"name": "GiveForms",
3519+
"patterns": ["static\\.giveforms\\.com|giveforms\\.com/[^\\s\"'<>]*(?:embed|donate|campaign|checkout)"]
3520+
},
3521+
{
3522+
"name": "Tiltify",
3523+
"patterns": ["tiltify\\.com/[^\\s\"'<>]*(?:campaigns|events|donate|donation|api|@)"]
3524+
},
3525+
{
3526+
"name": "DonorPerfect Forms",
3527+
"patterns": ["donorperfect\\.net/prod/|donorperfect\\.com/[^\\s\"'<>]*(?:donation|forms|embed|online-forms)"]
3528+
}
3529+
]
3530+
},
34413531
{
34423532
"defaults": {
34433533
"kind": "评价 / UGC",

public/tech-links.json

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1856,6 +1856,26 @@
18561856
"MemberSpace": "https://www.memberspace.com",
18571857
"Nas.io Community": "https://nas.io",
18581858
"Teachery": "https://www.teachery.co",
1859+
"Donorbox Widget": "https://donorbox.org",
1860+
"Givebutter Donations": "https://givebutter.com",
1861+
"Fundraise Up": "https://fundraiseup.com",
1862+
"Classy Fundraising": "https://www.classy.org",
1863+
"GoFundMe Charity": "https://www.gofundme.com",
1864+
"JustGiving": "https://www.justgiving.com",
1865+
"Raisely": "https://raisely.com",
1866+
"Donately": "https://donately.com",
1867+
"Qgiv": "https://www.qgiv.com",
1868+
"Give Lively": "https://www.givelively.org",
1869+
"Network for Good Donations": "https://www.networkforgood.com",
1870+
"Bloomerang Donation Forms": "https://bloomerang.co",
1871+
"Kindful Donation Forms": "https://kindful.com",
1872+
"Neon CRM Donation Forms": "https://neonone.com",
1873+
"EveryAction Forms": "https://www.everyaction.com",
1874+
"ActBlue Donations": "https://secure.actblue.com",
1875+
"Anedot": "https://anedot.com",
1876+
"GiveForms": "https://www.giveforms.com",
1877+
"Tiltify": "https://tiltify.com",
1878+
"DonorPerfect Forms": "https://www.donorperfect.com",
18591879
"Trustpilot Widget": "https://www.trustpilot.com",
18601880
"Yotpo Reviews": "https://www.yotpo.com",
18611881
"Judge.me Reviews": "https://judge.me",

0 commit comments

Comments
 (0)