pollination-react-io 1.92.4 → 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.
package/build/index.js CHANGED
@@ -41549,37 +41549,39 @@ var GetModelActions$1;
41549
41549
  })(GetModelActions$1 || (GetModelActions$1 = {}));
41550
41550
 
41551
41551
  var GetModel = function (_a) {
41552
- 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;
41552
+ 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;
41553
41553
  var subscribeRef = React.useRef();
41554
41554
  var sendHbjson = useSendHbjson().sendHbjson;
41555
- var _e = React.useState(performance.now().toString()), key = _e[0], setKey = _e[1];
41556
- var _f = React.useState(Boolean(optionsConfig) && typeof optionsConfig !== 'undefined' &&
41557
- typeof optionsConfig.selection !== 'undefined' &&
41558
- typeof optionsConfig.selection.selected !== 'undefined' ? optionsConfig.selection.selected : false), selection = _f[0], setSelection = _f[1];
41559
- var _g = React.useState(Boolean(optionsConfig) && typeof optionsConfig !== 'undefined' &&
41560
- typeof optionsConfig.subscribe !== 'undefined' &&
41561
- typeof optionsConfig.subscribe.selected !== 'undefined' ? optionsConfig.subscribe.selected : false), subscribe = _g[0], setSubscribe = _g[1];
41562
- var _h = React.useState(Boolean(optionsConfig) && typeof optionsConfig !== 'undefined' &&
41563
- typeof optionsConfig.preview !== 'undefined' &&
41564
- typeof optionsConfig.preview.selected !== 'undefined' ? optionsConfig.preview.selected : false), preview = _h[0], setPreview = _h[1];
41555
+ var _f = React.useState(performance.now().toString()), key = _f[0], setKey = _f[1];
41556
+ var _g = React.useState(false), isClicked = _g[0], setIsClicked = _g[1];
41557
+ var _h = React.useState(), selection = _h[0], setSelection = _h[1];
41558
+ var _j = React.useState(), subscribe = _j[0], setSubscribe = _j[1];
41559
+ var _k = React.useState(), preview = _k[0], setPreview = _k[1];
41560
+ // Config only on bootstrap
41561
+ var initialConfig = React.useMemo(function () {
41562
+ if (!optionsConfig)
41563
+ return undefined;
41564
+ return optionsConfig;
41565
+ }, []);
41565
41566
  // pollination-react-io hooks
41566
- var _j = useGetHbjson(), host = _j.host, hbjson = _j.hbjson, getHbjson = _j.getHbjson;
41567
+ var _l = useGetHbjson(), host = _l.host, hbjson = _l.hbjson, getHbjson = _l.getHbjson;
41567
41568
  // set selection and subscribe on props change
41568
41569
  React.useEffect(function () {
41569
- if (!optionsConfig)
41570
+ if (!initialConfig)
41570
41571
  return;
41571
- var sel = Boolean(optionsConfig) && typeof optionsConfig !== 'undefined' &&
41572
- typeof optionsConfig.selection !== 'undefined' &&
41573
- typeof optionsConfig.selection.selected !== 'undefined' ? optionsConfig.selection.selected : false;
41574
- var sub = Boolean(optionsConfig) && typeof optionsConfig !== 'undefined' &&
41575
- typeof optionsConfig.subscribe !== 'undefined' &&
41576
- typeof optionsConfig.subscribe.selected !== 'undefined' ? optionsConfig.subscribe.selected : false;
41572
+ var sel = Boolean(initialConfig) && typeof initialConfig !== 'undefined' &&
41573
+ typeof initialConfig.selection !== 'undefined' &&
41574
+ typeof initialConfig.selection.selected !== 'undefined' ? initialConfig.selection.selected : false;
41575
+ var sub = Boolean(initialConfig) && typeof initialConfig !== 'undefined' &&
41576
+ typeof initialConfig.subscribe !== 'undefined' &&
41577
+ typeof initialConfig.subscribe.selected !== 'undefined' ? initialConfig.subscribe.selected : false;
41577
41578
  // Do not trigger prev props - for streamlit
41578
41579
  setSelection(sel);
41579
41580
  setSubscribe(sub);
41580
- }, [optionsConfig]);
41581
+ }, [initialConfig]);
41581
41582
  React.useEffect(function () {
41582
- if (!hbjson)
41583
+ // Send data only after the first click
41584
+ if (!hbjson || !isClicked)
41583
41585
  return;
41584
41586
  onChange && onChange(new File([hbjson], "Model_linked_from_".concat(host, ".hbjson")));
41585
41587
  if (onChange) {
@@ -41638,6 +41640,7 @@ var GetModel = function (_a) {
41638
41640
  : (React__default["default"].createElement(SettingsButton, { onClick: function () {
41639
41641
  if (!getHbjson)
41640
41642
  return;
41643
+ setIsClicked(true);
41641
41644
  getHbjson(key, selection, true);
41642
41645
  }, disabled: !getHbjson,
41643
41646
  // @ts-ignore
@@ -41681,12 +41684,12 @@ var GetModel = function (_a) {
41681
41684
  },
41682
41685
  },
41683
41686
  ].filter(function (o) {
41684
- if (!optionsConfig)
41687
+ if (!initialConfig)
41685
41688
  return true;
41686
- return typeof optionsConfig[o.id] === 'undefined' ? true :
41687
- typeof optionsConfig[o.id].show === 'undefined' ? true : optionsConfig[o.id].show;
41689
+ return typeof initialConfig[o.id] === 'undefined' ? true :
41690
+ typeof initialConfig[o.id].show === 'undefined' ? true : initialConfig[o.id].show;
41688
41691
  }),
41689
- }] : undefined, asButtons: true, label: buttonLabel, helpText: showHelpText && "Get ".concat(selection ? 'selected ' : '', " model").concat(subscribe ? ' continuously' : '', "."), icon: hbjson ? React__default["default"].createElement(CheckCircle$1, null) : undefined })));
41692
+ }] : undefined, asButtons: true, label: buttonLabel, helpText: showHelpText && "Get ".concat(selection ? 'selected ' : '', " model").concat(subscribe ? ' continuously' : '', "."), icon: useIcon && ((isClicked && hbjson) ? React__default["default"].createElement(CheckCircle$1, null) : undefined) })));
41690
41693
  };
41691
41694
 
41692
41695
  var getFileIcon$2 = function (type, disabled) {
@@ -47796,7 +47799,7 @@ var GetGeometry = function (_a) {
47796
47799
  setKey(performance.now().toString());
47797
47800
  }
47798
47801
  }, [selection]);
47799
- return (React__default["default"].createElement(SettingsButton, { icon: useIcon && undefined, onClick: function () {
47802
+ return (React__default["default"].createElement(SettingsButton, { icon: useIcon && ((isClicked && geometry) ? React__default["default"].createElement(CheckCircle$1, null) : undefined), onClick: function () {
47800
47803
  if (!getGeometry)
47801
47804
  return;
47802
47805
  setIsClicked(true);