pollination-react-io 1.92.3 → 1.92.5

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.
@@ -16,4 +16,5 @@ export interface GetModelProps {
16
16
  inputProps?: HTMLProps<HTMLInputElement>;
17
17
  showHelpText?: boolean;
18
18
  defaultKey?: string;
19
+ useIcon?: boolean;
19
20
  }
@@ -41522,37 +41522,39 @@ var GetModelActions$1;
41522
41522
  })(GetModelActions$1 || (GetModelActions$1 = {}));
41523
41523
 
41524
41524
  var GetModel = function (_a) {
41525
- var onChange = _a.onChange, optionsConfig = _a.optionsConfig, _b = _a.buttonLabel, buttonLabel = _b === void 0 ? 'Get Model' : _b, _c = _a.showHelpText, showHelpText = _c === void 0 ? true : _c, _d = _a.defaultKey, defaultKey = _d === void 0 ? 'get-model-btn' : _d;
41525
+ var onChange = _a.onChange, optionsConfig = _a.optionsConfig, _b = _a.buttonLabel, buttonLabel = _b === void 0 ? 'Get Model' : _b, _c = _a.showHelpText, showHelpText = _c === void 0 ? true : _c, _d = _a.defaultKey, defaultKey = _d === void 0 ? 'get-model-btn' : _d, _e = _a.useIcon, useIcon = _e === void 0 ? true : _e;
41526
41526
  var subscribeRef = useRef();
41527
41527
  var sendHbjson = useSendHbjson().sendHbjson;
41528
- var _e = useState(performance.now().toString()), key = _e[0], setKey = _e[1];
41529
- var _f = useState(Boolean(optionsConfig) && typeof optionsConfig !== 'undefined' &&
41530
- typeof optionsConfig.selection !== 'undefined' &&
41531
- typeof optionsConfig.selection.selected !== 'undefined' ? optionsConfig.selection.selected : false), selection = _f[0], setSelection = _f[1];
41532
- var _g = useState(Boolean(optionsConfig) && typeof optionsConfig !== 'undefined' &&
41533
- typeof optionsConfig.subscribe !== 'undefined' &&
41534
- typeof optionsConfig.subscribe.selected !== 'undefined' ? optionsConfig.subscribe.selected : false), subscribe = _g[0], setSubscribe = _g[1];
41535
- var _h = useState(Boolean(optionsConfig) && typeof optionsConfig !== 'undefined' &&
41536
- typeof optionsConfig.preview !== 'undefined' &&
41537
- typeof optionsConfig.preview.selected !== 'undefined' ? optionsConfig.preview.selected : false), preview = _h[0], setPreview = _h[1];
41528
+ var _f = useState(performance.now().toString()), key = _f[0], setKey = _f[1];
41529
+ var _g = useState(false), isClicked = _g[0], setIsClicked = _g[1];
41530
+ var _h = useState(), selection = _h[0], setSelection = _h[1];
41531
+ var _j = useState(), subscribe = _j[0], setSubscribe = _j[1];
41532
+ var _k = useState(), preview = _k[0], setPreview = _k[1];
41533
+ // Config only on bootstrap
41534
+ var initialConfig = useMemo(function () {
41535
+ if (!optionsConfig)
41536
+ return undefined;
41537
+ return optionsConfig;
41538
+ }, []);
41538
41539
  // pollination-react-io hooks
41539
- var _j = useGetHbjson(), host = _j.host, hbjson = _j.hbjson, getHbjson = _j.getHbjson;
41540
+ var _l = useGetHbjson(), host = _l.host, hbjson = _l.hbjson, getHbjson = _l.getHbjson;
41540
41541
  // set selection and subscribe on props change
41541
41542
  useEffect(function () {
41542
- if (!optionsConfig)
41543
+ if (!initialConfig)
41543
41544
  return;
41544
- var sel = Boolean(optionsConfig) && typeof optionsConfig !== 'undefined' &&
41545
- typeof optionsConfig.selection !== 'undefined' &&
41546
- typeof optionsConfig.selection.selected !== 'undefined' ? optionsConfig.selection.selected : false;
41547
- var sub = Boolean(optionsConfig) && typeof optionsConfig !== 'undefined' &&
41548
- typeof optionsConfig.subscribe !== 'undefined' &&
41549
- typeof optionsConfig.subscribe.selected !== 'undefined' ? optionsConfig.subscribe.selected : false;
41545
+ var sel = Boolean(initialConfig) && typeof initialConfig !== 'undefined' &&
41546
+ typeof initialConfig.selection !== 'undefined' &&
41547
+ typeof initialConfig.selection.selected !== 'undefined' ? initialConfig.selection.selected : false;
41548
+ var sub = Boolean(initialConfig) && typeof initialConfig !== 'undefined' &&
41549
+ typeof initialConfig.subscribe !== 'undefined' &&
41550
+ typeof initialConfig.subscribe.selected !== 'undefined' ? initialConfig.subscribe.selected : false;
41550
41551
  // Do not trigger prev props - for streamlit
41551
41552
  setSelection(sel);
41552
41553
  setSubscribe(sub);
41553
- }, [optionsConfig]);
41554
+ }, [initialConfig]);
41554
41555
  useEffect(function () {
41555
- if (!hbjson)
41556
+ // Send data only after the first click
41557
+ if (!hbjson || !isClicked)
41556
41558
  return;
41557
41559
  onChange && onChange(new File([hbjson], "Model_linked_from_".concat(host, ".hbjson")));
41558
41560
  if (onChange) {
@@ -41611,6 +41613,7 @@ var GetModel = function (_a) {
41611
41613
  : (React__default.createElement(SettingsButton, { onClick: function () {
41612
41614
  if (!getHbjson)
41613
41615
  return;
41616
+ setIsClicked(true);
41614
41617
  getHbjson(key, selection, true);
41615
41618
  }, disabled: !getHbjson,
41616
41619
  // @ts-ignore
@@ -41654,12 +41657,12 @@ var GetModel = function (_a) {
41654
41657
  },
41655
41658
  },
41656
41659
  ].filter(function (o) {
41657
- if (!optionsConfig)
41660
+ if (!initialConfig)
41658
41661
  return true;
41659
- return typeof optionsConfig[o.id] === 'undefined' ? true :
41660
- typeof optionsConfig[o.id].show === 'undefined' ? true : optionsConfig[o.id].show;
41662
+ return typeof initialConfig[o.id] === 'undefined' ? true :
41663
+ typeof initialConfig[o.id].show === 'undefined' ? true : initialConfig[o.id].show;
41661
41664
  }),
41662
- }] : undefined, asButtons: true, label: buttonLabel, helpText: showHelpText && "Get ".concat(selection ? 'selected ' : '', " model").concat(subscribe ? ' continuously' : '', "."), icon: hbjson ? React__default.createElement(CheckCircle$1, null) : undefined })));
41665
+ }] : undefined, asButtons: true, label: buttonLabel, helpText: showHelpText && "Get ".concat(selection ? 'selected ' : '', " model").concat(subscribe ? ' continuously' : '', "."), icon: useIcon && ((isClicked && hbjson) ? React__default.createElement(CheckCircle$1, null) : undefined) })));
41663
41666
  };
