@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 @@
1
+ {"version":3,"file":"authentication-gssapi.d.ts","sourceRoot":"","sources":["../../../../src/components/advanced-options-tabs/authentication-tab/authentication-gssapi.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AASnD,OAAO,KAAK,mBAAmB,MAAM,+BAA+B,CAAC;AACrE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAEjF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAoBrE,iBAAS,oBAAoB,CAAC,EAC5B,MAAM,EACN,mBAAmB,EACnB,yBAAyB,GAC1B,EAAE;IACD,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAC9B,yBAAyB,EAAE,yBAAyB,CAAC;CACtD,GAAG,KAAK,CAAC,YAAY,CAgJrB;AAED,eAAe,oBAAoB,CAAC"}
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __importDefault = (this && this.__importDefault) || function (mod) {
22
+ return (mod && mod.__esModule) ? mod : { "default": mod };
23
+ };
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ const react_1 = __importStar(require("react"));
26
+ const compass_components_1 = require("@mongodb-js/compass-components");
27
+ const form_field_container_1 = __importDefault(require("../../form-field-container"));
28
+ const validation_1 = require("../../../utils/validation");
29
+ const connection_string_helpers_1 = require("../../../utils/connection-string-helpers");
30
+ const GSSAPI_CANONICALIZE_HOST_NAME_OPTIONS = {
31
+ none: { label: 'None', value: 'none' },
32
+ forward: { label: 'Forward', value: 'forward' },
33
+ forwardAndReverse: {
34
+ label: 'Forward and reverse',
35
+ value: 'forwardAndReverse',
36
+ },
37
+ };
38
+ function AuthenticationGSSAPI({ errors, connectionStringUrl, updateConnectionFormField, }) {
39
+ const kerberosPrincipalError = (0, validation_1.errorMessageByFieldName)(errors, 'kerberosPrincipal');
40
+ const principal = (0, connection_string_helpers_1.getConnectionStringUsername)(connectionStringUrl);
41
+ const password = (0, connection_string_helpers_1.getConnectionStringPassword)(connectionStringUrl);
42
+ const authMechanismProperties = (0, connection_string_helpers_1.parseAuthMechanismProperties)(connectionStringUrl);
43
+ const serviceName = authMechanismProperties.get('SERVICE_NAME');
44
+ const serviceRealm = authMechanismProperties.get('SERVICE_REALM');
45
+ const canonicalizeHostname = authMechanismProperties.get('CANONICALIZE_HOST_NAME') || 'none';
46
+ const [showPassword, setShowPassword] = (0, react_1.useState)(false);
47
+ (0, react_1.useEffect)(() => {
48
+ if (!showPassword && password.length) {
49
+ setShowPassword(true);
50
+ }
51
+ }, [password, showPassword, updateConnectionFormField]);
52
+ return (react_1.default.createElement(react_1.default.Fragment, null,
53
+ react_1.default.createElement(form_field_container_1.default, null,
54
+ react_1.default.createElement(compass_components_1.TextInput, { onChange: ({ target: { value }, }) => {
55
+ updateConnectionFormField({
56
+ type: 'update-username',
57
+ username: value,
58
+ });
59
+ }, "data-testid": "gssapi-principal-input", label: "Principal", errorMessage: kerberosPrincipalError, state: kerberosPrincipalError ? 'error' : undefined, value: principal || '' })),
60
+ react_1.default.createElement(form_field_container_1.default, null,
61
+ react_1.default.createElement(compass_components_1.TextInput, { "data-testid": "gssapi-service-name-input", onChange: ({ target: { value }, }) => {
62
+ updateConnectionFormField({
63
+ type: 'update-auth-mechanism-property',
64
+ key: 'SERVICE_NAME',
65
+ value: value,
66
+ });
67
+ }, optional: true, label: "Service Name", value: serviceName || '' })),
68
+ react_1.default.createElement(form_field_container_1.default, null,
69
+ react_1.default.createElement(compass_components_1.Label, { htmlFor: "canonicalize-hostname-select" }, "Canonicalize Host Name"),
70
+ react_1.default.createElement(compass_components_1.RadioBoxGroup, { name: "canonicalize-hostname", id: "canonicalize-hostname-select", onChange: ({ target: { value } }) => {
71
+ updateConnectionFormField({
72
+ type: 'update-auth-mechanism-property',
73
+ key: 'CANONICALIZE_HOST_NAME',
74
+ value: value === 'none' ? '' : value,
75
+ });
76
+ }, value: canonicalizeHostname }, Object.entries(GSSAPI_CANONICALIZE_HOST_NAME_OPTIONS).map(([key, { label, value }]) => (react_1.default.createElement(compass_components_1.RadioBox, { id: `gssapi-canonicalize-host-name-${key}`, "data-testid": `gssapi-canonicalize-host-name-${key}`, key: value, value: value }, label))))),
77
+ react_1.default.createElement(form_field_container_1.default, null,
78
+ react_1.default.createElement(compass_components_1.TextInput, { onChange: ({ target: { value }, }) => {
79
+ updateConnectionFormField({
80
+ type: 'update-auth-mechanism-property',
81
+ key: 'SERVICE_REALM',
82
+ value: value,
83
+ });
84
+ }, "data-testid": "gssapi-service-realm-input", label: "Service Realm", value: serviceRealm || '', optional: true })),
85
+ react_1.default.createElement(form_field_container_1.default, null,
86
+ react_1.default.createElement(compass_components_1.Checkbox, { "data-testid": "gssapi-password-checkbox", checked: showPassword, label: "Provide password directly", onChange: ({ target: { checked } }) => {
87
+ if (!checked) {
88
+ updateConnectionFormField({
89
+ type: 'update-password',
90
+ password: '',
91
+ });
92
+ }
93
+ setShowPassword(checked);
94
+ } }),
95
+ showPassword && (react_1.default.createElement(compass_components_1.TextInput, { onChange: ({ target: { value }, }) => {
96
+ updateConnectionFormField({
97
+ type: 'update-password',
98
+ password: value,
99
+ });
100
+ }, "data-testid": "gssapi-password-input", label: "Password", value: password, type: "password", optional: true })))));
101
+ }
102
+ exports.default = AuthenticationGSSAPI;
103
+ //# sourceMappingURL=authentication-gssapi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authentication-gssapi.js","sourceRoot":"","sources":["../../../../src/components/advanced-options-tabs/authentication-tab/authentication-gssapi.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import type ConnectionStringUrl from 'mongodb-connection-string-url';
3
+ import type { UpdateConnectionFormField } from '../../../hooks/use-connect-form';
4
+ import type { ConnectionFormError } from '../../../utils/validation';
5
+ export declare const PLAIN_USERNAME_LABEL = "Username";
6
+ export declare const PLAIN_PASSWORD_LABEL = "Password";
7
+ declare function AuthenticationPlain({ connectionStringUrl, updateConnectionFormField, errors, }: {
8
+ connectionStringUrl: ConnectionStringUrl;
9
+ errors: ConnectionFormError[];
10
+ updateConnectionFormField: UpdateConnectionFormField;
11
+ }): React.ReactElement;
12
+ export default AuthenticationPlain;
13
+ //# sourceMappingURL=authentication-plain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authentication-plain.d.ts","sourceRoot":"","sources":["../../../../src/components/advanced-options-tabs/authentication-tab/authentication-plain.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,mBAAmB,MAAM,+BAA+B,CAAC;AACrE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAEjF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAOrE,eAAO,MAAM,oBAAoB,aAAa,CAAC;AAC/C,eAAO,MAAM,oBAAoB,aAAa,CAAC;AAE/C,iBAAS,mBAAmB,CAAC,EAC3B,mBAAmB,EACnB,yBAAyB,EACzB,MAAM,GACP,EAAE;IACD,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAC9B,yBAAyB,EAAE,yBAAyB,CAAC;CACtD,GAAG,KAAK,CAAC,YAAY,CA2CrB;AAED,eAAe,mBAAmB,CAAC"}
@@ -0,0 +1,36 @@
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.PLAIN_PASSWORD_LABEL = exports.PLAIN_USERNAME_LABEL = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const compass_components_1 = require("@mongodb-js/compass-components");
9
+ const form_field_container_1 = __importDefault(require("../../form-field-container"));
10
+ const validation_1 = require("../../../utils/validation");
11
+ const connection_string_helpers_1 = require("../../../utils/connection-string-helpers");
12
+ exports.PLAIN_USERNAME_LABEL = 'Username';
13
+ exports.PLAIN_PASSWORD_LABEL = 'Password';
14
+ function AuthenticationPlain({ connectionStringUrl, updateConnectionFormField, errors, }) {
15
+ const username = (0, connection_string_helpers_1.getConnectionStringUsername)(connectionStringUrl);
16
+ const password = (0, connection_string_helpers_1.getConnectionStringPassword)(connectionStringUrl);
17
+ const usernameError = (0, validation_1.errorMessageByFieldName)(errors, 'username');
18
+ const passwordError = (0, validation_1.errorMessageByFieldName)(errors, 'password');
19
+ return (react_1.default.createElement(react_1.default.Fragment, null,
20
+ react_1.default.createElement(form_field_container_1.default, null,
21
+ react_1.default.createElement(compass_components_1.TextInput, { onChange: ({ target: { value }, }) => {
22
+ updateConnectionFormField({
23
+ type: 'update-username',
24
+ username: value,
25
+ });
26
+ }, label: exports.PLAIN_USERNAME_LABEL, value: username || '', errorMessage: usernameError, state: usernameError ? 'error' : undefined })),
27
+ react_1.default.createElement(form_field_container_1.default, null,
28
+ react_1.default.createElement(compass_components_1.TextInput, { onChange: ({ target: { value }, }) => {
29
+ updateConnectionFormField({
30
+ type: 'update-password',
31
+ password: value,
32
+ });
33
+ }, label: exports.PLAIN_PASSWORD_LABEL, type: "password", value: password || '', errorMessage: passwordError, state: passwordError ? 'error' : undefined }))));
34
+ }
35
+ exports.default = AuthenticationPlain;
36
+ //# sourceMappingURL=authentication-plain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authentication-plain.js","sourceRoot":"","sources":["../../../../src/components/advanced-options-tabs/authentication-tab/authentication-plain.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,uEAA2D;AAI3D,sFAA4D;AAE5D,0DAAoE;AACpE,wFAGkD;AAErC,QAAA,oBAAoB,GAAG,UAAU,CAAC;AAClC,QAAA,oBAAoB,GAAG,UAAU,CAAC;AAE/C,SAAS,mBAAmB,CAAC,EAC3B,mBAAmB,EACnB,yBAAyB,EACzB,MAAM,GAKP;IACC,MAAM,QAAQ,GAAG,IAAA,uDAA2B,EAAC,mBAAmB,CAAC,CAAC;IAClE,MAAM,QAAQ,GAAG,IAAA,uDAA2B,EAAC,mBAAmB,CAAC,CAAC;IAClE,MAAM,aAAa,GAAG,IAAA,oCAAuB,EAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAClE,MAAM,aAAa,GAAG,IAAA,oCAAuB,EAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAElE,OAAO,CACL;QACE,8BAAC,8BAAkB;YACjB,8BAAC,8BAAS,IACR,QAAQ,EAAE,CAAC,EACT,MAAM,EAAE,EAAE,KAAK,EAAE,GACmB,EAAE,EAAE;oBACxC,yBAAyB,CAAC;wBACxB,IAAI,EAAE,iBAAiB;wBACvB,QAAQ,EAAE,KAAK;qBAChB,CAAC,CAAC;gBACL,CAAC,EACD,KAAK,EAAE,4BAAoB,EAC3B,KAAK,EAAE,QAAQ,IAAI,EAAE,EACrB,YAAY,EAAE,aAAa,EAC3B,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,GAC1C,CACiB;QACrB,8BAAC,8BAAkB;YACjB,8BAAC,8BAAS,IACR,QAAQ,EAAE,CAAC,EACT,MAAM,EAAE,EAAE,KAAK,EAAE,GACmB,EAAE,EAAE;oBACxC,yBAAyB,CAAC;wBACxB,IAAI,EAAE,iBAAiB;wBACvB,QAAQ,EAAE,KAAK;qBAChB,CAAC,CAAC;gBACL,CAAC,EACD,KAAK,EAAE,4BAAoB,EAC3B,IAAI,EAAC,UAAU,EACf,KAAK,EAAE,QAAQ,IAAI,EAAE,EACrB,YAAY,EAAE,aAAa,EAC3B,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,GAC1C,CACiB,CACpB,CACJ,CAAC;AACJ,CAAC;AAED,kBAAe,mBAAmB,CAAC"}
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import type ConnectionStringUrl from 'mongodb-connection-string-url';
3
+ import type { UpdateConnectionFormField } from '../../../hooks/use-connect-form';
4
+ import type { ConnectionFormError } from '../../../utils/validation';
5
+ import type { ConnectionOptions } from 'mongodb-data-service';
6
+ declare function AuthenticationTab({ errors, updateConnectionFormField, connectionStringUrl, }: {
7
+ errors: ConnectionFormError[];
8
+ connectionStringUrl: ConnectionStringUrl;
9
+ updateConnectionFormField: UpdateConnectionFormField;
10
+ connectionOptions: ConnectionOptions;
11
+ }): React.ReactElement;
12
+ export default AuthenticationTab;
13
+ //# sourceMappingURL=authentication-tab.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authentication-tab.d.ts","sourceRoot":"","sources":["../../../../src/components/advanced-options-tabs/authentication-tab/authentication-tab.tsx"],"names":[],"mappings":"AACA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAQ3C,OAAO,KAAK,mBAAmB,MAAM,+BAA+B,CAAC;AAGrE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAsG9D,iBAAS,iBAAiB,CAAC,EACzB,MAAM,EACN,yBAAyB,EACzB,mBAAmB,GACpB,EAAE;IACD,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAC9B,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,yBAAyB,EAAE,yBAAyB,CAAC;IACrD,iBAAiB,EAAE,iBAAiB,CAAC;CACtC,GAAG,KAAK,CAAC,YAAY,CA2DrB;AAED,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __importDefault = (this && this.__importDefault) || function (mod) {
22
+ return (mod && mod.__esModule) ? mod : { "default": mod };
23
+ };
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ const react_1 = __importStar(require("react"));
26
+ const compass_components_1 = require("@mongodb-js/compass-components");
27
+ const mongodb_1 = require("mongodb");
28
+ const authentication_default_1 = __importDefault(require("./authentication-default"));
29
+ const authentication_x509_1 = __importDefault(require("./authentication-x509"));
30
+ const authentication_gssapi_1 = __importDefault(require("./authentication-gssapi"));
31
+ const authentication_plain_1 = __importDefault(require("./authentication-plain"));
32
+ const authentication_aws_1 = __importDefault(require("./authentication-aws"));
33
+ const options = [
34
+ {
35
+ title: 'None',
36
+ id: 'AUTH_NONE',
37
+ component: function None() {
38
+ return react_1.default.createElement(react_1.default.Fragment, null);
39
+ },
40
+ },
41
+ {
42
+ title: 'Username/Password',
43
+ id: mongodb_1.AuthMechanism.MONGODB_DEFAULT,
44
+ component: authentication_default_1.default,
45
+ },
46
+ {
47
+ title: 'X.509',
48
+ id: mongodb_1.AuthMechanism.MONGODB_X509,
49
+ component: authentication_x509_1.default,
50
+ },
51
+ {
52
+ title: 'Kerberos',
53
+ id: mongodb_1.AuthMechanism.MONGODB_GSSAPI,
54
+ component: authentication_gssapi_1.default,
55
+ },
56
+ {
57
+ title: 'LDAP',
58
+ id: mongodb_1.AuthMechanism.MONGODB_PLAIN,
59
+ component: authentication_plain_1.default,
60
+ },
61
+ {
62
+ title: 'AWS IAM',
63
+ id: mongodb_1.AuthMechanism.MONGODB_AWS,
64
+ component: authentication_aws_1.default,
65
+ },
66
+ ];
67
+ const containerStyles = (0, compass_components_1.css)({
68
+ marginTop: compass_components_1.spacing[3],
69
+ });
70
+ const contentStyles = (0, compass_components_1.css)({
71
+ marginTop: compass_components_1.spacing[3],
72
+ width: compass_components_1.spacing[7] * 5,
73
+ });
74
+ function getSelectedAuthTabForConnectionString(connectionStringUrl) {
75
+ const authMechanismString = (connectionStringUrl.searchParams.get('authMechanism') || '').toUpperCase();
76
+ const hasPasswordOrUsername = connectionStringUrl.password || connectionStringUrl.username;
77
+ if (!authMechanismString && hasPasswordOrUsername) {
78
+ return mongodb_1.AuthMechanism.MONGODB_DEFAULT;
79
+ }
80
+ const matchingTab = options.find(({ id }) => id === authMechanismString);
81
+ if (matchingTab) {
82
+ return matchingTab.id;
83
+ }
84
+ switch (authMechanismString) {
85
+ case mongodb_1.AuthMechanism.MONGODB_DEFAULT:
86
+ case mongodb_1.AuthMechanism.MONGODB_SCRAM_SHA1:
87
+ case mongodb_1.AuthMechanism.MONGODB_SCRAM_SHA256:
88
+ case mongodb_1.AuthMechanism.MONGODB_CR:
89
+ return mongodb_1.AuthMechanism.MONGODB_DEFAULT;
90
+ default:
91
+ return 'AUTH_NONE';
92
+ }
93
+ }
94
+ function AuthenticationTab({ errors, updateConnectionFormField, connectionStringUrl, }) {
95
+ const selectedAuthTabId = getSelectedAuthTabForConnectionString(connectionStringUrl);
96
+ const selectedAuthTab = options.find(({ id }) => id === selectedAuthTabId) || options[0];
97
+ const optionSelected = (0, react_1.useCallback)((event) => {
98
+ event.preventDefault();
99
+ return updateConnectionFormField({
100
+ type: 'update-auth-mechanism',
101
+ authMechanism: event.target.value === 'AUTH_NONE'
102
+ ? null
103
+ : event.target.value,
104
+ });
105
+ }, [updateConnectionFormField]);
106
+ const AuthOptionContent = selectedAuthTab.component;
107
+ return (react_1.default.createElement("div", { className: containerStyles },
108
+ react_1.default.createElement(compass_components_1.Label, { htmlFor: "authentication-method-radio-box-group" }, "Authentication Method"),
109
+ react_1.default.createElement(compass_components_1.RadioBoxGroup, { id: "authentication-method-radio-box-group", onChange: optionSelected, value: selectedAuthTab.id }, options.map(({ title, id }) => {
110
+ return (react_1.default.createElement(compass_components_1.RadioBox, { id: `connection-authentication-method-${id}-button`, "data-testid": `connection-authentication-method-${id}-button`, checked: selectedAuthTab.id === id, value: id, key: id }, title));
111
+ })),
112
+ react_1.default.createElement("div", { className: contentStyles, "data-testid": `${selectedAuthTab.id}-tab-content` },
113
+ react_1.default.createElement(AuthOptionContent, { errors: errors, connectionStringUrl: connectionStringUrl, updateConnectionFormField: updateConnectionFormField }))));
114
+ }
115
+ exports.default = AuthenticationTab;
116
+ //# sourceMappingURL=authentication-tab.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authentication-tab.js","sourceRoot":"","sources":["../../../../src/components/advanced-options-tabs/authentication-tab/authentication-tab.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ declare function AuthenticationX509(): React.ReactElement;
3
+ export default AuthenticationX509;
4
+ //# sourceMappingURL=authentication-x509.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authentication-x509.d.ts","sourceRoot":"","sources":["../../../../src/components/advanced-options-tabs/authentication-tab/authentication-x509.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,iBAAS,kBAAkB,IAAI,KAAK,CAAC,YAAY,CAUhD;AAED,eAAe,kBAAkB,CAAC"}
@@ -0,0 +1,20 @@
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
+ const compass_components_1 = require("@mongodb-js/compass-components");
7
+ const react_1 = __importDefault(require("react"));
8
+ function AuthenticationX509() {
9
+ return (react_1.default.createElement(react_1.default.Fragment, null,
10
+ react_1.default.createElement(compass_components_1.Banner, { variant: compass_components_1.BannerVariant.Info },
11
+ "X.509 Authentication type requires a ",
12
+ react_1.default.createElement("strong", null, "Client Certificate"),
13
+ ' ',
14
+ "to work. Make sure to enable TLS and add one in the",
15
+ ' ',
16
+ react_1.default.createElement("strong", null, "TLS/SSL"),
17
+ " tab.")));
18
+ }
19
+ exports.default = AuthenticationX509;
20
+ //# sourceMappingURL=authentication-x509.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authentication-x509.js","sourceRoot":"","sources":["../../../../src/components/advanced-options-tabs/authentication-tab/authentication-x509.tsx"],"names":[],"mappings":";;;;;AAAA,uEAAuE;AACvE,kDAA0B;AAE1B,SAAS,kBAAkB;IACzB,OAAO,CACL;QACE,8BAAC,2BAAM,IAAC,OAAO,EAAE,kCAAa,CAAC,IAAI;;YACI,mEAAmC;YAAC,GAAG;;YACxB,GAAG;YACvD,wDAAwB;oBACjB,CACR,CACJ,CAAC;AACJ,CAAC;AAED,kBAAe,kBAAkB,CAAC"}
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import type ConnectionStringUrl from 'mongodb-connection-string-url';
3
+ import type { UpdateConnectionFormField } from '../../../hooks/use-connect-form';
4
+ declare function DirectConnectionInput({ connectionStringUrl, updateConnectionFormField, }: {
5
+ connectionStringUrl: ConnectionStringUrl;
6
+ updateConnectionFormField: UpdateConnectionFormField;
7
+ }): React.ReactElement;
8
+ export default DirectConnectionInput;
9
+ //# sourceMappingURL=direct-connection-input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"direct-connection-input.d.ts","sourceRoot":"","sources":["../../../../src/components/advanced-options-tabs/general-tab/direct-connection-input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAO3C,OAAO,KAAK,mBAAmB,MAAM,+BAA+B,CAAC;AAGrE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAMjF,iBAAS,qBAAqB,CAAC,EAC7B,mBAAmB,EACnB,yBAAyB,GAC1B,EAAE;IACD,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,yBAAyB,EAAE,yBAAyB,CAAC;CACtD,GAAG,KAAK,CAAC,YAAY,CAqCrB;AAED,eAAe,qBAAqB,CAAC"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ const react_1 = __importStar(require("react"));
23
+ const compass_components_1 = require("@mongodb-js/compass-components");
24
+ const descriptionStyles = (0, compass_components_1.css)({
25
+ marginTop: compass_components_1.spacing[1],
26
+ });
27
+ function DirectConnectionInput({ connectionStringUrl, updateConnectionFormField, }) {
28
+ const isDirectConnection = connectionStringUrl
29
+ .typedSearchParams()
30
+ .get('directConnection') === 'true';
31
+ const updateDirectConnection = (0, react_1.useCallback)((event) => {
32
+ if (!event.target.checked) {
33
+ return updateConnectionFormField({
34
+ type: 'delete-search-param',
35
+ key: 'directConnection',
36
+ });
37
+ }
38
+ return updateConnectionFormField({
39
+ type: 'update-search-param',
40
+ currentKey: 'directConnection',
41
+ value: event.target.checked ? 'true' : 'false',
42
+ });
43
+ }, [updateConnectionFormField]);
44
+ return (react_1.default.createElement(react_1.default.Fragment, null,
45
+ react_1.default.createElement(compass_components_1.Checkbox, { onChange: updateDirectConnection, label: "Direct Connection", checked: isDirectConnection, bold: false }),
46
+ react_1.default.createElement(compass_components_1.Description, { className: descriptionStyles }, "Specifies whether to force dispatch all operations to the specified host.")));
47
+ }
48
+ exports.default = DirectConnectionInput;
49
+ //# sourceMappingURL=direct-connection-input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"direct-connection-input.js","sourceRoot":"","sources":["../../../../src/components/advanced-options-tabs/general-tab/direct-connection-input.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,+CAA2C;AAC3C,uEAKwC;AAMxC,MAAM,iBAAiB,GAAG,IAAA,wBAAG,EAAC;IAC5B,SAAS,EAAE,4BAAO,CAAC,CAAC,CAAC;CACtB,CAAC,CAAC;AAEH,SAAS,qBAAqB,CAAC,EAC7B,mBAAmB,EACnB,yBAAyB,GAI1B;IACC,MAAM,kBAAkB,GACtB,mBAAmB;SAChB,iBAAiB,EAAsB;SACvC,GAAG,CAAC,kBAAkB,CAAC,KAAK,MAAM,CAAC;IAExC,MAAM,sBAAsB,GAAG,IAAA,mBAAW,EACxC,CAAC,KAA0C,EAAE,EAAE;QAC7C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE;YACzB,OAAO,yBAAyB,CAAC;gBAC/B,IAAI,EAAE,qBAAqB;gBAC3B,GAAG,EAAE,kBAAkB;aACxB,CAAC,CAAC;SACJ;QACD,OAAO,yBAAyB,CAAC;YAC/B,IAAI,EAAE,qBAAqB;YAC3B,UAAU,EAAE,kBAAkB;YAC9B,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;SAC/C,CAAC,CAAC;IACL,CAAC,EACD,CAAC,yBAAyB,CAAC,CAC5B,CAAC;IAEF,OAAO,CACL;QACE,8BAAC,6BAAQ,IACP,QAAQ,EAAE,sBAAsB,EAChC,KAAK,EAAC,mBAAmB,EACzB,OAAO,EAAE,kBAAkB,EAC3B,IAAI,EAAE,KAAK,GACX;QACF,8BAAC,gCAAW,IAAC,SAAS,EAAE,iBAAiB,gFAG3B,CACb,CACJ,CAAC;AACJ,CAAC;AAED,kBAAe,qBAAqB,CAAC"}
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ import type ConnectionStringUrl from 'mongodb-connection-string-url';
3
+ import type { UpdateConnectionFormField } from '../../../hooks/use-connect-form';
4
+ import type { ConnectionFormError } from '../../../utils/validation';
5
+ declare function GeneralTab({ errors, connectionStringUrl, updateConnectionFormField, }: {
6
+ errors: ConnectionFormError[];
7
+ connectionStringUrl: ConnectionStringUrl;
8
+ updateConnectionFormField: UpdateConnectionFormField;
9
+ }): React.ReactElement;
10
+ export default GeneralTab;
11
+ //# sourceMappingURL=general-tab.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"general-tab.d.ts","sourceRoot":"","sources":["../../../../src/components/advanced-options-tabs/general-tab/general-tab.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,mBAAmB,MAAM,+BAA+B,CAAC;AAGrE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAGjF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAErE,iBAAS,UAAU,CAAC,EAClB,MAAM,EACN,mBAAmB,EACnB,yBAAyB,GAC1B,EAAE;IACD,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAC9B,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,yBAAyB,EAAE,yBAAyB,CAAC;CACtD,GAAG,KAAK,CAAC,YAAY,CAiBrB;AAED,eAAe,UAAU,CAAC"}
@@ -0,0 +1,17 @@
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
+ const react_1 = __importDefault(require("react"));
7
+ const scheme_input_1 = __importDefault(require("./scheme-input"));
8
+ const form_field_container_1 = __importDefault(require("../../form-field-container"));
9
+ const host_input_1 = __importDefault(require("./host-input"));
10
+ function GeneralTab({ errors, connectionStringUrl, updateConnectionFormField, }) {
11
+ return (react_1.default.createElement("div", null,
12
+ react_1.default.createElement(form_field_container_1.default, null,
13
+ react_1.default.createElement(scheme_input_1.default, { errors: errors, connectionStringUrl: connectionStringUrl, updateConnectionFormField: updateConnectionFormField })),
14
+ react_1.default.createElement(host_input_1.default, { errors: errors, connectionStringUrl: connectionStringUrl, updateConnectionFormField: updateConnectionFormField })));
15
+ }
16
+ exports.default = GeneralTab;
17
+ //# sourceMappingURL=general-tab.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"general-tab.js","sourceRoot":"","sources":["../../../../src/components/advanced-options-tabs/general-tab/general-tab.tsx"],"names":[],"mappings":";;;;;AAAA,kDAA0B;AAG1B,kEAAyC;AAEzC,sFAA4D;AAC5D,8DAAqC;AAGrC,SAAS,UAAU,CAAC,EAClB,MAAM,EACN,mBAAmB,EACnB,yBAAyB,GAK1B;IACC,OAAO,CACL;QACE,8BAAC,8BAAkB;YACjB,8BAAC,sBAAW,IACV,MAAM,EAAE,MAAM,EACd,mBAAmB,EAAE,mBAAmB,EACxC,yBAAyB,EAAE,yBAAyB,GACpD,CACiB;QACrB,8BAAC,oBAAS,IACR,MAAM,EAAE,MAAM,EACd,mBAAmB,EAAE,mBAAmB,EACxC,yBAAyB,EAAE,yBAAyB,GACpD,CACE,CACP,CAAC;AACJ,CAAC;AAED,kBAAe,UAAU,CAAC"}
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ import type ConnectionStringUrl from 'mongodb-connection-string-url';
3
+ import type { UpdateConnectionFormField } from '../../../hooks/use-connect-form';
4
+ import type { ConnectionFormError } from '../../../utils/validation';
5
+ declare function HostInput({ errors, connectionStringUrl, updateConnectionFormField, }: {
6
+ errors: ConnectionFormError[];
7
+ connectionStringUrl: ConnectionStringUrl;
8
+ updateConnectionFormField: UpdateConnectionFormField;
9
+ }): React.ReactElement;
10
+ export default HostInput;
11
+ //# sourceMappingURL=host-input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host-input.d.ts","sourceRoot":"","sources":["../../../../src/components/advanced-options-tabs/general-tab/host-input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAShE,OAAO,KAAK,mBAAmB,MAAM,+BAA+B,CAAC;AAGrE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAGjF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AA2BrE,iBAAS,SAAS,CAAC,EACjB,MAAM,EACN,mBAAmB,EACnB,yBAAyB,GAC1B,EAAE;IACD,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAC9B,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,yBAAyB,EAAE,yBAAyB,CAAC;CACtD,GAAG,KAAK,CAAC,YAAY,CAqGrB;AAED,eAAe,SAAS,CAAC"}
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __importDefault = (this && this.__importDefault) || function (mod) {
22
+ return (mod && mod.__esModule) ? mod : { "default": mod };
23
+ };
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ const react_1 = __importStar(require("react"));
26
+ const compass_components_1 = require("@mongodb-js/compass-components");
27
+ const direct_connection_input_1 = __importDefault(require("./direct-connection-input"));
28
+ const form_field_container_1 = __importDefault(require("../../form-field-container"));
29
+ const validation_1 = require("../../../utils/validation");
30
+ const hostInputContainerStyles = (0, compass_components_1.css)({
31
+ display: 'flex',
32
+ flexDirection: 'row',
33
+ width: '100%',
34
+ marginBottom: compass_components_1.spacing[2],
35
+ marginTop: compass_components_1.spacing[1],
36
+ });
37
+ const hostInputStyles = (0, compass_components_1.css)({
38
+ flexGrow: 1,
39
+ });
40
+ const hostActionButtonStyles = (0, compass_components_1.css)({
41
+ marginLeft: compass_components_1.spacing[1],
42
+ marginTop: compass_components_1.spacing[1],
43
+ });
44
+ const inputFieldStyles = (0, compass_components_1.css)({
45
+ width: '50%',
46
+ });
47
+ function HostInput({ errors, connectionStringUrl, updateConnectionFormField, }) {
48
+ const [hosts, setHosts] = (0, react_1.useState)([...connectionStringUrl.hosts]);
49
+ const { isSRV } = connectionStringUrl;
50
+ const showDirectConnectionInput = connectionStringUrl
51
+ .typedSearchParams()
52
+ .get('directConnection') === 'true' ||
53
+ (!connectionStringUrl.isSRV && hosts.length === 1);
54
+ (0, react_1.useEffect)(() => {
55
+ setHosts([...connectionStringUrl.hosts]);
56
+ }, [connectionStringUrl]);
57
+ const onHostChange = (0, react_1.useCallback)((event, index) => {
58
+ const newHosts = [...hosts];
59
+ newHosts[index] = event.target.value || '';
60
+ setHosts(newHosts);
61
+ updateConnectionFormField({
62
+ type: 'update-host',
63
+ fieldIndex: index,
64
+ newHostValue: event.target.value,
65
+ });
66
+ }, [hosts, setHosts, updateConnectionFormField]);
67
+ return (react_1.default.createElement(react_1.default.Fragment, null,
68
+ react_1.default.createElement(form_field_container_1.default, { className: inputFieldStyles },
69
+ react_1.default.createElement(compass_components_1.Label, { htmlFor: "connection-host-input-0", id: "connection-host-input-label" }, isSRV ? 'Hostname' : 'Host'),
70
+ hosts.map((host, index) => (react_1.default.createElement("div", { className: hostInputContainerStyles, key: `host-${index}` },
71
+ react_1.default.createElement(compass_components_1.TextInput, { className: hostInputStyles, type: "text", "data-testid": `connection-host-input-${index}`, id: `connection-host-input-${index}`, "aria-labelledby": "connection-host-input-label", state: (0, validation_1.fieldNameHasError)(errors, 'hosts') ? 'error' : undefined, errorMessage: (0, validation_1.errorMessageByFieldNameAndIndex)(errors, 'hosts', index), value: `${host}`, onChange: (e) => onHostChange(e, index) }),
72
+ !isSRV && (react_1.default.createElement(compass_components_1.IconButton, { className: hostActionButtonStyles, "aria-label": "Add new host", "data-testid": "connection-add-host-button", onClick: () => updateConnectionFormField({
73
+ type: 'add-new-host',
74
+ fieldIndexToAddAfter: index,
75
+ }) },
76
+ react_1.default.createElement(compass_components_1.Icon, { glyph: "Plus" }))),
77
+ !isSRV && hosts.length > 1 && (react_1.default.createElement(compass_components_1.IconButton, { className: hostActionButtonStyles, "aria-label": "Remove host", "data-testid": "connection-remove-host-button", onClick: () => updateConnectionFormField({
78
+ type: 'remove-host',
79
+ fieldIndexToRemove: index,
80
+ }) },
81
+ react_1.default.createElement(compass_components_1.Icon, { glyph: "Minus" }))))))),
82
+ showDirectConnectionInput && (react_1.default.createElement(form_field_container_1.default, null,
83
+ react_1.default.createElement(direct_connection_input_1.default, { connectionStringUrl: connectionStringUrl, updateConnectionFormField: updateConnectionFormField })))));
84
+ }
85
+ exports.default = HostInput;
86
+ //# sourceMappingURL=host-input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host-input.js","sourceRoot":"","sources":["../../../../src/components/advanced-options-tabs/general-tab/host-input.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ import type ConnectionStringUrl from 'mongodb-connection-string-url';
3
+ import type { UpdateConnectionFormField } from '../../../hooks/use-connect-form';
4
+ import type { ConnectionFormError } from '../../../utils/validation';
5
+ declare function SchemaInput({ connectionStringUrl, errors, updateConnectionFormField, }: {
6
+ connectionStringUrl: ConnectionStringUrl;
7
+ errors: ConnectionFormError[];
8
+ updateConnectionFormField: UpdateConnectionFormField;
9
+ }): React.ReactElement;
10
+ export default SchemaInput;
11
+ //# sourceMappingURL=schema-input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-input.d.ts","sourceRoot":"","sources":["../../../../src/components/advanced-options-tabs/general-tab/schema-input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAW3C,OAAO,KAAK,mBAAmB,MAAM,+BAA+B,CAAC;AAErE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAoBrE,iBAAS,WAAW,CAAC,EACnB,mBAAmB,EACnB,MAAM,EACN,yBAAyB,GAC1B,EAAE;IACD,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAC9B,yBAAyB,EAAE,yBAAyB,CAAC;CACtD,GAAG,KAAK,CAAC,YAAY,CAkCrB;AAED,eAAe,WAAW,CAAC"}