Parcourir la source

Create web extension legacy to publish manifest v2 web extension

Firefox doesn't support manisfest v3 until version 109
tags/web-extension-v9.6.9
Guillaume Vincent il y a 1 an
Parent
révision
db761a25f6
26 fichiers modifiés avec 2950 ajouts et 5 suppressions
  1. +2
    -1
      bin/RELEASE.md
  2. +24
    -2
      bin/bump_version.py
  3. +1
    -1
      packages/lesspass-site/package.json
  4. +1
    -0
      packages/lesspass-web-extension-legacy/.gitignore
  5. +30
    -0
      packages/lesspass-web-extension-legacy/amo.md
  6. BIN
      packages/lesspass-web-extension-legacy/extension/dist/favicon.ico
  7. BIN
      packages/lesspass-web-extension-legacy/extension/dist/fonts/fontawesome-webfont.674f50d2.eot
  8. BIN
      packages/lesspass-web-extension-legacy/extension/dist/fonts/fontawesome-webfont.af7ae505.woff2
  9. BIN
      packages/lesspass-web-extension-legacy/extension/dist/fonts/fontawesome-webfont.b06871f2.ttf
  10. BIN
      packages/lesspass-web-extension-legacy/extension/dist/fonts/fontawesome-webfont.fee66e71.woff
  11. +2671
    -0
      packages/lesspass-web-extension-legacy/extension/dist/img/fontawesome-webfont.912ec66d.svg
  12. +12
    -0
      packages/lesspass-web-extension-legacy/extension/dist/index.html
  13. +12
    -0
      packages/lesspass-web-extension-legacy/extension/dist/lesspass.min.css
  14. +31
    -0
      packages/lesspass-web-extension-legacy/extension/dist/lesspass.min.js
  15. +1
    -0
      packages/lesspass-web-extension-legacy/extension/dist/lesspass.min.js.map
  16. BIN
      packages/lesspass-web-extension-legacy/extension/icons/icon-128x128.png
  17. +45
    -0
      packages/lesspass-web-extension-legacy/extension/icons/loading.svg
  18. BIN
      packages/lesspass-web-extension-legacy/extension/icons/logo-32.png
  19. BIN
      packages/lesspass-web-extension-legacy/extension/icons/logo-64.png
  20. BIN
      packages/lesspass-web-extension-legacy/extension/icons/logo.png
  21. +33
    -0
      packages/lesspass-web-extension-legacy/extension/manifest.json
  22. +26
    -0
      packages/lesspass-web-extension-legacy/extension/popup.html
  23. +7
    -0
      packages/lesspass-web-extension-legacy/extension/popup.js
  24. +22
    -0
      packages/lesspass-web-extension-legacy/package.json
  25. +31
    -0
      packages/lesspass-web-extension-legacy/policy.md
  26. +1
    -1
      packages/lesspass-web-extension/package.json

+ 2
- 1
bin/RELEASE.md Voir le fichier

@@ -7,4 +7,5 @@

python3 bin/bump_version.py lesspass-web-extension --patch
git push --tags origin main
yarn workspace lesspass-web-extension release
yarn workspace lesspass-web-extension release:cws
yarn workspace lesspass-web-extension-legacy release:amo

+ 24
- 2
bin/bump_version.py Voir le fichier

@@ -8,8 +8,8 @@ root_path = os.path.dirname(os.path.dirname(os.path.realpath(__file__)))

def usage():
script_name = os.path.basename(__file__)
print(f"Example: python {script_name} lesspass-web-extension patch")
print(f"Example: python {script_name} lesspass-site patch")
print(f"Example: python {script_name} lesspass-web-extension --patch")
print(f"Example: python {script_name} lesspass-site --patch")
sys.exit(1)


