diff --git a/.eslintignore b/.eslintignore index f6362a2e3..e09212b62 100644 --- a/.eslintignore +++ b/.eslintignore @@ -15,7 +15,9 @@ plugins/* !plugins/talk-plugin-featured-comments !plugins/talk-plugin-sort-newest !plugins/talk-plugin-sort-oldest -!plugins/talk-plugin-sort-most-liked !plugins/talk-plugin-sort-most-replied +!plugins/talk-plugin-sort-most-liked +!plugins/talk-plugin-sort-most-loved +!plugins/talk-plugin-sort-most-respected node_modules diff --git a/.gitignore b/.gitignore index c75ffc78b..3fdb05c89 100644 --- a/.gitignore +++ b/.gitignore @@ -31,7 +31,9 @@ plugins/* !plugins/talk-plugin-featured-comments !plugins/talk-plugin-sort-newest !plugins/talk-plugin-sort-oldest -!plugins/talk-plugin-sort-most-liked !plugins/talk-plugin-sort-most-replied +!plugins/talk-plugin-sort-most-liked +!plugins/talk-plugin-sort-most-loved +!plugins/talk-plugin-sort-most-respected **/node_modules/* diff --git a/plugins.default.json b/plugins.default.json index a4ba0b525..89028dd7d 100644 --- a/plugins.default.json +++ b/plugins.default.json @@ -20,7 +20,7 @@ "talk-plugin-featured-comments", "talk-plugin-sort-newest", "talk-plugin-sort-oldest", - "talk-plugin-sort-most-liked", + "talk-plugin-sort-most-respected", "talk-plugin-sort-most-replied" ] } diff --git a/plugins/talk-plugin-sort-most-liked/client/index.js b/plugins/talk-plugin-sort-most-liked/client/index.js index 36faf7a88..04836df53 100644 --- a/plugins/talk-plugin-sort-most-liked/client/index.js +++ b/plugins/talk-plugin-sort-most-liked/client/index.js @@ -8,7 +8,7 @@ const SortOption = createSortOption( ); /** - * talk-plugin-sort-newest depends on talk-plugin-viewing-options. + * This plugin depends on talk-plugin-viewing-options. */ export default { diff --git a/plugins/talk-plugin-sort-most-loved/client/.babelrc b/plugins/talk-plugin-sort-most-loved/client/.babelrc new file mode 100644 index 000000000..60be246eb --- /dev/null +++ b/plugins/talk-plugin-sort-most-loved/client/.babelrc @@ -0,0 +1,14 @@ +{ + "presets": [ + "es2015" + ], + "plugins": [ + "add-module-exports", + "transform-class-properties", + "transform-decorators-legacy", + "transform-object-assign", + "transform-object-rest-spread", + "transform-async-to-generator", + "transform-react-jsx" + ] +} \ No newline at end of file diff --git a/plugins/talk-plugin-sort-most-loved/client/.eslintrc.json b/plugins/talk-plugin-sort-most-loved/client/.eslintrc.json new file mode 100644 index 000000000..9fe56bd14 --- /dev/null +++ b/plugins/talk-plugin-sort-most-loved/client/.eslintrc.json @@ -0,0 +1,23 @@ +{ + "env": { + "browser": true, + "es6": true, + "mocha": true + }, + "parserOptions": { + "sourceType": "module", + "ecmaFeatures": { + "experimentalObjectRestSpread": true, + "jsx": true + } + }, + "parser": "babel-eslint", + "plugins": [ + "react" + ], + "rules": { + "react/jsx-uses-react": "error", + "react/jsx-uses-vars": "error", + "no-console": ["warn", { "allow": ["warn", "error"] }] + } +} diff --git a/plugins/talk-plugin-sort-most-loved/client/index.js b/plugins/talk-plugin-sort-most-loved/client/index.js new file mode 100644 index 000000000..121a76239 --- /dev/null +++ b/plugins/talk-plugin-sort-most-loved/client/index.js @@ -0,0 +1,19 @@ +import translations from './translations.yml'; +import {createSortOption} from 'plugin-api/beta/client/factories'; +import {t} from 'plugin-api/beta/client/services'; + +const SortOption = createSortOption( + () => t('talk-plugin-sort-most-loved.label'), + {sortBy: 'LOVES', sortOrder: 'DESC'}, +); + +/** + * This plugin depends on talk-plugin-viewing-options. + */ + +export default { + translations, + slots: { + viewingOptionsSort: [SortOption] + } +}; diff --git a/plugins/talk-plugin-sort-most-loved/client/translations.yml b/plugins/talk-plugin-sort-most-loved/client/translations.yml new file mode 100644 index 000000000..095091ac5 --- /dev/null +++ b/plugins/talk-plugin-sort-most-loved/client/translations.yml @@ -0,0 +1,5 @@ +en: + talk-plugin-sort-most-loved: + label: Most loved first +es: + talk-plugin-sort-most-loved: diff --git a/plugins/talk-plugin-sort-most-loved/index.js b/plugins/talk-plugin-sort-most-loved/index.js new file mode 100644 index 000000000..7be35b6b6 --- /dev/null +++ b/plugins/talk-plugin-sort-most-loved/index.js @@ -0,0 +1,2 @@ +module.exports = { +}; diff --git a/plugins/talk-plugin-sort-most-replied/client/index.js b/plugins/talk-plugin-sort-most-replied/client/index.js index 52b837410..bdef73f03 100644 --- a/plugins/talk-plugin-sort-most-replied/client/index.js +++ b/plugins/talk-plugin-sort-most-replied/client/index.js @@ -8,7 +8,7 @@ const SortOption = createSortOption( ); /** - * talk-plugin-sort-newest depends on talk-plugin-viewing-options. + * This plugin depends on talk-plugin-viewing-options. */ export default { diff --git a/plugins/talk-plugin-sort-most-respected/client/.babelrc b/plugins/talk-plugin-sort-most-respected/client/.babelrc new file mode 100644 index 000000000..60be246eb --- /dev/null +++ b/plugins/talk-plugin-sort-most-respected/client/.babelrc @@ -0,0 +1,14 @@ +{ + "presets": [ + "es2015" + ], + "plugins": [ + "add-module-exports", + "transform-class-properties", + "transform-decorators-legacy", + "transform-object-assign", + "transform-object-rest-spread", + "transform-async-to-generator", + "transform-react-jsx" + ] +} \ No newline at end of file diff --git a/plugins/talk-plugin-sort-most-respected/client/.eslintrc.json b/plugins/talk-plugin-sort-most-respected/client/.eslintrc.json new file mode 100644 index 000000000..9fe56bd14 --- /dev/null +++ b/plugins/talk-plugin-sort-most-respected/client/.eslintrc.json @@ -0,0 +1,23 @@ +{ + "env": { + "browser": true, + "es6": true, + "mocha": true + }, + "parserOptions": { + "sourceType": "module", + "ecmaFeatures": { + "experimentalObjectRestSpread": true, + "jsx": true + } + }, + "parser": "babel-eslint", + "plugins": [ + "react" + ], + "rules": { + "react/jsx-uses-react": "error", + "react/jsx-uses-vars": "error", + "no-console": ["warn", { "allow": ["warn", "error"] }] + } +} diff --git a/plugins/talk-plugin-sort-most-respected/client/index.js b/plugins/talk-plugin-sort-most-respected/client/index.js new file mode 100644 index 000000000..762c94a7f --- /dev/null +++ b/plugins/talk-plugin-sort-most-respected/client/index.js @@ -0,0 +1,19 @@ +import translations from './translations.yml'; +import {createSortOption} from 'plugin-api/beta/client/factories'; +import {t} from 'plugin-api/beta/client/services'; + +const SortOption = createSortOption( + () => t('talk-plugin-sort-most-respected.label'), + {sortBy: 'RESPECTS', sortOrder: 'DESC'}, +); + +/** + * This plugin depends on talk-plugin-viewing-options. + */ + +export default { + translations, + slots: { + viewingOptionsSort: [SortOption] + } +}; diff --git a/plugins/talk-plugin-sort-most-respected/client/translations.yml b/plugins/talk-plugin-sort-most-respected/client/translations.yml new file mode 100644 index 000000000..32366dfc5 --- /dev/null +++ b/plugins/talk-plugin-sort-most-respected/client/translations.yml @@ -0,0 +1,5 @@ +en: + talk-plugin-sort-most-respected: + label: Most respected first +es: + talk-plugin-sort-most-respected: diff --git a/plugins/talk-plugin-sort-most-respected/index.js b/plugins/talk-plugin-sort-most-respected/index.js new file mode 100644 index 000000000..7be35b6b6 --- /dev/null +++ b/plugins/talk-plugin-sort-most-respected/index.js @@ -0,0 +1,2 @@ +module.exports = { +}; diff --git a/plugins/talk-plugin-sort-newest/client/index.js b/plugins/talk-plugin-sort-newest/client/index.js index d4979e299..83c20b166 100644 --- a/plugins/talk-plugin-sort-newest/client/index.js +++ b/plugins/talk-plugin-sort-newest/client/index.js @@ -8,7 +8,7 @@ const SortOption = createSortOption( ); /** - * talk-plugin-sort-newest depends on talk-plugin-viewing-options. + * This plugin depends on talk-plugin-viewing-options. */ export default { diff --git a/plugins/talk-plugin-sort-oldest/client/index.js b/plugins/talk-plugin-sort-oldest/client/index.js index a1aac7709..e6a480340 100644 --- a/plugins/talk-plugin-sort-oldest/client/index.js +++ b/plugins/talk-plugin-sort-oldest/client/index.js @@ -8,7 +8,7 @@ const SortOption = createSortOption( ); /** - * talk-plugin-sort-oldest depends on talk-plugin-viewing-options. + * This plugin depends on talk-plugin-viewing-options. */ export default {