+
Skip to content

01 fulfillment base #6570

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 34 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
8bfaf15
feat: initial commit fulfillment base
sujithvn Oct 17, 2022
4eb2ee8
feat: initial commit fulfillment base
sujithvn Oct 17, 2022
747c633
Merge remote-tracking branch 'origin/01-fulfillment-base' into 01-ful…
sujithvn Oct 18, 2022
7bf42e6
fix: pnpm-lock
sujithvn Oct 18, 2022
25aaed2
fix: to generate function name in camel-case
sujithvn Oct 19, 2022
7d0fea9
feat: createFFType test
sujithvn Oct 24, 2022
a87d6f4
feat: ff-type tests
sujithvn Oct 24, 2022
cb3e9a3
fix: review comment fixes
sujithvn Oct 26, 2022
d496857
fix: removed string concatenation logic
sujithvn Oct 27, 2022
349e1cd
fix: use queries.getCartById delete /util version
sujithvn Oct 28, 2022
f7a8aae
fix: updateSurcharge returns the entire document from db
sushmitha-malae Oct 19, 2022
d4853d0
moved jest process env to a separate file
Oct 17, 2022
1451b40
fix: updated gitignore
Oct 18, 2022
c1f1234
fix: fixed lint error
Oct 18, 2022
a26cb3c
fix: empty commit to re-trigger build
Oct 18, 2022
12d44eb
docs: Fix typo for node version manager
pduvvur Oct 18, 2022
b14a752
fix: allow restrictions on nested properties
Oct 19, 2022
61002e1
fix: add lock file, tests and changeset
range123 Oct 20, 2022
82be516
chore: remove yalc example file
brent-hoover Oct 20, 2022
3cbe960
feat: change reaction dependencies version
vanpho93 Oct 21, 2022
870820b
feat: update lock file
vanpho93 Oct 21, 2022
8100fa1
Version Packages
github-actions[bot] Oct 21, 2022
1eb6b07
feat: update pnpm-lock
Oct 21, 2022
599cd13
feat: add replaceOne to mockCollection
tuanvu0995 Oct 24, 2022
b0425c6
Create shaggy-feet-look.md
tuanvu0995 Oct 24, 2022
f0a0fa7
Update shaggy-feet-look.md
tuanvu0995 Oct 25, 2022
b5ab314
feat: change changeset message
tuanvu0995 Oct 25, 2022
b2cc11b
Create SECURITY.md
brent-hoover Oct 27, 2022
10e623f
Update SECURITY.md
brent-hoover Oct 28, 2022
9a6c933
Version Packages
github-actions[bot] Oct 28, 2022
dab552c
feat: update pnpm-lock
Oct 28, 2022
1d04e2d
fix: issue copy release from reaction@4.x.x to v4.x.x
vanpho93 Oct 24, 2022
5996940
update docs to remove references to semantic release
Oct 28, 2022
36b7a5c
fix: fixed broken test
sujithvn Oct 31, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 0 additions & 5 deletions .changeset/awaited-recursive-createHandle-call.md

This file was deleted.

2 changes: 1 addition & 1 deletion .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,4 +26,4 @@ Note any work that you did to mitigate the effect of any breaking changes such a
2. Assume that testers already know how to start the app, and do the basic setup tasks.
3. Be detailed enough that someone can work through it without being too granular