@@ -85,13 +85,35 @@ if __name__ == "__main__":
)
version = get_package_version(package)
if package == "lesspass-web-extension":
subprocess.run(
[
"yarn",
"workspace",
"lesspass-web-extension-legacy",
"version",
f"--{bump}",
"--no-git-tag-version",
"--no-commit-hooks",
]
)
set_version(
os.path.join(root_path, "packages", package, "extension", "manifest.json"),
version,
)
set_version(
os.path.join(
root_path,
"packages",
"lesspass-web-extension-legacy",
"extension",
"manifest.json",
),
version,
)
subprocess.run(["yarn", "workspace", "lesspass-crypto", "build"])
subprocess.run(["yarn", "workspace", "lesspass-pure", "build"])
subprocess.run(["yarn", "workspace", "lesspass-web-extension", "build"])
subprocess.run(["yarn", "workspace", "lesspass-web-extension-legacy", "build"])
subprocess.run(["git", "add", "."])
tag = f"{package_short_name}-v{version}"
subprocess.run(["git", "commit", "-a", "-m", tag])


+ 1
- 1
packages/lesspass-site/package.json Voir le fichier

@@ -12,7 +12,7 @@
},
"dependencies": {
"express": "^4.17.1",
"lesspass-pure": "^10.0.0"
"lesspass-pure": "^10.0.1"
},
"devDependencies": {
"favicons": "^6.2.1",


+ 1
- 0
packages/lesspass-web-extension-legacy/.gitignore Voir le fichier

@@ -0,0 +1 @@
build/

+ 30
- 0
packages/lesspass-web-extension-legacy/amo.md Voir le fichier

@@ -0,0 +1,30 @@
# LessPass Web Extension Legacy

## Verify the web extension

The web extension is just a wrapper around lesspass-pure node module.
Source file correspond to the zip downloaded on http://github.com/lesspass/lesspass/archive/${sha256}.zip.
{sha256} is the git sha256 use when build was done.

## requirements

To rebuild the web extension, you need node, yarn and md5sum to check the md5 sum of the files

Tested with:

* node version 16.10.0
* yarn version 1.22.11
* md5sum (GNU coreutils) version 8.32

## unzip source {sha256}.zip

unzip {sha256}.zip -d /tmp
cd /tmp/lesspass-{sha256}

## Reproduce lesspass.min.js and dist folder with sources

yarn install
yarn workspace lesspass-crypto build
yarn workspace lesspass-pure build
find packages/lesspass-web-extension-legacy/extension/dist/ -type f -exec md5sum {} \;
find packages/lesspass-pure/dist -type f -exec md5sum {} \;

BIN
packages/lesspass-web-extension-legacy/extension/dist/favicon.ico Voir le fichier

Avant Après

BIN
packages/lesspass-web-extension-legacy/extension/dist/fonts/fontawesome-webfont.674f50d2.eot Voir le fichier


BIN
packages/lesspass-web-extension-legacy/extension/dist/fonts/fontawesome-webfont.af7ae505.woff2 Voir le fichier


BIN
packages/lesspass-web-extension-legacy/extension/dist/fonts/fontawesome-webfont.b06871f2.ttf Voir le fichier


BIN
packages/lesspass-web-extension-legacy/extension/dist/fonts/fontawesome-webfont.fee66e71.woff Voir le fichier


+ 2671
- 0
packages/lesspass-web-extension-legacy/extension/dist/img/fontawesome-webfont.912ec66d.svg
Fichier diff supprimé car celui-ci est trop grand
Voir le fichier


+ 12
- 0
packages/lesspass-web-extension-legacy/extension/dist/index.html Voir le fichier

@@ -0,0 +1,12 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="/favicon.ico"><title>LessPass</title><style>div.center {
max-width: 420px;
display: block;
margin-left: auto;
margin-right: auto;
}

@media (min-width: 544px) {
#lesspass {
margin-top: 3em;
}
}</style><link href="/lesspass.min.css" rel="preload" as="style"><link href="/lesspass.min.js" rel="preload" as="script"><link href="/lesspass.min.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but LessPass doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div class="center lesspass--full-width"><div id="lesspass"></div></div><script src="/lesspass.min.js"></script></body></html>

