0
Fork 0
mirror of https://github.com/logto-io/logto.git synced 2024-12-16 20:26:19 -05:00
logto/packages/connectors
2024-04-17 01:06:33 +00:00
..
connector-alipay-native refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-alipay-web refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-aliyun-dm refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-aliyun-sms refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-apple refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-aws-ses refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-azuread refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-discord refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-facebook refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-feishu-web refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-github refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-google refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-kakao refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-logto-email refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-logto-sms refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-logto-social-demo refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-mailgun refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-mock-email refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-mock-email-alternative refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-mock-sms refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-mock-social refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-naver refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-oauth2 refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-oidc refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-saml refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-sendgrid-email refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-smsaero refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-smtp refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-tencent-sms refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-twilio-sms refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-wechat-native refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-wechat-web refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
connector-wecom refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
templates refactor: remove pnpm script (#5728) 2024-04-17 01:06:33 +00:00
.gitignore refactor: use vitest for connectors (#5562) 2024-03-28 10:21:50 +08:00
README.md refactor: leverage pnpmfile for dependency installation 2023-04-01 20:53:44 +08:00

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.