More detail for what each of these sections should include are available in our [Contributing Docs](CONTRIBUTING.md). This project uses [semantic-release](https://semantic-release.gitbook.io/semantic-release/), please use their [commit message format.](https://semantic-release.gitbook.io/semantic-release/#commit-message-format).
More detail for what each of these sections should include are available in our [Contributing Docs](CONTRIBUTING.md).
53 changes: 24 additions & 29 deletions .github/workflows/tagging-and-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@ jobs:
run: |
git config --global user.name "$(git --no-pager log --format=format:'%an' -n 1)"
git config --global user.email "$(git --no-pager log --format=format:'%ae' -n 1)"

- name: Use Node.js 14.x
uses: actions/setup-node@v2
with:
Expand All @@ -32,58 +31,54 @@ jobs:
run: |
npm i -g pnpm@latest
pnpm install -r --ignore-scripts

- name: Release apps and packages
uses: changesets/action@v1
with:
publish: pnpm changeset tag
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Get tag version
id: get-tag-version
run: |
VERSION=$(cat ./apps/reaction/package.json | grep -m 1 version | sed 's/[^0-9.]//g')
REACTION_APP_NEW_TAG=v$VERSION
echo "REACTION_APP_NEW_TAG=$REACTION_APP_NEW_TAG" >> $GITHUB_ENV
echo '::set-output name=newTag::'$REACTION_APP_NEW_TAG
echo '::set-output name=version::'$VERSION
echo "New release tag is $REACTION_APP_NEW_TAG"

- name: Check should create release tag
- name: Check should create release
id: should-create-tag
run: |
if [ $(git tag -l "$REACTION_APP_NEW_TAG") ]; then
echo '::set-output name=REACTION_APP_TAG_EXISTS::true'
else
echo '::set-output name=REACTION_APP_TAG_EXISTS::false'
fi

- name: Create release tag
- name: Release apps and packages
if: steps.should-create-tag.outputs.REACTION_APP_TAG_EXISTS == 'false'
run: |
git tag -a $REACTION_APP_NEW_TAG -m "chore(release): $REACTION_APP_NEW_TAG [skip ci]"
git push origin $REACTION_APP_NEW_TAG
echo "Create release tag success: $REACTION_APP_NEW_TAG"

- name: Push release tag
run: git push origin $REACTION_APP_NEW_TAG
uses: changesets/action@v1
with:
publish: pnpm changeset tag
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Extract release notes
if: steps.should-create-tag.outputs.REACTION_APP_TAG_EXISTS == 'false'
id: extract-release-notes
uses: ffurrer2/extract-release-notes@v1
uses: cardinalby/git-get-release-action@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
changelog_file: apps/reaction/CHANGELOG.md
tag: "reaction@${{ steps.get-tag-version.outputs.version }}"
doNotFailIfNotFound: true

- name: Create tag
if: steps.extract-release-notes.outputs.body != ''
run: |
git tag -a $REACTION_APP_NEW_TAG -m "chore(release): $REACTION_APP_NEW_TAG [skip ci]"
git push origin $REACTION_APP_NEW_TAG
echo "Create tag success: $REACTION_APP_NEW_TAG"

- name: Create Release
id: create_release
if: steps.should-create-tag.outputs.REACTION_APP_TAG_EXISTS == 'false'
uses: actions/create-release@latest
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token
if: steps.extract-release-notes.outputs.body != ''
uses: softprops/action-gh-release@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
body: ${{ steps.extract-release-notes.outputs.body }}
tag_name: ${{ steps.get-tag-version.outputs.newTag }}
release_name: ${{ steps.get-tag-version.outputs.newTag }}
body: ${{ steps.extract-release-notes.outputs.release_notes }}
draft: false
prerelease: false
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -79,3 +79,4 @@ yalc-packages

# Build
dist
.idea
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ To start working with your own project built on Mailchimp Open Commerce you can
the quickest and easiest way to develop on Open Commerce. It allows you to create and work with API, Admin, and Storefront projects all via the command line.

## What you need
- We recommend installing [nmv](https://github.com/nvm-sh/nvm)
- We recommend installing [nvm](https://github.com/nvm-sh/nvm)
- [14.18.1 ≤ Node version < 16](https://nodejs.org/ja/blog/release/v14.18.1/)
- [Git](https://git-scm.com/)
- [Docker](https://www.docker.com/get-started/)
Expand Down
16 changes: 16 additions & 0 deletions SECURITY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Security Policy

## Supported Versions

These are the versions currently supported with security updates.

| Version | Supported |
| ------- | ------------------ |
| 4.x.x | :white_check_mark: |
| < 4.0 | :x: |

## Reporting a Vulnerability

Should you discover a vulnerability, you should not open an issue. Please email
[hello-open-commerce@mailchimp.com](mailto:hello-open-commerce@mailchimp.com). We will work with you directly
and correct the vulnerability and then make an announcement once a release is available.
16 changes: 16 additions & 0 deletions apps/reaction/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,21 @@
# reaction

## 4.2.5

### Patch Changes

- Updated dependencies [[`8c5645764`](https://github.com/reactioncommerce/reaction/commit/8c5645764a746ce4171747072eacfe87bf62abe3), [`bb93339fb`](https://github.com/reactioncommerce/reaction/commit/bb93339fb4da5b1cb131a9e0bf50e502433d519d)]:
- @reactioncommerce/api-utils@1.17.0
- @reactioncommerce/api-plugin-surcharges@1.1.8

## 4.2.4

### Patch Changes

- Updated dependencies [[`b48825c43`](https://github.com/reactioncommerce/reaction/commit/b48825c43f1d72347e2173cf09c1a363638ae173), [`769c2185b`](https://github.com/reactioncommerce/reaction/commit/769c2185b8bb39bc0a3682b37ac8efd16aa77712)]:
- @reactioncommerce/api-plugin-products@1.3.1
- @reactioncommerce/api-plugin-shipments-flat-rate@1.0.10

## 4.2.3

### Patch Changes
Expand Down
92 changes: 46 additions & 46 deletions apps/reaction/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "reaction",
"version": "4.2.3",
"version": "4.2.5",
"description": "Reaction is a modern reactive, real-time event driven ecommerce platform.",
"main": "./src/index.js",
"type": "module",
Expand All @@ -20,51 +20,51 @@
"url": "https://github.com/reactioncommerce/reaction/issues"
},
"dependencies": {
"@reactioncommerce/api-core": "^2.0.0",
"@reactioncommerce/api-plugin-accounts": "^2.0.0",
"@reactioncommerce/api-plugin-address-validation": "^1.3.1",
"@reactioncommerce/api-plugin-address-validation-test": "^1.0.3",
"@reactioncommerce/api-plugin-authentication": "^2.2.3",
"@reactioncommerce/api-plugin-authorization-simple": "^1.3.1",
"@reactioncommerce/api-plugin-carts": "^1.2.4",
"@reactioncommerce/api-plugin-catalogs": "^1.1.2",
"@reactioncommerce/api-plugin-discounts": "^1.0.1",
"@reactioncommerce/api-plugin-discounts-codes": "^1.2.0",
"@reactioncommerce/api-plugin-email": "^1.1.0",
"@reactioncommerce/api-plugin-email-smtp": "^1.0.5",
"@reactioncommerce/api-plugin-email-templates": "^1.1.1",
"@reactioncommerce/api-plugin-files": "^1.0.19",
"@reactioncommerce/api-plugin-i18n": "^1.0.4",
"@reactioncommerce/api-plugin-inventory": "^1.0.3",
"@reactioncommerce/api-plugin-inventory-simple": "^1.0.4",
"@reactioncommerce/api-plugin-job-queue": "^1.0.2",
"@reactioncommerce/api-plugin-navigation": "^1.1.1",
"@reactioncommerce/api-plugin-notifications": "^1.1.0",
"@reactioncommerce/api-plugin-orders": "^1.4.2",
"@reactioncommerce/api-plugin-payments": "^1.0.1",
"@reactioncommerce/api-plugin-payments-example": "^1.1.1",
"@reactioncommerce/api-plugin-payments-stripe-sca": "^1.0.2",
"@reactioncommerce/api-plugin-pricing-simple": "^1.0.3",
"@reactioncommerce/api-plugin-products": "^1.0.2",
"@reactioncommerce/api-plugin-settings": "^1.0.2",
"@reactioncommerce/api-plugin-shipments": "^1.0.1",
"@reactioncommerce/api-plugin-shipments-flat-rate": "^1.0.4",
"@reactioncommerce/api-plugin-shops": "^1.2.1",
"@reactioncommerce/api-plugin-simple-schema": "^1.0.3",
"@reactioncommerce/api-plugin-sitemap-generator": "^1.2.2",
"@reactioncommerce/api-plugin-surcharges": "^1.1.7",
"@reactioncommerce/api-plugin-system-information": "^1.1.3",
"@reactioncommerce/api-plugin-tags": "^1.1.1",
"@reactioncommerce/api-plugin-taxes": "^1.1.1",
"@reactioncommerce/api-plugin-taxes-flat-rate": "^1.0.4",
"@reactioncommerce/api-plugin-translations": "^1.2.0",
"@reactioncommerce/api-utils": "^1.16.5",
"@reactioncommerce/db-version-check": "^1.0.0",
"@reactioncommerce/file-collections": "^0.9.3",
"@reactioncommerce/file-collections-sa-gridfs": "^0.1.5",
"@reactioncommerce/logger": "^1.1.3",
"@reactioncommerce/nodemailer": "^5.0.5",
"@reactioncommerce/random": "^1.0.2",
"@reactioncommerce/api-core": "2.0.1",
"@reactioncommerce/api-plugin-accounts": "2.0.4",
"@reactioncommerce/api-plugin-address-validation": "1.3.3",
"@reactioncommerce/api-plugin-address-validation-test": "1.0.3",
"@reactioncommerce/api-plugin-authentication": "2.2.5",
"@reactioncommerce/api-plugin-authorization-simple": "1.3.2",
"@reactioncommerce/api-plugin-carts": "1.3.5",
"@reactioncommerce/api-plugin-catalogs": "1.1.2",
"@reactioncommerce/api-plugin-discounts": "1.0.4",
"@reactioncommerce/api-plugin-discounts-codes": "1.2.4",
"@reactioncommerce/api-plugin-email": "1.1.5",
"@reactioncommerce/api-plugin-email-smtp": "1.0.8",
"@reactioncommerce/api-plugin-email-templates": "1.1.7",
"@reactioncommerce/api-plugin-files": "1.0.19",
"@reactioncommerce/api-plugin-i18n": "1.0.6",
"@reactioncommerce/api-plugin-inventory": "1.0.5",
"@reactioncommerce/api-plugin-inventory-simple": "1.0.6",
"@reactioncommerce/api-plugin-job-queue": "1.0.7",
"@reactioncommerce/api-plugin-navigation": "1.1.2",
"@reactioncommerce/api-plugin-notifications": "1.1.4",
"@reactioncommerce/api-plugin-orders": "1.4.5",
"@reactioncommerce/api-plugin-payments": "1.0.5",
"@reactioncommerce/api-plugin-payments-example": "1.1.2",
"@reactioncommerce/api-plugin-payments-stripe-sca": "1.0.2",
"@reactioncommerce/api-plugin-pricing-simple": "1.0.7",
"@reactioncommerce/api-plugin-products": "1.3.1",
"@reactioncommerce/api-plugin-settings": "1.0.7",
"@reactioncommerce/api-plugin-shipments": "1.0.3",
"@reactioncommerce/api-plugin-shipments-flat-rate": "1.0.10",
"@reactioncommerce/api-plugin-shops": "1.3.0",
"@reactioncommerce/api-plugin-simple-schema": "1.0.3",
"@reactioncommerce/api-plugin-sitemap-generator": "1.2.3",
"@reactioncommerce/api-plugin-surcharges": "1.1.8",
"@reactioncommerce/api-plugin-system-information": "1.1.4",
"@reactioncommerce/api-plugin-tags": "1.2.0",
"@reactioncommerce/api-plugin-taxes": "1.1.3",
"@reactioncommerce/api-plugin-taxes-flat-rate": "1.0.8",
"@reactioncommerce/api-plugin-translations": "1.2.2",
"@reactioncommerce/api-utils": "1.17.0",
"@reactioncommerce/db-version-check": "1.0.0",
"@reactioncommerce/file-collections": "0.9.3",
"@reactioncommerce/file-collections-sa-gridfs": "0.1.5",
"@reactioncommerce/logger": "1.1.5",
"@reactioncommerce/nodemailer": "5.0.5",
"@reactioncommerce/random": "1.0.2",
"@snyk/protect": "latest",
"graphql": "~14.7.0",
"semver": "~6.3.0",
Expand Down
6 changes: 6 additions & 0 deletions apps/reaction/tests/util/jestProcessEnv.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"MAIL_URL": "smtp://user:pass@email-smtp.us-west-2.amazonaws.com:465",
"REACTION_LOG_LEVEL": "ERROR",
"REACTION_WORKERS_ENABLED": false
}

8 changes: 4 additions & 4 deletions apps/reaction/tests/util/setupJestTests.js
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
/* eslint-disable no-undef */
import { createRequire } from "module";

require("../../src/checkNodeVersion.cjs");
const require = createRequire(import.meta.url);
const jestProcessEnv = require("./jestProcessEnv.json");

process.env = Object.assign(process.env, {
MAIL_URL: "smtp://user:pass@email-smtp.us-west-2.amazonaws.com:465",
REACTION_LOG_LEVEL: "ERROR",
REACTION_WORKERS_ENABLED: false
...jestProcessEnv
});

process.on("unhandledRejection", (err) => {
Expand Down
38 changes: 0 additions & 38 deletions apps/reaction/yalc-packages.example

This file was deleted.

1 change: 0 additions & 1 deletion packages/api-plugin-address-validation-test/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

[![npm (scoped)](https://img.shields.io/npm/v/@reactioncommerce/api-plugin-address-validation-test.svg)](https://www.npmjs.com/package/@reactioncommerce/api-plugin-address-validation-test)
[![CircleCI](https://circleci.com/gh/reactioncommerce/api-plugin-address-validation-test.svg?style=svg)](https://circleci.com/gh/reactioncommerce/api-plugin-address-validation-test)
[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)

## Summary

Expand Down
1 change: 0 additions & 1 deletion packages/api-plugin-address-validation/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

[![npm (scoped)](https://img.shields.io/npm/v/@reactioncommerce/api-plugin-address-validation.svg)](https://www.npmjs.com/package/@reactioncommerce/api-plugin-address-validation)
[![CircleCI](https://circleci.com/gh/reactioncommerce/api-plugin-address-validation.svg?style=svg)](https://circleci.com/gh/reactioncommerce/api-plugin-address-validation)
[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)

## Summary

Expand Down
1 change: 0 additions & 1 deletion packages/api-plugin-authentication/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

[![npm (scoped)](https://img.shields.io/npm/v/@reactioncommerce/api-plugin-authentication.svg)](https://www.npmjs.com/package/@reactioncommerce/api-plugin-authentication)
[![CircleCI](https://circleci.com/gh/reactioncommerce/api-plugin-authentication.svg?style=svg)](https://circleci.com/gh/reactioncommerce/api-plugin-authentication)
[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)

## Summary

Expand Down
1 change: 0 additions & 1 deletion packages/api-plugin-authorization-simple/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

[![npm (scoped)](https://img.shields.io/npm/v/@reactioncommerce/api-plugin-authorization-simple.svg)](https://www.npmjs.com/package/@reactioncommerce/api-plugin-authorization-simple)
[![CircleCI](https://circleci.com/gh/reactioncommerce/api-plugin-authorization-simple.svg?style=svg)](https://circleci.com/gh/reactioncommerce/api-plugin-authorization-simple)
[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)

## Summary

Expand Down
1 change: 0 additions & 1 deletion packages/api-plugin-carts/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

[![npm (scoped)](https://img.shields.io/npm/v/@reactioncommerce/api-plugin-carts.svg)](https://www.npmjs.com/package/@reactioncommerce/api-plugin-carts)
[![CircleCI](https://circleci.com/gh/reactioncommerce/api-plugin-carts.svg?style=svg)](https://circleci.com/gh/reactioncommerce/api-plugin-carts)
[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)

## Summary

Expand Down
1 change: 0 additions & 1 deletion packages/api-plugin-catalogs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

[![npm (scoped)](https://img.shields.io/npm/v/@reactioncommerce/api-plugin-catalogs.svg)](https://www.npmjs.com/package/@reactioncommerce/api-plugin-catalogs)
[![CircleCI](https://circleci.com/gh/reactioncommerce/api-plugin-catalogs.svg?style=svg)](https://circleci.com/gh/reactioncommerce/api-plugin-catalogs)
[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)

## Summary

Expand Down
1 change: 0 additions & 1 deletion packages/api-plugin-discounts-codes/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

[![npm (scoped)](https://img.shields.io/npm/v/@reactioncommerce/api-plugin-discounts-codes.svg)](https://www.npmjs.com/package/@reactioncommerce/api-plugin-discounts-codes)
[![CircleCI](https://circleci.com/gh/reactioncommerce/api-plugin-discounts-codes.svg?style=svg)](https://circleci.com/gh/reactioncommerce/api-plugin-discounts-codes)
[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)

## Summary

Expand Down
1 change: 0 additions & 1 deletion packages/api-plugin-discounts/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

[![npm (scoped)](https://img.shields.io/npm/v/@reactioncommerce/api-plugin-discounts.svg)](https://www.npmjs.com/package/@reactioncommerce/api-plugin-discounts)
[![CircleCI](https://circleci.com/gh/reactioncommerce/api-plugin-discounts.svg?style=svg)](https://circleci.com/gh/reactioncommerce/api-plugin-discounts)
[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)

## Summary

Expand Down
1 change: 0 additions & 1 deletion packages/api-plugin-email-smtp/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

[![npm (scoped)](https://img.shields.io/npm/v/@reactioncommerce/api-plugin-email-smtp.svg)](https://www.npmjs.com/package/@reactioncommerce/api-plugin-email-smtp)
[![CircleCI](https://circleci.com/gh/reactioncommerce/api-plugin-email-smtp.svg?style=svg)](https://circleci.com/gh/reactioncommerce/api-plugin-email-smtp)
[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)

## Summary

Expand Down
Loading
点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载