+ 12
- 0
packages/lesspass-web-extension-legacy/extension/dist/lesspass.min.css
Fichier diff supprimé car celui-ci est trop grand
Voir le fichier


+ 31
- 0
packages/lesspass-web-extension-legacy/extension/dist/lesspass.min.js
Fichier diff supprimé car celui-ci est trop grand
Voir le fichier


+ 1
- 0
packages/lesspass-web-extension-legacy/extension/dist/lesspass.min.js.map
Fichier diff supprimé car celui-ci est trop grand
Voir le fichier


BIN
packages/lesspass-web-extension-legacy/extension/icons/icon-128x128.png Voir le fichier

Avant Après
Largeur: 128  |  Hauteur: 128  |  Taille: 3.9 KiB

+ 45
- 0
packages/lesspass-web-extension-legacy/extension/icons/loading.svg Voir le fichier

@@ -0,0 +1,45 @@
<svg width="57" height="57" viewBox="0 0 57 57" xmlns="http://www.w3.org/2000/svg" stroke="#0275d8">
<g fill="none" fill-rule="evenodd">
<g transform="translate(1 1)" stroke-width="2">
<circle cx="5" cy="50" r="5">
<animate attributeName="cy"
begin="0s" dur="2.2s"
values="50;5;50;50"
calcMode="linear"
repeatCount="indefinite"/>
<animate attributeName="cx"
begin="0s" dur="2.2s"
values="5;27;49;5"
calcMode="linear"
repeatCount="indefinite"/>
</circle>
<circle cx="27" cy="5" r="5">
<animate attributeName="cy"
begin="0s" dur="2.2s"
from="5" to="5"
values="5;50;50;5"
calcMode="linear"
repeatCount="indefinite"/>
<animate attributeName="cx"
begin="0s" dur="2.2s"
from="27" to="27"
values="27;49;5;27"
calcMode="linear"
repeatCount="indefinite"/>
</circle>
<circle cx="49" cy="50" r="5">
<animate attributeName="cy"
begin="0s" dur="2.2s"
values="50;50;5;50"
calcMode="linear"
repeatCount="indefinite"/>
<animate attributeName="cx"
from="49" to="49"
begin="0s" dur="2.2s"
values="49;5;27;49"
calcMode="linear"
repeatCount="indefinite"/>
</circle>
</g>
</g>
</svg>

BIN
packages/lesspass-web-extension-legacy/extension/icons/logo-32.png Voir le fichier

Avant Après
Largeur: 32  |  Hauteur: 32  |  Taille: 768 B

BIN
packages/lesspass-web-extension-legacy/extension/icons/logo-64.png Voir le fichier

Avant Après
Largeur: 64  |  Hauteur: 64  |  Taille: 1.8 KiB

BIN
packages/lesspass-web-extension-legacy/extension/icons/logo.png Voir le fichier

Avant Après
Largeur: 356  |  Hauteur: 80  |  Taille: 6.1 KiB

+ 33
- 0
packages/lesspass-web-extension-legacy/extension/manifest.json Voir le fichier

@@ -0,0 +1,33 @@
{
"description": "Legacy manifest v2 web extension for LessPass password manager",
"manifest_version": 2,
"name": "LessPass",
"version": "9.6.8",
"homepage_url": "https://github.com/lesspass/lesspass",
"icons": {
"64": "icons/logo-64.png"
},
"commands": {
"_execute_browser_action": {
"suggested_key": {
"default": "Ctrl+Shift+L",
"mac": "Command+Shift+L"
}
}
},
"permissions": [
"activeTab"
],
"browser_action": {
"browser_style": false,
"default_icon": "icons/logo-32.png",
"default_title": "LessPass (Ctrl+Shift+L)",
"default_popup": "popup.html"
},
"applications": {
"gecko": {
"id": "contact@lesspass.com",
"strict_min_version": "57.0"
}
}
}

