0
Fork 0
mirror of https://github.com/logto-io/logto.git synced 2025-01-27 21:39:16 -05:00
logto/packages/connectors
2024-01-08 14:45:35 +08:00
..
connector-alipay-native
connector-alipay-web
connector-aliyun-dm chore(connector): remove legacy Test passwordless template type use case (#5205) 2024-01-08 14:45:26 +08:00
connector-aliyun-sms chore(connector): remove legacy Test passwordless template type use case (#5205) 2024-01-08 14:45:26 +08:00
connector-apple
connector-aws-ses chore(connector): remove legacy Test passwordless template type use case (#5205) 2024-01-08 14:45:26 +08:00
connector-azuread
connector-discord
connector-facebook
connector-feishu-web
connector-github
connector-google
connector-kakao
connector-logto-email
connector-logto-sms
connector-logto-social-demo
connector-mailgun
connector-mock-email
connector-mock-email-alternative
connector-mock-sms
connector-mock-social
connector-naver
connector-oauth2
connector-oidc chore(connector): remove unused code (#5200) 2024-01-08 14:45:35 +08:00
connector-saml
connector-sendgrid-email chore(connector): remove legacy Test passwordless template type use case (#5205) 2024-01-08 14:45:26 +08:00
connector-smsaero chore(connector): remove legacy Test passwordless template type use case (#5205) 2024-01-08 14:45:26 +08:00
connector-smtp
connector-tencent-sms chore(connector): remove legacy Test passwordless template type use case (#5205) 2024-01-08 14:45:26 +08:00
connector-twilio-sms chore(connector): remove legacy Test passwordless template type use case (#5205) 2024-01-08 14:45:26 +08:00
connector-wechat-native
connector-wechat-web
templates
.gitignore
README.md

Logto connectors directory

Template syncing

Since all connectors have a same pattern for package.json, here we leverage several techniques to avoid annoying copy-pastes:

When pnpm i

  • The "pnpm:devPreinstall" script in the project root executes templates/sync-preset.js that:
    • Check every connectors's package.json to see if there's any unexpected keys
    • Sync templates/package.json by REPLACING every template key (except dependency keys) in the current package.json with the value from the template package.json
    • Copies all config files to every connector directory
  • The hook in .pnpmfile.cjs of the project root merges dependency fields for every connector
    • Also we can update arbitrary fields in this hook, we still need to keep non-dependency fields in the connector's package.json since the hook only takes affect during pnpm i.

Caution Workspace dependencies should be defined in connector's package.json (not template) in order to let PNPM correctly resolves the workspace dependency tree;

Add a new custom field

Head to templates/sync-preset.js and update allowedCustomKeys.