]> source.dussan.org Git - sonarqube.git/commitdiff
Use Button component in webhooks console
authorGrégoire Aubert <gregoire.aubert@sonarsource.com>
Wed, 21 Feb 2018 16:04:43 +0000 (17:04 +0100)
committerGuillaume Jambet <guillaume.jambet@gmail.com>
Thu, 1 Mar 2018 14:21:05 +0000 (15:21 +0100)
12 files changed:
server/sonar-web/src/main/js/apps/portfolio/components/__tests__/__snapshots__/Subscription-test.tsx.snap
server/sonar-web/src/main/js/apps/webhooks/components/DeliveriesForm.tsx
server/sonar-web/src/main/js/apps/webhooks/components/LatestDeliveryForm.tsx
server/sonar-web/src/main/js/apps/webhooks/components/PageActions.tsx
server/sonar-web/src/main/js/apps/webhooks/components/__tests__/__snapshots__/DeliveriesForm-test.tsx.snap
server/sonar-web/src/main/js/apps/webhooks/components/__tests__/__snapshots__/LatestDeliveryForm-test.tsx.snap
server/sonar-web/src/main/js/apps/webhooks/components/__tests__/__snapshots__/PageActions-test.tsx.snap
server/sonar-web/src/main/js/components/SourceViewer/components/MeasuresOverlay.tsx
server/sonar-web/src/main/js/components/SourceViewer/components/__tests__/__snapshots__/MeasuresOverlay-test.tsx.snap
server/sonar-web/src/main/js/components/common/__tests__/__snapshots__/CodeSnippet-test.tsx.snap
server/sonar-web/src/main/js/components/controls/ValidationModal.tsx
server/sonar-web/src/main/js/components/controls/__tests__/__snapshots__/ValidationModal-test.tsx.snap

index ed7f2844762e0800b1739ac22d67452ba7eba015..321b77ff5a932063eec1079365c39a8dc2070af2 100644 (file)
@@ -27,7 +27,6 @@ exports[`renders when not subscribed 1`] = `
     <Button
       className="js-report-subscribe"
       onClick={[Function]}
-      type="button"
     >
       report.subscribe
     </Button>
@@ -56,7 +55,6 @@ exports[`renders when subscribed 1`] = `
     </div>
     <Button
       onClick={[Function]}
-      type="button"
     >
       report.unsubscribe
     </Button>
index be4c4df298e49aa274c57a5ad3d332635f889ebf..5e5366e70f617e062626db57e9b9fbafc756dc18 100644 (file)
@@ -19,6 +19,7 @@
  */
 import * as React from 'react';
 import DeliveryAccordion from './DeliveryAccordion';
+import { Button } from '../../../components/ui/buttons';
 import DeferredSpinner from '../../../components/common/DeferredSpinner';
 import ListFooter from '../../../components/controls/ListFooter';
 import Modal from '../../../components/controls/Modal';
@@ -111,9 +112,9 @@ export default class DeliveriesForm extends React.PureComponent<Props, State> {
           )}
         </div>
         <footer className="modal-foot">
-          <button className="button-link js-modal-close" onClick={this.props.onClose} type="button">
+          <Button className="button-link js-modal-close" onClick={this.props.onClose}>
             {translate('close')}
-          </button>
+          </Button>
         </footer>
       </Modal>
     );
index ef4bbe178cb75f1b9baff82f3c8fa57e4d64ba4c..154dcd8e188d8270da837b9bdedb390803ebdac3 100644 (file)
@@ -19,6 +19,7 @@
  */
 import * as React from 'react';
 import DeliveryItem from './DeliveryItem';
+import { Button } from '../../../components/ui/buttons';
 import Modal from '../../../components/controls/Modal';
 import { Webhook, WebhookDelivery } from '../../../app/types';
 import { translateWithParameters, translate } from '../../../helpers/l10n';