41664
41667
 
41665
41668
  var getFileIcon$2 = function (type, disabled) {
@@ -47697,22 +47700,28 @@ var GetGeometry = function (_a) {
47697
47700
  var _g = useState(), selection = _g[0], setSelection = _g[1];
47698
47701
  var _h = useState(), subscribe = _h[0], setSubscribe = _h[1];
47699
47702
  var _j = useState(), preview = _j[0], setPreview = _j[1];
47703
+ // Config only on bootstrap
47704
+ var initialConfig = useMemo(function () {
47705
+ if (!optionsConfig)
47706
+ return undefined;
47707
+ return optionsConfig;
47708
+ }, []);
47700
47709
  // pollination-react-io hooks
47701
47710
  var _k = useGetGeometry(), host = _k.host, geometry = _k.geometry, getGeometry = _k.getGeometry;
47702
47711
  // set selection and subscribe on props change
47703
47712
  useEffect(function () {
47704
- if (!optionsConfig)
47713
+ if (!initialConfig)
47705
47714
  return;
47706
- var sel = Boolean(optionsConfig) && typeof optionsConfig !== 'undefined' &&
47707
- typeof optionsConfig.selection !== 'undefined' &&
47708
- typeof optionsConfig.selection.selected !== 'undefined' ? optionsConfig.selection.selected : false;
47709
- var sub = Boolean(optionsConfig) && typeof optionsConfig !== 'undefined' &&
47710
- typeof optionsConfig.subscribe !== 'undefined' &&
47711
- typeof optionsConfig.subscribe.selected !== 'undefined' ? optionsConfig.subscribe.selected : false;
47715
+ var sel = Boolean(initialConfig) && typeof initialConfig !== 'undefined' &&
47716
+ typeof initialConfig.selection !== 'undefined' &&
47717
+ typeof initialConfig.selection.selected !== 'undefined' ? initialConfig.selection.selected : false;
47718
+ var sub = Boolean(initialConfig) && typeof initialConfig !== 'undefined' &&
47719
+ typeof initialConfig.subscribe !== 'undefined' &&
47720
+ typeof initialConfig.subscribe.selected !== 'undefined' ? initialConfig.subscribe.selected : false;
47712
47721
  // Do not trigger prev props - for streamlit
47713
47722
  setSelection(sel);
47714
47723
  setSubscribe(sub);
47715
- }, [optionsConfig]);
47724
+ }, [initialConfig]);
47716
47725
  useEffect(function () {
47717
47726
  // Send data only after the first click
47718
47727
  if (!geometry || !setParentState || !isClicked)
@@ -47763,7 +47772,7 @@ var GetGeometry = function (_a) {
47763
47772
  setKey(performance.now().toString());
47764
47773
  }
47765
47774
  }, [selection]);
47766
- return (React__default.createElement(SettingsButton, { icon: useIcon && undefined, onClick: function () {
47775
+ return (React__default.createElement(SettingsButton, { icon: useIcon && ((isClicked && geometry) ? React__default.createElement(CheckCircle$1, null) : undefined), onClick: function () {
47767
47776
  if (!getGeometry)
47768
47777
  return;
47769
47778
  setIsClicked(true);
@@ -47810,10 +47819,10 @@ var GetGeometry = function (_a) {
47810
47819
  },
47811
47820
  },
47812
47821
  ].filter(function (o) {
47813
- if (!optionsConfig)
47822
+ if (!initialConfig)
47814
47823
  return true;
47815
- return typeof optionsConfig[o.id] === 'undefined' ? true :
47816
- typeof optionsConfig[o.id].show === 'undefined' ? true : optionsConfig[o.id].show;
47824
+ return typeof initialConfig[o.id] === 'undefined' ? true :
47825
+ typeof initialConfig[o.id].show === 'undefined' ? true : initialConfig[o.id].show;
47817
47826
  }),
47818
47827
  }] : undefined, asButtons: true, label: buttonLabel, helpText: "Get ".concat(selection ? 'selected ' : '', " geometry").concat(subscribe ? ' continuously' : '', ".") }));
47819
47828
  };