@mongodb-js/connection-form 0.1.1

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.
Files changed (183) hide show
  1. package/LICENSE +557 -0
  2. package/dist/.esm-wrapper.mjs +5 -0
  3. package/dist/components/advanced-connection-options.d.ts +12 -0
  4. package/dist/components/advanced-connection-options.d.ts.map +1 -0
  5. package/dist/components/advanced-connection-options.js +29 -0
  6. package/dist/components/advanced-connection-options.js.map +1 -0
  7. package/dist/components/advanced-options-tabs/advanced-options-tabs.d.ts +11 -0
  8. package/dist/components/advanced-options-tabs/advanced-options-tabs.d.ts.map +1 -0
  9. package/dist/components/advanced-options-tabs/advanced-options-tabs.js +85 -0
  10. package/dist/components/advanced-options-tabs/advanced-options-tabs.js.map +1 -0
  11. package/dist/components/advanced-options-tabs/advanced-tab/advanced-tab.d.ts +13 -0
  12. package/dist/components/advanced-options-tabs/advanced-tab/advanced-tab.d.ts.map +1 -0
  13. package/dist/components/advanced-options-tabs/advanced-tab/advanced-tab.js +80 -0
  14. package/dist/components/advanced-options-tabs/advanced-tab/advanced-tab.js.map +1 -0
  15. package/dist/components/advanced-options-tabs/advanced-tab/url-options-table.d.ts +9 -0
  16. package/dist/components/advanced-options-tabs/advanced-tab/url-options-table.d.ts.map +1 -0
  17. package/dist/components/advanced-options-tabs/advanced-tab/url-options-table.js +130 -0
  18. package/dist/components/advanced-options-tabs/advanced-tab/url-options-table.js.map +1 -0
  19. package/dist/components/advanced-options-tabs/advanced-tab/url-options.d.ts +9 -0
  20. package/dist/components/advanced-options-tabs/advanced-tab/url-options.d.ts.map +1 -0
  21. package/dist/components/advanced-options-tabs/advanced-tab/url-options.js +25 -0
  22. package/dist/components/advanced-options-tabs/advanced-tab/url-options.js.map +1 -0
  23. package/dist/components/advanced-options-tabs/authentication-tab/authentication-aws.d.ts +14 -0
  24. package/dist/components/advanced-options-tabs/authentication-tab/authentication-aws.d.ts.map +1 -0
  25. package/dist/components/advanced-options-tabs/authentication-tab/authentication-aws.js +44 -0
  26. package/dist/components/advanced-options-tabs/authentication-tab/authentication-aws.js.map +1 -0
  27. package/dist/components/advanced-options-tabs/authentication-tab/authentication-default.d.ts +11 -0
  28. package/dist/components/advanced-options-tabs/authentication-tab/authentication-default.d.ts.map +1 -0
  29. package/dist/components/advanced-options-tabs/authentication-tab/authentication-default.js +103 -0
  30. package/dist/components/advanced-options-tabs/authentication-tab/authentication-default.js.map +1 -0
  31. package/dist/components/advanced-options-tabs/authentication-tab/authentication-gssapi.d.ts +11 -0
  32. package/dist/components/advanced-options-tabs/authentication-tab/authentication-gssapi.d.ts.map +1 -0
  33. package/dist/components/advanced-options-tabs/authentication-tab/authentication-gssapi.js +103 -0
  34. package/dist/components/advanced-options-tabs/authentication-tab/authentication-gssapi.js.map +1 -0
  35. package/dist/components/advanced-options-tabs/authentication-tab/authentication-plain.d.ts +13 -0
  36. package/dist/components/advanced-options-tabs/authentication-tab/authentication-plain.d.ts.map +1 -0
  37. package/dist/components/advanced-options-tabs/authentication-tab/authentication-plain.js +36 -0
  38. package/dist/components/advanced-options-tabs/authentication-tab/authentication-plain.js.map +1 -0
  39. package/dist/components/advanced-options-tabs/authentication-tab/authentication-tab.d.ts +13 -0
  40. package/dist/components/advanced-options-tabs/authentication-tab/authentication-tab.d.ts.map +1 -0
  41. package/dist/components/advanced-options-tabs/authentication-tab/authentication-tab.js +116 -0
  42. package/dist/components/advanced-options-tabs/authentication-tab/authentication-tab.js.map +1 -0
  43. package/dist/components/advanced-options-tabs/authentication-tab/authentication-x509.d.ts +4 -0
  44. package/dist/components/advanced-options-tabs/authentication-tab/authentication-x509.d.ts.map +1 -0
  45. package/dist/components/advanced-options-tabs/authentication-tab/authentication-x509.js +20 -0
  46. package/dist/components/advanced-options-tabs/authentication-tab/authentication-x509.js.map +1 -0
  47. package/dist/components/advanced-options-tabs/general-tab/direct-connection-input.d.ts +9 -0
  48. package/dist/components/advanced-options-tabs/general-tab/direct-connection-input.d.ts.map +1 -0
  49. package/dist/components/advanced-options-tabs/general-tab/direct-connection-input.js +49 -0
  50. package/dist/components/advanced-options-tabs/general-tab/direct-connection-input.js.map +1 -0
  51. package/dist/components/advanced-options-tabs/general-tab/general-tab.d.ts +11 -0
  52. package/dist/components/advanced-options-tabs/general-tab/general-tab.d.ts.map +1 -0
  53. package/dist/components/advanced-options-tabs/general-tab/general-tab.js +17 -0
  54. package/dist/components/advanced-options-tabs/general-tab/general-tab.js.map +1 -0
  55. package/dist/components/advanced-options-tabs/general-tab/host-input.d.ts +11 -0
  56. package/dist/components/advanced-options-tabs/general-tab/host-input.d.ts.map +1 -0
  57. package/dist/components/advanced-options-tabs/general-tab/host-input.js +86 -0
  58. package/dist/components/advanced-options-tabs/general-tab/host-input.js.map +1 -0
  59. package/dist/components/advanced-options-tabs/general-tab/schema-input.d.ts +11 -0
  60. package/dist/components/advanced-options-tabs/general-tab/schema-input.d.ts.map +1 -0
  61. package/dist/components/advanced-options-tabs/general-tab/schema-input.js +52 -0
  62. package/dist/components/advanced-options-tabs/general-tab/schema-input.js.map +1 -0
  63. package/dist/components/advanced-options-tabs/general-tab/scheme-input.d.ts +11 -0
  64. package/dist/components/advanced-options-tabs/general-tab/scheme-input.d.ts.map +1 -0
  65. package/dist/components/advanced-options-tabs/general-tab/scheme-input.js +52 -0
  66. package/dist/components/advanced-options-tabs/general-tab/scheme-input.js.map +1 -0
  67. package/dist/components/advanced-options-tabs/ssh-tunnel-tab/proxy-and-ssh-tunnel-tab.d.ts +13 -0
  68. package/dist/components/advanced-options-tabs/ssh-tunnel-tab/proxy-and-ssh-tunnel-tab.d.ts.map +1 -0
  69. package/dist/components/advanced-options-tabs/ssh-tunnel-tab/proxy-and-ssh-tunnel-tab.js +127 -0
  70. package/dist/components/advanced-options-tabs/ssh-tunnel-tab/proxy-and-ssh-tunnel-tab.js.map +1 -0
  71. package/dist/components/advanced-options-tabs/ssh-tunnel-tab/socks.d.ts +11 -0
  72. package/dist/components/advanced-options-tabs/ssh-tunnel-tab/socks.d.ts.map +1 -0
  73. package/dist/components/advanced-options-tabs/ssh-tunnel-tab/socks.js +86 -0
  74. package/dist/components/advanced-options-tabs/ssh-tunnel-tab/socks.js.map +1 -0
  75. package/dist/components/advanced-options-tabs/ssh-tunnel-tab/ssh-tunnel-identity.d.ts +11 -0
  76. package/dist/components/advanced-options-tabs/ssh-tunnel-tab/ssh-tunnel-identity.d.ts.map +1 -0
  77. package/dist/components/advanced-options-tabs/ssh-tunnel-tab/ssh-tunnel-identity.js +100 -0
  78. package/dist/components/advanced-options-tabs/ssh-tunnel-tab/ssh-tunnel-identity.js.map +1 -0
  79. package/dist/components/advanced-options-tabs/ssh-tunnel-tab/ssh-tunnel-password.d.ts +11 -0
  80. package/dist/components/advanced-options-tabs/ssh-tunnel-tab/ssh-tunnel-password.d.ts.map +1 -0
  81. package/dist/components/advanced-options-tabs/ssh-tunnel-tab/ssh-tunnel-password.js +82 -0
  82. package/dist/components/advanced-options-tabs/ssh-tunnel-tab/ssh-tunnel-password.js.map +1 -0
  83. package/dist/components/advanced-options-tabs/tls-ssl-tab/tls-certificate-authority.d.ts +9 -0
  84. package/dist/components/advanced-options-tabs/tls-ssl-tab/tls-certificate-authority.d.ts.map +1 -0
  85. package/dist/components/advanced-options-tabs/tls-ssl-tab/tls-certificate-authority.js +22 -0
  86. package/dist/components/advanced-options-tabs/tls-ssl-tab/tls-certificate-authority.js.map +1 -0
  87. package/dist/components/advanced-options-tabs/tls-ssl-tab/tls-client-certificate.d.ts +10 -0
  88. package/dist/components/advanced-options-tabs/tls-ssl-tab/tls-client-certificate.d.ts.map +1 -0
  89. package/dist/components/advanced-options-tabs/tls-ssl-tab/tls-client-certificate.js +27 -0
  90. package/dist/components/advanced-options-tabs/tls-ssl-tab/tls-client-certificate.js.map +1 -0
  91. package/dist/components/advanced-options-tabs/tls-ssl-tab/tls-ssl-tab.d.ts +11 -0
  92. package/dist/components/advanced-options-tabs/tls-ssl-tab/tls-ssl-tab.d.ts.map +1 -0
  93. package/dist/components/advanced-options-tabs/tls-ssl-tab/tls-ssl-tab.js +129 -0
  94. package/dist/components/advanced-options-tabs/tls-ssl-tab/tls-ssl-tab.js.map +1 -0
  95. package/dist/components/confirm-edit-connection-string.d.ts +8 -0
  96. package/dist/components/confirm-edit-connection-string.d.ts.map +1 -0
  97. package/dist/components/confirm-edit-connection-string.js +13 -0
  98. package/dist/components/confirm-edit-connection-string.js.map +1 -0
  99. package/dist/components/connect-form-actions.d.ts +11 -0
  100. package/dist/components/connect-form-actions.d.ts.map +1 -0
  101. package/dist/components/connect-form-actions.js +30 -0
  102. package/dist/components/connect-form-actions.js.map +1 -0
  103. package/dist/components/connect-form.d.ts +10 -0
  104. package/dist/components/connect-form.d.ts.map +1 -0
  105. package/dist/components/connect-form.js +166 -0
  106. package/dist/components/connect-form.js.map +1 -0
  107. package/dist/components/connection-string-input.d.ts +11 -0
  108. package/dist/components/connection-string-input.d.ts.map +1 -0
  109. package/dist/components/connection-string-input.js +118 -0
  110. package/dist/components/connection-string-input.js.map +1 -0
  111. package/dist/components/favorite-color-picker.d.ts +6 -0
  112. package/dist/components/favorite-color-picker.d.ts.map +1 -0
  113. package/dist/components/favorite-color-picker.js +79 -0
  114. package/dist/components/favorite-color-picker.js.map +1 -0
  115. package/dist/components/form-field-container.d.ts +7 -0
  116. package/dist/components/form-field-container.d.ts.map +1 -0
  117. package/dist/components/form-field-container.js +15 -0
  118. package/dist/components/form-field-container.js.map +1 -0
  119. package/dist/components/save-connection-modal.d.ts +10 -0
  120. package/dist/components/save-connection-modal.d.ts.map +1 -0
  121. package/dist/components/save-connection-modal.js +55 -0
  122. package/dist/components/save-connection-modal.js.map +1 -0
  123. package/dist/components/validation-summary.d.ts +12 -0
  124. package/dist/components/validation-summary.d.ts.map +1 -0
  125. package/dist/components/validation-summary.js +56 -0
  126. package/dist/components/validation-summary.js.map +1 -0
  127. package/dist/constants/default-connection.d.ts +6 -0
  128. package/dist/constants/default-connection.d.ts.map +1 -0
  129. package/dist/constants/default-connection.js +9 -0
  130. package/dist/constants/default-connection.js.map +1 -0
  131. package/dist/hooks/use-connect-form.d.ts +67 -0
  132. package/dist/hooks/use-connect-form.d.ts.map +1 -0
  133. package/dist/hooks/use-connect-form.js +373 -0
  134. package/dist/hooks/use-connect-form.js.map +1 -0
  135. package/dist/hooks/use-connection-color.d.ts +8 -0
  136. package/dist/hooks/use-connection-color.d.ts.map +1 -0
  137. package/dist/hooks/use-connection-color.js +59 -0
  138. package/dist/hooks/use-connection-color.js.map +1 -0
  139. package/dist/index.d.ts +6 -0
  140. package/dist/index.d.ts.map +1 -0
  141. package/dist/index.js +14 -0
  142. package/dist/index.js.map +1 -0
  143. package/dist/utils/authentication-handler.d.ts +42 -0
  144. package/dist/utils/authentication-handler.d.ts.map +1 -0
  145. package/dist/utils/authentication-handler.js +96 -0
  146. package/dist/utils/authentication-handler.js.map +1 -0
  147. package/dist/utils/check-for-invalid-character-in-host.d.ts +2 -0
  148. package/dist/utils/check-for-invalid-character-in-host.d.ts.map +1 -0
  149. package/dist/utils/check-for-invalid-character-in-host.js +16 -0
  150. package/dist/utils/check-for-invalid-character-in-host.js.map +1 -0
  151. package/dist/utils/connection-ssh-handler.d.ts +15 -0
  152. package/dist/utils/connection-ssh-handler.d.ts.map +1 -0
  153. package/dist/utils/connection-ssh-handler.js +23 -0
  154. package/dist/utils/connection-ssh-handler.js.map +1 -0
  155. package/dist/utils/connection-string-helpers.d.ts +14 -0
  156. package/dist/utils/connection-string-helpers.d.ts.map +1 -0
  157. package/dist/utils/connection-string-helpers.js +65 -0
  158. package/dist/utils/connection-string-helpers.js.map +1 -0
  159. package/dist/utils/connection-string-schema.d.ts +3 -0
  160. package/dist/utils/connection-string-schema.d.ts.map +1 -0
  161. package/dist/utils/connection-string-schema.js +43 -0
  162. package/dist/utils/connection-string-schema.js.map +1 -0
  163. package/dist/utils/get-next-host.d.ts +2 -0
  164. package/dist/utils/get-next-host.d.ts.map +1 -0
  165. package/dist/utils/get-next-host.js +26 -0
  166. package/dist/utils/get-next-host.js.map +1 -0
  167. package/dist/utils/read-preferences.d.ts +8 -0
  168. package/dist/utils/read-preferences.d.ts.map +1 -0
  169. package/dist/utils/read-preferences.js +27 -0
  170. package/dist/utils/read-preferences.js.map +1 -0
  171. package/dist/utils/tls-handler.d.ts +29 -0
  172. package/dist/utils/tls-handler.d.ts.map +1 -0
  173. package/dist/utils/tls-handler.js +47 -0
  174. package/dist/utils/tls-handler.js.map +1 -0
  175. package/dist/utils/url-options.d.ts +10 -0
  176. package/dist/utils/url-options.d.ts.map +1 -0
  177. package/dist/utils/url-options.js +49 -0
  178. package/dist/utils/url-options.js.map +1 -0
  179. package/dist/utils/validation.d.ts +30 -0
  180. package/dist/utils/validation.d.ts.map +1 -0
  181. package/dist/utils/validation.js +284 -0
  182. package/dist/utils/validation.js.map +1 -0
  183. package/package.json +89 -0
