@deveco-test/deveco-cli 1.2.0 → 1.3.0-Test.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -21
- package/README.md +1423 -766
- package/SKILL.md +214 -116
- package/THIRD-PARTY-LICENSES +4441 -3536
- package/dist/cli.js +208 -88
- package/dist/internal/doc-init-background.js +1 -0
- package/docs.zip +0 -0
- package/index.zip +0 -0
- package/package.json +23 -8
- package/scripts/postinstall.mjs +33 -0
- package/src/resources/aclPermission/aclPermissionsInfo.json +311 -0
- package/templates/application/AppScope/app.json5 +10 -10
- package/templates/application/AppScope/resources/base/element/string.json +8 -8
- package/templates/application/AppScope/resources/base/media/layered_image.json +6 -6
- package/templates/application/build-profile.json5 +41 -41
- package/templates/application/code-linter.json5 +31 -31
- package/templates/application/entry/build-profile.json5 +32 -32
- package/templates/application/entry/gitignore.txt +6 -0
- package/templates/application/entry/hvigorfile.ts +7 -7
- package/templates/application/entry/obfuscation-rules.txt +19 -19
- package/templates/application/entry/oh-package.json5 +10 -10
- package/templates/application/entry/src/main/ets/entryability/EntryAbility.ets +62 -62
- package/templates/application/entry/src/main/ets/entrybackupability/EntryBackupAbility.ets +30 -30
- package/templates/application/entry/src/main/ets/pages/Index.ets +37 -37
- package/templates/application/entry/src/main/module.json5 +49 -49
- package/templates/application/entry/src/main/resources/base/element/color.json +7 -7
- package/templates/application/entry/src/main/resources/base/element/float.json +8 -8
- package/templates/application/entry/src/main/resources/base/element/string.json +15 -15
- package/templates/application/entry/src/main/resources/base/media/layered_image.json +6 -6
- package/templates/application/entry/src/main/resources/base/profile/backup_config.json +2 -2
- package/templates/application/entry/src/main/resources/base/profile/main_pages.json +5 -5
- package/templates/application/entry/src/main/resources/dark/element/color.json +7 -7
- package/templates/application/gitignore.txt +12 -0
- package/templates/application/hvigor/hvigor-config.json5 +23 -23
- package/templates/application/hvigorfile.ts +7 -7
- package/templates/application/oh-package.json5 +10 -10
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import*as N from"fs";import ie from"proper-lockfile";import se from"ora";import*as m from"fs";import*as R from"path";var G=["harmonyos-guides","harmonyos-references","best-practices","harmonyos-faqs","harmonyos-releases","harmonyos-roadmap"],O={"harmonyos-guides":"\u5F00\u53D1\u6307\u5357","harmonyos-references":"API\u53C2\u8003","best-practices":"\u6700\u4F73\u5B9E\u8DF5","harmonyos-faqs":"FAQ","harmonyos-releases":"\u7248\u672C\u8BF4\u660E","harmonyos-roadmap":"\u53D8\u66F4\u9884\u544A"};var P="1.9.1",ye=48*1024*1024;var Ee=Object.fromEntries(G.map((t,e)=>[O[t],e])),M=Object.fromEntries(G.map((t,e)=>[t,e]));import*as C from"fs";import*as a from"path";import{fileURLToPath as gt}from"url";import*as f from"fs";import*as mt from"path";import{homedir as jt}from"os";import*as ut from"fs";import*as d from"path";function Z(t,e){let r=d.relative(e,t);return r===""||!d.isAbsolute(r)&&!r.startsWith(`..${d.sep}`)&&r!==".."}function E(t){let e=d.resolve(t),r=[],n=e;for(;;)try{let o=ut.realpathSync(n);return r.length===0?o:d.join(o,...r.reverse())}catch(o){if(o.code!=="ENOENT")throw o;let l=d.dirname(n);if(l===n)return e;r.push(d.basename(n)),n=l}}function lt(t,e){let r=E(e),n=E(t);return Z(n,r)?n:null}function H(t){let e=t.trim();return(e.startsWith('"')&&e.endsWith('"')||e.startsWith("'")&&e.endsWith("'"))&&(e=e.slice(1,-1).trim()),e}function dt(t){let e=H(t);if(!e)throw new Error("Path must not be empty.");return E(e)}var Gt="deveco-cli",Q,h=class extends Error{constructor(e){super(e),this.name="CliDataDirError"}};function pt(){let t=process.env.DEVECO_CLI_DATA_DIR,r=(t===void 0||t===""?"":H(t))||mt.join(jt(),".local","share",Gt);try{return dt(r)}catch(n){throw new h(n instanceof Error?n.message:String(n))}}async function ft(){let t=pt();await f.promises.mkdir(t,{recursive:!0});let e;try{e=await f.promises.realpath(t)}catch(n){throw new h(`DEVECO_CLI_DATA_DIR is not usable: ${n instanceof Error?n.message:String(n)}`)}if(!(await f.promises.stat(e)).isDirectory())throw new h("DEVECO_CLI_DATA_DIR must be a writable directory.");return Q=e,e}function B(){if(Q!==void 0)return Q;let t=pt();try{if(f.existsSync(t))return f.realpathSync(t)}catch{}return t}var Zt="docs";function _(){return a.join(B(),Zt)}function u(){return a.join(_(),".index")}function F(){return a.join(u(),"build.lock")}function T(){return a.join(u(),"build-status.json")}function x(){return a.join(u(),"build-meta.json")}function A(){return a.join(u(),"search.db")}function w(){return a.join(u(),".tmp")}function Ht(t,e){let r=e;for(;!r.endsWith(`${a.sep}dist`)&&r!==a.dirname(r);)r=a.dirname(r);return r}function ht(t,e){return a.dirname(Ht(t,e))}function St(){let t=gt(import.meta.url),e=a.dirname(t);return t.includes(`${a.sep}dist${a.sep}`)?ht(t,e):a.join(e,"..","..","..")}function Qt(...t){let e=gt(import.meta.url),r=a.dirname(e);return e.includes(`${a.sep}dist${a.sep}`)?[a.join(ht(e,r),...t)]:[a.join(r,"..","..","..",...t)]}function yt(...t){let e=St(),r=C.realpathSync(e);for(let n of Qt(...t))try{let o=C.lstatSync(n);if(o.isSymbolicLink()||!o.isFile())throw new Error(`Unsafe documentation package asset: ${t.join("/")} must be a regular file.`);let l=C.realpathSync(n);if(!Z(l,r))throw new Error(`Unsafe documentation package asset: ${t.join("/")} is outside the package.`);return l}catch(o){if(o.code!=="ENOENT")throw o}return null}function D(){return yt("docs.zip")}function X(){return yt("index.zip")}function Et(){return a.join(St(),"index","data")}import*as S from"fs";import*as I from"path";var g=["harmonyos-terms.txt","harmonyos-synonyms.json","harmonyos-stopwords.txt"],W=class extends Error{constructor(e){super(e),this.name="LexiconNotFoundError"}};var _t=null;function Xt(){if(_t)return _t;let t=u();if(g.every(o=>S.existsSync(I.join(t,o))))return t;let r=Et();if(g.every(o=>S.existsSync(I.join(r,o))))return r;throw new W("Lexicon files not found. Install the documentation index first (index.zip).")}function $(t){let e=I.join(Xt(),t);return S.readFileSync(e,"utf-8")}function xt(t,e){return S.readFileSync(I.join(e,t),"utf-8")}import*as q from"fs";import*as Wt from"yauzl";function Y(){let t=D();return t!==null&&q.existsSync(t)}import*as c from"fs";import*as p from"path";import At from"adm-zip";import*as b from"fs";import*as k from"path";var v=class extends Error{constructor(e){super(`Unsafe documentation path: ${e}`),this.name="DocPathSafetyError"}};function K(t){return t instanceof h||t instanceof v||t instanceof Error&&(t.name==="CliDataDirError"||t.name==="DocPathSafetyError")}function tt(t){return new v(t)}function $t(){return E(B())}function V(t,e,r){let n=lt(t,e);if(n===null)throw tt(`${r} resolves outside the data directory.`);return n}async function J(t,e){await b.promises.mkdir(t,{recursive:!0});let r=V(t,e,"directory");if(!(await b.promises.stat(r)).isDirectory())throw tt("path must be a directory.")}function qt(t){let e=$t();try{let r=V(t,e,"file");if(!b.statSync(r).isFile())throw tt("path must be a regular file.")}catch(r){if(r.code==="ENOENT"){V(k.dirname(t),e,"file parent");return}throw r}}async function z(t={}){let e=t.mode??"write",r=await ft();await J(_(),r),await J(u(),r),e==="write"&&await J(w(),r);for(let n of[A(),x(),T(),F(),...g.map(o=>k.join(u(),o))])qt(n)}var et=["search.db","build-meta.json",...g],Yt=["corpus.json","corpus-offsets.json","orama.dpack"];async function Jt(t){for(let e of Yt)await c.promises.rm(p.join(t,e),{force:!0})}async function Vt(t){let e=await c.promises.readdir(t,{withFileTypes:!0});for(let r of e)r.name!==".index"&&await c.promises.rm(p.join(t,r.name),{recursive:!0,force:!0})}function wt(t){let r=new At(t).getEntry("build-meta.json");if(!r)throw new Error("index.zip is missing build-meta.json");return JSON.parse(r.getData().toString("utf-8"))}async function Kt(t){let e=u();await c.promises.mkdir(e,{recursive:!0});for(let r of et){let n=p.join(e,r);await c.promises.rm(n,{force:!0}),await c.promises.rename(p.join(t,r),n)}await Jt(e),await c.promises.rm(w(),{recursive:!0,force:!0})}function Dt(t){let e=X();if(!e)return!1;try{let r=wt(e);return r.indexVersion===P&&r.docsZipSha256===t&&r.segmentCount>0}catch{return!1}}async function Ct(t){await z({mode:"write"});let e=X();if(!e)throw new Error("index.zip not found");let r=wt(e);if(r.docsZipSha256!==t)throw new Error("Bundled index.zip does not match docs.zip. Rebuild index.zip with npm run build:index.");if(r.segmentCount<=0)throw new Error("Bundled index.zip is empty");let n=w();await c.promises.rm(n,{recursive:!0,force:!0}),await c.promises.mkdir(n,{recursive:!0});let o=new At(e);for(let y of et){let ct=o.getEntry(y);if(!ct)throw new Error(`index.zip is missing ${y}`);await c.promises.writeFile(p.join(n,y),ct.getData())}let l=JSON.parse(await c.promises.readFile(p.join(n,"build-meta.json"),"utf-8"));if(!c.existsSync(p.join(n,"search.db")))throw new Error("index.zip is missing search.db");return await Kt(n),await c.promises.mkdir(_(),{recursive:!0}),await Vt(_()),l}async function Tt(){await c.promises.rm(w(),{recursive:!0,force:!0});let t=u();for(let e of et)await c.promises.rm(p.join(t,e),{force:!0})}import{createHash as It}from"crypto";import*as bt from"fs";async function U(t){return new Promise((e,r)=>{let n=It("sha256"),o=bt.createReadStream(t);o.on("data",l=>n.update(l)),o.on("error",r),o.on("end",()=>e(n.digest("hex")))})}function Rt(t){return It("sha256").update(t,"utf8").digest("hex")}function Lt(t,e){let r=e?xt(t,e):$(t);return Rt(r)}function Nt(t){return Lt("harmonyos-synonyms.json",t)}function Ot(t){return Lt("harmonyos-terms.txt",t)}var te={state:"idle",phase:0,phaseLabel:"Idle",current:0,total:0,message:"",startedAt:0,updatedAt:0,error:null};async function Pt(){try{let t=await m.promises.readFile(T(),"utf-8");return JSON.parse(t)}catch{return{...te}}}async function rt(t){let e=T();await m.promises.mkdir(R.dirname(e),{recursive:!0}),await m.promises.writeFile(e,JSON.stringify(t,null,2))}function Mt(t){let e=Date.now();return{state:"extracting",phase:1,phaseLabel:"Extracting documentation",current:0,total:0,message:t,startedAt:e,updatedAt:e,error:null}}async function L(t){let r={...await Pt(),...t,updatedAt:Date.now()};return await rt(r),r}async function nt(){let t=D();return t?U(t):null}async function ot(){try{let t=await m.promises.readFile(x(),"utf-8");return JSON.parse(t)}catch{return null}}async function it(t=!1){if(t)return"no-index";let e=await ot();if(!e||e.segmentCount===0)return"no-index";let r=await nt();return r&&e.docsZipSha256!==r?"docs-changed":e.indexVersion!==P?"engine-upgraded":e.termsHash!==Ot()?"terms-changed":e.synonymsHash!==Nt()?"synonyms-changed":null}function st(){if(!Y()||!m.existsSync(A())||!m.existsSync(x()))return!1;let t=R.dirname(A());if(!g.every(e=>m.existsSync(R.join(t,e))))return!1;try{let e=m.readFileSync(x(),"utf-8");return JSON.parse(e).segmentCount>0}catch{return!1}}async function Bt(t=!1){return t?!0:Y()?st()?await it()!==null:!0:!1}import{createRequire as ee}from"module";var Yr=ee(import.meta.url);var Ft=["harmonyos-releases","harmonyos-roadmap"],In=new Set(Ft.map(t=>M[t])),bn=Ft.map(t=>`${O[t]}/`);var ne=null,vt=null;function kt(){vt?.resetCache(),ne=null,vt=null}function at(){kt()}async function zt(t,e,r){e?.start(r),await L({state:"installing",phase:1,phaseLabel:"Installing index",message:r}),await Ct(t),at(),e&&(e.text="Documentation index installed.")}async function ae(t,e){try{return await zt(t,e,"Installing documentation index\u2026"),await Ut(e),!0}catch(r){if(K(r))throw r}try{return await Tt(),at(),await zt(t,e,"Retrying documentation index install\u2026"),await Ut(e),!0}catch(r){if(K(r))throw r;return!1}}async function Ut(t){await L({state:"done",phase:3,phaseLabel:"Done",message:"Documentation ready.",error:null}),t?.succeed("Documentation ready.")}async function ce(t){let e=await ot(),r=e?`Documentation already up to date. Documents: ${e.segmentCount.toLocaleString()}`:"Documentation already up to date.";t?.succeed(r),await L({state:"done",message:r,error:null})}async function ue(t,e){let r=t instanceof Error?t.message:String(t);throw await L({state:"error",error:r}),e?.fail(r),t}async function le(){let t=u();await N.promises.mkdir(t,{recursive:!0});let e=F();return N.existsSync(e)||await N.promises.writeFile(e,"","utf-8"),e}async function de(){let t=await le();return ie.lock(t,{stale:1800*1e3})}async function me(){let t=D(),e=(t?await U(t):null)??await nt();if(!e)throw new Error("docs.zip not found");return e}async function pe(t,e){let r=await me(),n=t.force||await Bt(t.force),o=await it(t.force);if(!n&&!o&&st()){await ce(e);return}if(!(Dt(r)&&await ae(r,e)))throw new Error("Documentation index bundle is unavailable or corrupted. Reinstall the package with: npm uninstall -g @deveco/deveco-cli && npm install -g <package.tgz>")}var j=class{static async run(e={}){let r=e.background??!1,o=e.quiet??r?void 0:se({text:"Checking documentation\u2026",color:"cyan"}),l;try{e.assumeStorageSafe||await z({mode:"write"}),l=await de(),await rt(Mt("Starting documentation setup\u2026")),await pe(e,o)}catch(y){throw l&&await ue(y,o),y}finally{l&&await l()}}};var fe=process.env.DEVECO_CLI_POSTINSTALL?"postinstall":"doc-init";j.run({background:!0,builtBy:fe}).then(()=>{process.exit(0)}).catch(()=>{process.exit(1)});
|
package/docs.zip
CHANGED
|
Binary file
|
package/index.zip
ADDED
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@deveco-test/deveco-cli",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.0-Test.10",
|
|
4
4
|
"description": "HarmonyOS application development command line tool",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -9,16 +9,19 @@
|
|
|
9
9
|
},
|
|
10
10
|
"files": [
|
|
11
11
|
"dist",
|
|
12
|
-
"scripts",
|
|
12
|
+
"scripts/postinstall.mjs",
|
|
13
13
|
"templates",
|
|
14
|
+
"src/resources",
|
|
14
15
|
"THIRD-PARTY-LICENSES",
|
|
15
16
|
"SKILL.md",
|
|
16
|
-
"docs.zip"
|
|
17
|
+
"docs.zip",
|
|
18
|
+
"index.zip"
|
|
17
19
|
],
|
|
18
20
|
"scripts": {
|
|
19
21
|
"prepare": "husky",
|
|
22
|
+
"postinstall": "node scripts/postinstall.mjs",
|
|
20
23
|
"build": "tsup",
|
|
21
|
-
"
|
|
24
|
+
"build:index": "tsx index/build-index-bundle.ts",
|
|
22
25
|
"dev": "tsx watch src/cli.ts",
|
|
23
26
|
"start": "tsx src/cli.ts",
|
|
24
27
|
"lint": "eslint src",
|
|
@@ -41,10 +44,14 @@
|
|
|
41
44
|
"@types/fs-extra": "^11.0.4",
|
|
42
45
|
"@types/global-agent": "^3.0.0",
|
|
43
46
|
"@types/node": "^25.6.0",
|
|
47
|
+
"@types/node-forge": "^1.3.14",
|
|
48
|
+
"@types/proper-lockfile": "^4.1.4",
|
|
49
|
+
"@types/semver": "^7.7.1",
|
|
44
50
|
"@types/turndown": "^5.0.5",
|
|
51
|
+
"@types/yauzl": "^2.10.3",
|
|
45
52
|
"eslint": "^10.2.1",
|
|
46
53
|
"generate-license-file": "^4.2.1",
|
|
47
|
-
"husky": "9.1.7",
|
|
54
|
+
"husky": "^9.1.7",
|
|
48
55
|
"prettier": "^3.8.3",
|
|
49
56
|
"tsup": "^8.5.1",
|
|
50
57
|
"tsx": "^4.21.0",
|
|
@@ -54,20 +61,28 @@
|
|
|
54
61
|
},
|
|
55
62
|
"dependencies": {
|
|
56
63
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
57
|
-
"@
|
|
64
|
+
"@sqlite.org/sqlite-wasm": "^3.49.1-build4",
|
|
58
65
|
"adm-zip": "^0.5.17",
|
|
59
|
-
"axios": "1.
|
|
66
|
+
"axios": "1.17.0",
|
|
60
67
|
"colorette": "^2.0.20",
|
|
61
68
|
"commander": "^13.1.0",
|
|
62
69
|
"execa": "^9.6.1",
|
|
63
70
|
"fs-extra": "^11.3.4",
|
|
64
71
|
"global-agent": "^4.1.3",
|
|
72
|
+
"jieba-wasm": "^2.4.0",
|
|
65
73
|
"json5": "^2.2.3",
|
|
66
|
-
"
|
|
74
|
+
"mdast-util-to-string": "^4.0.0",
|
|
75
|
+
"node-forge": "^1.4.0",
|
|
76
|
+
"ora": "^9.4.0",
|
|
67
77
|
"p-limit": "^5.0.0",
|
|
68
78
|
"proper-lockfile": "^4.1.2",
|
|
69
79
|
"regedit": "^5.1.4",
|
|
80
|
+
"remark-gfm": "^4.0.1",
|
|
81
|
+
"remark-parse": "^11.0.0",
|
|
82
|
+
"semver": "^7.8.5",
|
|
70
83
|
"smol-toml": "^1.6.1",
|
|
84
|
+
"unified": "^11.0.5",
|
|
85
|
+
"yauzl": "^3.2.0",
|
|
71
86
|
"zod": "^4.4.3"
|
|
72
87
|
},
|
|
73
88
|
"overrides": {
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2026 Huawei Device Co., Ltd.
|
|
3
|
+
* SPDX-License-Identifier: MIT
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import { spawn } from 'child_process';
|
|
7
|
+
import { existsSync } from 'fs';
|
|
8
|
+
import { dirname, join } from 'path';
|
|
9
|
+
import { fileURLToPath } from 'url';
|
|
10
|
+
|
|
11
|
+
const root = join(dirname(fileURLToPath(import.meta.url)), '..');
|
|
12
|
+
const initScript = join(root, 'dist', 'internal', 'doc-init-background.js');
|
|
13
|
+
|
|
14
|
+
if (!existsSync(initScript)) {
|
|
15
|
+
process.exit(0);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
const child = spawn(
|
|
19
|
+
process.execPath,
|
|
20
|
+
[initScript],
|
|
21
|
+
{
|
|
22
|
+
detached: true,
|
|
23
|
+
stdio: ['ignore', 'ignore', 'ignore'],
|
|
24
|
+
env: {
|
|
25
|
+
...process.env,
|
|
26
|
+
DEVECO_CLI_SKIP_VERSION_CHECK: '1',
|
|
27
|
+
DEVECO_CLI_POSTINSTALL: '1',
|
|
28
|
+
},
|
|
29
|
+
}
|
|
30
|
+
);
|
|
31
|
+
|
|
32
|
+
child.unref();
|
|
33
|
+
process.exit(0);
|
|
@@ -0,0 +1,311 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"permissionName": "ohos.permission.SYSTEM_FLOAT_WINDOW",
|
|
4
|
+
"permissionDisplayName": "SYSTEM_FLOAT_WINDOW",
|
|
5
|
+
"permissionHelpUrlKey": "acl.system.float.window.instead.url",
|
|
6
|
+
"permissionInsteadName": "acl.SYSTEM_FLOAT_WINDOW.instead.name",
|
|
7
|
+
"minSupportApiLevel": "9"
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
"permissionName": "ohos.permission.READ_CONTACTS",
|
|
11
|
+
"permissionDisplayName": "READ_CONTACTS",
|
|
12
|
+
"permissionHelpUrlKey": "acl.read.contacts.instead.url",
|
|
13
|
+
"permissionInsteadName": "acl.READ_CONTACTS.instead.name",
|
|
14
|
+
"minSupportApiLevel": "8"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"permissionName": "ohos.permission.WRITE_CONTACTS",
|
|
18
|
+
"permissionDisplayName": "WRITE_CONTACTS",
|
|
19
|
+
"minSupportApiLevel": "8"
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"permissionName": "ohos.permission.READ_IMAGEVIDEO",
|
|
23
|
+
"permissionDisplayName": "READ_IMAGEVIDEO",
|
|
24
|
+
"permissionHelpUrlKey": "acl.read.image.video.instead.url",
|
|
25
|
+
"permissionInsteadName": "acl.READ_IMAGEVIDEO.instead.name",
|
|
26
|
+
"minSupportApiLevel": "9"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"permissionName": "ohos.permission.WRITE_IMAGEVIDEO",
|
|
30
|
+
"permissionDisplayName": "WRITE_IMAGEVIDEO",
|
|
31
|
+
"permissionHelpUrlKey": "acl.write.image.video.instead.url",
|
|
32
|
+
"permissionInsteadName": "acl.WRITE_IMAGEVIDEO.instead.name",
|
|
33
|
+
"minSupportApiLevel": "9"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"permissionName": "ohos.permission.READ_AUDIO",
|
|
37
|
+
"permissionDisplayName": "READ_AUDIO",
|
|
38
|
+
"permissionHelpUrlKey": "acl.read.audio.instead.url",
|
|
39
|
+
"permissionInsteadName": "acl.READ_AUDIO.instead.name",
|
|
40
|
+
"minSupportApiLevel": "9"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"permissionName": "ohos.permission.WRITE_AUDIO",
|
|
44
|
+
"permissionDisplayName": "WRITE_AUDIO",
|
|
45
|
+
"permissionHelpUrlKey": "acl.write.audio.instead.url",
|
|
46
|
+
"permissionInsteadName": "acl.WRITE_AUDIO.instead.name",
|
|
47
|
+
"minSupportApiLevel": "9"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"permissionName": "ohos.permission.READ_PASTEBOARD",
|
|
51
|
+
"permissionDisplayName": "READ_PASTEBOARD",
|
|
52
|
+
"permissionHelpUrlKey": "acl.read.pasteboard.instead.url",
|
|
53
|
+
"permissionInsteadName": "acl.READ_PASTEBOARD.instead.name",
|
|
54
|
+
"minSupportApiLevel": "11"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"permissionName": "ohos.permission.ACCESS_DDK_USB",
|
|
58
|
+
"permissionDisplayName": "ACCESS_DDK_USB",
|
|
59
|
+
"minSupportApiLevel": "11"
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"permissionName": "ohos.permission.ACCESS_DDK_HID",
|
|
63
|
+
"permissionDisplayName": "ACCESS_DDK_HID",
|
|
64
|
+
"minSupportApiLevel": "11"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"permissionName": "ohos.permission.FILE_ACCESS_PERSIST",
|
|
68
|
+
"permissionDisplayName": "FILE_ACCESS_PERSIST",
|
|
69
|
+
"minSupportApiLevel": "11"
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"permissionName": "ohos.permission.READ_WRITE_DOWNLOAD_DIRECTORY",
|
|
73
|
+
"permissionDisplayName": "READ_WRITE_DOWNLOAD_DIRECTORY",
|
|
74
|
+
"minSupportApiLevel": "11"
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"permissionName": "ohos.permission.READ_WRITE_DESKTOP_DIRECTORY",
|
|
78
|
+
"permissionDisplayName": "READ_WRITE_DESKTOP_DIRECTORY",
|
|
79
|
+
"minSupportApiLevel": "11"
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"permissionName": "ohos.permission.READ_WRITE_DOCUMENTS_DIRECTORY",
|
|
83
|
+
"permissionDisplayName": "READ_WRITE_DOCUMENTS_DIRECTORY",
|
|
84
|
+
"minSupportApiLevel": "11"
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"permissionName": "ohos.permission.INPUT_MONITORING",
|
|
88
|
+
"permissionDisplayName": "INPUT_MONITORING",
|
|
89
|
+
"minSupportApiLevel": "12"
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
"permissionName": "ohos.permission.INTERCEPT_INPUT_EVENT",
|
|
93
|
+
"permissionDisplayName": "INTERCEPT_INPUT_EVENT",
|
|
94
|
+
"minSupportApiLevel": "12"
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
"permissionName": "ohos.permission.SHORT_TERM_WRITE_IMAGEVIDEO",
|
|
98
|
+
"permissionDisplayName": "SHORT_TERM_WRITE_IMAGEVIDEO",
|
|
99
|
+
"minSupportApiLevel": "12"
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
"permissionName": "ohos.permission.kernel.ALLOW_WRITABLE_CODE_MEMORY",
|
|
103
|
+
"permissionDisplayName": "ALLOW_WRITABLE_CODE_MEMORY",
|
|
104
|
+
"minSupportApiLevel": "14"
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
"permissionName": "ohos.permission.kernel.DISABLE_CODE_MEMORY_PROTECTION",
|
|
108
|
+
"permissionDisplayName": "DISABLE_CODE_MEMORY_PROTECTION",
|
|
109
|
+
"minSupportApiLevel": "14"
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
"permissionName": "ohos.permission.kernel.ALLOW_EXECUTABLE_FORT_MEMORY",
|
|
113
|
+
"permissionDisplayName": "ALLOW_EXECUTABLE_FORT_MEMORY",
|
|
114
|
+
"minSupportApiLevel": "14"
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
"permissionName": "ohos.permission.GET_WIFI_PEERS_MAC",
|
|
118
|
+
"permissionDisplayName": "GET_WIFI_PEERS_MAC",
|
|
119
|
+
"minSupportApiLevel": "8"
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"permissionName": "ohos.permission.MANAGE_PASTEBOARD_APP_SHARE_OPTION",
|
|
123
|
+
"permissionDisplayName": "MANAGE_PASTEBOARD_APP_SHARE_OPTION",
|
|
124
|
+
"minSupportApiLevel": "14"
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
"permissionName": "ohos.permission.MANAGE_UDMF_APP_SHARE_OPTION",
|
|
128
|
+
"permissionDisplayName": "MANAGE_UDMF_APP_SHARE_OPTION",
|
|
129
|
+
"minSupportApiLevel": "14"
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
"permissionName": "ohos.permission.READ_WRITE_USER_FILE",
|
|
133
|
+
"permissionDisplayName": "READ_WRITE_USER_FILE",
|
|
134
|
+
"minSupportApiLevel": "13"
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
"permissionName": "ohos.permission.READ_WRITE_USB_DEV",
|
|
138
|
+
"permissionDisplayName": "READ_WRITE_USB_DEV",
|
|
139
|
+
"minSupportApiLevel": "13"
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
"permissionName": "ohos.permission.USE_FRAUD_CALL_LOG_PICKER",
|
|
143
|
+
"permissionDisplayName": "USE_FRAUD_CALL_LOG_PICKER",
|
|
144
|
+
"minSupportApiLevel": "15"
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
"permissionName": "ohos.permission.USE_FRAUD_MESSAGES_PICKER",
|
|
148
|
+
"permissionDisplayName": "USE_FRAUD_MESSAGES_PICKER",
|
|
149
|
+
"minSupportApiLevel": "15"
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
"permissionName": "ohos.permission.ACCESS_DISK_PHY_INFO",
|
|
153
|
+
"permissionDisplayName": "ACCESS_DISK_PHY_INFO",
|
|
154
|
+
"minSupportApiLevel": "15"
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
"permissionName": "ohos.permission.SET_PAC_URL",
|
|
158
|
+
"permissionDisplayName": "SET_PAC_URL",
|
|
159
|
+
"minSupportApiLevel": "15"
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
"permissionName": "ohos.permission.PERSONAL_MANAGE_RESTRICTIONS",
|
|
163
|
+
"permissionDisplayName": "PERSONAL_MANAGE_RESTRICTIONS",
|
|
164
|
+
"minSupportApiLevel": "15"
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
"permissionName": "ohos.permission.START_PROVISIONING_MESSAGE",
|
|
168
|
+
"permissionDisplayName": "START_PROVISIONING_MESSAGE",
|
|
169
|
+
"minSupportApiLevel": "15"
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
"permissionName": "ohos.permission.PRELOAD_FILE",
|
|
173
|
+
"permissionDisplayName": "PRELOAD_FILE",
|
|
174
|
+
"minSupportApiLevel": "15"
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
"permissionName": "ohos.permission.ACCESS_VIRTUAL_SCREEN",
|
|
178
|
+
"permissionDisplayName": "ACCESS_VIRTUAL_SCREEN",
|
|
179
|
+
"minSupportApiLevel": "16"
|
|
180
|
+
},
|
|
181
|
+
{
|
|
182
|
+
"permissionName": "ohos.permission.PERSISTENT_BLUETOOTH_PEERS_MAC",
|
|
183
|
+
"permissionDisplayName": "PERSISTENT_BLUETOOTH_PEERS_MAC",
|
|
184
|
+
"minSupportApiLevel": "16"
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
"permissionName": "ohos.permission.ACCESS_DDK_USB_SERIAL",
|
|
188
|
+
"permissionDisplayName": "ACCESS_DDK_USB_SERIAL",
|
|
189
|
+
"minSupportApiLevel": "18"
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
"permissionName": "ohos.permission.ACCESS_DDK_SCSI_PERIPHERAL",
|
|
193
|
+
"permissionDisplayName": "ACCESS_DDK_SCSI_PERIPHERAL",
|
|
194
|
+
"minSupportApiLevel": "18"
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
"permissionName": "ohos.permission.USE_FRAUD_APP_PICKER",
|
|
198
|
+
"permissionDisplayName": "USE_FRAUD_APP_PICKER",
|
|
199
|
+
"minSupportApiLevel": "18"
|
|
200
|
+
},
|
|
201
|
+
{
|
|
202
|
+
"permissionName": "ohos.permission.kernel.DISABLE_GOTPLT_RO_PROTECTION",
|
|
203
|
+
"permissionDisplayName": "DISABLE_GOTPLT_RO_PROTECTION",
|
|
204
|
+
"minSupportApiLevel": "17"
|
|
205
|
+
},
|
|
206
|
+
{
|
|
207
|
+
"permissionName": "ohos.permission.MANAGE_APN_SETTING",
|
|
208
|
+
"permissionDisplayName": "MANAGE_APN_SETTING",
|
|
209
|
+
"minSupportApiLevel": "16"
|
|
210
|
+
},
|
|
211
|
+
{
|
|
212
|
+
"permissionName": "ohos.permission.MANAGE_SCREEN_TIME_GUARD",
|
|
213
|
+
"permissionDisplayName": "MANAGE_SCREEN_TIME_GUARD",
|
|
214
|
+
"minSupportApiLevel": "20"
|
|
215
|
+
},
|
|
216
|
+
{
|
|
217
|
+
"permissionName": "ohos.permission.CUSTOMIZE_SAVE_BUTTON",
|
|
218
|
+
"permissionDisplayName": "CUSTOMIZE_SAVE_BUTTON",
|
|
219
|
+
"minSupportApiLevel": "20"
|
|
220
|
+
},
|
|
221
|
+
{
|
|
222
|
+
"permissionName": "ohos.permission.GET_ABILITY_INFO",
|
|
223
|
+
"permissionDisplayName": "GET_ABILITY_INFO",
|
|
224
|
+
"minSupportApiLevel": "20"
|
|
225
|
+
},
|
|
226
|
+
{
|
|
227
|
+
"permissionName": "ohos.permission.DLP_GET_HIDE_STATUS",
|
|
228
|
+
"permissionDisplayName": "DLP_GET_HIDE_STATUS",
|
|
229
|
+
"minSupportApiLevel": "20"
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
"permissionName": "ohos.permission.ACCESS_FIDO2_ONLINEAUTH",
|
|
233
|
+
"permissionDisplayName": "ACCESS_FIDO2_ONLINEAUTH",
|
|
234
|
+
"minSupportApiLevel": "20"
|
|
235
|
+
},
|
|
236
|
+
{
|
|
237
|
+
"permissionName": "ohos.permission.LINKTURBO",
|
|
238
|
+
"permissionDisplayName": "LINKTURBO",
|
|
239
|
+
"minSupportApiLevel": "20"
|
|
240
|
+
},
|
|
241
|
+
{
|
|
242
|
+
"permissionName": "ohos.permission.USE_FLOAT_BALL",
|
|
243
|
+
"permissionDisplayName": "USE_FLOAT_BALL",
|
|
244
|
+
"minSupportApiLevel": "20"
|
|
245
|
+
},
|
|
246
|
+
{
|
|
247
|
+
"permissionName": "ohos.permission.GET_ETHERNET_LOCAL_MAC",
|
|
248
|
+
"permissionDisplayName": "GET_ETHERNET_LOCAL_MAC",
|
|
249
|
+
"minSupportApiLevel": "20"
|
|
250
|
+
},
|
|
251
|
+
{
|
|
252
|
+
"permissionName": "ohos.permission.GET_WIFI_LOCAL_MAC",
|
|
253
|
+
"permissionDisplayName": "GET_WIFI_LOCAL_MAC",
|
|
254
|
+
"minSupportApiLevel": "20"
|
|
255
|
+
},
|
|
256
|
+
{
|
|
257
|
+
"permissionName": "ohos.permission.READ_LOCAL_DEVICE_NAME",
|
|
258
|
+
"permissionDisplayName": "READ_LOCAL_DEVICE_NAME",
|
|
259
|
+
"minSupportApiLevel": "20"
|
|
260
|
+
},
|
|
261
|
+
{
|
|
262
|
+
"permissionName": "ohos.permission.ACCESS_NET_TRACE_INFO",
|
|
263
|
+
"permissionDisplayName": "ACCESS_NET_TRACE_INFO",
|
|
264
|
+
"minSupportApiLevel": "20"
|
|
265
|
+
},
|
|
266
|
+
{
|
|
267
|
+
"permissionName": "ohos.permission.KEEP_BACKGROUND_RUNNING_SYSTEM",
|
|
268
|
+
"permissionDisplayName": "KEEP_BACKGROUND_RUNNING_SYSTEM",
|
|
269
|
+
"minSupportApiLevel": "20"
|
|
270
|
+
},
|
|
271
|
+
{
|
|
272
|
+
"permissionName": "ohos.permission.atomicService.MANAGE_STORAGE",
|
|
273
|
+
"permissionDisplayName": "MANAGE_STORAGE",
|
|
274
|
+
"minSupportApiLevel": "20"
|
|
275
|
+
},
|
|
276
|
+
{
|
|
277
|
+
"permissionName": "ohos.permission.WEB_NATIVE_MESSAGING",
|
|
278
|
+
"permissionDisplayName": "WEB_NATIVE_MESSAGING",
|
|
279
|
+
"minSupportApiLevel": "21"
|
|
280
|
+
},
|
|
281
|
+
{
|
|
282
|
+
"permissionName": "ohos.permission.HOOK_KEY_EVENT",
|
|
283
|
+
"permissionDisplayName": "HOOK_KEY_EVENT",
|
|
284
|
+
"minSupportApiLevel": "21"
|
|
285
|
+
},
|
|
286
|
+
{
|
|
287
|
+
"permissionName": "ohos.permission.SET_SYSTEMSHARE_APPLAUNCHTRUSTLIST",
|
|
288
|
+
"permissionDisplayName": "SET_SYSTEMSHARE_APPLAUNCHTRUSTLIST",
|
|
289
|
+
"minSupportApiLevel": "21"
|
|
290
|
+
},
|
|
291
|
+
{
|
|
292
|
+
"permissionName": "ohos.permission.SUBSCRIBE_NOTIFICATION",
|
|
293
|
+
"permissionDisplayName": "SUBSCRIBE_NOTIFICATION",
|
|
294
|
+
"minSupportApiLevel": "22"
|
|
295
|
+
},
|
|
296
|
+
{
|
|
297
|
+
"permissionName": "ohos.permission.ACCESS_USER_FULL_DISK",
|
|
298
|
+
"permissionDisplayName": "ACCESS_USER_FULL_DISK",
|
|
299
|
+
"minSupportApiLevel": "22"
|
|
300
|
+
},
|
|
301
|
+
{
|
|
302
|
+
"permissionName": "ohos.permission.CUSTOM_SCREEN_RECORDING",
|
|
303
|
+
"permissionDisplayName": "CUSTOM_SCREEN_RECORDING",
|
|
304
|
+
"minSupportApiLevel": "22"
|
|
305
|
+
},
|
|
306
|
+
{
|
|
307
|
+
"permissionName": "ohos.permission.GET_IP_MAC_INFO",
|
|
308
|
+
"permissionDisplayName": "GET_IP_MAC_INFO",
|
|
309
|
+
"minSupportApiLevel": "22"
|
|
310
|
+
}
|
|
311
|
+
]
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
{
|
|
2
|
-
"app": {
|
|
3
|
-
"bundleName": "com.example.myapplication",
|
|
4
|
-
"vendor": "example",
|
|
5
|
-
"versionCode": 1000000,
|
|
6
|
-
"versionName": "1.0.0",
|
|
7
|
-
"icon": "$media:layered_image",
|
|
8
|
-
"label": "$string:app_name"
|
|
9
|
-
}
|
|
10
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"app": {
|
|
3
|
+
"bundleName": "com.example.myapplication",
|
|
4
|
+
"vendor": "example",
|
|
5
|
+
"versionCode": 1000000,
|
|
6
|
+
"versionName": "1.0.0",
|
|
7
|
+
"icon": "$media:layered_image",
|
|
8
|
+
"label": "$string:app_name"
|
|
9
|
+
}
|
|
10
|
+
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
{
|
|
2
|
-
"string": [
|
|
3
|
-
{
|
|
4
|
-
"name": "app_name",
|
|
5
|
-
"value": "MyApplication"
|
|
6
|
-
}
|
|
7
|
-
]
|
|
8
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"string": [
|
|
3
|
+
{
|
|
4
|
+
"name": "app_name",
|
|
5
|
+
"value": "MyApplication"
|
|
6
|
+
}
|
|
7
|
+
]
|
|
8
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
{
|
|
2
|
-
"layered-image":
|
|
3
|
-
{
|
|
4
|
-
"background" : "$media:background",
|
|
5
|
-
"foreground" : "$media:foreground"
|
|
6
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"layered-image":
|
|
3
|
+
{
|
|
4
|
+
"background" : "$media:background",
|
|
5
|
+
"foreground" : "$media:foreground"
|
|
6
|
+
}
|
|
7
7
|
}
|
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
{
|
|
2
|
-
"app": {
|
|
3
|
-
"signingConfigs": [],
|
|
4
|
-
"products": [
|
|
5
|
-
{
|
|
6
|
-
"name": "default",
|
|
7
|
-
"signingConfig": "default",
|
|
8
|
-
"targetSdkVersion": "6.0.2(22)",
|
|
9
|
-
"compatibleSdkVersion": "6.0.2(22)",
|
|
10
|
-
"runtimeOS": "HarmonyOS",
|
|
11
|
-
"buildOption": {
|
|
12
|
-
"strictMode": {
|
|
13
|
-
"caseSensitiveCheck": true,
|
|
14
|
-
"useNormalizedOHMUrl": true
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
],
|
|
19
|
-
"buildModeSet": [
|
|
20
|
-
{
|
|
21
|
-
"name": "debug",
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
"name": "release"
|
|
25
|
-
}
|
|
26
|
-
]
|
|
27
|
-
},
|
|
28
|
-
"modules": [
|
|
29
|
-
{
|
|
30
|
-
"name": "entry",
|
|
31
|
-
"srcPath": "./entry",
|
|
32
|
-
"targets": [
|
|
33
|
-
{
|
|
34
|
-
"name": "default",
|
|
35
|
-
"applyToProducts": [
|
|
36
|
-
"default"
|
|
37
|
-
]
|
|
38
|
-
}
|
|
39
|
-
]
|
|
40
|
-
}
|
|
41
|
-
]
|
|
1
|
+
{
|
|
2
|
+
"app": {
|
|
3
|
+
"signingConfigs": [],
|
|
4
|
+
"products": [
|
|
5
|
+
{
|
|
6
|
+
"name": "default",
|
|
7
|
+
"signingConfig": "default",
|
|
8
|
+
"targetSdkVersion": "6.0.2(22)",
|
|
9
|
+
"compatibleSdkVersion": "6.0.2(22)",
|
|
10
|
+
"runtimeOS": "HarmonyOS",
|
|
11
|
+
"buildOption": {
|
|
12
|
+
"strictMode": {
|
|
13
|
+
"caseSensitiveCheck": true,
|
|
14
|
+
"useNormalizedOHMUrl": true
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
],
|
|
19
|
+
"buildModeSet": [
|
|
20
|
+
{
|
|
21
|
+
"name": "debug",
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"name": "release"
|
|
25
|
+
}
|
|
26
|
+
]
|
|
27
|
+
},
|
|
28
|
+
"modules": [
|
|
29
|
+
{
|
|
30
|
+
"name": "entry",
|
|
31
|
+
"srcPath": "./entry",
|
|
32
|
+
"targets": [
|
|
33
|
+
{
|
|
34
|
+
"name": "default",
|
|
35
|
+
"applyToProducts": [
|
|
36
|
+
"default"
|
|
37
|
+
]
|
|
38
|
+
}
|
|
39
|
+
]
|
|
40
|
+
}
|
|
41
|
+
]
|
|
42
42
|
}
|
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
{
|
|
2
|
-
"files": [
|
|
3
|
-
"**/*.ets"
|
|
4
|
-
],
|
|
5
|
-
"ignore": [
|
|
6
|
-
"**/src/ohosTest/**/*",
|
|
7
|
-
"**/src/test/**/*",
|
|
8
|
-
"**/src/mock/**/*",
|
|
9
|
-
"**/node_modules/**/*",
|
|
10
|
-
"**/oh_modules/**/*",
|
|
11
|
-
"**/build/**/*",
|
|
12
|
-
"**/.preview/**/*"
|
|
13
|
-
],
|
|
14
|
-
"ruleSet": [
|
|
15
|
-
"plugin:@performance/recommended",
|
|
16
|
-
"plugin:@typescript-eslint/recommended"
|
|
17
|
-
],
|
|
18
|
-
"rules": {
|
|
19
|
-
"@security/no-unsafe-aes": "error",
|
|
20
|
-
"@security/no-unsafe-hash": "error",
|
|
21
|
-
"@security/no-unsafe-mac": "warn",
|
|
22
|
-
"@security/no-unsafe-dh": "error",
|
|
23
|
-
"@security/no-unsafe-dsa": "error",
|
|
24
|
-
"@security/no-unsafe-ecdsa": "error",
|
|
25
|
-
"@security/no-unsafe-rsa-encrypt": "error",
|
|
26
|
-
"@security/no-unsafe-rsa-sign": "error",
|
|
27
|
-
"@security/no-unsafe-rsa-key": "error",
|
|
28
|
-
"@security/no-unsafe-dsa-key": "error",
|
|
29
|
-
"@security/no-unsafe-dh-key": "error",
|
|
30
|
-
"@security/no-unsafe-3des": "error"
|
|
31
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"files": [
|
|
3
|
+
"**/*.ets"
|
|
4
|
+
],
|
|
5
|
+
"ignore": [
|
|
6
|
+
"**/src/ohosTest/**/*",
|
|
7
|
+
"**/src/test/**/*",
|
|
8
|
+
"**/src/mock/**/*",
|
|
9
|
+
"**/node_modules/**/*",
|
|
10
|
+
"**/oh_modules/**/*",
|
|
11
|
+
"**/build/**/*",
|
|
12
|
+
"**/.preview/**/*"
|
|
13
|
+
],
|
|
14
|
+
"ruleSet": [
|
|
15
|
+
"plugin:@performance/recommended",
|
|
16
|
+
"plugin:@typescript-eslint/recommended"
|
|
17
|
+
],
|
|
18
|
+
"rules": {
|
|
19
|
+
"@security/no-unsafe-aes": "error",
|
|
20
|
+
"@security/no-unsafe-hash": "error",
|
|
21
|
+
"@security/no-unsafe-mac": "warn",
|
|
22
|
+
"@security/no-unsafe-dh": "error",
|
|
23
|
+
"@security/no-unsafe-dsa": "error",
|
|
24
|
+
"@security/no-unsafe-ecdsa": "error",
|
|
25
|
+
"@security/no-unsafe-rsa-encrypt": "error",
|
|
26
|
+
"@security/no-unsafe-rsa-sign": "error",
|
|
27
|
+
"@security/no-unsafe-rsa-key": "error",
|
|
28
|
+
"@security/no-unsafe-dsa-key": "error",
|
|
29
|
+
"@security/no-unsafe-dh-key": "error",
|
|
30
|
+
"@security/no-unsafe-3des": "error"
|
|
31
|
+
}
|
|
32
32
|
}
|