+ 26
- 0
packages/lesspass-web-extension-legacy/extension/popup.html Voir le fichier

@@ -0,0 +1,26 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>LessPass</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"
/>
<link rel="stylesheet" href="dist/lesspass.min.css" />
<style>
body {
width: 420px;
overflow-x: hidden;
overflow-y: auto;
}
</style>
</head>
<body>
<div class="lesspass--unbordered lesspass--full-width">
<div id="lesspass"></div>
</div>
<script src="popup.js"></script>
</body>
</html>

+ 7
- 0
packages/lesspass-web-extension-legacy/extension/popup.js Voir le fichier

@@ -0,0 +1,7 @@
document.addEventListener("DOMContentLoaded", function() {
let head = document.getElementsByTagName('head')[0];
let script = document.createElement('script');
script.type = 'text/javascript';
script.src = 'dist/lesspass.min.js';
head.appendChild(script);
});

+ 22
- 0
packages/lesspass-web-extension-legacy/package.json Voir le fichier

@@ -0,0 +1,22 @@
{
"name": "lesspass-web-extension-legacy",
"description": "LessPass web extension",
"version": "9.6.8",
"license": "GPL-3.0",
"author": "Guillaume Vincent <guillaume@oslab.fr>",
"scripts": {
"start": "cd extension && web-ext run",
"build": "rm -rf ./extension/dist && mkdir ./extension/dist && cp -r ./node_modules/lesspass-pure/dist/ ./extension/dist",
"release": "yarn release:amo && yarn release:cws",
"release:amo": "cd extension && web-ext-submit",
"release:cws": "cd extension && webstore upload --auto-publish"
},
"dependencies": {
"lesspass-pure": "^10.0.1"
},
"devDependencies": {
"chrome-webstore-upload-cli": "^1.2.1",
"web-ext": "^6.6.0",
"web-ext-submit": "^6.6.0"
}
}

+ 31
- 0
packages/lesspass-web-extension-legacy/policy.md Voir le fichier

@@ -0,0 +1,31 @@
# LessPass Privacy Policy

## Privacy Policy

Guillaume Vincent built the LessPass app as a Free app. This SERVICE is provided by Guillaume Vincent at no cost and is intended for use as is.

This page is used to inform visitors regarding my policies with the collection, use, and disclosure of Personal Information if anyone decided to use my Service.

If you choose to use my Service, then you agree to the collection and use of information in relation to this policy. The Personal Information that I collect is used only to connect to the Service. I will not use or share your information with anyone.

The terms used in this Privacy Policy have the same meanings as in our Terms and Conditions, which is accessible at LessPass unless otherwise defined in this Privacy Policy.

## Information Collection and Use

For a better experience, while using our Service, I may require you to create an account on https://www.lesspass.com. The account creation required an email and a password. The information that I request will be retained by us and used as described in this privacy policy.

The account creation is not mandatory to use our Service.

The app does not use third party services.

## Security

I value your trust in providing us with your Personal Information, thus we are striving to use commercially acceptable means of protecting it. But remember that no method of transmission over the Internet, or method of electronic storage is 100% secure and reliable, and I cannot guarantee its absolute security.

## Changes to This Privacy Policy

I may update our Privacy Policy from time to time. Thus, you are advised to review this page periodically for any changes. I will notify you of any changes by posting the new Privacy Policy on this page. These changes are effective immediately after they are posted on this page.

## Contact Us

If you have any questions or suggestions about my Privacy Policy, do not hesitate to contact me at contact@lesspass.com

+ 1
- 1
packages/lesspass-web-extension/package.json Voir le fichier

@@ -12,7 +12,7 @@
"release:cws": "cd extension && webstore upload --auto-publish"
},
"dependencies": {
"lesspass-pure": "^10.0.0"
"lesspass-pure": "^10.0.1"
},
"devDependencies": {
"chrome-webstore-upload-cli": "^1.2.1",


Chargement…
Annuler
Enregistrer