@@ -88,9 +89,9 @@ export default class LatestDeliveryForm extends React.PureComponent<Props, State
           payload={payload}
         />
         <footer className="modal-foot">
-          <button className="button-link js-modal-close" onClick={this.props.onClose} type="button">
+          <Button className="button-link js-modal-close" onClick={this.props.onClose}>
             {translate('close')}
-          </button>
+          </Button>
         </footer>
       </Modal>
     );
index 78e045ea959cddee54884efde801f2913b2de9b3..89b9bd37b28769beeaf18770fe93e641147a8188 100644 (file)
@@ -19,6 +19,7 @@
  */
 import * as React from 'react';
 import CreateWebhookForm from './CreateWebhookForm';
+import { Button } from '../../../components/ui/buttons';
 import Tooltip from '../../../components/controls/Tooltip';
 import { translate, translateWithParameters } from '../../../helpers/l10n';
 
@@ -62,18 +63,16 @@ export default class PageActions extends React.PureComponent<Props, State> {
         <Tooltip
           overlay={translateWithParameters('webhooks.maximum_reached', WEBHOOKS_LIMIT)}
           placement="left">
-          <button className="js-webhook-create disabled" type="button">
-            {translate('create')}
-          </button>
+          <Button className="js-webhook-create disabled">{translate('create')}</Button>
         </Tooltip>
       );
     }
 
     return (
       <>
-        <button className="js-webhook-create" onClick={this.handleCreateOpen} type="button">
+        <Button className="js-webhook-create" onClick={this.handleCreateOpen}>
           {translate('create')}
-        </button>
+        </Button>
         {this.state.openCreate && (
           <CreateWebhookForm onClose={this.handleCreateClose} onDone={this.props.onCreate} />
         )}
index 10fa36144a7f30386e10a8f4aa6ff4823013001e..2e67b17be4c586f4f462a0691b9657c645a405c7 100644 (file)
@@ -27,13 +27,12 @@ exports[`should render correctly 1`] = `
   <footer
     className="modal-foot"
   >
-    <button
+    <Button
       className="button-link js-modal-close"
       onClick={[MockFunction]}
-      type="button"
     >
       close
-    </button>
+    </Button>
   </footer>
 </Modal>
 `;
@@ -96,13 +95,12 @@ exports[`should render correctly 2`] = `
   <footer
     className="modal-foot"
   >
-    <button
+    <Button
       className="button-link js-modal-close"
       onClick={[MockFunction]}
-      type="button"
     >
       close
-    </button>
+    </Button>
   </footer>
 </Modal>
 `;
index eff0d0fa8f512cd53cba230d1e9d7a39987df084..46cbcab9f4a457104d89a41b4d5532501cf6ba5f 100644 (file)
@@ -28,13 +28,12 @@ exports[`should render correctly 1`] = `
   <footer
     className="modal-foot"
   >
-    <button
+    <Button
       className="button-link js-modal-close"
       onClick={[MockFunction]}
-      type="button"
     >
       close
-    </button>
+    </Button>
   </footer>
 </Modal>
 `;
@@ -68,13 +67,12 @@ exports[`should render correctly 2`] = `
   <footer
     className="modal-foot"
   >
-    <button
+    <Button
       className="button-link js-modal-close"
       onClick={[MockFunction]}
-      type="button"
     >
       close
-    </button>
+    </Button>
   </footer>
 </Modal>
 `;
index 7ba2be6a55f4d15a8e11acb0bd2c880444fdaf83..125694249eec7078506f17f84c3169c57f0d602c 100644 (file)
@@ -8,12 +8,11 @@ exports[`should not allow to create a new webhook 1`] = `
     overlay="webhooks.maximum_reached.10"
     placement="left"
   >
-    <button
+    <Button
       className="js-webhook-create disabled"
-      type="button"
     >
       create
-    </button>
+    </Button>
   </Tooltip>
 </div>
 `;
@@ -23,13 +22,12 @@ exports[`should render correctly 1`] = `
   className="page-actions"
 >
   <React.Fragment>
-    <button
+    <Button
       className="js-webhook-create"
       onClick={[Function]}
-      type="button"
     >
       create
-    </button>
+    </Button>
   </React.Fragment>
 </div>
 `;
index 131c58b1a4f8da2623d6011db0009149e52c5f53..532e14ff7580aa2b115ea3bc404d3b242c448b14 100644 (file)
@@ -22,6 +22,7 @@ import { Link } from 'react-router';
 import { keyBy, sortBy, groupBy } from 'lodash';
 import MeasuresOverlayMeasure from './MeasuresOverlayMeasure';
 import MeasuresOverlayTestCases from './MeasuresOverlayTestCases';
+import { Button } from '../../../components/ui/buttons';
 import { getFacets } from '../../../api/issues';
 import { getMeasures } from '../../../api/measures';
 import { getAllMetrics } from '../../../api/metrics';
@@ -126,12 +127,6 @@ export default class MeasuresOverlay extends React.PureComponent<Props, State> {
     });
   };
 
