@breakside/jskit 2022.50.0 → 2022.52.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/Frameworks/DOM.jsframework/Info.json +2 -2
- package/Frameworks/DOM.jsframework/io.breakside.JSKit.DOM-bundle.js +2 -2
- package/Frameworks/FontKit.jsframework/Info.json +2 -2
- package/Frameworks/FontKit.jsframework/io.breakside.JSKit.FontKit-bundle.js +2 -2
- package/Frameworks/Foundation.jsframework/Info.json +2 -2
- package/Frameworks/Foundation.jsframework/JS/Error+JS.js +6 -1
- package/Frameworks/Foundation.jsframework/JS/JSTextFramesetter.js +1 -1
- package/Frameworks/Foundation.jsframework/io.breakside.JSKit.Foundation-bundle.js +2 -2
- package/Frameworks/SecurityKit.jsframework/Info.json +2 -2
- package/Frameworks/SecurityKit.jsframework/JS/SECSign+Node.js +1 -1
- package/Frameworks/SecurityKit.jsframework/io.breakside.JSKit.SecurityKit-bundle.js +2 -2
- package/Info.json +2 -2
- package/Node/KeyCommand.js +1 -1
- package/Node/KeypairCommand.js +73 -0
- package/Node/io.breakside.jskit-bundle.js +2 -2
- package/Node/jskit +1 -0
- package/Node/main.js +1 -0
- package/Root/Frameworks/APIKit/Info.yaml +1 -1
- package/Root/Frameworks/APIKitTesting/Info.yaml +1 -1
- package/Root/Frameworks/AuthKit/Info.yaml +1 -1
- package/Root/Frameworks/CSSOM/Info.yaml +1 -1
- package/Root/Frameworks/ChartKit/CHBarChart.js +1 -1
- package/Root/Frameworks/ChartKit/CHStackedAreaChart.js +0 -2
- package/Root/Frameworks/ChartKit/CHStackedBarChart.js +0 -2
- package/Root/Frameworks/ChartKit/Info.yaml +1 -1
- package/Root/Frameworks/ConferenceKit/Info.yaml +1 -1
- package/Root/Frameworks/DBKit/Info.yaml +1 -1
- package/Root/Frameworks/DOM/Info.yaml +1 -1
- package/Root/Frameworks/Dispatch/Info.yaml +1 -1
- package/Root/Frameworks/FontKit/Info.yaml +1 -1
- package/Root/Frameworks/Foundation/Error+JS.js +6 -1
- package/Root/Frameworks/Foundation/Info.yaml +1 -1
- package/Root/Frameworks/Foundation/JSTextFramesetter.js +1 -1
- package/Root/Frameworks/ImageKit/Info.yaml +1 -1
- package/Root/Frameworks/MediaKit/Info.yaml +1 -1
- package/Root/Frameworks/MediaKitUI/Info.yaml +1 -1
- package/Root/Frameworks/NotificationKit/Info.yaml +1 -1
- package/Root/Frameworks/NotificationKit/NKHTMLUserNotificationCenter.js +2 -2
- package/Root/Frameworks/PDFKit/Info.yaml +1 -1
- package/Root/Frameworks/QRKit/Info.yaml +1 -1
- package/Root/Frameworks/SearchKit/Info.yaml +1 -1
- package/Root/Frameworks/SecurityKit/Info.yaml +1 -1
- package/Root/Frameworks/SecurityKit/SECSign+Node.js +1 -1
- package/Root/Frameworks/ServerKit/Info.yaml +1 -1
- package/Root/Frameworks/ServerKitTesting/Info.yaml +1 -1
- package/Root/Frameworks/TestKit/Info.yaml +1 -1
- package/Root/Frameworks/UIKit/Info.yaml +1 -1
- package/Root/Frameworks/UIKit/UIDevice+HTML.js +29 -18
- package/Root/Frameworks/UIKit/UIDevice.js +15 -1
- package/Root/Frameworks/UIKit/UIHTMLApplication.js +36 -21
- package/Root/Frameworks/UIKit/UIListView.js +20 -2
- package/Root/Frameworks/UIKit/UIMenuView.js +1 -0
- package/Root/Frameworks/UIKit/UIScrollGestureRecognizer.js +184 -0
- package/Root/Frameworks/UIKit/UIStackView.js +4 -0
- package/Root/Frameworks/UIKit/UIWindow.js +3 -0
- package/Root/Frameworks/UIKitTesting/Info.yaml +1 -1
- package/Root/Templates/html/${PROJECT_NAME}/MainWindow.spec.yaml +2 -4
- package/Root/Templates/html/${PROJECT_NAME}/www/HTMLAppBootstrapper.js +24 -9
- package/Root/Templates/html/${PROJECT_NAME}/www/index.html +45 -30
- package/Root/Templates/html/${PROJECT_NAME}/www/service-worker.js +3 -2
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"JSBundleType": "framework",
|
|
3
3
|
"JSBundleIdentifier": "io.breakside.JSKit.DOM",
|
|
4
|
-
"JSBundleVersion": "2022.
|
|
4
|
+
"JSBundleVersion": "2022.52.0",
|
|
5
5
|
"JSDevelopmentLanguage": "en",
|
|
6
6
|
"JSCopyright": "Copyright © 2020 Breakside Inc.",
|
|
7
7
|
"JSBundleEnvironments": {
|
|
@@ -9,5 +9,5 @@
|
|
|
9
9
|
"node": "DOM+Node.js"
|
|
10
10
|
},
|
|
11
11
|
"JSLicenseNotice": "Licensed under the Breakside Public License, Version 1.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nIf a copy of the License was not distributed with this file, you may\nobtain a copy at\n\n http://breakside.io/licenses/LICENSE-1.0.txt\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n",
|
|
12
|
-
"GitRevision": "
|
|
12
|
+
"GitRevision": "3213efb27c72a7671fd5594e83d81a41f9979a0a"
|
|
13
13
|
}
|
|
@@ -3,7 +3,7 @@ JSBundle.bundles['io.breakside.JSKit.DOM'] = {
|
|
|
3
3
|
"Info": {
|
|
4
4
|
"JSBundleType": "framework",
|
|
5
5
|
"JSBundleIdentifier": "io.breakside.JSKit.DOM",
|
|
6
|
-
"JSBundleVersion": "2022.
|
|
6
|
+
"JSBundleVersion": "2022.52.0",
|
|
7
7
|
"JSDevelopmentLanguage": "en",
|
|
8
8
|
"JSCopyright": "Copyright © 2020 Breakside Inc.",
|
|
9
9
|
"JSBundleEnvironments": {
|
|
@@ -11,7 +11,7 @@ JSBundle.bundles['io.breakside.JSKit.DOM'] = {
|
|
|
11
11
|
"node": "DOM+Node.js"
|
|
12
12
|
},
|
|
13
13
|
"JSLicenseNotice": "Licensed under the Breakside Public License, Version 1.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nIf a copy of the License was not distributed with this file, you may\nobtain a copy at\n\n http://breakside.io/licenses/LICENSE-1.0.txt\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n",
|
|
14
|
-
"GitRevision": "
|
|
14
|
+
"GitRevision": "3213efb27c72a7671fd5594e83d81a41f9979a0a"
|
|
15
15
|
},
|
|
16
16
|
"Resources": [],
|
|
17
17
|
"ResourceLookup": {
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"JSBundleType": "framework",
|
|
3
3
|
"JSBundleIdentifier": "io.breakside.JSKit.FontKit",
|
|
4
|
-
"JSBundleVersion": "2022.
|
|
4
|
+
"JSBundleVersion": "2022.52.0",
|
|
5
5
|
"JSDevelopmentLanguage": "en",
|
|
6
6
|
"JSCopyright": "Copyright © 2020 Breakside Inc.",
|
|
7
7
|
"JSBundleEnvironments": {
|
|
8
8
|
"html": "FontKit+HTML.js"
|
|
9
9
|
},
|
|
10
10
|
"JSLicenseNotice": "Licensed under the Breakside Public License, Version 1.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nIf a copy of the License was not distributed with this file, you may\nobtain a copy at\n\n http://breakside.io/licenses/LICENSE-1.0.txt\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n",
|
|
11
|
-
"GitRevision": "
|
|
11
|
+
"GitRevision": "3213efb27c72a7671fd5594e83d81a41f9979a0a"
|
|
12
12
|
}
|
|
@@ -3,14 +3,14 @@ JSBundle.bundles['io.breakside.JSKit.FontKit'] = {
|
|
|
3
3
|
"Info": {
|
|
4
4
|
"JSBundleType": "framework",
|
|
5
5
|
"JSBundleIdentifier": "io.breakside.JSKit.FontKit",
|
|
6
|
-
"JSBundleVersion": "2022.
|
|
6
|
+
"JSBundleVersion": "2022.52.0",
|
|
7
7
|
"JSDevelopmentLanguage": "en",
|
|
8
8
|
"JSCopyright": "Copyright © 2020 Breakside Inc.",
|
|
9
9
|
"JSBundleEnvironments": {
|
|
10
10
|
"html": "FontKit+HTML.js"
|
|
11
11
|
},
|
|
12
12
|
"JSLicenseNotice": "Licensed under the Breakside Public License, Version 1.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nIf a copy of the License was not distributed with this file, you may\nobtain a copy at\n\n http://breakside.io/licenses/LICENSE-1.0.txt\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n",
|
|
13
|
-
"GitRevision": "
|
|
13
|
+
"GitRevision": "3213efb27c72a7671fd5594e83d81a41f9979a0a"
|
|
14
14
|
},
|
|
15
15
|
"Resources": [],
|
|
16
16
|
"ResourceLookup": {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"JSBundleType": "framework",
|
|
3
3
|
"JSBundleIdentifier": "io.breakside.JSKit.Foundation",
|
|
4
|
-
"JSBundleVersion": "2022.
|
|
4
|
+
"JSBundleVersion": "2022.52.0",
|
|
5
5
|
"JSDevelopmentLanguage": "en",
|
|
6
6
|
"JSCopyright": "Copyright © 2020 Breakside Inc.",
|
|
7
7
|
"JSBundleEnvironments": {
|
|
@@ -9,5 +9,5 @@
|
|
|
9
9
|
"node": "Foundation+Node.js"
|
|
10
10
|
},
|
|
11
11
|
"JSLicenseNotice": "Licensed under the Breakside Public License, Version 1.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nIf a copy of the License was not distributed with this file, you may\nobtain a copy at\n\n http://breakside.io/licenses/LICENSE-1.0.txt\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n",
|
|
12
|
-
"GitRevision": "
|
|
12
|
+
"GitRevision": "3213efb27c72a7671fd5594e83d81a41f9979a0a"
|
|
13
13
|
}
|
|
@@ -75,16 +75,21 @@ var patterns = [chromeLikePattern, chromeMethodlessPattern, firefoxLikePattern,
|
|
|
75
75
|
var frameFromLine = function(line){
|
|
76
76
|
var matches;
|
|
77
77
|
var pattern;
|
|
78
|
+
var frame;
|
|
78
79
|
for (var i = 0, l = patterns.length; i < l; ++i){
|
|
79
80
|
pattern = patterns[i];
|
|
80
81
|
matches = line.match(pattern.regex);
|
|
81
82
|
if (matches){
|
|
82
|
-
|
|
83
|
+
frame = {
|
|
83
84
|
method: pattern.groups.method > 0 ? matches[pattern.groups.method] : '',
|
|
84
85
|
filename: matches[pattern.groups.filename],
|
|
85
86
|
lineno: parseInt(matches[pattern.groups.lineno]),
|
|
86
87
|
colno: parseInt(matches[pattern.groups.colno])
|
|
87
88
|
};
|
|
89
|
+
if (frame.filename && frame.filename[0] == "@"){
|
|
90
|
+
frame.filename = frame.filename.substr(1);
|
|
91
|
+
}
|
|
92
|
+
return frame;
|
|
88
93
|
}
|
|
89
94
|
}
|
|
90
95
|
};
|
|
@@ -175,7 +175,7 @@ JSClass("JSTextFramesetter", JSObject, {
|
|
|
175
175
|
attributes: JSReadOnlyProperty("_attributes", null),
|
|
176
176
|
|
|
177
177
|
getAttributes: function(){
|
|
178
|
-
logger.warn("JSTextFramesetter.attributes is deprecated");
|
|
178
|
+
logger.warn("JSTextFramesetter.attributes is deprecated, use JSTextFramesetter.defaultParagraphStyle");
|
|
179
179
|
if (this._attributes === null){
|
|
180
180
|
var framesetter = this;
|
|
181
181
|
this._attributes = Object.create({}, {
|
|
@@ -3,7 +3,7 @@ JSBundle.bundles['io.breakside.JSKit.Foundation'] = {
|
|
|
3
3
|
"Info": {
|
|
4
4
|
"JSBundleType": "framework",
|
|
5
5
|
"JSBundleIdentifier": "io.breakside.JSKit.Foundation",
|
|
6
|
-
"JSBundleVersion": "2022.
|
|
6
|
+
"JSBundleVersion": "2022.52.0",
|
|
7
7
|
"JSDevelopmentLanguage": "en",
|
|
8
8
|
"JSCopyright": "Copyright © 2020 Breakside Inc.",
|
|
9
9
|
"JSBundleEnvironments": {
|
|
@@ -11,7 +11,7 @@ JSBundle.bundles['io.breakside.JSKit.Foundation'] = {
|
|
|
11
11
|
"node": "Foundation+Node.js"
|
|
12
12
|
},
|
|
13
13
|
"JSLicenseNotice": "Licensed under the Breakside Public License, Version 1.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nIf a copy of the License was not distributed with this file, you may\nobtain a copy at\n\n http://breakside.io/licenses/LICENSE-1.0.txt\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n",
|
|
14
|
-
"GitRevision": "
|
|
14
|
+
"GitRevision": "3213efb27c72a7671fd5594e83d81a41f9979a0a"
|
|
15
15
|
},
|
|
16
16
|
"Resources": [
|
|
17
17
|
{
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"JSBundleType": "framework",
|
|
3
3
|
"JSBundleIdentifier": "io.breakside.JSKit.SecurityKit",
|
|
4
|
-
"JSBundleVersion": "2022.
|
|
4
|
+
"JSBundleVersion": "2022.52.0",
|
|
5
5
|
"JSDevelopmentLanguage": "en",
|
|
6
6
|
"JSCopyright": "Copyright © 2020 Breakside Inc.",
|
|
7
7
|
"JSBundleEnvironments": {
|
|
@@ -9,5 +9,5 @@
|
|
|
9
9
|
"node": "SecurityKit+Node.js"
|
|
10
10
|
},
|
|
11
11
|
"JSLicenseNotice": "Licensed under the Breakside Public License, Version 1.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nIf a copy of the License was not distributed with this file, you may\nobtain a copy at\n\n http://breakside.io/licenses/LICENSE-1.0.txt\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n",
|
|
12
|
-
"GitRevision": "
|
|
12
|
+
"GitRevision": "3213efb27c72a7671fd5594e83d81a41f9979a0a"
|
|
13
13
|
}
|
|
@@ -376,7 +376,7 @@ nodeNamedCurves[SECSign.EllipticCurve.p521] = "secp521r1";
|
|
|
376
376
|
var derNamedCurves = {};
|
|
377
377
|
derNamedCurves[SECSign.EllipticCurve.p256] = "1.2.840.10045.3.1.7";
|
|
378
378
|
derNamedCurves[SECSign.EllipticCurve.p384] = "1.3.132.0.34";
|
|
379
|
-
derNamedCurves[SECSign.EllipticCurve.
|
|
379
|
+
derNamedCurves[SECSign.EllipticCurve.p521] = "1.3.132.0.35";
|
|
380
380
|
|
|
381
381
|
var nodeAlgorithms = {};
|
|
382
382
|
nodeAlgorithms[SECSign.Algorithm.rsaSHA256] = {name: 'rsa', hash: 'sha256'};
|
|
@@ -3,7 +3,7 @@ JSBundle.bundles['io.breakside.JSKit.SecurityKit'] = {
|
|
|
3
3
|
"Info": {
|
|
4
4
|
"JSBundleType": "framework",
|
|
5
5
|
"JSBundleIdentifier": "io.breakside.JSKit.SecurityKit",
|
|
6
|
-
"JSBundleVersion": "2022.
|
|
6
|
+
"JSBundleVersion": "2022.52.0",
|
|
7
7
|
"JSDevelopmentLanguage": "en",
|
|
8
8
|
"JSCopyright": "Copyright © 2020 Breakside Inc.",
|
|
9
9
|
"JSBundleEnvironments": {
|
|
@@ -11,7 +11,7 @@ JSBundle.bundles['io.breakside.JSKit.SecurityKit'] = {
|
|
|
11
11
|
"node": "SecurityKit+Node.js"
|
|
12
12
|
},
|
|
13
13
|
"JSLicenseNotice": "Licensed under the Breakside Public License, Version 1.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nIf a copy of the License was not distributed with this file, you may\nobtain a copy at\n\n http://breakside.io/licenses/LICENSE-1.0.txt\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n",
|
|
14
|
-
"GitRevision": "
|
|
14
|
+
"GitRevision": "3213efb27c72a7671fd5594e83d81a41f9979a0a"
|
|
15
15
|
},
|
|
16
16
|
"Resources": [],
|
|
17
17
|
"ResourceLookup": {
|
package/Info.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"JSBundleType": "node",
|
|
3
3
|
"JSBundleIdentifier": "io.breakside.jskit",
|
|
4
|
-
"JSBundleVersion": "2022.
|
|
4
|
+
"JSBundleVersion": "2022.52.0",
|
|
5
5
|
"JSExecutableName": "jskit",
|
|
6
6
|
"NPMOrganization": "breakside",
|
|
7
7
|
"JSResources": [
|
|
8
8
|
"Tests/HTMLTestRunner.js",
|
|
9
9
|
"Tests/NodeTestRunner.js"
|
|
10
10
|
],
|
|
11
|
-
"GitRevision": "
|
|
11
|
+
"GitRevision": "3213efb27c72a7671fd5594e83d81a41f9979a0a"
|
|
12
12
|
}
|
package/Node/KeyCommand.js
CHANGED
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
// Copyright 2020 Breakside Inc.
|
|
2
|
+
//
|
|
3
|
+
// Licensed under the Breakside Public License, Version 1.0 (the "License");
|
|
4
|
+
// you may not use this file except in compliance with the License.
|
|
5
|
+
// If a copy of the License was not distributed with this file, you may
|
|
6
|
+
// obtain a copy at
|
|
7
|
+
//
|
|
8
|
+
// http://breakside.io/licenses/LICENSE-1.0.txt
|
|
9
|
+
//
|
|
10
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
// See the License for the specific language governing permissions and
|
|
14
|
+
// limitations under the License.
|
|
15
|
+
|
|
16
|
+
// #import "Command.js"
|
|
17
|
+
// #import "Printer.js"
|
|
18
|
+
// #import SecurityKit
|
|
19
|
+
'use strict';
|
|
20
|
+
|
|
21
|
+
JSClass("KeypairCommand", Command, {
|
|
22
|
+
|
|
23
|
+
name: "keypair",
|
|
24
|
+
help: "Create an asymmetric encryption key pair",
|
|
25
|
+
|
|
26
|
+
options: {
|
|
27
|
+
format: {default: "pem", help: "The format for the key", allowed: ["jwk", "pem"]},
|
|
28
|
+
algorithm: {default: "ecdh", help: "The encryption algorithm to use", allowed: ["ecdh", "rsa"]},
|
|
29
|
+
bits: {default: 512, valueType: "integer", allowed: [256, 384, 512], help: "The bit length of the key data"}
|
|
30
|
+
},
|
|
31
|
+
|
|
32
|
+
run: async function(){
|
|
33
|
+
var workspaceURL = this.workingDirectoryURL;
|
|
34
|
+
var printer = Printer.initWithLabel('key');
|
|
35
|
+
var algorithm;
|
|
36
|
+
switch (this.arguments.algorithm){
|
|
37
|
+
case "ecdh":
|
|
38
|
+
switch (this.arguments.bits){
|
|
39
|
+
case 256: algorithm = SECSign.Algorithm.ellipticCurveSHA256; break;
|
|
40
|
+
case 384: algorithm = SECSign.Algorithm.ellipticCurveSHA384; break;
|
|
41
|
+
case 512: algorithm = SECSign.Algorithm.ellipticCurveSHA512; break;
|
|
42
|
+
default: throw new Error("Unsupported algorithm/bits combination");
|
|
43
|
+
}
|
|
44
|
+
break;
|
|
45
|
+
case "rsa":
|
|
46
|
+
switch (this.arguments.bits){
|
|
47
|
+
case 256: algorithm = SECSign.Algorithm.rsaSHA256; break;
|
|
48
|
+
case 384: algorithm = SECSign.Algorithm.rsaSHA384; break;
|
|
49
|
+
case 512: algorithm = SECSign.Algorithm.rsaSHA512; break;
|
|
50
|
+
default: throw new Error("Unsupported algorithm/bits combination");
|
|
51
|
+
}
|
|
52
|
+
break;
|
|
53
|
+
default:
|
|
54
|
+
throw new Error("Unsupported algorithm/bits combination");
|
|
55
|
+
}
|
|
56
|
+
var sign = SECSign.initWithAlgorithm(algorithm);
|
|
57
|
+
var pair;
|
|
58
|
+
if (this.arguments.format === "jwk"){
|
|
59
|
+
pair = await sign.createJWKPair({});
|
|
60
|
+
printer.print("public: %s\n".sprintf(JSON.stringify(pair.public).utf8().base64URLStringRepresentation()));
|
|
61
|
+
printer.print("private: %s\n".sprintf(JSON.stringify(pair.private).utf8().base64URLStringRepresentation()));
|
|
62
|
+
}else if (this.arguments.format === "pem"){
|
|
63
|
+
pair = await sign.createKeyPair({});
|
|
64
|
+
var data = await pair.public.getData();
|
|
65
|
+
printer.print(data.stringByDecodingUTF8());
|
|
66
|
+
printer.print("\n");
|
|
67
|
+
data = await pair.private.getData();
|
|
68
|
+
printer.print(data.stringByDecodingUTF8());
|
|
69
|
+
printer.print("\n");
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
|
|
73
|
+
});
|
|
@@ -3,14 +3,14 @@ JSBundle.bundles['io.breakside.jskit'] = {
|
|
|
3
3
|
"Info": {
|
|
4
4
|
"JSBundleType": "node",
|
|
5
5
|
"JSBundleIdentifier": "io.breakside.jskit",
|
|
6
|
-
"JSBundleVersion": "2022.
|
|
6
|
+
"JSBundleVersion": "2022.52.0",
|
|
7
7
|
"JSExecutableName": "jskit",
|
|
8
8
|
"NPMOrganization": "breakside",
|
|
9
9
|
"JSResources": [
|
|
10
10
|
"Tests/HTMLTestRunner.js",
|
|
11
11
|
"Tests/NodeTestRunner.js"
|
|
12
12
|
],
|
|
13
|
-
"GitRevision": "
|
|
13
|
+
"GitRevision": "3213efb27c72a7671fd5594e83d81a41f9979a0a"
|
|
14
14
|
},
|
|
15
15
|
"Resources": [
|
|
16
16
|
{
|
package/Node/jskit
CHANGED
package/Node/main.js
CHANGED
|
@@ -21,7 +21,7 @@ JSClass("CHBarChart", CHCategoryChart, {
|
|
|
21
21
|
|
|
22
22
|
initWithTheme: function(theme){
|
|
23
23
|
CHBarChart.$super.initWithTheme.call(this, theme);
|
|
24
|
-
this.categoryAxis.labelPosition = CHAxisStyle.LabelPosition.betweenTickMarks;
|
|
24
|
+
this.categoryAxis.style.labelPosition = CHAxisStyle.LabelPosition.betweenTickMarks;
|
|
25
25
|
this.defaultSeriesStyle = theme.barStyle.styleWithColor(null);
|
|
26
26
|
},
|
|
27
27
|
|
|
@@ -75,16 +75,21 @@ var patterns = [chromeLikePattern, chromeMethodlessPattern, firefoxLikePattern,
|
|
|
75
75
|
var frameFromLine = function(line){
|
|
76
76
|
var matches;
|
|
77
77
|
var pattern;
|
|
78
|
+
var frame;
|
|
78
79
|
for (var i = 0, l = patterns.length; i < l; ++i){
|
|
79
80
|
pattern = patterns[i];
|
|
80
81
|
matches = line.match(pattern.regex);
|
|
81
82
|
if (matches){
|
|
82
|
-
|
|
83
|
+
frame = {
|
|
83
84
|
method: pattern.groups.method > 0 ? matches[pattern.groups.method] : '',
|
|
84
85
|
filename: matches[pattern.groups.filename],
|
|
85
86
|
lineno: parseInt(matches[pattern.groups.lineno]),
|
|
86
87
|
colno: parseInt(matches[pattern.groups.colno])
|
|
87
88
|
};
|
|
89
|
+
if (frame.filename && frame.filename[0] == "@"){
|
|
90
|
+
frame.filename = frame.filename.substr(1);
|
|
91
|
+
}
|
|
92
|
+
return frame;
|
|
88
93
|
}
|
|
89
94
|
}
|
|
90
95
|
};
|
|
@@ -175,7 +175,7 @@ JSClass("JSTextFramesetter", JSObject, {
|
|
|
175
175
|
attributes: JSReadOnlyProperty("_attributes", null),
|
|
176
176
|
|
|
177
177
|
getAttributes: function(){
|
|
178
|
-
logger.warn("JSTextFramesetter.attributes is deprecated");
|
|
178
|
+
logger.warn("JSTextFramesetter.attributes is deprecated, use JSTextFramesetter.defaultParagraphStyle");
|
|
179
179
|
if (this._attributes === null){
|
|
180
180
|
var framesetter = this;
|
|
181
181
|
this._attributes = Object.create({}, {
|
|
@@ -160,7 +160,7 @@ JSClass("NKHTMLUserNotificationCenter", NKUserNotificationCenter, {
|
|
|
160
160
|
var handler = function(permission){
|
|
161
161
|
if (!handled){
|
|
162
162
|
handled = true;
|
|
163
|
-
completion.call(target, permission
|
|
163
|
+
completion.call(target, statusByPermission[permission]);
|
|
164
164
|
}
|
|
165
165
|
};
|
|
166
166
|
var promise = Notification.requestPermission(handler);
|
|
@@ -170,7 +170,7 @@ JSClass("NKHTMLUserNotificationCenter", NKUserNotificationCenter, {
|
|
|
170
170
|
});
|
|
171
171
|
}
|
|
172
172
|
}else{
|
|
173
|
-
JSRunLoop.main.schedule(completion, target,
|
|
173
|
+
JSRunLoop.main.schedule(completion, target, NKUserNotificationCenter.AuthorizationStatus.denied);
|
|
174
174
|
}
|
|
175
175
|
return completion.promise;
|
|
176
176
|
},
|
|
@@ -376,7 +376,7 @@ nodeNamedCurves[SECSign.EllipticCurve.p521] = "secp521r1";
|
|
|
376
376
|
var derNamedCurves = {};
|
|
377
377
|
derNamedCurves[SECSign.EllipticCurve.p256] = "1.2.840.10045.3.1.7";
|
|
378
378
|
derNamedCurves[SECSign.EllipticCurve.p384] = "1.3.132.0.34";
|
|
379
|
-
derNamedCurves[SECSign.EllipticCurve.
|
|
379
|
+
derNamedCurves[SECSign.EllipticCurve.p521] = "1.3.132.0.35";
|
|
380
380
|
|
|
381
381
|
var nodeAlgorithms = {};
|
|
382
382
|
nodeAlgorithms[SECSign.Algorithm.rsaSHA256] = {name: 'rsa', hash: 'sha256'};
|