@@ -0,0 +1,373 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.useConnectForm = exports.handleConnectionFormFieldUpdate = void 0;
7
+ const react_1 = require("react");
8
+ const lodash_1 = require("lodash");
9
+ const mongodb_connection_string_url_1 = __importDefault(require("mongodb-connection-string-url"));
10
+ const validation_1 = require("../utils/validation");
11
+ const get_next_host_1 = require("../utils/get-next-host");
12
+ const default_connection_1 = require("../constants/default-connection");
13
+ const check_for_invalid_character_in_host_1 = require("../utils/check-for-invalid-character-in-host");
14
+ const connection_string_schema_1 = require("../utils/connection-string-schema");
15
+ const connection_ssh_handler_1 = require("../utils/connection-ssh-handler");
16
+ const tls_handler_1 = require("../utils/tls-handler");
17
+ const authentication_handler_1 = require("../utils/authentication-handler");
18
+ const connection_string_helpers_1 = require("../utils/connection-string-helpers");
19
+ function connectFormReducer(state, action) {
20
+ switch (action.type) {
21
+ case 'set-connection-form-state':
22
+ return {
23
+ ...state,
24
+ ...action.newState,
25
+ };
26
+ case 'set-enable-editing-connection-string':
27
+ return {
28
+ ...state,
29
+ enableEditingConnectionString: action.enableEditing,
30
+ };
31
+ case 'set-form-errors':
32
+ return {
33
+ ...state,
34
+ errors: action.errors,
35
+ };
36
+ }
37
+ }
38
+ function parseConnectionString(connectionString) {
39
+ const [parsedConnectionString, parsingError] = (0, connection_string_helpers_1.tryToParseConnectionString)(connectionString);
40
+ return [
41
+ parsedConnectionString,
42
+ parsingError
43
+ ? [
44
+ {
45
+ fieldName: 'connectionString',
46
+ fieldTab: 'general',
47
+ message: parsingError.message,
48
+ },
49
+ ]
50
+ : [],
51
+ ];
52
+ }
53
+ function buildStateFromConnectionInfo(initialConnectionInfo) {
54
+ const [, errors] = parseConnectionString(initialConnectionInfo.connectionOptions.connectionString);
55
+ return {
56
+ errors: errors,
57
+ enableEditingConnectionString: initialConnectionInfo.connectionOptions.connectionString ===
58
+ default_connection_1.defaultConnectionString && !initialConnectionInfo.lastUsed,
59
+ warnings: errors
60
+ ? []
61
+ : (0, validation_1.validateConnectionOptionsWarnings)(initialConnectionInfo.connectionOptions),
62
+ connectionOptions: (0, lodash_1.cloneDeep)(initialConnectionInfo.connectionOptions),
63
+ isDirty: false,
64
+ };
65
+ }
66
+ function handleUpdateHost({ action, connectionStringUrl, connectionOptions, }) {
67
+ const { newHostValue, fieldIndex } = action;
68
+ try {
69
+ (0, check_for_invalid_character_in_host_1.checkForInvalidCharacterInHost)(newHostValue, connectionStringUrl.isSRV);
70
+ if (connectionStringUrl.hosts.length === 1 && newHostValue === '') {
71
+ throw new Error('Host cannot be empty. The host is the address hostname, IP address, or UNIX domain socket where the mongodb instance is running.');
72
+ }
73
+ const updatedConnectionString = connectionStringUrl.clone();
74
+ updatedConnectionString.hosts[fieldIndex] = newHostValue || '';
75
+ const newConnectionStringUrl = new mongodb_connection_string_url_1.default(updatedConnectionString.toString());
76
+ return {
77
+ connectionOptions: {
78
+ ...(0, lodash_1.cloneDeep)(connectionOptions),
79
+ connectionString: newConnectionStringUrl.toString(),
80
+ },
81
+ errors: [],
82
+ };
83
+ }
84
+ catch (err) {
85
+ return {
86
+ connectionOptions: {
87
+ ...(0, lodash_1.cloneDeep)(connectionOptions),
88
+ connectionString: connectionStringUrl.toString(),
89
+ },
90
+ errors: [
91
+ {
92
+ fieldName: 'hosts',
93
+ fieldTab: 'general',
94
+ fieldIndex,
95
+ message: err.message,
96
+ },
97
+ ],
98
+ };
99
+ }
100
+ }
101
+ function handleConnectionFormFieldUpdate(action, currentConnectionOptions) {
102
+ var _a;
103
+ if (action.type === 'update-connection-string') {
104
+ const [newParsedConnectionStringUrl, errors] = parseConnectionString(action.newConnectionStringValue);
105
+ return {
106
+ connectionOptions: {
107
+ ...currentConnectionOptions,
108
+ connectionString: (newParsedConnectionStringUrl === null || newParsedConnectionStringUrl === void 0 ? void 0 : newParsedConnectionStringUrl.toString()) ||
109
+ action.newConnectionStringValue,
110
+ },
111
+ errors,
112
+ };
113
+ }
114
+ const [parsedConnectionStringUrl, errors] = parseConnectionString(currentConnectionOptions.connectionString);
115
+ if (!parsedConnectionStringUrl) {
116
+ return {
117
+ connectionOptions: currentConnectionOptions,
118
+ errors: errors,
119
+ };
120
+ }
121
+ const updatedSearchParams = parsedConnectionStringUrl.typedSearchParams();
122
+ switch (action.type) {
123
+ case 'add-new-host': {
124
+ const { fieldIndexToAddAfter } = action;
125
+ const newHost = (0, get_next_host_1.getNextHost)(parsedConnectionStringUrl.hosts, fieldIndexToAddAfter);
126
+ parsedConnectionStringUrl.hosts.splice(fieldIndexToAddAfter + 1, 0, newHost);
127
+ if (updatedSearchParams.get('directConnection')) {
128
+ updatedSearchParams.delete('directConnection');
129
+ }
130
+ return {
131
+ connectionOptions: {
132
+ ...currentConnectionOptions,
133
+ connectionString: parsedConnectionStringUrl.toString(),
134
+ },
135
+ };
136
+ }
137
+ case 'remove-host': {
138
+ const { fieldIndexToRemove } = action;
139
+ parsedConnectionStringUrl.hosts.splice(fieldIndexToRemove, 1);
140
+ if (parsedConnectionStringUrl.hosts.length === 1 &&
141
+ !parsedConnectionStringUrl.hosts[0]) {
142
+ parsedConnectionStringUrl.hosts[0] = `${default_connection_1.defaultHostname}:${default_connection_1.defaultPort}`;
143
+ }
144
+ return {
145
+ connectionOptions: {
146
+ ...currentConnectionOptions,
147
+ connectionString: parsedConnectionStringUrl.toString(),
148
+ },
149
+ };
150
+ }
151
+ case 'update-tls': {
152
+ return (0, tls_handler_1.handleUpdateTls)({
153
+ action,
154
+ connectionStringUrl: parsedConnectionStringUrl,
155
+ connectionOptions: currentConnectionOptions,
156
+ });
157
+ }
158
+ case 'update-tls-option': {
159
+ return (0, tls_handler_1.handleUpdateTlsOption)({
160
+ action,
161
+ connectionStringUrl: parsedConnectionStringUrl,
162
+ connectionOptions: currentConnectionOptions,
163
+ });
164
+ }
165
+ case 'update-auth-mechanism': {
166
+ return (0, authentication_handler_1.handleUpdateAuthMechanism)({
167
+ action,
168
+ connectionStringUrl: parsedConnectionStringUrl,
169
+ connectionOptions: currentConnectionOptions,
170
+ });
171
+ }
172
+ case 'update-username': {
173
+ return (0, authentication_handler_1.handleUpdateUsername)({
174
+ action,
175
+ connectionStringUrl: parsedConnectionStringUrl,
176
+ connectionOptions: currentConnectionOptions,
177
+ });
178
+ }
179
+ case 'update-password': {
180
+ return (0, authentication_handler_1.handleUpdatePassword)({
181
+ action,
182
+ connectionStringUrl: parsedConnectionStringUrl,
183
+ connectionOptions: currentConnectionOptions,
184
+ });
185
+ }
186
+ case 'update-host': {
187
+ return handleUpdateHost({
188
+ action,
189
+ connectionStringUrl: parsedConnectionStringUrl,
190
+ connectionOptions: currentConnectionOptions,
191
+ });
192
+ }
193
+ case 'update-connection-schema': {
194
+ const { isSrv } = action;
195
+ try {
196
+ const newConnectionStringUrl = (0, connection_string_schema_1.tryUpdateConnectionStringSchema)(parsedConnectionStringUrl, isSrv);
197
+ return {
198
+ connectionOptions: {
199
+ ...currentConnectionOptions,
200
+ connectionString: newConnectionStringUrl.toString(),
201
+ },
202
+ errors: [],
203
+ };
204
+ }
205
+ catch (err) {
206
+ return {
207
+ connectionOptions: {
208
+ ...currentConnectionOptions,
209
+ },
210
+ errors: [
211
+ {
212
+ fieldName: 'isSrv',
213
+ fieldTab: 'general',
214
+ message: `Error updating connection schema: ${err.message}`,
215
+ },
216
+ ],
217
+ };
218
+ }
219
+ }
220
+ case 'update-ssh-options': {
221
+ return (0, connection_ssh_handler_1.handleUpdateSshOptions)({
222
+ action,
223
+ connectionOptions: currentConnectionOptions,
224
+ });
225
+ }
226
+ case 'update-search-param': {
227
+ if (action.newKey) {
228
+ const newValue = (_a = action.value) !== null && _a !== void 0 ? _a : updatedSearchParams.get(action.currentKey);
229
+ updatedSearchParams.delete(action.currentKey);
230
+ updatedSearchParams.set(action.newKey, newValue);
231
+ }
232
+ else {
233
+ updatedSearchParams.set(action.currentKey, action.value);
234
+ }
235
+ return {
236
+ connectionOptions: {
237
+ ...currentConnectionOptions,
238
+ connectionString: parsedConnectionStringUrl.toString(),
239
+ },
240
+ };
241
+ }
242
+ case 'update-auth-mechanism-property': {
243
+ const authMechanismProperties = (0, connection_string_helpers_1.parseAuthMechanismProperties)(parsedConnectionStringUrl);
244
+ if (action.value) {
245
+ authMechanismProperties.set(action.key, action.value);
246
+ }
247
+ else {
248
+ authMechanismProperties.delete(action.key);
249
+ }
250
+ const authMechanismPropertiesString = authMechanismProperties.toString();
251
+ if (authMechanismPropertiesString) {
252
+ updatedSearchParams.set('authMechanismProperties', authMechanismPropertiesString);
253
+ }
254
+ else {
255
+ updatedSearchParams.delete('authMechanismProperties');
256
+ }
257
+ return {
258
+ connectionOptions: {
259
+ ...currentConnectionOptions,
260
+ connectionString: parsedConnectionStringUrl.toString(),
261
+ },
262
+ };
263
+ }
264
+ case 'delete-search-param': {
265
+ updatedSearchParams.delete(action.key);
266
+ return {
267
+ connectionOptions: {
268
+ ...currentConnectionOptions,
269
+ connectionString: parsedConnectionStringUrl.toString(),
270
+ },
271
+ };
272
+ }
273
+ case 'update-connection-path': {
274
+ parsedConnectionStringUrl.pathname = action.value;
275
+ return {
276
+ connectionOptions: {
277
+ ...currentConnectionOptions,
278
+ connectionString: parsedConnectionStringUrl.toString(),
279
+ },
280
+ };
281
+ }
282
+ case 'remove-proxy-options': {
283
+ const proxyOptions = [
284
+ 'proxyHost',
285
+ 'proxyPort',
286
+ 'proxyPassword',
287
+ 'proxyUsername',
288
+ ];
289
+ proxyOptions.forEach((key) => updatedSearchParams.delete(key));
290
+ return {
291
+ connectionOptions: {
292
+ ...currentConnectionOptions,
293
+ connectionString: parsedConnectionStringUrl.toString(),
294
+ },
295
+ };
296
+ }
297
+ case 'remove-ssh-options': {
298
+ return {
299
+ connectionOptions: {
300
+ ...currentConnectionOptions,
301
+ sshTunnel: undefined,
302
+ },
303
+ };
304
+ }
305
+ }
306
+ }
307
+ exports.handleConnectionFormFieldUpdate = handleConnectionFormFieldUpdate;
308
+ function useConnectForm(initialConnectionInfo, connectionErrorMessage) {
309
+ const [state, dispatch] = (0, react_1.useReducer)(connectFormReducer, initialConnectionInfo, buildStateFromConnectionInfo);
310
+ const setErrors = (0, react_1.useCallback)((errors) => {
311
+ dispatch({
312
+ type: 'set-form-errors',
313
+ errors,
314
+ });
315
+ }, []);
316
+ const setEnableEditingConnectionString = (0, react_1.useCallback)((enableEditing) => {
317
+ dispatch({
318
+ type: 'set-enable-editing-connection-string',
319
+ enableEditing,
320
+ });
321
+ }, []);
322
+ const updateConnectionFormField = (0, react_1.useCallback)((action) => {
323
+ const updatedState = handleConnectionFormFieldUpdate(action, state.connectionOptions);
324
+ dispatch({
325
+ type: 'set-connection-form-state',
326
+ newState: {
327
+ ...state,
328
+ errors: [],
329
+ ...updatedState,
330
+ warnings: updatedState.errors && updatedState.errors.length > 0
331
+ ? []
332
+ : (0, validation_1.validateConnectionOptionsWarnings)(updatedState.connectionOptions),
333
+ isDirty: !(0, lodash_1.isEqual)(updatedState.connectionOptions, state.connectionOptions),
334
+ },
335
+ });
336
+ }, [state]);
337
+ setInitialState({
338
+ connectionErrorMessage,
339
+ initialConnectionInfo,
340
+ setErrors,
341
+ dispatch,
342
+ });
343
+ return [
344
+ state,
345
+ {
346
+ updateConnectionFormField,
347
+ setEnableEditingConnectionString,
348
+ setErrors,
349
+ },
350
+ ];
351
+ }
352
+ exports.useConnectForm = useConnectForm;
353
+ function setInitialState({ connectionErrorMessage, initialConnectionInfo, setErrors, dispatch, }) {
354
+ (0, react_1.useEffect)(() => {
355
+ const { errors, enableEditingConnectionString, warnings, connectionOptions, } = buildStateFromConnectionInfo(initialConnectionInfo);
356
+ dispatch({
357
+ type: 'set-connection-form-state',
358
+ newState: {
359
+ errors,
360
+ enableEditingConnectionString,
361
+ warnings,
362
+ connectionOptions,
363
+ isDirty: false,
364
+ },
365
+ });
366
+ }, [initialConnectionInfo]);
367
+ (0, react_1.useEffect)(() => {
368
+ if (connectionErrorMessage) {
369
+ setErrors([{ message: connectionErrorMessage }]);
370
+ }
371
+ }, [setErrors, connectionErrorMessage]);
372
+ }
373
+ //# sourceMappingURL=use-connect-form.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-connect-form.js","sourceRoot":"","sources":["../../src/hooks/use-connect-form.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ declare type ColorCode = `color${1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10}`;
2
+ export declare const CONNECTION_COLOR_CODES: ("color5" | "color1" | "color2" | "color4" | "color8" | "color7" | "color3" | "color6" | "color9" | "color10")[];
3
+ export declare function legacyColorsToColorCode(hexOrColorCode: string | undefined): ColorCode | undefined;
4
+ export declare function useConnectionColor(): {
5
+ connectionColorToHex: (colorCode: string | undefined) => string | undefined;
6
+ };
7
+ export {};
8
+ //# sourceMappingURL=use-connection-color.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-connection-color.d.ts","sourceRoot":"","sources":["../../src/hooks/use-connection-color.ts"],"names":[],"mappings":"AAEA,aAAK,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC;AA4BlE,eAAO,MAAM,sBAAsB,kHAEnB,CAAC;AAMjB,wBAAgB,uBAAuB,CACrC,cAAc,EAAE,MAAM,GAAG,SAAS,GACjC,SAAS,GAAG,SAAS,CAUvB;AAED,wBAAgB,kBAAkB,IAAI;IACpC,oBAAoB,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,KAAK,MAAM,GAAG,SAAS,CAAC;CAC7E,CAoBA"}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useConnectionColor = exports.legacyColorsToColorCode = exports.CONNECTION_COLOR_CODES = void 0;
4
+ const react_1 = require("react");
5
+ const COLOR_CODES_TO_UI_COLORS_DARK_THEME_MAP = {
6
+ color1: '#00A35C',
7
+ color2: '#71F6BA',
8
+ color3: '#016BF8',
9
+ color4: '#0498EC',
10
+ color5: '#FFC010',
11
+ color6: '#EF5752',
12
+ color7: '#B45AF2',
13
+ color8: '#F1D4FD',
14
+ color9: '#889397',
15
+ color10: '#C1C7C6',
16
+ };
17
+ const LEGACY_COLORS_TO_COLOR_CODE_MAP = {
18
+ '#5fc86e': 'color1',
19
+ '#326fde': 'color2',
20
+ '#deb342': 'color3',
21
+ '#d4366e': 'color4',
22
+ '#59c1e2': 'color5',
23
+ '#2c5f4a': 'color6',
24
+ '#d66531': 'color7',
25
+ '#773819': 'color8',
26
+ '#3b8196': 'color9',
27
+ '#ababab': 'color10',
28
+ };
29
+ exports.CONNECTION_COLOR_CODES = Object.keys(COLOR_CODES_TO_UI_COLORS_DARK_THEME_MAP);
30
+ function isColorCode(hexOrColorCode) {
31
+ return exports.CONNECTION_COLOR_CODES.includes(hexOrColorCode);
32
+ }
33
+ function legacyColorsToColorCode(hexOrColorCode) {
34
+ if (!hexOrColorCode) {
35
+ return;
36
+ }
37
+ if (isColorCode(hexOrColorCode)) {
38
+ return hexOrColorCode;
39
+ }
40
+ return LEGACY_COLORS_TO_COLOR_CODE_MAP[hexOrColorCode];
41
+ }
42
+ exports.legacyColorsToColorCode = legacyColorsToColorCode;
43
+ function useConnectionColor() {
44
+ const colorCodeToHex = (0, react_1.useCallback)((colorCode) => {
45
+ if (!colorCode) {
46
+ return;
47
+ }
48
+ const migratedColor = legacyColorsToColorCode(colorCode);
49
+ if (!migratedColor) {
50
+ return;
51
+ }
52
+ return COLOR_CODES_TO_UI_COLORS_DARK_THEME_MAP[migratedColor];
53
+ }, []);
54
+ return {
55
+ connectionColorToHex: colorCodeToHex,
56
+ };
57
+ }
58
+ exports.useConnectionColor = useConnectionColor;
59
+ //# sourceMappingURL=use-connection-color.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-connection-color.js","sourceRoot":"","sources":["../../src/hooks/use-connection-color.ts"],"names":[],"mappings":";;;AAAA,iCAAoC;AAIpC,MAAM,uCAAuC,GAA8B;IACzE,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,OAAO,EAAE,SAAS;CACnB,CAAC;AAEF,MAAM,+BAA+B,GAA8B;IACjE,SAAS,EAAE,QAAQ;IACnB,SAAS,EAAE,QAAQ;IACnB,SAAS,EAAE,QAAQ;IACnB,SAAS,EAAE,QAAQ;IACnB,SAAS,EAAE,QAAQ;IACnB,SAAS,EAAE,QAAQ;IACnB,SAAS,EAAE,QAAQ;IACnB,SAAS,EAAE,QAAQ;IACnB,SAAS,EAAE,QAAQ;IACnB,SAAS,EAAE,SAAS;CACrB,CAAC;AAEW,QAAA,sBAAsB,GAAG,MAAM,CAAC,IAAI,CAC/C,uCAAuC,CACzB,CAAC;AAEjB,SAAS,WAAW,CAAC,cAAkC;IACrD,OAAO,8BAAsB,CAAC,QAAQ,CAAC,cAA2B,CAAC,CAAC;AACtE,CAAC;AAED,SAAgB,uBAAuB,CACrC,cAAkC;IAElC,IAAI,CAAC,cAAc,EAAE;QACnB,OAAO;KACR;IAED,IAAI,WAAW,CAAC,cAAc,CAAC,EAAE;QAC/B,OAAO,cAA2B,CAAC;KACpC;IAED,OAAO,+BAA+B,CAAC,cAAc,CAAC,CAAC;AACzD,CAAC;AAZD,0DAYC;AAED,SAAgB,kBAAkB;IAGhC,MAAM,cAAc,GAAG,IAAA,mBAAW,EAChC,CAAC,SAA6B,EAAsB,EAAE;QACpD,IAAI,CAAC,SAAS,EAAE;YACd,OAAO;SACR;QAED,MAAM,aAAa,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAC;QACzD,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO;SACR;QAED,OAAO,uCAAuC,CAAC,aAAa,CAAC,CAAC;IAChE,CAAC,EACD,EAAE,CACH,CAAC;IAEF,OAAO;QACL,oBAAoB,EAAE,cAAc;KACrC,CAAC;AACJ,CAAC;AAtBD,gDAsBC"}
@@ -0,0 +1,6 @@
1
+ import ConnectionForm from './components/connect-form';
2
+ import SaveConnectionModal from './components/save-connection-modal';
3
+ import { useConnectionColor } from './hooks/use-connection-color';
4
+ export { SaveConnectionModal, useConnectionColor };
5
+ export default ConnectionForm;
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,2BAA2B,CAAC;AACvD,OAAO,mBAAmB,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAElE,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,CAAC;AACnD,eAAe,cAAc,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.useConnectionColor = exports.SaveConnectionModal = void 0;
7
+ const connect_form_1 = __importDefault(require("./components/connect-form"));
8
+ const save_connection_modal_1 = __importDefault(require("./components/save-connection-modal"));
9
+ exports.SaveConnectionModal = save_connection_modal_1.default;
10
+ const use_connection_color_1 = require("./hooks/use-connection-color");
11
+ Object.defineProperty(exports, "useConnectionColor", { enumerable: true, get: function () { return use_connection_color_1.useConnectionColor; } });
12
+ use_connection_color_1.useConnectionColor;
13
+ exports.default = connect_form_1.default;
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,6EAAuD;AACvD,+FAAqE;AAG5D,8BAHF,+BAAmB,CAGE;AAF5B,uEAAkE;AAEpC,mGAFrB,yCAAkB,OAEqB;AADhD,yCAAkB,CAAC;AAEnB,kBAAe,sBAAc,CAAC"}
@@ -0,0 +1,42 @@
1
+ import type { AuthMechanism } from 'mongodb';
2
+ import type ConnectionStringUrl from 'mongodb-connection-string-url';
3
+ import type { ConnectionOptions } from 'mongodb-data-service';
4
+ import type { ConnectionFormError } from './validation';
5
+ export declare type UpdateAuthMechanismAction = {
6
+ type: 'update-auth-mechanism';
7
+ authMechanism: AuthMechanism | null;
8
+ };
9
+ export declare type UpdateUsernameAction = {
10
+ type: 'update-username';
11
+ username: string;
12
+ };
13
+ export declare type UpdatePasswordAction = {
14
+ type: 'update-password';
15
+ password: string;
16
+ };
17
+ export declare function getConnectionUrlWithoutAuth(connectionStringUrl: ConnectionStringUrl): ConnectionStringUrl;
18
+ export declare function handleUpdateAuthMechanism({ action, connectionStringUrl, connectionOptions, }: {
19
+ action: UpdateAuthMechanismAction;
20
+ connectionStringUrl: ConnectionStringUrl;
21
+ connectionOptions: ConnectionOptions;
22
+ }): {
23
+ connectionOptions: ConnectionOptions;
24
+ errors?: ConnectionFormError[];
25
+ };
26
+ export declare function handleUpdateUsername({ action, connectionStringUrl, connectionOptions, }: {
27
+ action: UpdateUsernameAction;
28
+ connectionStringUrl: ConnectionStringUrl;
29
+ connectionOptions: ConnectionOptions;
30
+ }): {
31
+ connectionOptions: ConnectionOptions;
32
+ errors?: ConnectionFormError[];
33
+ };
34
+ export declare function handleUpdatePassword({ action, connectionStringUrl, connectionOptions, }: {
35
+ action: UpdatePasswordAction;
36
+ connectionStringUrl: ConnectionStringUrl;
37
+ connectionOptions: ConnectionOptions;
38
+ }): {
39
+ connectionOptions: ConnectionOptions;
40
+ errors?: ConnectionFormError[];
41
+ };
42
+ //# sourceMappingURL=authentication-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authentication-handler.d.ts","sourceRoot":"","sources":["../../src/utils/authentication-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,KAAK,mBAAmB,MAAM,+BAA+B,CAAC;AACrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAG9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAQxD,oBAAY,yBAAyB,GAAG;IACtC,IAAI,EAAE,uBAAuB,CAAC;IAC9B,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;CACrC,CAAC;AAEF,oBAAY,oBAAoB,GAAG;IACjC,IAAI,EAAE,iBAAiB,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AACF,oBAAY,oBAAoB,GAAG;IACjC,IAAI,EAAE,iBAAiB,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,wBAAgB,2BAA2B,CACzC,mBAAmB,EAAE,mBAAmB,GACvC,mBAAmB,CAkBrB;AAED,wBAAgB,yBAAyB,CAAC,EACxC,MAAM,EACN,mBAAmB,EACnB,iBAAiB,GAClB,EAAE;IACD,MAAM,EAAE,yBAAyB,CAAC;IAClC,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,iBAAiB,EAAE,iBAAiB,CAAC;CACtC,GAAG;IACF,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,MAAM,CAAC,EAAE,mBAAmB,EAAE,CAAC;CAChC,CAuBA;AAED,wBAAgB,oBAAoB,CAAC,EACnC,MAAM,EACN,mBAAmB,EACnB,iBAAiB,GAClB,EAAE;IACD,MAAM,EAAE,oBAAoB,CAAC;IAC7B,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,iBAAiB,EAAE,iBAAiB,CAAC;CACtC,GAAG;IACF,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,MAAM,CAAC,EAAE,mBAAmB,EAAE,CAAC;CAChC,CA+BA;AAED,wBAAgB,oBAAoB,CAAC,EACnC,MAAM,EACN,mBAAmB,EACnB,iBAAiB,GAClB,EAAE;IACD,MAAM,EAAE,oBAAoB,CAAC;IAC7B,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,iBAAiB,EAAE,iBAAiB,CAAC;CACtC,GAAG;IACF,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,MAAM,CAAC,EAAE,mBAAmB,EAAE,CAAC;CAChC,CA0CA"}
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.handleUpdatePassword = exports.handleUpdateUsername = exports.handleUpdateAuthMechanism = exports.getConnectionUrlWithoutAuth = void 0;
4
+ const connection_string_helpers_1 = require("./connection-string-helpers");
5
+ const lodash_1 = require("lodash");
6
+ function getConnectionUrlWithoutAuth(connectionStringUrl) {
7
+ const updatedConnectionString = connectionStringUrl.clone();
8
+ const updatedSearchParams = updatedConnectionString.typedSearchParams();
9
+ updatedSearchParams.delete('authMechanism');
10
+ updatedConnectionString.password = '';
11
+ updatedConnectionString.username = '';
12
+ updatedSearchParams.delete('authMechanismProperties');
13
+ updatedSearchParams.delete('gssapiServiceName');
14
+ updatedSearchParams.delete('authSource');
15
+ return updatedConnectionString;
16
+ }
17
+ exports.getConnectionUrlWithoutAuth = getConnectionUrlWithoutAuth;
18
+ function handleUpdateAuthMechanism({ action, connectionStringUrl, connectionOptions, }) {
19
+ const updatedConnectionString = getConnectionUrlWithoutAuth(connectionStringUrl);
20
+ const updatedSearchParams = updatedConnectionString.typedSearchParams();
21
+ if (action.authMechanism) {
22
+ updatedSearchParams.set('authMechanism', action.authMechanism);
23
+ if (['MONGODB-AWS', 'GSSAPI', 'PLAIN', 'MONGODB-X509'].includes(action.authMechanism)) {
24
+ updatedSearchParams.set('authSource', '$external');
25
+ }
26
+ }
27
+ return {
28
+ connectionOptions: {
29
+ ...(0, lodash_1.cloneDeep)(connectionOptions),
30
+ connectionString: updatedConnectionString.toString(),
31
+ },
32
+ };
33
+ }
34
+ exports.handleUpdateAuthMechanism = handleUpdateAuthMechanism;
35
+ function handleUpdateUsername({ action, connectionStringUrl, connectionOptions, }) {
36
+ const updatedConnectionString = (0, connection_string_helpers_1.setConnectionStringUsername)(connectionStringUrl, action.username);
37
+ const [, parsingError] = (0, connection_string_helpers_1.tryToParseConnectionString)(updatedConnectionString.toString());
38
+ if (parsingError) {
39
+ return {
40
+ connectionOptions,
41
+ errors: [
42
+ {
43
+ fieldName: 'username',
44
+ fieldTab: 'authentication',
45
+ message: action.username
46
+ ? parsingError.message
47
+ : `Username cannot be empty: "${parsingError.message}"`,
48
+ },
49
+ ],
50
+ };
51
+ }
52
+ return {
53
+ connectionOptions: {
54
+ ...(0, lodash_1.cloneDeep)(connectionOptions),
55
+ connectionString: updatedConnectionString.toString(),
56
+ },
57
+ };
58
+ }
59
+ exports.handleUpdateUsername = handleUpdateUsername;
60
+ function handleUpdatePassword({ action, connectionStringUrl, connectionOptions, }) {
61
+ const updatedConnectionString = (0, connection_string_helpers_1.setConnectionStringPassword)(connectionStringUrl, action.password);
62
+ const [, parsingError] = (0, connection_string_helpers_1.tryToParseConnectionString)(updatedConnectionString.toString());
63
+ if (parsingError) {
64
+ return {
65
+ connectionOptions,
66
+ errors: connectionStringUrl.username
67
+ ? [
68
+ {
69
+ fieldName: 'password',
70
+ fieldTab: 'authentication',
71
+ message: parsingError.message,
72
+ },
73
+ ]
74
+ : [
75
+ {
76
+ fieldName: 'username',
77
+ fieldTab: 'authentication',
78
+ message: `Username cannot be empty: "${parsingError.message}"`,
79
+ },
80
+ {
81
+ fieldName: 'password',
82
+ fieldTab: 'authentication',
83
+ message: 'Please enter a username first',
84
+ },
85
+ ],
86
+ };
87
+ }
88
+ return {
89
+ connectionOptions: {
90
+ ...(0, lodash_1.cloneDeep)(connectionOptions),
91
+ connectionString: updatedConnectionString.toString(),
92
+ },
93
+ };
94
+ }
95
+ exports.handleUpdatePassword = handleUpdatePassword;
96
+ //# sourceMappingURL=authentication-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authentication-handler.js","sourceRoot":"","sources":["../../src/utils/authentication-handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function checkForInvalidCharacterInHost(host: string, isSRV: boolean): void;
2
+ //# sourceMappingURL=check-for-invalid-character-in-host.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"check-for-invalid-character-in-host.d.ts","sourceRoot":"","sources":["../../src/utils/check-for-invalid-character-in-host.ts"],"names":[],"mappings":"AAGA,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,OAAO,GACb,IAAI,CAWN"}