diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..8a240b1 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,11 @@ +{ + "requires": true, + "lockfileVersion": 1, + "dependencies": { + "is-valid-domain": { + "version": "0.0.14", + "resolved": "https://registry.npmjs.org/is-valid-domain/-/is-valid-domain-0.0.14.tgz", + "integrity": "sha512-MTUz/3y25zTtutAfwrLyFK+1l2IL4bcq2iHVdYHIPQbvBJLunlYu9dsQdtLwD9HKPDyxCDlKnSbGcRwvjVeCxA==" + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..49e966e --- /dev/null +++ b/package.json @@ -0,0 +1,8 @@ +{ + "dependencies": { + "is-valid-domain": "0.0.14" + }, + "devDependencies": { + "webpack-plugin": "^1.0.5" + } +} diff --git a/prefs/prefs.htm b/prefs/prefs.htm new file mode 100644 index 0000000..c24d481 --- /dev/null +++ b/prefs/prefs.htm @@ -0,0 +1,13 @@ + + + Copy JIRA ID Settings. + + + By default this extension supports jira.com and atlassian.net domains. + You can add your custom domains below for self-hosted JIRA. + If you have multiple domains, you can add them separated by a comma. + + + + + \ No newline at end of file diff --git a/prefs/prefs.js b/prefs/prefs.js new file mode 100644 index 0000000..3037eda --- /dev/null +++ b/prefs/prefs.js @@ -0,0 +1,23 @@ +const isValidDomain = require('is-valid-domain') + + +savePrefs = () => { + const customDomains = document.getElementById("field-custom-domains").value; + const invalidDomains = []; + const validDomains = []; + customDomains.split(',').forEach(domain => { + if(domain.trim() && isValidDomain(domain, {subdomain : true, wildcard: false})){ + validDomains.push(domain); + }else{ + if(domain.trim()){ + invalidDomains.push(domain); + } + } + }); + if(invalidDomains.length){ + + }else{ + saveDomains(validDomains); + } +} + diff --git a/webpack.js b/webpack.js new file mode 100644 index 0000000..e69de29