neonctl 2.20.1 → 2.20.3
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/callback.html +3 -91
- package/commands/auth.js +2 -2
- package/commands/auth.test.js +3 -3
- package/package.json +2 -2
package/callback.html
CHANGED
|
@@ -38,98 +38,10 @@
|
|
|
38
38
|
</head>
|
|
39
39
|
<body>
|
|
40
40
|
<div class="logo">
|
|
41
|
-
<svg
|
|
42
|
-
id="eBsErktH1941"
|
|
43
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
44
|
-
xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
45
|
-
viewBox="0 0 42 42"
|
|
46
|
-
shape-rendering="geometricPrecision"
|
|
47
|
-
text-rendering="geometricPrecision"
|
|
48
|
-
>
|
|
49
|
-
<style>
|
|
50
|
-
<![CDATA[#eBsErktH1945 {animation: eBsErktH1945__fl 3000ms linear infinite normal forwards}@keyframes eBsErktH1945__fl { 0% {filter: drop-shadow(0px 0px 0px #5cff61)} 13.666667% {filter: drop-shadow(0px 0px 0px #5cff61)} 15% {filter: drop-shadow(0px 0px 4.242641px #5cff61)} 34% {filter: drop-shadow(0px 0px 4.242641px #5cff61)} 34.333333% {filter: drop-shadow(0px 0px 0px #5cff61)} 37.333333% {filter: drop-shadow(0px 0px 0px #5cff61)} 37.666667% {filter: drop-shadow(0px 0px 4.242641px #5cff61)} 43.666667% {filter: drop-shadow(0px 0px 4.242641px #5cff61)} 44% {filter: drop-shadow(0px 0px 0px #5cff61)} 47% {filter: drop-shadow(0px 0px 0px #5cff61)} 47.333333% {filter: drop-shadow(0px 0px 4.242641px #5cff61)} 51% {filter: drop-shadow(0px 0px 4.242641px #5cff61)} 51.333333% {filter: drop-shadow(0px 0px 0px #5cff61)} 53.666667% {filter: drop-shadow(0px 0px 0px #5cff61)} 54% {filter: drop-shadow(0px 0px 4.242641px #5cff61)} 100% {filter: drop-shadow(0px 0px 4.242641px #5cff61)}} #eBsErktH1946 {animation: eBsErktH1946__fl 3000ms linear infinite normal forwards}@keyframes eBsErktH1946__fl { 0% {filter: drop-shadow(0px 0px 0px #5cff61)} 13.666667% {filter: drop-shadow(0px 0px 0px #5cff61)} 15% {filter: drop-shadow(0px 0px 2.828427px #5cff61)} 34% {filter: drop-shadow(0px 0px 2.828427px #5cff61)} 34.333333% {filter: drop-shadow(0px 0px 0px #5cff61)} 37.333333% {filter: drop-shadow(0px 0px 0px #5cff61)} 37.666667% {filter: drop-shadow(0px 0px 2.828427px #5cff61)} 43.666667% {filter: drop-shadow(0px 0px 2.828427px #5cff61)} 44% {filter: drop-shadow(0px 0px 0px #5cff61)} 47% {filter: drop-shadow(0px 0px 0px #5cff61)} 47.333333% {filter: drop-shadow(0px 0px 2.828427px #5cff61)} 51% {filter: drop-shadow(0px 0px 2.828427px #5cff61)} 51.333333% {filter: drop-shadow(0px 0px 0px #5cff61)} 53.666667% {filter: drop-shadow(0px 0px 0px #5cff61)} 54% {filter: drop-shadow(0px 0px 2.828427px #5cff61)} 100% {filter: drop-shadow(0px 0px 2.828427px #5cff61)}} #eBsErktH1947 {animation: eBsErktH1947__fl 3000ms linear infinite normal forwards}@keyframes eBsErktH1947__fl { 0% {filter: drop-shadow(0px 0px 0px #5cff61)} 13.666667% {filter: drop-shadow(0px 0px 0px #5cff61)} 15% {filter: drop-shadow(0px 0px 1.414214px #5cff61)} 34% {filter: drop-shadow(0px 0px 1.414214px #5cff61)} 34.333333% {filter: drop-shadow(0px 0px 0px #5cff61)} 37.333333% {filter: drop-shadow(0px 0px 0px #5cff61)} 37.666667% {filter: drop-shadow(0px 0px 1.414214px #5cff61)} 43.666667% {filter: drop-shadow(0px 0px 1px #5cff61)} 44% {filter: drop-shadow(0px 0px 0px #5cff61)} 47% {filter: drop-shadow(0px 0px 0px #5cff61)} 47.333333% {filter: drop-shadow(0px 0px 1.414214px #5cff61)} 51% {filter: drop-shadow(0px 0px 1.414214px #5cff61)} 51.333333% {filter: drop-shadow(0px 0px 0px #5cff61)} 53.666667% {filter: drop-shadow(0px 0px 0px #5cff61)} 54% {filter: drop-shadow(0px 0px 1.414214px #5cff61)} 100% {filter: drop-shadow(0px 0px 1.414214px #5cff61)}}]]>
|
|
51
|
-
</style>
|
|
52
|
-
<defs>
|
|
53
|
-
<linearGradient
|
|
54
|
-
id="eBsErktH1943-fill"
|
|
55
|
-
x1="36"
|
|
56
|
-
y1="36"
|
|
57
|
-
x2="4.345"
|
|
58
|
-
y2="0"
|
|
59
|
-
spreadMethod="pad"
|
|
60
|
-
gradientUnits="userSpaceOnUse"
|
|
61
|
-
gradientTransform="translate(0 0)"
|
|
62
|
-
>
|
|
63
|
-
<stop id="eBsErktH1943-fill-0" offset="0%" stop-color="#b9ffb3" />
|
|
64
|
-
<stop
|
|
65
|
-
id="eBsErktH1943-fill-1"
|
|
66
|
-
offset="100%"
|
|
67
|
-
stop-color="rgba(185,255,179,0)"
|
|
68
|
-
/>
|
|
69
|
-
</linearGradient>
|
|
70
|
-
<linearGradient
|
|
71
|
-
id="eBsErktH1944-fill"
|
|
72
|
-
x1="36"
|
|
73
|
-
y1="36"
|
|
74
|
-
x2="14.617"
|
|
75
|
-
y2="27.683"
|
|
76
|
-
spreadMethod="pad"
|
|
77
|
-
gradientUnits="userSpaceOnUse"
|
|
78
|
-
gradientTransform="translate(0 0)"
|
|
79
|
-
>
|
|
80
|
-
<stop
|
|
81
|
-
id="eBsErktH1944-fill-0"
|
|
82
|
-
offset="0%"
|
|
83
|
-
stop-color="rgba(26,26,26,0.9)"
|
|
84
|
-
/>
|
|
85
|
-
<stop
|
|
86
|
-
id="eBsErktH1944-fill-1"
|
|
87
|
-
offset="100%"
|
|
88
|
-
stop-color="rgba(26,26,26,0)"
|
|
89
|
-
/>
|
|
90
|
-
</linearGradient>
|
|
91
|
-
</defs>
|
|
41
|
+
<svg viewBox="0 0 58 58" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
92
42
|
<path
|
|
93
|
-
d="
|
|
94
|
-
|
|
95
|
-
clip-rule="evenodd"
|
|
96
|
-
fill="#12fff7"
|
|
97
|
-
fill-rule="evenodd"
|
|
98
|
-
/>
|
|
99
|
-
<path
|
|
100
|
-
d="M0,6.207c0-1.646199.65395-3.224973,1.817988-4.389012C2.982026,0.65395,4.560801,0,6.207,0h23.586c1.646199,0,3.224973.65395,4.389012,1.817988s1.817988,2.742813,1.817988,4.389012v20.06c0,3.546-4.488,5.085-6.664,2.286l-6.805-8.754v10.615c0,3.085063-2.500937,5.586-5.586,5.586h-10.738c-1.646199,0-3.224973-.65395-4.389012-1.817988s-1.817988-2.742813-1.817988-4.389012L0,6.207ZM6.207,4.966c-.686,0-1.241.555-1.241,1.24v23.587c0,.686.555,1.242,1.24,1.242h10.925c.343,0,.434-.278.434-.621v-14.234c0-3.547,4.488-5.086,6.665-2.286l6.805,8.753v-16.44c0-.686.064-1.241-.621-1.241h-24.207Z"
|
|
101
|
-
transform="translate(3 3)"
|
|
102
|
-
clip-rule="evenodd"
|
|
103
|
-
fill="url(#eBsErktH1943-fill)"
|
|
104
|
-
fill-rule="evenodd"
|
|
105
|
-
/>
|
|
106
|
-
<path
|
|
107
|
-
d="M0,6.207c0-1.646199.65395-3.224973,1.817988-4.389012C2.982026,0.65395,4.560801,0,6.207,0h23.586c1.646199,0,3.224973.65395,4.389012,1.817988s1.817988,2.742813,1.817988,4.389012v20.06c0,3.546-4.488,5.085-6.664,2.286l-6.805-8.754v10.615c0,3.085063-2.500937,5.586-5.586,5.586h-10.738c-1.646199,0-3.224973-.65395-4.389012-1.817988s-1.817988-2.742813-1.817988-4.389012L0,6.207ZM6.207,4.966c-.686,0-1.241.555-1.241,1.24v23.587c0,.686.555,1.242,1.24,1.242h10.925c.343,0,.434-.278.434-.621v-14.234c0-3.547,4.488-5.086,6.665-2.286l6.805,8.753v-16.44c0-.686.064-1.241-.621-1.241h-24.207Z"
|
|
108
|
-
transform="translate(3 3)"
|
|
109
|
-
clip-rule="evenodd"
|
|
110
|
-
fill="url(#eBsErktH1944-fill)"
|
|
111
|
-
fill-rule="evenodd"
|
|
112
|
-
/>
|
|
113
|
-
<path
|
|
114
|
-
id="eBsErktH1945"
|
|
115
|
-
style="filter: drop-shadow(0px 0px 0px #5cff61)"
|
|
116
|
-
d="M29.793,0c1.646199,0,3.224973.65395,4.389012,1.817988s1.817988,2.742813,1.817988,4.389012v20.06c0,3.546-4.488,5.085-6.664,2.286l-6.805-8.754v10.615c0,3.085063-2.500937,5.586-5.586,5.586.342417,0,.62-.277583.62-.62v-19.2c0-3.547,4.488-5.086,6.665-2.286l6.805,8.753v-21.406c0-.685-.556-1.241-1.242-1.241Z"
|
|
117
|
-
transform="translate(3 3)"
|
|
118
|
-
fill="#b9ffb3"
|
|
119
|
-
/>
|
|
120
|
-
<path
|
|
121
|
-
id="eBsErktH1946"
|
|
122
|
-
style="filter: drop-shadow(0px 0px 0px #5cff61)"
|
|
123
|
-
d="M29.793,0c1.646199,0,3.224973.65395,4.389012,1.817988s1.817988,2.742813,1.817988,4.389012v20.06c0,3.546-4.488,5.085-6.664,2.286l-6.805-8.754v10.615c0,3.085063-2.500937,5.586-5.586,5.586.342417,0,.62-.277583.62-.62v-19.2c0-3.547,4.488-5.086,6.665-2.286l6.805,8.753v-21.406c0-.685-.556-1.241-1.242-1.241Z"
|
|
124
|
-
transform="translate(3 3)"
|
|
125
|
-
fill="#b9ffb3"
|
|
126
|
-
/>
|
|
127
|
-
<path
|
|
128
|
-
id="eBsErktH1947"
|
|
129
|
-
style="filter: drop-shadow(0px 0px 0px #5cff61)"
|
|
130
|
-
d="M29.793,0c1.646199,0,3.224973.65395,4.389012,1.817988s1.817988,2.742813,1.817988,4.389012v20.06c0,3.546-4.488,5.085-6.664,2.286l-6.805-8.754v10.615c0,3.085063-2.500937,5.586-5.586,5.586.342417,0,.62-.277583.62-.62v-19.2c0-3.547,4.488-5.086,6.665-2.286l6.805,8.753v-21.406c0-.685-.556-1.241-1.242-1.241Z"
|
|
131
|
-
transform="translate(3 3)"
|
|
132
|
-
fill="#b9ffb3"
|
|
43
|
+
d="M58 0.0162365V58L35.3688 38.5587V58H0V0L58 0.0162365ZM7.10962 50.9603H28.2591V23.1112L50.8907 42.937V7.05391L7.10962 7.04147V50.9603Z"
|
|
44
|
+
fill="#34D59A"
|
|
133
45
|
/>
|
|
134
46
|
</svg>
|
|
135
47
|
</div>
|
package/commands/auth.js
CHANGED
|
@@ -95,8 +95,8 @@ const handleExistingToken = async (tokenSet, props, credentialsPath) => {
|
|
|
95
95
|
}
|
|
96
96
|
};
|
|
97
97
|
export const ensureAuth = async (props) => {
|
|
98
|
-
// Skip auth for help command
|
|
99
|
-
if (props._.length === 0 || props.help
|
|
98
|
+
// Skip auth for help command or no command
|
|
99
|
+
if (props._.length === 0 || props.help) {
|
|
100
100
|
return;
|
|
101
101
|
}
|
|
102
102
|
// Use existing API key or handle auth command
|
package/commands/auth.test.js
CHANGED
|
@@ -144,7 +144,7 @@ describe('ensureAuth', () => {
|
|
|
144
144
|
expect(refreshTokenSpy).not.toHaveBeenCalled();
|
|
145
145
|
expect(props.apiKey).toBe('valid-token');
|
|
146
146
|
});
|
|
147
|
-
test('should
|
|
147
|
+
test('should require auth for init command', async ({ runMockServer }) => {
|
|
148
148
|
const server = await runMockServer('main');
|
|
149
149
|
const credentialsPath = join(configDir, 'credentials.json');
|
|
150
150
|
if (existsSync(credentialsPath)) {
|
|
@@ -155,9 +155,9 @@ describe('ensureAuth', () => {
|
|
|
155
155
|
_: ['init'],
|
|
156
156
|
};
|
|
157
157
|
await ensureAuth(props);
|
|
158
|
-
expect(authSpy).
|
|
158
|
+
expect(authSpy).toHaveBeenCalledTimes(1);
|
|
159
159
|
expect(refreshTokenSpy).not.toHaveBeenCalled();
|
|
160
|
-
expect(props.apiKey).
|
|
160
|
+
expect(props.apiKey).toEqual(expect.any(String));
|
|
161
161
|
});
|
|
162
162
|
test('should successfully refresh expired token', async ({ runMockServer, }) => {
|
|
163
163
|
refreshTokenSpy.mockImplementationOnce(() => Promise.resolve({
|
package/package.json
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"url": "git+ssh://git@github.com/neondatabase/neonctl.git"
|
|
6
6
|
},
|
|
7
7
|
"type": "module",
|
|
8
|
-
"version": "2.20.
|
|
8
|
+
"version": "2.20.3",
|
|
9
9
|
"description": "CLI tool for NeonDB Cloud management",
|
|
10
10
|
"main": "index.js",
|
|
11
11
|
"author": "NeonDB",
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
"cli-table": "^0.3.11",
|
|
63
63
|
"crypto-random-string": "^5.0.0",
|
|
64
64
|
"diff": "^5.2.0",
|
|
65
|
-
"neon-init": "^0.
|
|
65
|
+
"neon-init": "^0.12.1",
|
|
66
66
|
"open": "^10.1.0",
|
|
67
67
|
"openid-client": "^6.8.1",
|
|
68
68
|
"prompts": "2.4.2",
|