You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by kr...@apache.org on 2020/02/24 22:30:49 UTC

[incubator-superset] branch master updated: [SIP-36] Migrate setupApp.js to setupApp.ts (#9180)

This is an automated email from the ASF dual-hosted git repository.

kristw pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-superset.git


The following commit(s) were added to refs/heads/master by this push:
     new eeec63c  [SIP-36] Migrate setupApp.js to setupApp.ts (#9180)
eeec63c is described below

commit eeec63c7dde3027f4a81ccd814f31cc3e2fc2cb0
Author: Erik Ritter <er...@airbnb.com>
AuthorDate: Mon Feb 24 14:30:35 2020 -0800

    [SIP-36] Migrate setupApp.js to setupApp.ts (#9180)
---
 superset-frontend/package-lock.json                | 15 ++++++++++++++
 superset-frontend/package.json                     |  1 +
 .../src/setup/{setupApp.js => setupApp.ts}         | 23 ++++++++++++++++------
 3 files changed, 33 insertions(+), 6 deletions(-)

diff --git a/superset-frontend/package-lock.json b/superset-frontend/package-lock.json
index ab4586f..5421f93 100644
--- a/superset-frontend/package-lock.json
+++ b/superset-frontend/package-lock.json
@@ -4853,6 +4853,15 @@
       "integrity": "sha512-DC8xTuW/6TYgvEg3HEXS7cu9OijFqprVDXXiOcdOKZCU/5PJNLZU37VVvmZHdtMiGOa8wAA/We+JzbdxFzQTRQ==",
       "dev": true
     },
+    "@types/jquery": {
+      "version": "3.3.32",
+      "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.3.32.tgz",
+      "integrity": "sha512-UKoof2mnV/X1/Ix2g+V2Ny5sgHjV8nK/UJbiYxuo4zPwzGyFlZ/mp4KaePb2VqQrqJctmcDQNA57buU84/2uIw==",
+      "dev": true,
+      "requires": {
+        "@types/sizzle": "*"
+      }
+    },
     "@types/json-schema": {
       "version": "7.0.4",
       "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.4.tgz",
@@ -4952,6 +4961,12 @@
         "@types/react": "*"
       }
     },
+    "@types/sizzle": {
+      "version": "2.3.2",
+      "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.2.tgz",
+      "integrity": "sha512-7EJYyKTL7tFR8+gDbB6Wwz/arpGa0Mywk1TJbNzKzHtzbwVmY4HR9WqS5VV7dsBUKQmPNr192jHr/VpBluj/hg==",
+      "dev": true
+    },
     "@types/source-list-map": {
       "version": "0.1.2",
       "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz",
diff --git a/superset-frontend/package.json b/superset-frontend/package.json
index 861dacb..f518449 100644
--- a/superset-frontend/package.json
+++ b/superset-frontend/package.json
@@ -161,6 +161,7 @@
     "@babel/preset-react": "^7.0.0",
     "@babel/register": "^7.5.5",
     "@types/jest": "^23.3.5",
+    "@types/jquery": "^3.3.32",
     "@types/react": "^16.4.18",
     "@types/react-dom": "^16.0.9",
     "@types/react-json-tree": "^0.6.11",
diff --git a/superset-frontend/src/setup/setupApp.js b/superset-frontend/src/setup/setupApp.ts
similarity index 80%
rename from superset-frontend/src/setup/setupApp.js
rename to superset-frontend/src/setup/setupApp.ts
index e0969f9..d1c3dd9 100644
--- a/superset-frontend/src/setup/setupApp.js
+++ b/superset-frontend/src/setup/setupApp.ts
@@ -21,7 +21,7 @@ import $ from 'jquery';
 import { SupersetClient } from '@superset-ui/connection';
 import getClientErrorObject from '../utils/getClientErrorObject';
 
-function showApiMessage(resp) {
+function showApiMessage(resp: { severity?: string; message: string }) {
   const template =
     '<div class="alert"> ' +
     '<button type="button" class="close" ' +
@@ -33,9 +33,11 @@ function showApiMessage(resp) {
     .appendTo($('#alert-container'));
 }
 
-function toggleCheckbox(apiUrlPrefix, selector) {
-  SupersetClient.get({ endpoint: apiUrlPrefix + $(selector)[0].checked })
-    .then(() => {})
+function toggleCheckbox(apiUrlPrefix: string, selector: string) {
+  SupersetClient.get({
+    endpoint: apiUrlPrefix + ($(selector)[0] as HTMLInputElement).checked,
+  })
+    .then(() => undefined)
     .catch(response =>
       getClientErrorObject(response).then(parsedResp => {
         if (parsedResp && parsedResp.message) {
@@ -55,10 +57,17 @@ export default function setupApp() {
     });
 
     // for language picker dropdown
-    $('#language-picker a').click(function(ev) {
+    $('#language-picker a').click(function(
+      ev: JQuery.ClickEvent<
+        HTMLLinkElement,
+        null,
+        HTMLLinkElement,
+        HTMLLinkElement
+      >,
+    ) {
       ev.preventDefault();
       SupersetClient.get({
-        endpoint: ev.currentTarget.getAttribute('href'),
+        endpoint: ev.currentTarget.href,
         parseMethod: null,
       }).then(() => {
         location.reload();
@@ -68,7 +77,9 @@ export default function setupApp() {
 
   // A set of hacks to allow apps to run within a FAB template
   // this allows for the server side generated menus to function
+  // @ts-ignore
   window.$ = $;
+  // @ts-ignore
   window.jQuery = $;
   require('bootstrap');
 }