summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/jetpack/extensions/blocks/publicize/store/selectors.js')
-rw-r--r--plugins/jetpack/extensions/blocks/publicize/store/selectors.js24
1 files changed, 24 insertions, 0 deletions
diff --git a/plugins/jetpack/extensions/blocks/publicize/store/selectors.js b/plugins/jetpack/extensions/blocks/publicize/store/selectors.js
new file mode 100644
index 00000000..db86a4fe
--- /dev/null
+++ b/plugins/jetpack/extensions/blocks/publicize/store/selectors.js
@@ -0,0 +1,24 @@
+/**
+ * Returns the failed Publicize connections.
+ *
+ * @param {Object} state State object.
+ *
+ * @return {Array} List of connections.
+ */
+export function getFailedConnections( state ) {
+ return state.filter( connection => false === connection.test_success );
+}
+
+/**
+ * Returns a list of Publicize connection service names that require reauthentication from users.
+ * iFor example, when LinkedIn switched its API from v1 to v2.
+ *
+ * @param {Object} state State object.
+ *
+ * @return {Array} List of service names that need reauthentication.
+ */
+export function getMustReauthConnections( state ) {
+ return state
+ .filter( connection => 'must_reauth' === connection.test_success )
+ .map( connection => connection.service_name );
+}