瀏覽代碼

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 年之前
父節點
當前提交
db761a25f6
共有 26 個文件被更改,包括 2950 次插入5 次删除
  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. 二進制
      packages/lesspass-web-extension-legacy/extension/dist/favicon.ico
  7. 二進制
      packages/lesspass-web-extension-legacy/extension/dist/fonts/fontawesome-webfont.674f50d2.eot
  8. 二進制
      packages/lesspass-web-extension-legacy/extension/dist/fonts/fontawesome-webfont.af7ae505.woff2
  9. 二進制
      packages/lesspass-web-extension-legacy/extension/dist/fonts/fontawesome-webfont.b06871f2.ttf
  10. 二進制
      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. 二進制
      packages/lesspass-web-extension-legacy/extension/icons/icon-128x128.png
  17. +45
    -0
      packages/lesspass-web-extension-legacy/extension/icons/loading.svg
  18. 二進制
      packages/lesspass-web-extension-legacy/extension/icons/logo-32.png
  19. 二進制
      packages/lesspass-web-extension-legacy/extension/icons/logo-64.png
  20. 二進制
      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 查看文件

@@ -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 查看文件

@@ -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 查看文件

@@ -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 查看文件

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

+ 30
- 0
packages/lesspass-web-extension-legacy/amo.md 查看文件

@@ -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 {} \;

二進制
packages/lesspass-web-extension-legacy/extension/dist/favicon.ico 查看文件

Before After

二進制
packages/lesspass-web-extension-legacy/extension/dist/fonts/fontawesome-webfont.674f50d2.eot 查看文件


二進制
packages/lesspass-web-extension-legacy/extension/dist/fonts/fontawesome-webfont.af7ae505.woff2 查看文件


二進制
packages/lesspass-web-extension-legacy/extension/dist/fonts/fontawesome-webfont.b06871f2.ttf 查看文件


二進制
packages/lesspass-web-extension-legacy/extension/dist/fonts/fontawesome-webfont.fee66e71.woff 查看文件


+ 2671
- 0
packages/lesspass-web-extension-legacy/extension/dist/img/fontawesome-webfont.912ec66d.svg
文件差異過大導致無法顯示
查看文件


+ 12
- 0
packages/lesspass-web-extension-legacy/extension/dist/index.html 查看文件

@@ -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
文件差異過大導致無法顯示
查看文件


+ 31
- 0
packages/lesspass-web-extension-legacy/extension/dist/lesspass.min.js
文件差異過大導致無法顯示
查看文件


+ 1
- 0
packages/lesspass-web-extension-legacy/extension/dist/lesspass.min.js.map
文件差異過大導致無法顯示
查看文件


二進制
packages/lesspass-web-extension-legacy/extension/icons/icon-128x128.png 查看文件

Before After
Width: 128  |  Height: 128  |  Size: 3.9 KiB

+ 45
- 0
packages/lesspass-web-extension-legacy/extension/icons/loading.svg 查看文件

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

二進制
packages/lesspass-web-extension-legacy/extension/icons/logo-32.png 查看文件

Before After
Width: 32  |  Height: 32  |  Size: 768 B

二進制
packages/lesspass-web-extension-legacy/extension/icons/logo-64.png 查看文件

Before After
Width: 64  |  Height: 64  |  Size: 1.8 KiB

二進制
packages/lesspass-web-extension-legacy/extension/icons/logo.png 查看文件

Before After
Width: 356  |  Height: 80  |  Size: 6.1 KiB

+ 33
- 0
packages/lesspass-web-extension-legacy/extension/manifest.json 查看文件

@@ -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 查看文件

@@ -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 查看文件

@@ -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 查看文件

@@ -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 查看文件

@@ -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 查看文件

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


Loading…
取消
儲存