@intuitionrobotics/thunderstorm 0.47.2 → 0.47.4

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.
@@ -3,9 +3,10 @@ type Props = {
3
3
  zIndex: number;
4
4
  showOverlay: boolean;
5
5
  onClickOverlay: (event: React.MouseEvent<HTMLDivElement>) => void;
6
+ children: React.ReactNode;
6
7
  };
7
8
  export declare class Overlay extends React.Component<Props> {
8
9
  static defaultProps: Partial<Props>;
9
- render(): React.ReactNode;
10
+ render(): string | number | boolean | Iterable<React.ReactNode> | React.JSX.Element | null | undefined;
10
11
  }
11
12
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"Overlay.js","sourceRoot":"","sources":["../../../src/main/app-frontend/components/Overlay.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;AAEH,+BAA+B;AAS/B,MAAM,YAAY,GAAG,CAAC,MAAc,EAAiB,EAAE,CAAC,CAAC;IACxD,MAAM;IACN,QAAQ,EAAE,OAAO;IACjB,GAAG,EAAE,CAAC;IACN,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,CAAC;CACT,CAAC,CAAC;AACH,MAAM,aAAa,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC;IAC1C,MAAM;IACN,OAAO,EAAE,cAAc;CACvB,CAAC,CAAC;AAEH,MAAa,OACZ,SAAQ,KAAK,CAAC,SAAgB;IAM9B,MAAM;QACL,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW;YAC1B,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;QAE5B,OAAO;YACN,6BAAK,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAC9C,IAAI,CAAC,KAAK,CAAC,QAAQ,CACf;YACN,6BACC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,EAClD,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GACrC,CACA,CAAA;IACJ,CAAC;;AApBF,0BAqBC;AAlBO,oBAAY,GAAmB;IACrC,MAAM,EAAE,CAAC;CACT,CAAC"}
1
+ {"version":3,"file":"Overlay.js","sourceRoot":"","sources":["../../../src/main/app-frontend/components/Overlay.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;AAEH,+BAA+B;AAU/B,MAAM,YAAY,GAAG,CAAC,MAAc,EAAiB,EAAE,CAAC,CAAC;IACxD,MAAM;IACN,QAAQ,EAAE,OAAO;IACjB,GAAG,EAAE,CAAC;IACN,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,CAAC;CACT,CAAC,CAAC;AACH,MAAM,aAAa,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC;IAC1C,MAAM;IACN,OAAO,EAAE,cAAc;CACvB,CAAC,CAAC;AAEH,MAAa,OACZ,SAAQ,KAAK,CAAC,SAAgB;IAM9B,MAAM;QACL,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW;YAC1B,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;QAE5B,OAAO;YACN,6BAAK,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAC9C,IAAI,CAAC,KAAK,CAAC,QAAQ,CACf;YACN,6BACC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,EAClD,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GACrC,CACA,CAAA;IACJ,CAAC;;AApBF,0BAqBC;AAlBO,oBAAY,GAAmB;IACrC,MAAM,EAAE,CAAC;CACT,CAAC"}
@@ -1,33 +1,13 @@
1
1
  "use strict";
2
- /*
3
- * Thunderstorm is a full web app framework!
4
- *
5
- * Typescript & Express backend infrastructure that natively runs on firebase function
6
- * Typescript & React frontend infrastructure
7
- *
8
- * Copyright (C) 2020 Intuition Robotics
9
- *
10
- * Licensed under the Apache License, Version 2.0 (the "License");
11
- * you may not use this file except in compliance with the License.
12
- * You may obtain a copy of the License at
13
- *
14
- * http://www.apache.org/licenses/LICENSE-2.0
15
- *
16
- * Unless required by applicable law or agreed to in writing, software
17
- * distributed under the License is distributed on an "AS IS" BASIS,
18
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19
- * See the License for the specific language governing permissions and
20
- * limitations under the License.
21
- */
22
2
  Object.defineProperty(exports, "__esModule", { value: true });
23
3
  exports.renderApp = exports.AppWrapper = void 0;
24
4
  const React = require("react");
25
- const ReactDOM = require("react-dom");
26
5
  const react_router_dom_1 = require("react-router-dom");
27
6
  // noinspection TypeScriptPreferShortImport`
28
7
  const HistoryModule_1 = require("../modules/HistoryModule");
29
8
  const Thunder_1 = require("./Thunder");
30
9
  const ts_common_1 = require("@intuitionrobotics/ts-common");
10
+ const client_1 = require("react-dom/client");
31
11
  const AppWrapper = (props) => {
32
12
  const MainApp = Thunder_1.Thunder.getInstance().getMainApp();
33
13
  if (!MainApp)
@@ -37,7 +17,11 @@ const AppWrapper = (props) => {
37
17
  };
38
18
  exports.AppWrapper = AppWrapper;
39
19
  function renderApp(appId = "app") {
40
- ReactDOM.render(React.createElement(exports.AppWrapper, null), document.getElementById(appId));
20
+ const el = document.getElementById(appId);
21
+ if (!el)
22
+ throw new Error(`Could not find element with id ${appId}`);
23
+ const root = (0, client_1.createRoot)(el);
24
+ root.render(React.createElement(exports.AppWrapper, null));
41
25
  }
42
26
  exports.renderApp = renderApp;
43
27
  //# sourceMappingURL=AppWrapper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AppWrapper.js","sourceRoot":"","sources":["../../../src/main/app-frontend/core/AppWrapper.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;AAEH,+BAA+B;AAC/B,sCAAsC;AACtC,uDAAwC;AACxC,4CAA4C;AAC5C,4DAA8D;AAC9D,uCAAkC;AAClC,4DAA4E;AAIrE,MAAM,UAAU,GAAG,CAAC,KAAmB,EAAE,EAAE;IAEjD,MAAM,OAAO,GAAG,iBAAO,CAAC,WAAW,EAAE,CAAC,UAAU,EAAE,CAAC;IACnD,IAAI,CAAC,OAAO;QACX,MAAM,IAAI,0CAA8B,CAAC,6BAA6B,CAAC,CAAC;IAEzE,OAAO,CACN,oBAAC,yBAAM,IAAC,OAAO,EAAE,oCAAoB,CAAC,UAAU,EAAE;QACjD,oBAAC,OAAO,OAAE,CACF,CAAC,CAAA;AACZ,CAAC,CAAC;AAVW,QAAA,UAAU,cAUrB;AAEF,SAAgB,SAAS,CAAC,QAAgB,KAAK;IAC9C,QAAQ,CAAC,MAAM,CACd,oBAAC,kBAAU,OAAE,EACb,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAC9B,CAAC;AACH,CAAC;AALD,8BAKC"}
1
+ {"version":3,"file":"AppWrapper.js","sourceRoot":"","sources":["../../../src/main/app-frontend/core/AppWrapper.tsx"],"names":[],"mappings":";;;AAAA,+BAA+B;AAC/B,uDAAwC;AACxC,4CAA4C;AAC5C,4DAA8D;AAC9D,uCAAkC;AAClC,4DAA4E;AAC5E,6CAA4C;AAGrC,MAAM,UAAU,GAAG,CAAC,KAAmB,EAAE,EAAE;IAE9C,MAAM,OAAO,GAAG,iBAAO,CAAC,WAAW,EAAE,CAAC,UAAU,EAAE,CAAC;IACnD,IAAI,CAAC,OAAO;QACR,MAAM,IAAI,0CAA8B,CAAC,6BAA6B,CAAC,CAAC;IAE5E,OAAO,CACH,oBAAC,yBAAM,IAAC,OAAO,EAAE,oCAAoB,CAAC,UAAU,EAAE;QAC9C,oBAAC,OAAO,OAAE,CACL,CAAC,CAAA;AAClB,CAAC,CAAC;AAVW,QAAA,UAAU,cAUrB;AAEF,SAAgB,SAAS,CAAC,QAAgB,KAAK;IAC3C,MAAM,EAAE,GAAG,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAC1C,IAAI,CAAC,EAAE;QACH,MAAM,IAAI,KAAK,CAAC,kCAAkC,KAAK,EAAE,CAAC,CAAC;IAE/D,MAAM,IAAI,GAAG,IAAA,mBAAU,EAAC,EAAE,CAAC,CAAC;IAC5B,IAAI,CAAC,MAAM,CAAC,oBAAC,kBAAU,OAAE,CAAC,CAAA;AAC9B,CAAC;AAPD,8BAOC"}
@@ -17,7 +17,7 @@ export declare class Dialog extends BaseComponent<Props, State> implements Dialo
17
17
  __showDialog: (model?: Dialog_Model) => void;
18
18
  render(): React.JSX.Element | null;
19
19
  renderTitle: (title?: React.ReactNode) => "" | React.JSX.Element;
20
- renderContent: (content: React.ReactNode) => {} | null | undefined;
20
+ renderContent: (content: React.ReactNode) => number | boolean | Iterable<React.ReactNode> | React.JSX.Element | null | undefined;
21
21
  renderButtons: (model: Dialog_Model) => "" | React.JSX.Element | null;
22
22
  private onOverlayClicked;
23
23
  }
@@ -5,15 +5,15 @@ export type RouteParams = {
5
5
  export declare class RoutePath {
6
6
  readonly key: string;
7
7
  readonly path: string;
8
- readonly exact: boolean;
9
8
  readonly component: React.ComponentType<any> | string;
10
- readonly logMessage?: string;
11
- readonly label?: React.ElementType | string;
12
- readonly visible: () => boolean;
13
- readonly enabled?: () => boolean;
9
+ exact: boolean;
10
+ logMessage?: string;
11
+ label?: string;
12
+ visible: () => boolean;
13
+ enabled?: () => boolean;
14
14
  constructor(key: string, route: string, component: React.ComponentType<any> | string);
15
15
  setLogMessage(logMessage: string): this;
16
- setLabel(label: React.ElementType | string): this;
16
+ setLabel(label: string): this;
17
17
  setVisible(visible: () => boolean): this;
18
18
  setEnabled(enabled: () => boolean): this;
19
19
  setExact(exact: boolean): this;
@@ -1,24 +1,4 @@
1
1
  "use strict";
2
- /*
3
- * Thunderstorm is a full web app framework!
4
- *
5
- * Typescript & Express backend infrastructure that natively runs on firebase function
6
- * Typescript & React frontend infrastructure
7
- *
8
- * Copyright (C) 2020 Intuition Robotics
9
- *
10
- * Licensed under the Apache License, Version 2.0 (the "License");
11
- * you may not use this file except in compliance with the License.
12
- * You may obtain a copy of the License at
13
- *
14
- * http://www.apache.org/licenses/LICENSE-2.0
15
- *
16
- * Unless required by applicable law or agreed to in writing, software
17
- * distributed under the License is distributed on an "AS IS" BASIS,
18
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19
- * See the License for the specific language governing permissions and
20
- * limitations under the License.
21
- */
22
2
  Object.defineProperty(exports, "__esModule", { value: true });
23
3
  exports.defaultRouteNode = exports.defaultLinkNode = exports.defaultNavLinkNode = exports.RoutePath = void 0;
24
4
  const React = require("react");
@@ -33,27 +13,22 @@ class RoutePath {
33
13
  this.component = component;
34
14
  }
35
15
  setLogMessage(logMessage) {
36
- // @ts-ignore
37
16
  this.logMessage = logMessage;
38
17
  return this;
39
18
  }
40
19
  setLabel(label) {
41
- // @ts-ignore
42
20
  this.label = label;
43
21
  return this;
44
22
  }
45
23
  setVisible(visible) {
46
- // @ts-ignore
47
24
  this.visible = visible;
48
25
  return this;
49
26
  }
50
27
  setEnabled(enabled) {
51
- // @ts-ignore
52
28
  this.enabled = enabled;
53
29
  return this;
54
30
  }
55
31
  setExact(exact) {
56
- // @ts-ignore
57
32
  this.exact = exact;
58
33
  return this;
59
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"route.js","sourceRoot":"","sources":["../../../../src/main/app-frontend/modules/routing/route.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"route.js","sourceRoot":"","sources":["../../../../src/main/app-frontend/modules/routing/route.tsx"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ export type KeyboardListenerProps = {
5
5
  onFocus?: () => void;
6
6
  onBlur?: () => void;
7
7
  id?: string;
8
+ children: React.ReactNode;
8
9
  };
9
10
  export declare class KeyboardListener<P extends KeyboardListenerProps> extends React.Component<P> {
10
11
  private node?;
@@ -1 +1 @@
1
- {"version":3,"file":"KeyboardListener.js","sourceRoot":"","sources":["../../../src/main/app-frontend/tools/KeyboardListener.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;AAEH,+BAA+B;AAU/B,MAAa,gBACZ,SAAQ,KAAK,CAAC,SAAY;IAD3B;;QAqBC,yBAAoB,GAAG,CAAC,CAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,uBAAuB,IAAI,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAEjJ,YAAO,GAAG,GAAG,EAAE;YACd,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAC5C,CAAC,CAAC;QAEF,WAAM,GAAG,GAAG,EAAE;YACb,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC9B,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAC1C,CAAC,CAAC;IAkBH,CAAC;IA5CQ,mBAAmB;;QAC1B,MAAM,uBAAuB,GAAG,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC;QACnE,IAAI,CAAC,uBAAuB;YAC3B,OAAO;QAER,MAAA,IAAI,CAAC,IAAI,0CAAE,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAA;IAClE,CAAC;IAEO,sBAAsB;;QAC7B,MAAM,uBAAuB,GAAG,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC;QACnE,IAAI,CAAC,uBAAuB;YAC3B,OAAO;QAER,MAAA,IAAI,CAAC,IAAI,0CAAE,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAA;IACrE,CAAC;IAcD,MAAM;QACL,OAAO,6BACN,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,EACpD,GAAG,EAAE,CAAC,IAAoB,EAAE,EAAE;gBAC7B,IAAI,IAAI,CAAC,IAAI;oBACZ,OAAO;gBAER,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;gBACjB,IAAI,CAAC,WAAW,EAAE,CAAC;YACpB,CAAC,EACD,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,MAAM,EAAE,IAAI,CAAC,MAAM,IAClB,IAAI,CAAC,KAAK,CAAC,QAAQ,CACf,CAAA;IACP,CAAC;CACD;AAjDD,4CAiDC"}
1
+ {"version":3,"file":"KeyboardListener.js","sourceRoot":"","sources":["../../../src/main/app-frontend/tools/KeyboardListener.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;AAEH,+BAA+B;AAW/B,MAAa,gBACZ,SAAQ,KAAK,CAAC,SAAY;IAD3B;;QAqBC,yBAAoB,GAAG,CAAC,CAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,uBAAuB,IAAI,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAEjJ,YAAO,GAAG,GAAG,EAAE;YACd,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAC5C,CAAC,CAAC;QAEF,WAAM,GAAG,GAAG,EAAE;YACb,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC9B,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAC1C,CAAC,CAAC;IAkBH,CAAC;IA5CQ,mBAAmB;;QAC1B,MAAM,uBAAuB,GAAG,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC;QACnE,IAAI,CAAC,uBAAuB;YAC3B,OAAO;QAER,MAAA,IAAI,CAAC,IAAI,0CAAE,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAA;IAClE,CAAC;IAEO,sBAAsB;;QAC7B,MAAM,uBAAuB,GAAG,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC;QACnE,IAAI,CAAC,uBAAuB;YAC3B,OAAO;QAER,MAAA,IAAI,CAAC,IAAI,0CAAE,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAA;IACrE,CAAC;IAcD,MAAM;QACL,OAAO,6BACN,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,EACpD,GAAG,EAAE,CAAC,IAAoB,EAAE,EAAE;gBAC7B,IAAI,IAAI,CAAC,IAAI;oBACZ,OAAO;gBAER,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;gBACjB,IAAI,CAAC,WAAW,EAAE,CAAC;YACpB,CAAC,EACD,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,MAAM,EAAE,IAAI,CAAC,MAAM,IAClB,IAAI,CAAC,KAAK,CAAC,QAAQ,CACf,CAAA;IACP,CAAC;CACD;AAjDD,4CAiDC"}
@@ -4,6 +4,7 @@ type Props = {
4
4
  onMouseMove?: (e: MouseEvent) => void;
5
5
  onMouseUp?: (e: MouseEvent) => void;
6
6
  overlayZIndex?: number;
7
+ children: React.ReactNode;
7
8
  };
8
9
  type State = {
9
10
  isDragging: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"ClickToDrag.js","sourceRoot":"","sources":["../../../../src/main/app-frontend/widgets/click-to-drag/ClickToDrag.tsx"],"names":[],"mappings":";;;AAAA,+BAA+B;AAC/B,4DAAuD;AACvD,+EAA0E;AAY1E,MAAa,WACZ,SAAQ,6BAA2B;IAEnC,YAAY,KAAY;QACvB,KAAK,CAAC,KAAK,CAAC,CAAC;QAMd,oBAAe,GAAG,GAAG,EAAE;YACtB,IAAI,CAAC,QAAQ,CAAC,EAAC,UAAU,EAAE,IAAI,EAAC,CAAC,CAAC;QACnC,CAAC,CAAC;QAEF,gBAAW,GAAG,CAAC,CAAa,EAAE,EAAE;YAC/B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU;gBACzB,OAAO;YAER,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW;gBACzB,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC,CAAC;QAEF,cAAS,GAAG,CAAC,CAAa,EAAE,EAAE;YAC7B,IAAI,CAAC,QAAQ,CAAC,EAAC,UAAU,EAAE,KAAK,EAAC,CAAC,CAAC;YACnC,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS;gBACvB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC,CAAC;QAEF,WAAM,GAAG,GAAG,EAAE;YACb,OAAO,CACN,6BACC,KAAK,EAAE,EAAC,OAAO,EAAE,UAAU,EAAC,EAC5B,WAAW,EAAE,IAAI,CAAC,eAAe;gBAChC,IAAI,CAAC,KAAK,CAAC,QAAQ;gBACnB,IAAI,CAAC,aAAa,EAAE,CAChB,CACN,CAAA;QACF,CAAC,CAAC;QAEM,kBAAa,GAAG,GAAG,EAAE;YAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU;gBAC3B,oBAAC,yDAA2B,IAC3B,mBAAmB,EAAE,IAAI,CAAC,WAAW,EACrC,iBAAiB,EAAE,IAAI,CAAC,SAAS,EACjC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,GAC/B,CAAC;QACL,CAAC,CAAA;QAzCA,IAAI,CAAC,KAAK,GAAG;YACZ,UAAU,EAAE,KAAK;SACjB,CAAC;IACH,CAAC;CAuCD;AA/CD,kCA+CC"}
1
+ {"version":3,"file":"ClickToDrag.js","sourceRoot":"","sources":["../../../../src/main/app-frontend/widgets/click-to-drag/ClickToDrag.tsx"],"names":[],"mappings":";;;AAAA,+BAA+B;AAC/B,4DAAuD;AACvD,+EAA0E;AAa1E,MAAa,WACZ,SAAQ,6BAA2B;IAEnC,YAAY,KAAY;QACvB,KAAK,CAAC,KAAK,CAAC,CAAC;QAMd,oBAAe,GAAG,GAAG,EAAE;YACtB,IAAI,CAAC,QAAQ,CAAC,EAAC,UAAU,EAAE,IAAI,EAAC,CAAC,CAAC;QACnC,CAAC,CAAC;QAEF,gBAAW,GAAG,CAAC,CAAa,EAAE,EAAE;YAC/B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU;gBACzB,OAAO;YAER,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW;gBACzB,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC,CAAC;QAEF,cAAS,GAAG,CAAC,CAAa,EAAE,EAAE;YAC7B,IAAI,CAAC,QAAQ,CAAC,EAAC,UAAU,EAAE,KAAK,EAAC,CAAC,CAAC;YACnC,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS;gBACvB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC,CAAC;QAEF,WAAM,GAAG,GAAG,EAAE;YACb,OAAO,CACN,6BACC,KAAK,EAAE,EAAC,OAAO,EAAE,UAAU,EAAC,EAC5B,WAAW,EAAE,IAAI,CAAC,eAAe;gBAChC,IAAI,CAAC,KAAK,CAAC,QAAQ;gBACnB,IAAI,CAAC,aAAa,EAAE,CAChB,CACN,CAAA;QACF,CAAC,CAAC;QAEM,kBAAa,GAAG,GAAG,EAAE;YAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU;gBAC3B,oBAAC,yDAA2B,IAC3B,mBAAmB,EAAE,IAAI,CAAC,WAAW,EACrC,iBAAiB,EAAE,IAAI,CAAC,SAAS,EACjC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,GAC/B,CAAC;QACL,CAAC,CAAA;QAzCA,IAAI,CAAC,KAAK,GAAG;YACZ,UAAU,EAAE,KAAK;SACjB,CAAC;IACH,CAAC;CAuCD;AA/CD,kCA+CC"}
package/frontend.d.ts CHANGED
@@ -28,7 +28,6 @@ export * from "./app-frontend/widgets/FieldEditorWithButtons";
28
28
  export * from "./app-frontend/components/TS_Table";
29
29
  export * from "./app-frontend/components/checkbox/TS_Checkbox";
30
30
  export * from "./app-frontend/components/FilterInput";
31
- export * from "./app-frontend/components/DropDown";
32
31
  export * from "./app-frontend/components/form/types";
33
32
  export * from "./app-frontend/components/form/Form";
34
33
  export * from "./app-frontend/components/tree/MultiTypeAdaptor";
package/frontend.js CHANGED
@@ -64,7 +64,6 @@ __exportStar(require("./app-frontend/widgets/FieldEditorWithButtons"), exports);
64
64
  __exportStar(require("./app-frontend/components/TS_Table"), exports);
65
65
  __exportStar(require("./app-frontend/components/checkbox/TS_Checkbox"), exports);
66
66
  __exportStar(require("./app-frontend/components/FilterInput"), exports);
67
- __exportStar(require("./app-frontend/components/DropDown"), exports);
68
67
  __exportStar(require("./app-frontend/components/form/types"), exports);
69
68
  __exportStar(require("./app-frontend/components/form/Form"), exports);
70
69
  __exportStar(require("./app-frontend/components/tree/MultiTypeAdaptor"), exports);
package/frontend.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"frontend.js","sourceRoot":"","sources":["../src/main/frontend.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;;;;;;;;;;;;;;AAEH,8DAA4C;AAC5C,sEAAoD;AACpD,yEAAuD;AAEvD,4EAAyD;AAEzD,yEAAuD;AACvD,6EAA2D;AAC3D,+EAA6D;AAC7D,+EAA6D;AAE7D,sEAAoD;AACpD,6EAA2D;AAE3D,sEAAoD;AACpD,uEAAqD;AACrD,4EAA0D;AAE1D,uEAAqD;AACrD,+EAA6D;AAE7D,yEAAuD;AACvD,uEAAqD;AACrD,4EAA0D;AAE1D,2EAAyD;AACzD,oEAAkD;AAClD,8DAA4C;AAC5C,iEAA+C;AAC/C,wEAAsD;AACtD,qEAAmD;AACnD,qEAAmD;AACnD,0EAAwD;AACxD,gFAA8D;AAC9D,qEAAmD;AACnD,iFAA+D;AAC/D,wEAAsD;AACtD,qEAAmD;AAEnD,uEAAqD;AACrD,sEAAoD;AAEpD,kFAAgE;AAChE,4EAA0D;AAC1D,iFAA+D;AAC/D,sEAAoD;AACpD,uEAAqD;AACrD,wFAAsE;AAEtE,+EAA6D;AAE7D,0EAAwD;AACxD,kFAAgE;AAEhE,iFAA+D;AAC/D,sFAAoE;AAEpE,sGAAoF;AACpF,yGAAuF;AAEvF,yEAAuD;AACvD,4EAA0D;AAC1D,wEAAsD;AACtD,yEAAuD;AACvD,uEAAqD;AAErD,wEAAsD;AACtD,gEAA8C;AAE9C,6DAA2C"}
1
+ {"version":3,"file":"frontend.js","sourceRoot":"","sources":["../src/main/frontend.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;;;;;;;;;;;;;;AAEH,8DAA4C;AAC5C,sEAAoD;AACpD,yEAAuD;AAEvD,4EAAyD;AAEzD,yEAAuD;AACvD,6EAA2D;AAC3D,+EAA6D;AAC7D,+EAA6D;AAE7D,sEAAoD;AACpD,6EAA2D;AAE3D,sEAAoD;AACpD,uEAAqD;AACrD,4EAA0D;AAE1D,uEAAqD;AACrD,+EAA6D;AAE7D,yEAAuD;AACvD,uEAAqD;AACrD,4EAA0D;AAE1D,2EAAyD;AACzD,oEAAkD;AAClD,8DAA4C;AAC5C,iEAA+C;AAC/C,wEAAsD;AACtD,qEAAmD;AACnD,qEAAmD;AACnD,0EAAwD;AACxD,gFAA8D;AAC9D,qEAAmD;AACnD,iFAA+D;AAC/D,wEAAsD;AAEtD,uEAAqD;AACrD,sEAAoD;AAEpD,kFAAgE;AAChE,4EAA0D;AAC1D,iFAA+D;AAC/D,sEAAoD;AACpD,uEAAqD;AACrD,wFAAsE;AAEtE,+EAA6D;AAE7D,0EAAwD;AACxD,kFAAgE;AAEhE,iFAA+D;AAC/D,sFAAoE;AAEpE,sGAAoF;AACpF,yGAAuF;AAEvF,yEAAuD;AACvD,4EAA0D;AAC1D,wEAAsD;AACtD,yEAAuD;AACvD,uEAAqD;AAErD,wEAAsD;AACtD,gEAA8C;AAE9C,6DAA2C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@intuitionrobotics/thunderstorm",
3
- "version": "0.47.2",
3
+ "version": "0.47.4",
4
4
  "description": "Thunderstorm",
5
5
  "keywords": [
6
6
  "IR",
@@ -36,22 +36,21 @@
36
36
  "csstype": "3.1.2",
37
37
  "express": "^4.16.4",
38
38
  "history": "^4.9.0",
39
- "react": "^16.0.0",
40
- "react-dom": "^16.0.0",
39
+ "react": "^18.0.0",
40
+ "react-dom": "^18.0.0",
41
41
  "react-router-dom": "^5.1.2",
42
- "react-select": "^4.0.0"
42
+ "react-select": "^5.0.0"
43
43
  },
44
44
  "devDependencies": {
45
45
  "@intuitionrobotics/testelot": "~0.47.0",
46
46
  "@types/compression": "^1.7.0",
47
47
  "@types/express": "^4.16.1",
48
48
  "@types/history": "^4.7.2",
49
- "@types/node": "^18.0.0",
50
- "@types/react": "^16.0.0",
51
- "@types/react-dom": "^16.0.0",
49
+ "@types/node": "^20.0.0",
50
+ "@types/react": "^18.0.0",
51
+ "@types/react-dom": "^18.0.0",
52
52
  "@types/react-router": "^5.1.4",
53
53
  "@types/react-router-dom": "^5.1.3",
54
- "@types/react-select": "^4.0.0",
55
54
  "ts-node": "^9.1.1",
56
55
  "tslint": "^5.16.0",
57
56
  "typescript": "^5.3.0"
@@ -1,56 +0,0 @@
1
- import * as React from 'react';
2
- import { Adapter } from "./adapter/Adapter";
3
- import { Stylable } from '../tools/Stylable';
4
- export declare const headerStyle: React.CSSProperties;
5
- export declare const inputStyle: React.CSSProperties;
6
- export declare const listStyle: React.CSSProperties;
7
- export type InputProps = Stylable & {
8
- placeholder?: string;
9
- };
10
- export type State<ItemType> = {
11
- id: string;
12
- filteredOptions: ItemType[];
13
- adapter: Adapter;
14
- open: boolean;
15
- selected?: ItemType;
16
- hover?: ItemType;
17
- filterTextLength?: number;
18
- };
19
- type StaticProps = {
20
- id: string;
21
- headerStylable: Stylable;
22
- listStylable: Stylable;
23
- inputStylable: InputProps;
24
- };
25
- export type Props_DropDown<ItemType> = StaticProps & {
26
- adapter: Adapter;
27
- onSelected: (selected: ItemType) => void;
28
- selected?: ItemType;
29
- filter?: (item: ItemType) => string[];
30
- onFilter?: (list?: ItemType[]) => void;
31
- inputEventHandler?: (state: State<ItemType>, e: KeyboardEvent) => State<ItemType>;
32
- selectedItemRenderer?: (props?: ItemType) => React.ReactNode;
33
- caret?: {
34
- open: React.ReactNode;
35
- close: React.ReactNode;
36
- };
37
- autocomplete?: boolean;
38
- disabled?: boolean;
39
- };
40
- export declare class DropDown<ItemType> extends React.Component<Props_DropDown<ItemType>, State<ItemType>> {
41
- static defaultProps: Partial<StaticProps>;
42
- constructor(props: Props_DropDown<ItemType>);
43
- componentDidUpdate(prevProps: Props_DropDown<any>): void;
44
- private static cloneAdapter;
45
- toggleList: (e: React.MouseEvent) => void;
46
- onSelected: (item: ItemType) => void;
47
- render(): React.JSX.Element;
48
- private renderHeader;
49
- private renderTree;
50
- private keyEventHandler;
51
- private renderSelectedOrFilterInput;
52
- private renderSelectedItem;
53
- private renderCaret;
54
- private renderTreeImpl;
55
- }
56
- export {};
@@ -1,219 +0,0 @@
1
- "use strict";
2
- /*
3
- * Thunderstorm is a full web app framework!
4
- *
5
- * Typescript & Express backend infrastructure that natively runs on firebase function
6
- * Typescript & React frontend infrastructure
7
- *
8
- * Copyright (C) 2020 Intuition Robotics
9
- *
10
- * Licensed under the Apache License, Version 2.0 (the "License");
11
- * you may not use this file except in compliance with the License.
12
- * You may obtain a copy of the License at
13
- *
14
- * http://www.apache.org/licenses/LICENSE-2.0
15
- *
16
- * Unless required by applicable law or agreed to in writing, software
17
- * distributed under the License is distributed on an "AS IS" BASIS,
18
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19
- * See the License for the specific language governing permissions and
20
- * limitations under the License.
21
- */
22
- Object.defineProperty(exports, "__esModule", { value: true });
23
- exports.DropDown = exports.listStyle = exports.inputStyle = exports.headerStyle = void 0;
24
- const React = require("react");
25
- const FilterInput_1 = require("./FilterInput");
26
- const ts_common_1 = require("@intuitionrobotics/ts-common");
27
- const KeyboardListener_1 = require("../tools/KeyboardListener");
28
- const tools_1 = require("../utils/tools");
29
- const Adapter_1 = require("./adapter/Adapter");
30
- const Tree_1 = require("./tree/Tree");
31
- const Overlay_1 = require("./Overlay");
32
- const defaultWidth = "222px";
33
- const defaultTitleHeight = "28px";
34
- const defaultListHeight = "150px";
35
- // export enum OnEnterOptions {
36
- // SelectFirstOption= (e:)
37
- // }
38
- const wrapperStyle = {
39
- display: "inline-block",
40
- position: 'relative'
41
- };
42
- exports.headerStyle = {
43
- display: "flex",
44
- alignItems: "center",
45
- boxSizing: "border-box",
46
- position: "relative",
47
- border: "solid 1px",
48
- borderRadius: 2,
49
- color: "black",
50
- backgroundColor: "white",
51
- width: defaultWidth,
52
- height: defaultTitleHeight,
53
- };
54
- exports.inputStyle = {
55
- border: "unset",
56
- boxSizing: "border-box",
57
- outline: "none",
58
- // padding: "0 5px",
59
- width: "100%",
60
- };
61
- const listContainerStyle = {
62
- display: "inline-block",
63
- position: "absolute",
64
- zIndex: 10,
65
- };
66
- exports.listStyle = {
67
- boxSizing: "border-box",
68
- backgroundColor: "whitesmoke",
69
- border: "solid 1px",
70
- borderRadius: 5,
71
- display: "flex",
72
- flexFlow: "column",
73
- alignItems: "stretch",
74
- maxHeight: defaultListHeight,
75
- overflowX: "hidden",
76
- overflowY: "auto",
77
- position: "relative",
78
- top: 5,
79
- width: defaultWidth,
80
- };
81
- class DropDown extends React.Component {
82
- constructor(props) {
83
- super(props);
84
- this.toggleList = (e) => {
85
- if (this.props.disabled)
86
- return;
87
- (0, tools_1.stopPropagation)(e);
88
- this.setState(prevState => ({ open: !prevState.open }));
89
- };
90
- this.onSelected = (item) => {
91
- this.setState({
92
- open: false,
93
- selected: item
94
- });
95
- this.props.onSelected(item);
96
- };
97
- this.renderHeader = () => {
98
- return (React.createElement("div", Object.assign({ id: `${this.props.id}-header`, onClick: this.toggleList }, this.props.headerStylable),
99
- this.renderSelectedOrFilterInput(),
100
- this.renderCaret()));
101
- };
102
- this.renderTree = () => {
103
- if (!this.state.open)
104
- return;
105
- if (this.props.autocomplete && !this.state.filterTextLength)
106
- return;
107
- this.props.adapter.data = this.state.filteredOptions;
108
- return React.createElement("div", { style: listContainerStyle },
109
- React.createElement("div", Object.assign({}, this.props.listStylable), this.renderTreeImpl()));
110
- };
111
- this.keyEventHandler = (node, e) => {
112
- var _a;
113
- if (this.props.inputEventHandler)
114
- return this.setState(() => {
115
- const state = this.props.inputEventHandler ? this.props.inputEventHandler(this.state, e) : this.state;
116
- return state;
117
- });
118
- if (e.code === "Enter" && this.state.filteredOptions)
119
- return this.onSelected(this.state.filteredOptions[0]);
120
- if (e.code === "Escape")
121
- return this.setState({ open: false });
122
- if (e.code === "ArrowDown") {
123
- return (_a = document.getElementById(`${this.props.id}-tree-listener`)) === null || _a === void 0 ? void 0 : _a.focus();
124
- }
125
- };
126
- this.renderSelectedOrFilterInput = () => {
127
- if (!this.state.open || !this.props.filter) {
128
- return (React.createElement("div", { className: 'match_width' }, this.renderSelectedItem(this.state.selected)));
129
- }
130
- return React.createElement(FilterInput_1.FilterInput, Object.assign({ key: this.state.id, id: `${this.props.id}-input`, filter: this.props.filter, list: this.props.adapter.data, onChange: (filteredOptions, filterBy) => {
131
- this.setState(state => {
132
- state.adapter.data = this.props.autocomplete && this.props.filter && !filterBy.length ? [] : filteredOptions;
133
- console.log(`filter: ${this.props.id} (${filterBy}) -> ${(0, ts_common_1.__stringify)(filteredOptions)}`);
134
- console.log(`state.adapter.data: ${(0, ts_common_1.__stringify)(state.adapter.data)}`);
135
- return {
136
- adapter: state.adapter,
137
- filterTextLength: filterBy.length
138
- };
139
- }, () => this.props.onFilter && this.props.onFilter(this.state.filteredOptions));
140
- }, handleKeyEvent: (e) => {
141
- return;
142
- }, focus: true }, this.props.inputStylable));
143
- };
144
- this.renderSelectedItem = (selected) => {
145
- if (this.props.selectedItemRenderer)
146
- return this.props.selectedItemRenderer(selected);
147
- if (selected === undefined)
148
- return React.createElement("div", null, this.props.inputStylable.placeholder);
149
- const Renderer = this.props.adapter.treeNodeRenderer;
150
- const node = {
151
- propKey: 'string',
152
- path: 'string',
153
- item: 'any',
154
- adapter: this.props.adapter,
155
- expandToggler: (e, expxand) => {
156
- },
157
- onClick: (e) => {
158
- },
159
- onFocus: (e) => {
160
- },
161
- expanded: true,
162
- focused: false,
163
- selected: true
164
- };
165
- return React.createElement(Renderer, { item: selected, node: node });
166
- };
167
- this.renderCaret = () => {
168
- const caret = this.props.caret;
169
- if (!caret)
170
- return;
171
- return this.state.open ? caret.close : caret.open;
172
- };
173
- this.renderTreeImpl = () => {
174
- const treeKeyEventHandler = treeKeyEventHandlerResolver(this.props.id);
175
- const id = `${this.props.id}-tree`;
176
- if ((!this.props.filter || !this.props.autocomplete || this.state.filterTextLength) && this.state.adapter.data.length === 0)
177
- return React.createElement("div", { style: { textAlign: "center", opacity: 0.5 } }, "No options");
178
- return React.createElement(Tree_1.Tree, { id: id, key: id, adapter: this.state.adapter, indentPx: 0, selectedItem: this.state.selected, onNodeClicked: (path, item) => this.onSelected(item), unMountFromOutside: () => this.setState({ open: false }), keyEventHandler: treeKeyEventHandler });
179
- };
180
- this.state = {
181
- id: props.id,
182
- filteredOptions: this.props.adapter.data,
183
- adapter: DropDown.cloneAdapter(this.props),
184
- open: false,
185
- selected: this.props.selected,
186
- };
187
- }
188
- componentDidUpdate(prevProps) {
189
- if (this.props.adapter.data !== prevProps.adapter.data || this.props.selected !== prevProps.selected) {
190
- const newAdapter = DropDown.cloneAdapter(this.props);
191
- this.setState({ id: this.props.id, adapter: newAdapter, filteredOptions: newAdapter.data, selected: this.props.selected });
192
- }
193
- }
194
- render() {
195
- return (React.createElement(Overlay_1.Overlay, { showOverlay: this.state.open, onClickOverlay: () => this.setState({ open: false }) },
196
- React.createElement(KeyboardListener_1.KeyboardListener, { onKeyboardEventListener: this.keyEventHandler },
197
- React.createElement("div", { id: this.props.id, style: wrapperStyle },
198
- this.renderHeader(),
199
- this.renderTree()))));
200
- }
201
- }
202
- exports.DropDown = DropDown;
203
- DropDown.defaultProps = {
204
- id: (0, ts_common_1.generateHex)(8),
205
- headerStylable: { style: exports.headerStyle },
206
- listStylable: { style: exports.listStyle },
207
- inputStylable: { style: exports.inputStyle }
208
- };
209
- DropDown.cloneAdapter = (nextProps) => {
210
- return nextProps.adapter.clone(new Adapter_1.Adapter(nextProps.autocomplete && nextProps.filter ? [] : nextProps.adapter.data));
211
- };
212
- const treeKeyEventHandlerResolver = (id) => {
213
- return (node, e) => {
214
- var _a;
215
- if (!["Escape", "ArrowRight", "ArrowDown", "ArrowLeft", "ArrowUp", "Enter"].includes(e.code))
216
- (_a = document.getElementById(`${id}-input`)) === null || _a === void 0 ? void 0 : _a.focus();
217
- };
218
- };
219
- //# sourceMappingURL=DropDown.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DropDown.js","sourceRoot":"","sources":["../../../src/main/app-frontend/components/DropDown.tsx"],"names":[],"mappings":"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"}