Kaynağa Gözat

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 1 yıl önce
ebeveyn
işleme
db761a25f6
26 değiştirilmiş dosya ile 2950 ekleme ve 5 silme
  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 Dosyayı Görüntüle

@@ -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 Dosyayı Görüntüle

@@ -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 Dosyayı Görüntüle

@@ -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 Dosyayı Görüntüle

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

+ 30
- 0
packages/lesspass-web-extension-legacy/amo.md Dosyayı Görüntüle

@@ -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 Dosyayı Görüntüle

Önce Sonra

BIN
packages/lesspass-web-extension-legacy/extension/dist/fonts/fontawesome-webfont.674f50d2.eot Dosyayı Görüntüle


BIN
packages/lesspass-web-extension-legacy/extension/dist/fonts/fontawesome-webfont.af7ae505.woff2 Dosyayı Görüntüle


BIN
packages/lesspass-web-extension-legacy/extension/dist/fonts/fontawesome-webfont.b06871f2.ttf Dosyayı Görüntüle


BIN
packages/lesspass-web-extension-legacy/extension/dist/fonts/fontawesome-webfont.fee66e71.woff Dosyayı Görüntüle


+ 2671
- 0
packages/lesspass-web-extension-legacy/extension/dist/img/fontawesome-webfont.912ec66d.svg
Dosya farkı çok büyük olduğundan ihmal edildi
Dosyayı Görüntüle


+ 12
- 0
packages/lesspass-web-extension-legacy/extension/dist/index.html Dosyayı Görüntüle

@@ -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
Dosya farkı çok büyük olduğundan ihmal edildi
Dosyayı Görüntüle


+ 31
- 0
packages/lesspass-web-extension-legacy/extension/dist/lesspass.min.js
Dosya farkı çok büyük olduğundan ihmal edildi
Dosyayı Görüntüle


+ 1
- 0
packages/lesspass-web-extension-legacy/extension/dist/lesspass.min.js.map
Dosya farkı çok büyük olduğundan ihmal edildi
Dosyayı Görüntüle


BIN
packages/lesspass-web-extension-legacy/extension/icons/icon-128x128.png Dosyayı Görüntüle

Önce Sonra
Genişlik: 128  |  Yükseklik: 128  |  Boyut: 3.9 KiB

+ 45
- 0
packages/lesspass-web-extension-legacy/extension/icons/loading.svg Dosyayı Görüntüle

@@ -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 Dosyayı Görüntüle

Önce Sonra
Genişlik: 32  |  Yükseklik: 32  |  Boyut: 768 B

BIN
packages/lesspass-web-extension-legacy/extension/icons/logo-64.png Dosyayı Görüntüle

Önce Sonra
Genişlik: 64  |  Yükseklik: 64  |  Boyut: 1.8 KiB

BIN
packages/lesspass-web-extension-legacy/extension/icons/logo.png Dosyayı Görüntüle

Önce Sonra
Genişlik: 356  |  Yükseklik: 80  |  Boyut: 6.1 KiB

+ 33
- 0
packages/lesspass-web-extension-legacy/extension/manifest.json Dosyayı Görüntüle

@@ -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 Dosyayı Görüntüle

@@ -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 Dosyayı Görüntüle

@@ -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 Dosyayı Görüntüle

@@ -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 Dosyayı Görüntüle

@@ -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 Dosyayı Görüntüle

@@ -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",


Yükleniyor…
İptal
Kaydet