RegisterService.ts 1.0 KB

1234567891011121314151617181920212223242526272829303132
  1. import { WebClient, LogLevel } from '@slack/web-api';
  2. import { generateInputSectionBlock } from '@growi/slack/src/utils/block-creater';
  3. export const openRegisterModal = async(body:{[key:string]:string}) : Promise<void> => {
  4. // tmp use process.env
  5. const client = new WebClient(process.env.SLACK_BOT_USER_OAUTH_TOKEN, { logLevel: LogLevel.DEBUG });
  6. await client.views.open({
  7. trigger_id: body.trigger_id,
  8. view: {
  9. type: 'modal',
  10. title: {
  11. type: 'plain_text',
  12. text: 'Register Credentials',
  13. },
  14. submit: {
  15. type: 'plain_text',
  16. text: 'Submit',
  17. },
  18. close: {
  19. type: 'plain_text',
  20. text: 'Close',
  21. },
  22. blocks: [
  23. generateInputSectionBlock('growiDomain', 'GROWI domain', 'contents_input', false, 'https://example.com'),
  24. generateInputSectionBlock('growiAccessToken', 'GROWI ACCESS_TOKEN', 'contents_input', false, 'jBMZvpk.....'),
  25. generateInputSectionBlock('proxyToken', 'PROXY ACCESS_TOKEM', 'contents_input', false, 'jBMZvpk.....'),
  26. ],
  27. },
  28. });
  29. };