@multiplatform.one/gpg 7.17.0 → 7.19.0
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/dist/cjs/GpgIcon.cjs +55 -0
- package/dist/cjs/GpgIcon.native.js +72 -0
- package/dist/cjs/GpgIcon.native.js.map +1 -0
- package/dist/cjs/GpgProvider.cjs +7 -4
- package/dist/cjs/GpgProvider.native.js +7 -4
- package/dist/cjs/GpgProvider.native.js.map +1 -1
- package/dist/cjs/index.cjs +7 -1
- package/dist/cjs/index.native.js +7 -1
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/screens.cjs +9 -2
- package/dist/cjs/screens.native.js +15 -2
- package/dist/cjs/screens.native.js.map +1 -1
- package/dist/cjs/signature.cjs +113 -0
- package/dist/cjs/signature.native.js +124 -0
- package/dist/cjs/signature.native.js.map +1 -0
- package/dist/cjs/signer.cjs +119 -0
- package/dist/cjs/signer.native.js +150 -0
- package/dist/cjs/signer.native.js.map +1 -0
- package/dist/esm/GpgIcon.mjs +30 -0
- package/dist/esm/GpgIcon.mjs.map +1 -0
- package/dist/esm/GpgIcon.native.js +33 -0
- package/dist/esm/GpgIcon.native.js.map +1 -0
- package/dist/esm/GpgProvider.mjs +7 -4
- package/dist/esm/GpgProvider.mjs.map +1 -1
- package/dist/esm/GpgProvider.native.js +7 -4
- package/dist/esm/GpgProvider.native.js.map +1 -1
- package/dist/esm/index.mjs +2 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +2 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/screens.mjs +9 -2
- package/dist/esm/screens.mjs.map +1 -1
- package/dist/esm/screens.native.js +15 -2
- package/dist/esm/screens.native.js.map +1 -1
- package/dist/esm/signature.mjs +88 -0
- package/dist/esm/signature.mjs.map +1 -0
- package/dist/esm/signature.native.js +96 -0
- package/dist/esm/signature.native.js.map +1 -0
- package/dist/esm/signer.mjs +88 -0
- package/dist/esm/signer.mjs.map +1 -0
- package/dist/esm/signer.native.js +116 -0
- package/dist/esm/signer.native.js.map +1 -0
- package/package.json +16 -3
- package/src/GpgIcon.tsx +20 -0
- package/src/GpgProvider.tsx +7 -19
- package/src/index.ts +10 -1
- package/src/screens.tsx +11 -1
- package/src/signature.ts +120 -0
- package/src/signer.ts +142 -0
- package/types/GpgIcon.d.ts +3 -0
- package/types/GpgIcon.d.ts.map +1 -0
- package/types/GpgProvider.d.ts.map +1 -1
- package/types/index.d.ts +1 -0
- package/types/index.d.ts.map +1 -1
- package/types/screens.d.ts.map +1 -1
- package/types/signature.d.ts +6 -0
- package/types/signature.d.ts.map +1 -0
- package/types/signer.d.ts +47 -0
- package/types/signer.d.ts.map +1 -0
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all) __defProp(target, name, {
|
|
7
|
+
get: all[name],
|
|
8
|
+
enumerable: true
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
14
|
+
get: () => from[key],
|
|
15
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
21
|
+
value: true
|
|
22
|
+
}), mod);
|
|
23
|
+
var signer_exports = {};
|
|
24
|
+
__export(signer_exports, {
|
|
25
|
+
GPG_PUBLIC_KEY_BEGIN: () => GPG_PUBLIC_KEY_BEGIN,
|
|
26
|
+
GPG_SIGNATURE_BEGIN: () => GPG_SIGNATURE_BEGIN,
|
|
27
|
+
assertGpgSignature: () => assertGpgSignature,
|
|
28
|
+
createGpgSigner: () => createGpgSigner,
|
|
29
|
+
gpgSignCommand: () => gpgSignCommand,
|
|
30
|
+
gpgSignatureCovers: () => import_signature2.gpgSignatureCovers,
|
|
31
|
+
useGpgSigner: () => useGpgSigner
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(signer_exports);
|
|
34
|
+
var import_react = require("react");
|
|
35
|
+
var import_signature = require("./signature.cjs");
|
|
36
|
+
var import_signature2 = require("./signature.cjs");
|
|
37
|
+
const GPG_SIGNATURE_BEGIN = "-----BEGIN PGP SIGNATURE-----";
|
|
38
|
+
const GPG_PUBLIC_KEY_BEGIN = "-----BEGIN PGP PUBLIC KEY BLOCK-----";
|
|
39
|
+
function gpgSignCommand(message) {
|
|
40
|
+
return `{ printf %s '${message.replace(/'/g, "'\\''")}' | gpg --detach-sign --armor; gpg --armor --export; }`;
|
|
41
|
+
}
|
|
42
|
+
function assertGpgSignature(blob) {
|
|
43
|
+
const trimmed = blob.trim();
|
|
44
|
+
if (!trimmed.includes(GPG_SIGNATURE_BEGIN) || !trimmed.includes(GPG_PUBLIC_KEY_BEGIN)) {
|
|
45
|
+
throw new Error("Paste the FULL output \u2014 it must contain both a PGP SIGNATURE and a PUBLIC KEY block.");
|
|
46
|
+
}
|
|
47
|
+
return trimmed;
|
|
48
|
+
}
|
|
49
|
+
function createGpgSigner() {
|
|
50
|
+
let pending = null;
|
|
51
|
+
let settle = null;
|
|
52
|
+
const listeners = /* @__PURE__ */new Set();
|
|
53
|
+
const emit = () => {
|
|
54
|
+
for (const listener of listeners) listener();
|
|
55
|
+
};
|
|
56
|
+
const signer = {
|
|
57
|
+
family: "gpg",
|
|
58
|
+
address: null,
|
|
59
|
+
capabilities: ["signMessage"],
|
|
60
|
+
get pending() {
|
|
61
|
+
return pending;
|
|
62
|
+
},
|
|
63
|
+
signMessage(message) {
|
|
64
|
+
settle?.reject(new Error("GPG signing was superseded by a newer request"));
|
|
65
|
+
return new Promise((resolve, reject) => {
|
|
66
|
+
settle = {
|
|
67
|
+
resolve,
|
|
68
|
+
reject
|
|
69
|
+
};
|
|
70
|
+
pending = {
|
|
71
|
+
message,
|
|
72
|
+
command: gpgSignCommand(message)
|
|
73
|
+
};
|
|
74
|
+
emit();
|
|
75
|
+
});
|
|
76
|
+
},
|
|
77
|
+
submit(blob, request) {
|
|
78
|
+
if (!settle || !pending) throw new Error("No GPG signature was requested");
|
|
79
|
+
if (request !== pending) {
|
|
80
|
+
throw new Error("That GPG request was superseded; run the current command and paste its output");
|
|
81
|
+
}
|
|
82
|
+
const signature = assertGpgSignature(blob);
|
|
83
|
+
if (!(0, import_signature.gpgSignatureCovers)(signature, pending.message)) {
|
|
84
|
+
throw new Error("That signature is over a different message; run the current command and paste its output");
|
|
85
|
+
}
|
|
86
|
+
const {
|
|
87
|
+
resolve
|
|
88
|
+
} = settle;
|
|
89
|
+
settle = null;
|
|
90
|
+
pending = null;
|
|
91
|
+
emit();
|
|
92
|
+
resolve(signature);
|
|
93
|
+
},
|
|
94
|
+
cancel(reason) {
|
|
95
|
+
if (!settle) return;
|
|
96
|
+
const {
|
|
97
|
+
reject
|
|
98
|
+
} = settle;
|
|
99
|
+
settle = null;
|
|
100
|
+
pending = null;
|
|
101
|
+
emit();
|
|
102
|
+
reject(reason ?? new Error("GPG signing was cancelled"));
|
|
103
|
+
},
|
|
104
|
+
subscribe(listener) {
|
|
105
|
+
listeners.add(listener);
|
|
106
|
+
return () => listeners.delete(listener);
|
|
107
|
+
}
|
|
108
|
+
};
|
|
109
|
+
return signer;
|
|
110
|
+
}
|
|
111
|
+
function useGpgSigner(signer = defaultSigner()) {
|
|
112
|
+
(0, import_react.useSyncExternalStore)(signer.subscribe, () => signer.pending, () => signer.pending);
|
|
113
|
+
return signer;
|
|
114
|
+
}
|
|
115
|
+
let sharedSigner = null;
|
|
116
|
+
function defaultSigner() {
|
|
117
|
+
sharedSigner ??= createGpgSigner();
|
|
118
|
+
return sharedSigner;
|
|
119
|
+
}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
16
|
+
get: () => from[key],
|
|
17
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
22
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
23
|
+
value: true
|
|
24
|
+
}), mod);
|
|
25
|
+
var signer_exports = {};
|
|
26
|
+
__export(signer_exports, {
|
|
27
|
+
GPG_PUBLIC_KEY_BEGIN: () => GPG_PUBLIC_KEY_BEGIN,
|
|
28
|
+
GPG_SIGNATURE_BEGIN: () => GPG_SIGNATURE_BEGIN,
|
|
29
|
+
assertGpgSignature: () => assertGpgSignature,
|
|
30
|
+
createGpgSigner: () => createGpgSigner,
|
|
31
|
+
gpgSignCommand: () => gpgSignCommand,
|
|
32
|
+
gpgSignatureCovers: () => import_signature2.gpgSignatureCovers,
|
|
33
|
+
useGpgSigner: () => useGpgSigner
|
|
34
|
+
});
|
|
35
|
+
module.exports = __toCommonJS(signer_exports);
|
|
36
|
+
var import_react = require("react");
|
|
37
|
+
var import_signature = require("./signature.native.js");
|
|
38
|
+
var import_signature2 = require("./signature.native.js");
|
|
39
|
+
var GPG_SIGNATURE_BEGIN = "-----BEGIN PGP SIGNATURE-----";
|
|
40
|
+
var GPG_PUBLIC_KEY_BEGIN = "-----BEGIN PGP PUBLIC KEY BLOCK-----";
|
|
41
|
+
function gpgSignCommand(message) {
|
|
42
|
+
return `{ printf %s '${message.replace(/'/g, "'\\''")}' | gpg --detach-sign --armor; gpg --armor --export; }`;
|
|
43
|
+
}
|
|
44
|
+
function assertGpgSignature(blob) {
|
|
45
|
+
var trimmed = blob.trim();
|
|
46
|
+
if (!trimmed.includes(GPG_SIGNATURE_BEGIN) || !trimmed.includes(GPG_PUBLIC_KEY_BEGIN)) {
|
|
47
|
+
throw new Error("Paste the FULL output \u2014 it must contain both a PGP SIGNATURE and a PUBLIC KEY block.");
|
|
48
|
+
}
|
|
49
|
+
return trimmed;
|
|
50
|
+
}
|
|
51
|
+
function createGpgSigner() {
|
|
52
|
+
var pending = null;
|
|
53
|
+
var settle = null;
|
|
54
|
+
var listeners = /* @__PURE__ */new Set();
|
|
55
|
+
var emit = function emit2() {
|
|
56
|
+
var _iteratorNormalCompletion = true,
|
|
57
|
+
_didIteratorError = false,
|
|
58
|
+
_iteratorError = void 0;
|
|
59
|
+
try {
|
|
60
|
+
for (var _iterator = listeners[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
61
|
+
var listener = _step.value;
|
|
62
|
+
listener();
|
|
63
|
+
}
|
|
64
|
+
} catch (err) {
|
|
65
|
+
_didIteratorError = true;
|
|
66
|
+
_iteratorError = err;
|
|
67
|
+
} finally {
|
|
68
|
+
try {
|
|
69
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
70
|
+
_iterator.return();
|
|
71
|
+
}
|
|
72
|
+
} finally {
|
|
73
|
+
if (_didIteratorError) {
|
|
74
|
+
throw _iteratorError;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
var signer = {
|
|
80
|
+
family: "gpg",
|
|
81
|
+
address: null,
|
|
82
|
+
capabilities: ["signMessage"],
|
|
83
|
+
get pending() {
|
|
84
|
+
return pending;
|
|
85
|
+
},
|
|
86
|
+
signMessage(message) {
|
|
87
|
+
settle === null || settle === void 0 ? void 0 : settle.reject(new Error("GPG signing was superseded by a newer request"));
|
|
88
|
+
return new Promise(function (resolve, reject) {
|
|
89
|
+
settle = {
|
|
90
|
+
resolve,
|
|
91
|
+
reject
|
|
92
|
+
};
|
|
93
|
+
pending = {
|
|
94
|
+
message,
|
|
95
|
+
command: gpgSignCommand(message)
|
|
96
|
+
};
|
|
97
|
+
emit();
|
|
98
|
+
});
|
|
99
|
+
},
|
|
100
|
+
submit(blob, request) {
|
|
101
|
+
if (!settle || !pending) throw new Error("No GPG signature was requested");
|
|
102
|
+
if (request !== pending) {
|
|
103
|
+
throw new Error("That GPG request was superseded; run the current command and paste its output");
|
|
104
|
+
}
|
|
105
|
+
var signature = assertGpgSignature(blob);
|
|
106
|
+
if (!(0, import_signature.gpgSignatureCovers)(signature, pending.message)) {
|
|
107
|
+
throw new Error("That signature is over a different message; run the current command and paste its output");
|
|
108
|
+
}
|
|
109
|
+
var {
|
|
110
|
+
resolve
|
|
111
|
+
} = settle;
|
|
112
|
+
settle = null;
|
|
113
|
+
pending = null;
|
|
114
|
+
emit();
|
|
115
|
+
resolve(signature);
|
|
116
|
+
},
|
|
117
|
+
cancel(reason) {
|
|
118
|
+
if (!settle) return;
|
|
119
|
+
var {
|
|
120
|
+
reject
|
|
121
|
+
} = settle;
|
|
122
|
+
settle = null;
|
|
123
|
+
pending = null;
|
|
124
|
+
emit();
|
|
125
|
+
reject(reason !== null && reason !== void 0 ? reason : new Error("GPG signing was cancelled"));
|
|
126
|
+
},
|
|
127
|
+
subscribe(listener) {
|
|
128
|
+
listeners.add(listener);
|
|
129
|
+
return function () {
|
|
130
|
+
return listeners.delete(listener);
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
};
|
|
134
|
+
return signer;
|
|
135
|
+
}
|
|
136
|
+
function useGpgSigner() {
|
|
137
|
+
var signer = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : defaultSigner();
|
|
138
|
+
(0, import_react.useSyncExternalStore)(signer.subscribe, function () {
|
|
139
|
+
return signer.pending;
|
|
140
|
+
}, function () {
|
|
141
|
+
return signer.pending;
|
|
142
|
+
});
|
|
143
|
+
return signer;
|
|
144
|
+
}
|
|
145
|
+
var sharedSigner = null;
|
|
146
|
+
function defaultSigner() {
|
|
147
|
+
sharedSigner !== null && sharedSigner !== void 0 ? sharedSigner : sharedSigner = createGpgSigner();
|
|
148
|
+
return sharedSigner;
|
|
149
|
+
}
|
|
150
|
+
//# sourceMappingURL=signer.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","signer_exports","__export","GPG_PUBLIC_KEY_BEGIN","GPG_SIGNATURE_BEGIN","assertGpgSignature","createGpgSigner","gpgSignCommand","gpgSignatureCovers","import_signature2","useGpgSigner","module","exports","import_react","require","import_signature","message","replace","blob","trimmed","trim","includes","Error","pending","settle","listeners","Set","emit","emit2","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","listener","err","return","signer","family","address","capabilities","signMessage","reject","Promise","resolve","command","submit","request","signature","cancel","reason"],"sources":["../../src/signer.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,cAAA;AAAAC,QAAA,CAAAD,cAAA;EAAAE,oBAAA,EAAAA,CAAA,KAAAA,oBAAA;EAAAC,mBAAA,EAAAA,CAAA,KAAAA,mBAAA;EAAAC,kBAAA,EAAAA,CAAA,KAAAA,kBAAA;EAAAC,eAAA,EAAAA,CAAA,KAAAA,eAAA;EAAAC,cAAA,EAAAA,CAAA,KAAAA,cAAA;EAAAC,kBAAA,EAAAA,CAAA,KAAAC,iBAAA,CAAAD,kBAAA;EAAAE,YAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAhB,YAAqC,CAAAK,cAAA;AACrC,IAAAY,YAAA,GAAAC,OAAmC;AAEnC,IAAAC,gBAAA,GAAAD,OAAmC;AAS5B,IAAAL,iBAAM,GAAAK,OAAsB;AAC5B,IAAAV,mBAAM,kCAAuB;AAQ7B,IAAAD,oBAAwB,yCAAyB;AACtD,SAAOI,eAAAS,OAAgB,EAAQ;EACjC,uBAAAA,OAAA,CAAAC,OAAA;AAGO;AACL,SAAMZ,kBAAeA,CAAKa,IAAA;EAC1B,IAAIC,OAAC,GAAQD,IAAA,CAAAE,IAAS;EACpB,KAAAD,OAAU,CAAAE,QAAA,CAAAjB,mBAAA,MAAAe,OAAA,CAAAE,QAAA,CAAAlB,oBAAA;IAAA,MACR,IAAAmB,KAAA;EAAA;EAEJ,OAAAH,OAAA;AACA;AACF,SAAAb,gBAAA;EA+BO,IAAAiB,OAAS;EACd,IAAIC,MAAA,OAAiC;EACrC,IAAIC,SAAqF,sBAAAC,GAAA;EACzF,IAAAC,IAAM,YAAYC,MAAA;IAClB,IAAMC,yBAAa;MAAAC,iBAAA;MAAAC,cAAA;IACjB;MACF,SAAAC,SAAA,GAAAP,SAAA,CAAAQ,MAAA,CAAAC,QAAA,KAAAC,KAAA,IAAAN,yBAAA,IAAAM,KAAA,GAAAH,SAAA,CAAAI,IAAA,IAAAC,IAAA,GAAAR,yBAAA;QAEM,IAAAS,QAAoB,GAAAH,KAAA,CAAAnC,KAAA;QACxBsC,QAAQ;MACR;IACA,SAAAC,GAAA,EAAc;MACdT,iBAAc;MACZC,cAAO,GAAAQ,GAAA;IACT;MACA;QACE,KAAAV,yBAAyB,IAAAG,SAAA,CAAAQ,MAAA;UACzBR,SAAW,CAAAQ,MAAiB;QAC1B;MACA;QACA,IAAAV,iBAAK;UACN,MAAAC,cAAA;QACH;MACA;IACE;EACA;EACE,IAAAU,MAAA,GAAM;IAAIC,MACR;IAAAC,OACF;IAAAC,YACF,GACA,aAAM,CACN;IACE,IAAArB,OAAMA,CAAA,EAAI;MAAA,OACRA,OAAA;IAAA;IACFsB,WACFA,CAAA7B,OAAA;MACAQ,MAAM,KAAE,QAAQA,MAAI,uBAAAA,MAAA,CAAAsB,MAAA,KAAAxB,KAAA;MACpB,WAASyB,OAAA,WAAAC,OAAA,EAAAF,MAAA;QACTtB,MAAA,GAAU;UACVwB,OAAK;UACLF;QACF;QACAvB,OAAO;UACDP,OAAC;UACLiC,OAAQ,EAAA1C,cAAW,CAAAS,OAAA;QACnB;QACAW,IAAA;MACA;IACA;IACFuB,OAAAhC,IAAA,EAAAiC,OAAA;MACA,KAAA3B,MAAU,KAAAD,OAAU,YAAAD,KAAA;MAClB,IAAA6B,OAAU,KAAI5B,OAAQ;QACtB,MAAO,IAAAD,KAAM,gFAAyB;MACxC;MACF,IAAA8B,SAAA,GAAA/C,kBAAA,CAAAa,IAAA;MACA,IAAO,KAAAH,gBAAA,CAAAP,kBAAA,EAAA4C,SAAA,EAAA7B,OAAA,CAAAP,OAAA;QACT,UAAAM,KAAA;MAOO;MACL;QAAA0B;MAAA,IAAAxB,MAAA;MACEA,MAAO;MACPD,OAAM,OAAO;MACbI,IAAM;MACRqB,OAAA,CAAAI,SAAA;IACA;IACFC,OAAAC,MAAA;MAEI,KAAA9B,MAAA,EAAiC;MACrC,IAAS;QAAAsB;MAAA,IAAAtB,MAA2B;MAClCA,MAAA,OAAiB;MACjBD,OAAO;MACTI,IAAA","ignoreList":[]}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
|
+
const GpgIcon = () => /* @__PURE__ */jsxs("svg", {
|
|
3
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
4
|
+
width: "100%",
|
|
5
|
+
height: "100%",
|
|
6
|
+
viewBox: "0 0 32 32",
|
|
7
|
+
"aria-hidden": "true",
|
|
8
|
+
children: [/* @__PURE__ */jsx("rect", {
|
|
9
|
+
width: "32",
|
|
10
|
+
height: "32",
|
|
11
|
+
fill: "#0093DD"
|
|
12
|
+
}), /* @__PURE__ */jsxs("g", {
|
|
13
|
+
fill: "none",
|
|
14
|
+
stroke: "#FFFFFF",
|
|
15
|
+
strokeWidth: "2.2",
|
|
16
|
+
strokeLinecap: "round",
|
|
17
|
+
strokeLinejoin: "round",
|
|
18
|
+
children: [/* @__PURE__ */jsx("circle", {
|
|
19
|
+
cx: "11.5",
|
|
20
|
+
cy: "19.5",
|
|
21
|
+
r: "4.5"
|
|
22
|
+
}), /* @__PURE__ */jsx("path", {
|
|
23
|
+
d: "m14.7 16.3 9.3-9.3"
|
|
24
|
+
}), /* @__PURE__ */jsx("path", {
|
|
25
|
+
d: "m20 11 3 3 2.5-2.5-3-3"
|
|
26
|
+
})]
|
|
27
|
+
})]
|
|
28
|
+
});
|
|
29
|
+
export { GpgIcon };
|
|
30
|
+
//# sourceMappingURL=GpgIcon.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["jsx","jsxs","GpgIcon","xmlns","width","height","viewBox","children","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin","cx","cy","r","d"],"sources":["../../src/GpgIcon.tsx"],"sourcesContent":[null],"mappings":"AAYI,SAAAA,GAAA,EACAC,IAAA,QADA;AARG,MAAMC,OAAA,GAAoBA,CAAA,KAC/B,eAAAD,IAAA,CAAC;EACCE,KAAA,EAAM;EACNC,KAAA,EAAM;EACNC,MAAA,EAAO;EACPC,OAAA,EAAQ;EACR,eAAY;EAEZC,QAAA,kBAAAP,GAAA,CAAC;IAAKI,KAAA,EAAM;IAAKC,MAAA,EAAO;IAAKG,IAAA,EAAK;EAAA,CAAU,GAC5C,eAAAP,IAAA,CAAC;IAAEO,IAAA,EAAK;IAAOC,MAAA,EAAO;IAAUC,WAAA,EAAY;IAAMC,aAAA,EAAc;IAAQC,cAAA,EAAe;IACrFL,QAAA,kBAAAP,GAAA,CAAC;MAAOa,EAAA,EAAG;MAAOC,EAAA,EAAG;MAAOC,CAAA,EAAE;IAAA,CAAM,GACpC,eAAAf,GAAA,CAAC;MAAKgB,CAAA,EAAE;IAAA,CAAqB,GAC7B,eAAAhB,GAAA,CAAC;MAAKgB,CAAA,EAAE;IAAA,CAAyB;EAAA,CACnC;AAAA,CACF","ignoreList":[]}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import React from "react";
|
|
3
|
+
var GpgIcon = function GpgIcon2() {
|
|
4
|
+
return /* @__PURE__ */_jsxs("svg", {
|
|
5
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
6
|
+
width: "100%",
|
|
7
|
+
height: "100%",
|
|
8
|
+
viewBox: "0 0 32 32",
|
|
9
|
+
"aria-hidden": "true",
|
|
10
|
+
children: [/* @__PURE__ */_jsx("rect", {
|
|
11
|
+
width: "32",
|
|
12
|
+
height: "32",
|
|
13
|
+
fill: "#0093DD"
|
|
14
|
+
}), /* @__PURE__ */_jsxs("g", {
|
|
15
|
+
fill: "none",
|
|
16
|
+
stroke: "#FFFFFF",
|
|
17
|
+
strokeWidth: "2.2",
|
|
18
|
+
strokeLinecap: "round",
|
|
19
|
+
strokeLinejoin: "round",
|
|
20
|
+
children: [/* @__PURE__ */_jsx("circle", {
|
|
21
|
+
cx: "11.5",
|
|
22
|
+
cy: "19.5",
|
|
23
|
+
r: "4.5"
|
|
24
|
+
}), /* @__PURE__ */_jsx("path", {
|
|
25
|
+
d: "m14.7 16.3 9.3-9.3"
|
|
26
|
+
}), /* @__PURE__ */_jsx("path", {
|
|
27
|
+
d: "m20 11 3 3 2.5-2.5-3-3"
|
|
28
|
+
})]
|
|
29
|
+
})]
|
|
30
|
+
});
|
|
31
|
+
};
|
|
32
|
+
export { GpgIcon };
|
|
33
|
+
//# sourceMappingURL=GpgIcon.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","React","GpgIcon","GpgIcon2","xmlns","width","height","viewBox","children","fill","stroke","strokeWidth"],"sources":["../../src/GpgIcon.tsx"],"sourcesContent":[null],"mappings":"AAYI,SAAAA,GAAA,IACAC,IAAA,EAAAC,IADA,IAAAC,KAAA;AARG,OAAMC,KAAA,MAAoB,OAC/B;AAAA,IAACC,OAAA,YAAAC,SAAA;EAAA,sBAAAH,KAAA;IACCI,KAAA,EAAM;IACNC,KAAA,EAAM;IACNC,MAAA,EAAO;IACPC,OAAA,EAAQ;IACR,eAAY;IAEZC,QAAA,kBAAAV,IAAC;MACDO,KAAA;MACEC,MAAA;MACAG,IAAA;IAA6B,EAC7B,EAAiC,eACnCT,KAAA;MAAAS,IAAA;MAAAC,MAAA;MACFC,WAAA","ignoreList":[]}
|
package/dist/esm/GpgProvider.mjs
CHANGED
|
@@ -2,6 +2,7 @@ import { useContext, useMemo, useRef, useState } from "react";
|
|
|
2
2
|
import { useQuery } from "@tanstack/react-query";
|
|
3
3
|
import { Context as ConnectKitContext } from "@multiplatform.one/connectkit";
|
|
4
4
|
import { GpgContext, GpgStatusState } from "./GpgContext.mjs";
|
|
5
|
+
import { assertGpgSignature, gpgSignCommand } from "./signer.mjs";
|
|
5
6
|
import { jsx } from "react/jsx-runtime";
|
|
6
7
|
const GPG_NONCE_QUERY_KEY = "ckGpgNonce";
|
|
7
8
|
const b64 = s => window.btoa(unescape(encodeURIComponent(s)));
|
|
@@ -47,12 +48,14 @@ const GpgProvider = ({
|
|
|
47
48
|
const message = useMemo(() => nonce.data ? (buildMessageRef.current ?? defaultBuildMessage)({
|
|
48
49
|
nonce: nonce.data
|
|
49
50
|
}) : null, [nonce.data]);
|
|
50
|
-
const command = useMemo(() => message ?
|
|
51
|
+
const command = useMemo(() => message ? gpgSignCommand(message) : null, [message]);
|
|
51
52
|
const signIn = async pastedBlob => {
|
|
52
|
-
|
|
53
|
-
|
|
53
|
+
let blob;
|
|
54
|
+
try {
|
|
55
|
+
blob = assertGpgSignature(pastedBlob);
|
|
56
|
+
} catch (error) {
|
|
54
57
|
setStatus(GpgStatusState.ERROR);
|
|
55
|
-
throw
|
|
58
|
+
throw error;
|
|
56
59
|
}
|
|
57
60
|
if (!message) {
|
|
58
61
|
setStatus(GpgStatusState.ERROR);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useContext","useMemo","useRef","useState","useQuery","Context","ConnectKitContext","GpgContext","GpgStatusState","jsx","GPG_NONCE_QUERY_KEY","b64","s","window","btoa","unescape","encodeURIComponent","defaultBuildMessage","nonce","location","host","origin","Date","toISOString","GpgProvider","children","enabled","nonceRefetchInterval","buildMessage","onSignIn","gpgConfig","status","setStatus","READY","resetStatus","Error","queryKey","queryFn","getNonce","refetchInterval","refetchOnWindowFocus","refetchOnReconnect","staleTime","Infinity","buildMessageRef","current","message","data","command","
|
|
1
|
+
{"version":3,"names":["useContext","useMemo","useRef","useState","useQuery","Context","ConnectKitContext","GpgContext","GpgStatusState","assertGpgSignature","gpgSignCommand","jsx","GPG_NONCE_QUERY_KEY","b64","s","window","btoa","unescape","encodeURIComponent","defaultBuildMessage","nonce","location","host","origin","Date","toISOString","GpgProvider","children","enabled","nonceRefetchInterval","buildMessage","onSignIn","gpgConfig","status","setStatus","READY","resetStatus","Error","queryKey","queryFn","getNonce","refetchInterval","refetchOnWindowFocus","refetchOnReconnect","staleTime","Infinity","buildMessageRef","current","message","data","command","signIn","pastedBlob","blob","error","ERROR","LOADING","result","onSign","username","password","SUCCESS","Provider","value"],"sources":["../../src/GpgProvider.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -3,6 +3,7 @@ import { useContext, useMemo, useRef, useState } from "react";
|
|
|
3
3
|
import { useQuery } from "@tanstack/react-query";
|
|
4
4
|
import { Context as ConnectKitContext } from "@multiplatform.one/connectkit";
|
|
5
5
|
import { GpgContext, GpgStatusState } from "./GpgContext.native.js";
|
|
6
|
+
import { assertGpgSignature, gpgSignCommand } from "./signer.native.js";
|
|
6
7
|
var GPG_NONCE_QUERY_KEY = "ckGpgNonce";
|
|
7
8
|
var b64 = function b642(s) {
|
|
8
9
|
return window.btoa(unescape(encodeURIComponent(s)));
|
|
@@ -59,13 +60,15 @@ var GpgProvider = function GpgProvider2(param) {
|
|
|
59
60
|
}) : null;
|
|
60
61
|
}, [nonce.data]);
|
|
61
62
|
var command = useMemo(function () {
|
|
62
|
-
return message ?
|
|
63
|
+
return message ? gpgSignCommand(message) : null;
|
|
63
64
|
}, [message]);
|
|
64
65
|
var signIn = async function signIn2(pastedBlob) {
|
|
65
|
-
var blob
|
|
66
|
-
|
|
66
|
+
var blob;
|
|
67
|
+
try {
|
|
68
|
+
blob = assertGpgSignature(pastedBlob);
|
|
69
|
+
} catch (error) {
|
|
67
70
|
setStatus(GpgStatusState.ERROR);
|
|
68
|
-
throw
|
|
71
|
+
throw error;
|
|
69
72
|
}
|
|
70
73
|
if (!message) {
|
|
71
74
|
setStatus(GpgStatusState.ERROR);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["jsx","_jsx","useContext","useMemo","useRef","useState","useQuery","Context","ConnectKitContext","GpgContext","GpgStatusState","GPG_NONCE_QUERY_KEY","b64","b642","s","window","btoa","unescape","encodeURIComponent","defaultBuildMessage","param","nonce","location","host","origin","Date","toISOString","GpgProvider","GpgProvider2","children","enabled","nonceRefetchInterval","buildMessage","onSignIn","gpgConfig","status","setStatus","READY","resetStatus","resetStatus2","Error","queryKey","queryFn","getNonce","refetchInterval","refetchOnWindowFocus","refetchOnReconnect","staleTime","Infinity","buildMessageRef","current","message","_buildMessageRef_current","data","command","
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","useContext","useMemo","useRef","useState","useQuery","Context","ConnectKitContext","GpgContext","GpgStatusState","assertGpgSignature","gpgSignCommand","GPG_NONCE_QUERY_KEY","b64","b642","s","window","btoa","unescape","encodeURIComponent","defaultBuildMessage","param","nonce","location","host","origin","Date","toISOString","GpgProvider","GpgProvider2","children","enabled","nonceRefetchInterval","buildMessage","onSignIn","gpgConfig","status","setStatus","READY","resetStatus","resetStatus2","Error","queryKey","queryFn","getNonce","refetchInterval","refetchOnWindowFocus","refetchOnReconnect","staleTime","Infinity","buildMessageRef","current","message","_buildMessageRef_current","data","command","signIn","signIn2","pastedBlob","blob","error","ERROR","LOADING","result","onSign","username","password","SUCCESS","Provider","value"],"sources":["../../src/GpgProvider.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/esm/index.mjs
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { useGpg } from "./useGpg.mjs";
|
|
2
|
+
import { createGpgSigner, useGpgSigner, gpgSignCommand, assertGpgSignature, gpgSignatureCovers } from "./signer.mjs";
|
|
2
3
|
import { GpgProvider, GPG_NONCE_QUERY_KEY } from "./GpgProvider.mjs";
|
|
3
4
|
import { GpgContext, GpgStatusState } from "./GpgContext.mjs";
|
|
4
5
|
import { default as default2 } from "./SignInWithGpg.mjs";
|
|
5
6
|
import { default as default3, GPGButton } from "./GpgButton.mjs";
|
|
6
7
|
import { gpgScreen, GpgScreenRegistrar, GpgBridge } from "./screens.mjs";
|
|
7
|
-
export { GPGButton, GPG_NONCE_QUERY_KEY, GpgBridge, GpgContext, GpgProvider, GpgScreenRegistrar, GpgStatusState, default2 as SignInWithGpg, default3 as SignInWithGpgButton, gpgScreen, useGpg };
|
|
8
|
+
export { GPGButton, GPG_NONCE_QUERY_KEY, GpgBridge, GpgContext, GpgProvider, GpgScreenRegistrar, GpgStatusState, default2 as SignInWithGpg, default3 as SignInWithGpgButton, assertGpgSignature, createGpgSigner, gpgScreen, gpgSignCommand, gpgSignatureCovers, useGpg, useGpgSigner };
|
|
8
9
|
//# sourceMappingURL=index.mjs.map
|
package/dist/esm/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useGpg","GpgProvider","GPG_NONCE_QUERY_KEY","GpgContext","GpgStatusState","default","default2","default3","GPGButton","gpgScreen","GpgScreenRegistrar","GpgBridge"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAKA,SAASA,MAAA,QAAc;AACvB,SAASC,WAAA,EAAaC,mBAAA,QAA2B;AACjD,SAASC,UAAA,EAAYC,cAAA,QAAsB;AAG3C,SAAoBC,OAAA,IAAXC,QAAA,QAAgC;AACzC,SAAoBD,OAAA,IAAXE,QAAA,EAAgCC,SAAA,QAAiB;AAE1D,SAASC,SAAA,EAAWC,kBAAA,EAAoBC,SAAA,QAAiB","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useGpg","createGpgSigner","useGpgSigner","gpgSignCommand","assertGpgSignature","gpgSignatureCovers","GpgProvider","GPG_NONCE_QUERY_KEY","GpgContext","GpgStatusState","default","default2","default3","GPGButton","gpgScreen","GpgScreenRegistrar","GpgBridge"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAKA,SAASA,MAAA,QAAc;AACvB,SACEC,eAAA,EACAC,YAAA,EACAC,cAAA,EACAC,kBAAA,EACAC,kBAAA,QAGK;AACP,SAASC,WAAA,EAAaC,mBAAA,QAA2B;AACjD,SAASC,UAAA,EAAYC,cAAA,QAAsB;AAG3C,SAAoBC,OAAA,IAAXC,QAAA,QAAgC;AACzC,SAAoBD,OAAA,IAAXE,QAAA,EAAgCC,SAAA,QAAiB;AAE1D,SAASC,SAAA,EAAWC,kBAAA,EAAoBC,SAAA,QAAiB","ignoreList":[]}
|
package/dist/esm/index.native.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { useGpg } from "./useGpg.native.js";
|
|
2
|
+
import { createGpgSigner, useGpgSigner, gpgSignCommand, assertGpgSignature, gpgSignatureCovers } from "./signer.native.js";
|
|
2
3
|
import { GpgProvider, GPG_NONCE_QUERY_KEY } from "./GpgProvider.native.js";
|
|
3
4
|
import { GpgContext, GpgStatusState } from "./GpgContext.native.js";
|
|
4
5
|
import { default as default2 } from "./SignInWithGpg.native.js";
|
|
5
6
|
import { default as default3, GPGButton } from "./GpgButton.native.js";
|
|
6
7
|
import { gpgScreen, GpgScreenRegistrar, GpgBridge } from "./screens.native.js";
|
|
7
|
-
export { GPGButton, GPG_NONCE_QUERY_KEY, GpgBridge, GpgContext, GpgProvider, GpgScreenRegistrar, GpgStatusState, default2 as SignInWithGpg, default3 as SignInWithGpgButton, gpgScreen, useGpg };
|
|
8
|
+
export { GPGButton, GPG_NONCE_QUERY_KEY, GpgBridge, GpgContext, GpgProvider, GpgScreenRegistrar, GpgStatusState, default2 as SignInWithGpg, default3 as SignInWithGpgButton, assertGpgSignature, createGpgSigner, gpgScreen, gpgSignCommand, gpgSignatureCovers, useGpg, useGpgSigner };
|
|
8
9
|
//# sourceMappingURL=index.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useGpg","GpgProvider","GPG_NONCE_QUERY_KEY","GpgContext","GpgStatusState","default","default2","default3","GPGButton","gpgScreen","GpgScreenRegistrar","GpgBridge"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAKA,SAASA,MAAA,QAAc;AACvB,
|
|
1
|
+
{"version":3,"names":["useGpg","createGpgSigner","useGpgSigner","gpgSignCommand","assertGpgSignature","gpgSignatureCovers","GpgProvider","GPG_NONCE_QUERY_KEY","GpgContext","GpgStatusState","default","default2","default3","GPGButton","gpgScreen","GpgScreenRegistrar","GpgBridge"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAKA,SAASA,MAAA,QAAc;AACvB,SAAAC,eAAA,EAAAC,YAAA,EAAAC,cAAA,EAAAC,kBAAA,EAAAC,kBAAA;AAAA,SACEC,WAAA,EAAAC,mBAAA;AAAA,SACAC,UAAA,EAAAC,cAAA;AAAA,SACAC,OAAA,IAAAC,QAAA;AAAA,SACAD,OAAA,IAAAE,QAAA,EAAAC,SAAA;AAAA,SACAC,SAAA,EAAAC,kBAAA,EAAAC,SAAA;AAAA,SAIFH,SAAS,EACTN,mBAAqB,EAGrBS,SAAoB,EACpBR,UAAoB,EAEpBF,WAAS,E","ignoreList":[]}
|
package/dist/esm/screens.mjs
CHANGED
|
@@ -2,14 +2,21 @@ import { ModalStateProvider, routes, useRegisterScreens } from "@multiplatform.o
|
|
|
2
2
|
import { useContext as useReactContext } from "react";
|
|
3
3
|
import SignInWithGpg from "./SignInWithGpg.mjs";
|
|
4
4
|
import { GpgContext } from "./GpgContext.mjs";
|
|
5
|
+
import { GpgIcon } from "./GpgIcon.mjs";
|
|
5
6
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
6
7
|
const gpgScreen = {
|
|
7
8
|
id: routes.SIGNINWITHGPG,
|
|
8
9
|
component: SignInWithGpg,
|
|
9
10
|
heading: "Sign in with GPG",
|
|
10
11
|
availableWhen: () => true,
|
|
11
|
-
showBack: false,
|
|
12
|
-
|
|
12
|
+
showBack: state => state.connected === false,
|
|
13
|
+
onBack: api => api.setRoute(routes.CONNECTORS),
|
|
14
|
+
showInfo: false,
|
|
15
|
+
listEntry: {
|
|
16
|
+
name: "GPG",
|
|
17
|
+
icon: /* @__PURE__ */jsx(GpgIcon, {}),
|
|
18
|
+
visibleWhen: state => !!state.signInWithGpg
|
|
19
|
+
}
|
|
13
20
|
};
|
|
14
21
|
const GpgScreenRegistrar = () => {
|
|
15
22
|
useRegisterScreens([gpgScreen]);
|
package/dist/esm/screens.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ModalStateProvider","routes","useRegisterScreens","useContext","useReactContext","SignInWithGpg","GpgContext","Fragment","jsx","jsxs","gpgScreen","id","SIGNINWITHGPG","component","heading","availableWhen","showBack","showInfo","
|
|
1
|
+
{"version":3,"names":["ModalStateProvider","routes","useRegisterScreens","useContext","useReactContext","SignInWithGpg","GpgContext","GpgIcon","Fragment","jsx","jsxs","gpgScreen","id","SIGNINWITHGPG","component","heading","availableWhen","showBack","state","connected","onBack","api","setRoute","CONNECTORS","showInfo","listEntry","name","icon","visibleWhen","signInWithGpg","GpgScreenRegistrar","GpgBridge","children","enabled","value"],"sources":["../../src/screens.tsx"],"sourcesContent":[null],"mappings":"AACA,SACEA,kBAAA,EACAC,MAAA,EACAC,kBAAA,QAGK;AACP,SAASC,UAAA,IAAcC,eAAA,QAAuB;AAC9C,OAAOC,aAAA,MAAmB;AAC1B,SAASC,UAAA,QAAkB;AAC3B,SAASC,OAAA,QAAe;AAiBd,SA0BNC,QAAA,EA1BMC,GAAA,EA0BNC,IAAA,QA1BM;AAVH,MAAMC,SAAA,GAAuB;EAClCC,EAAA,EAAIX,MAAA,CAAOY,aAAA;EACXC,SAAA,EAAWT,aAAA;EACXU,OAAA,EAAS;EACTC,aAAA,EAAeA,CAAA,KAAM;EACrBC,QAAA,EAAWC,KAAA,IAAUA,KAAA,CAAMC,SAAA,KAAc;EACzCC,MAAA,EAASC,GAAA,IAAQA,GAAA,CAAIC,QAAA,CAASrB,MAAA,CAAOsB,UAAU;EAC/CC,QAAA,EAAU;EACVC,SAAA,EAAW;IACTC,IAAA,EAAM;IACNC,IAAA,EAAM,eAAAlB,GAAA,CAACF,OAAA,IAAQ;IACfqB,WAAA,EAAcV,KAAA,IAAU,CAAC,CAACA,KAAA,CAAMW;EAClC;AACF;AAOO,MAAMC,kBAAA,GAA+BA,CAAA,KAAM;EAChD5B,kBAAA,CAAmB,CAACS,SAAS,CAAC;EAC9B,OAAO;AACT;AAQO,MAAMoB,SAAA,GAA6EA,CAAC;EACzFC;AACF,MAAM;EACJ,MAAMH,aAAA,GAAgBzB,eAAA,CAAgBE,UAAU,GAAG2B,OAAA,IAAW;EAC9D,OACE,eAAAvB,IAAA,CAAAF,QAAA;IACEwB,QAAA,kBAAAvB,GAAA,CAACqB,kBAAA,IAAmB,GACpB,eAAArB,GAAA,CAACT,kBAAA;MAAmBkC,KAAA,EAAO;QAAEL;MAAc;MAAIG;IAAA,CAAS;EAAA,CAC1D;AAEJ","ignoreList":[]}
|
|
@@ -4,6 +4,7 @@ import { ModalStateProvider, routes, useRegisterScreens } from "@multiplatform.o
|
|
|
4
4
|
import { useContext as useReactContext } from "react";
|
|
5
5
|
import SignInWithGpg from "./SignInWithGpg.native.js";
|
|
6
6
|
import { GpgContext } from "./GpgContext.native.js";
|
|
7
|
+
import { GpgIcon } from "./GpgIcon.native.js";
|
|
7
8
|
var gpgScreen = {
|
|
8
9
|
id: routes.SIGNINWITHGPG,
|
|
9
10
|
component: SignInWithGpg,
|
|
@@ -11,8 +12,20 @@ var gpgScreen = {
|
|
|
11
12
|
availableWhen: function availableWhen() {
|
|
12
13
|
return true;
|
|
13
14
|
},
|
|
14
|
-
showBack:
|
|
15
|
-
|
|
15
|
+
showBack: function showBack(state) {
|
|
16
|
+
return state.connected === false;
|
|
17
|
+
},
|
|
18
|
+
onBack: function onBack(api) {
|
|
19
|
+
return api.setRoute(routes.CONNECTORS);
|
|
20
|
+
},
|
|
21
|
+
showInfo: false,
|
|
22
|
+
listEntry: {
|
|
23
|
+
name: "GPG",
|
|
24
|
+
icon: /* @__PURE__ */_jsx(GpgIcon, {}),
|
|
25
|
+
visibleWhen: function visibleWhen(state) {
|
|
26
|
+
return !!state.signInWithGpg;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
16
29
|
};
|
|
17
30
|
var GpgScreenRegistrar = function GpgScreenRegistrar2() {
|
|
18
31
|
useRegisterScreens([gpgScreen]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","React","ModalStateProvider","routes","useRegisterScreens","useContext","useReactContext","SignInWithGpg","GpgContext","gpgScreen","id","SIGNINWITHGPG","component","heading","availableWhen","showBack","
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","React","ModalStateProvider","routes","useRegisterScreens","useContext","useReactContext","SignInWithGpg","GpgContext","GpgIcon","gpgScreen","id","SIGNINWITHGPG","component","heading","availableWhen","showBack","state","connected","onBack","api","setRoute","CONNECTORS","showInfo","listEntry","name","icon","visibleWhen","signInWithGpg","GpgScreenRegistrar","GpgScreenRegistrar2","GpgBridge","GpgBridge2","param","children"],"sources":["../../src/screens.tsx"],"sourcesContent":[null],"mappings":"AACA,SAAAA,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAAAC,QAAA,IAAAC,SAAA;AAAA,OACEC,KAAA;AAAA,SACAC,kBAAA,EAAAC,MAAA,EAAAC,kBAAA;AAAA,SACAC,UAAA,IAAAC,eAAA;AAAA,OAGKC,aAAA;AACP,SAASC,UAAA,QAAc;AACvB,SAAOC,OAAA,6BAAmB;AAC1B,IAAAC,SAAS;EACTC,EAAA,EAAAR,MAAS,CAAAS,aAAe;EAiBdC,SA0BN,EAAAN,aAAA;EApCGO,OAAM,oBAAuB;EAClCC,aAAW,WAAAA,cAAA;IACX,WAAW;EACX;EACAC,QAAA,WAAeA,QAAMA,CAAAC,KAAA;IACrB,OAAAA,KAAW,CAAAC,SAAU,KAAM;EAC3B;EACAC,MAAA,WAAUA,OAAAC,GAAA;IACV,OAAAA,GAAW,CAAAC,QAAA,CAAAlB,MAAA,CAAAmB,UAAA;EAAA;EACHC,QACA;EAASC,SACf;IACFC,IAAA;IACFC,IAAA,iBAAA9B,IAAA,CAAAa,OAAA;IAOOkB,WAAM,WAAAA,WAAqCA,CAAAV,KAAA;MAChD,SAAAA,KAAA,CAAmBW,aAAW;IAC9B;EACF;AAQO;AAAoF,IACzFC,kBAAA,YAAAC,oBAAA;EACF1B,kBAAM,EACJM,SAAM,CACN;EAEI;AAAoB;AACoC,IAAAqB,SAC1D,YAAAC,WAAAC,KAAA;EAEJ;IAAAC;EAAA,IAAAD,KAAA","ignoreList":[]}
|