-  handleCloseClick = (event: React.SyntheticEvent<HTMLButtonElement>) => {
-    event.preventDefault();
-    event.currentTarget.blur();
-    this.props.onClose();
-  };
-
   handleAllMeasuresClick = (event: React.SyntheticEvent<HTMLAnchorElement>) => {
     event.preventDefault();
     event.currentTarget.blur();
@@ -449,9 +444,9 @@ export default class MeasuresOverlay extends React.PureComponent<Props, State> {
         </div>
 
         <footer className="modal-foot">
-          <button className="button-link" onClick={this.handleCloseClick} type="button">
+          <Button className="button-link" onClick={this.props.onClose}>
             {translate('close')}
-          </button>
+          </Button>
         </footer>
       </Modal>
     );
index bd7eb4c902b14ed96fc98946bd690abdb2651335..7378602ea6b2d7d3fe487d268c7739f4d00bd63f 100644 (file)
@@ -367,13 +367,12 @@ exports[`should render source file 1`] = `
   <footer
     className="modal-foot"
   >
-    <button
+    <Button
       className="button-link"
-      onClick={[Function]}
-      type="button"
+      onClick={[MockFunction]}
     >
       close
-    </button>
+    </Button>
   </footer>
 </Modal>
 `;
@@ -1351,13 +1350,12 @@ exports[`should render source file 2`] = `
   <footer
     className="modal-foot"
   >
-    <button
+    <Button
       className="button-link"
-      onClick={[Function]}
-      type="button"
+      onClick={[MockFunction]}
     >
       close
-    </button>
+    </Button>
   </footer>
 </Modal>
 `;
@@ -1523,13 +1521,12 @@ exports[`should render test file 1`] = `
   <footer
     className="modal-foot"
   >
-    <button
+    <Button
       className="button-link"
-      onClick={[Function]}
-      type="button"
+      onClick={[MockFunction]}
     >
       close
-    </button>
+    </Button>
   </footer>
 </Modal>
 `;
index 5e330d13abe812fbc99934954b1e6f47752b44b3..7cae9eb805a0e17e5a8c45e8950ee12023183652 100644 (file)
@@ -17,13 +17,22 @@ bar
 bar"
       tooltipPlacement="top"
     >
-      <button
+      <Button
         className="js-copy-to-clipboard no-select"
         data-clipboard-text="foo
 bar"
+        innerRef={[Function]}
       >
-        copy
-      </button>
+        <button
+          className="button js-copy-to-clipboard no-select"
+          data-clipboard-text="foo
+bar"
+          onClick={[Function]}
+          type="button"
+        >
+          copy
+        </button>
+      </Button>
     </ClipboardButton>
   </div>
 </CodeSnippet>
@@ -67,13 +76,22 @@ exports[`renders correctly with array snippet 1`] = `
   bar"
       tooltipPlacement="top"
     >
-      <button
+      <Button
         className="js-copy-to-clipboard no-select"
         data-clipboard-text="foo \\\\
   bar"
+        innerRef={[Function]}
       >
-        copy
-      </button>
+        <button
+          className="button js-copy-to-clipboard no-select"
+          data-clipboard-text="foo \\\\
+  bar"
+          onClick={[Function]}
+          type="button"
+        >
+          copy
+        </button>
+      </Button>
     </ClipboardButton>
   </div>
 </CodeSnippet>
@@ -99,12 +117,20 @@ exports[`renders correctly with array snippet 2`] = `
       copyValue="foo bar"
       tooltipPlacement="top"
     >
-      <button
+      <Button
         className="js-copy-to-clipboard no-select"
         data-clipboard-text="foo bar"
+        innerRef={[Function]}
       >
-        copy
-      </button>
+        <button
+          className="button js-copy-to-clipboard no-select"
+          data-clipboard-text="foo bar"
+          onClick={[Function]}
+          type="button"
+        >
+          copy
+        </button>
+      </Button>
     </ClipboardButton>
   </div>
 </CodeSnippet>
index d52a0b31af80554dbd431389a4c5707a1aa05607..200c3bedd4636c9949fcd3a0d7f4e9eb7e43383b 100644 (file)
@@ -20,6 +20,7 @@
 import * as React from 'react';
 import { withFormik, Form, FormikActions, FormikProps } from 'formik';
 import Modal from './Modal';
+import { ResetButtonLink, SubmitButton } from '../../components/ui/buttons';
 import DeferredSpinner from '../common/DeferredSpinner';
 import { translate } from '../../helpers/l10n';
 
@@ -38,12 +39,6 @@ interface Props<Values> extends InnerFormProps<Values> {
 }
 
 export default class ValidationModal<Values> extends React.PureComponent<Props<Values>> {
-  handleCancelClick = (event: React.SyntheticEvent<HTMLButtonElement>) => {
-    event.preventDefault();
-    event.currentTarget.blur();
-    this.props.onClose();
-  };
-
   handleSubmit = (data: Values, { setSubmitting }: FormikActions<Values>) => {
     const result = this.props.onSubmit(data);
     if (result) {
@@ -80,16 +75,12 @@ export default class ValidationModal<Values> extends React.PureComponent<Props<V
 
         <footer className="modal-foot">
           <DeferredSpinner className="spacer-right" loading={props.isSubmitting} />
-          <button disabled={props.isSubmitting || !props.isValid || !props.dirty} type="submit">
+          <SubmitButton disabled={props.isSubmitting || !props.isValid || !props.dirty}>
             {props.confirmButtonText}
-          </button>
-          <button
-            className="button-link"
-            disabled={props.isSubmitting}
-            onClick={this.handleCancelClick}
-            type="reset">
+          </SubmitButton>
+          <ResetButtonLink disabled={props.isSubmitting} onClick={this.props.onClose}>
             {translate('cancel')}
-          </button>
+          </ResetButtonLink>
         </footer>
       </Form>
     ));
index 898438ec774602d3029e954fbfbf4c8aca65e100..82124b3c34aa9b4fa938791f3c2b395b47faf33e 100644 (file)
@@ -49,20 +49,17 @@ exports[`should render correctly 2`] = `
       loading={false}
       timeout={100}
     />
-    <button
+    <SubmitButton
       disabled={true}
-      type="submit"
     >
       confirm
-    </button>
-    <button
-      className="button-link"
+    </SubmitButton>
+    <ResetButtonLink
       disabled={false}
-      onClick={[Function]}
-      type="reset"
+      onClick={[MockFunction]}
     >
       cancel
-    </button>
+    </ResetButtonLink>
   </footer>
 </Form>
 `;