commit
8d98d7ec61
@ -1,57 +0,0 @@
|
||||
# name: Build and publish release package
|
||||
|
||||
# on:
|
||||
# release:
|
||||
# types: [created]
|
||||
|
||||
|
||||
# jobs:
|
||||
# build-and-publish-release-package:
|
||||
# runs-on: ubuntu-latest
|
||||
|
||||
# steps:
|
||||
# - uses: actions/checkout@v4
|
||||
# - uses: actions/setup-node@v3
|
||||
# with:
|
||||
# node-version: '18'
|
||||
# cache: 'npm'
|
||||
|
||||
# - name: Workflow install pnpm
|
||||
# run: npm install pnpm -g
|
||||
|
||||
# - name: Client install dependencies
|
||||
# run: pnpm install
|
||||
|
||||
# - name: Server install dependencies
|
||||
# run: pnpm install
|
||||
|
||||
# - name: Server include into dist
|
||||
# run: mv server/ dist/
|
||||
|
||||
# - name: Client build production
|
||||
# run: |
|
||||
# npm run build
|
||||
# working-directory: ./client
|
||||
|
||||
# - name: Client include into dist
|
||||
# run: |
|
||||
# mv build/index.html ../dist/views/index.ejs
|
||||
# mv build/* ../dist/public/
|
||||
# working-directory: ./client
|
||||
|
||||
# - name: Dist include README.md SECURITY.md LICENSE start.sh
|
||||
# run: mv README.md SECURITY.md LICENSE start.sh dist/
|
||||
|
||||
# - name: Dist Remove node modules
|
||||
# run: rm -R dist/node_modules
|
||||
|
||||
# - name: Dist create .zip file
|
||||
# run: |
|
||||
# mv dist/ planka/
|
||||
# zip -r planka-prebuild-${{ github.event.release.tag_name }}.zip planka
|
||||
|
||||
# - name: Dist upload assets
|
||||
# run: |
|
||||
# gh release upload ${{ github.event.release.tag_name }} planka-prebuild-${{ github.event.release.tag_name }}.zip
|
||||
# env:
|
||||
# GH_TOKEN: ${{ github.token }}
|
||||
@ -0,0 +1,14 @@
|
||||
{
|
||||
// Use IntelliSense to learn about possible attributes.
|
||||
// Hover to view descriptions of existing attributes.
|
||||
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
{
|
||||
"command": "npm start",
|
||||
"name": "Run npm start",
|
||||
"request": "launch",
|
||||
"type": "node-terminal"
|
||||
}
|
||||
]
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,26 @@
|
||||
const { sendEmail } = require('../../../utils/mail');
|
||||
|
||||
module.exports = {
|
||||
inputs: {
|
||||
to: {
|
||||
type: 'json',
|
||||
required: false,
|
||||
},
|
||||
subject: {
|
||||
type: 'string',
|
||||
required: false,
|
||||
},
|
||||
text: {
|
||||
type: 'string',
|
||||
required: false,
|
||||
},
|
||||
cc: {
|
||||
type: 'json',
|
||||
required: false,
|
||||
},
|
||||
},
|
||||
async fn({ to = [], subject = '', text = '', cc = [] }) {
|
||||
const mailResult = await sendEmail({ to, subject, text, cc });
|
||||
return mailResult;
|
||||
},
|
||||
};
|
||||
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,36 @@
|
||||
const nodemailer = require('nodemailer');
|
||||
|
||||
const mailerConfig = {
|
||||
host: sails.config.custom.mailConnectorHost,
|
||||
port: sails.config.custom.mailConnectorPort,
|
||||
};
|
||||
if (sails.config.custom.mailConnectorUser) {
|
||||
Object.assign(mailerConfig, {
|
||||
auth: {
|
||||
user: sails.config.custom.mailConnectorUser,
|
||||
pass: sails.config.custom.mailConnectorPass,
|
||||
},
|
||||
});
|
||||
}
|
||||
const transport = nodemailer.createTransport(mailerConfig);
|
||||
|
||||
const sendEmail = async ({ to, subject, text, cc }) => {
|
||||
try {
|
||||
await transport.sendMail({
|
||||
from: sails.config.custom.mailConnectorEmail,
|
||||
to,
|
||||
cc,
|
||||
subject,
|
||||
html: text,
|
||||
});
|
||||
} catch (e) {
|
||||
sails.log(e);
|
||||
}
|
||||
};
|
||||
|
||||
const sendUserEmails = async ({ ids, subject, text, cc }) => {
|
||||
const users = await sails.helpers.users.getMany(ids);
|
||||
return sendEmail({ to: users.map((u) => u.email), subject, text, cc });
|
||||
};
|
||||
|
||||
module.exports = { sendEmail, sendUserEmails };
|
||||
Loading…
Reference in New Issue