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.
@@ -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) {
@@ -47769,7 +47772,7 @@ var GetGeometry = function (_a) {
47769
47772
  setKey(performance.now().toString());
47770
47773
  }
47771
47774
  }, [selection]);
47772
- 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 () {
47773
47776
  if (!getGeometry)
47774
47777
  return;
47775
47778
  setIsClicked(true);