@uniformdev/mesh-sdk-react 20.73.0 → 20.74.1

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/dist/index.js CHANGED
@@ -2021,9 +2021,9 @@ function $isTargetWithinDecorator(target) {
2021
2021
  }
2022
2022
 
2023
2023
  // src/components/Variables/InputVariables.tsx
2024
- var import_react30 = require("@emotion/react");
2024
+ var import_react31 = require("@emotion/react");
2025
2025
  var import_design_system9 = require("@uniformdev/design-system");
2026
- var import_react31 = require("react");
2026
+ var import_react32 = require("react");
2027
2027
  var import_uuid = require("uuid");
2028
2028
 
2029
2029
  // src/components/Variables/composer/EditorRefPlugin.tsx
@@ -2494,7 +2494,7 @@ var import_LexicalAutoFocusPlugin = require("@lexical/react/LexicalAutoFocusPlug
2494
2494
  var import_LexicalClearEditorPlugin = require("@lexical/react/LexicalClearEditorPlugin");
2495
2495
  var import_LexicalComposer = require("@lexical/react/LexicalComposer");
2496
2496
  var import_LexicalOnChangePlugin = require("@lexical/react/LexicalOnChangePlugin");
2497
- var import_react28 = require("react");
2497
+ var import_react29 = require("react");
2498
2498
 
2499
2499
  // src/components/Variables/composer/DisablePlugin.tsx
2500
2500
  var import_LexicalComposerContext7 = require("@lexical/react/LexicalComposerContext");
@@ -2521,6 +2521,13 @@ function SingleLineTextPlugin() {
2521
2521
  return null;
2522
2522
  }
2523
2523
 
2524
+ // src/components/Variables/toolbox/useVariablesComposerFlushPending.ts
2525
+ var import_react28 = require("react");
2526
+ var VariablesComposerFlushPendingContext = (0, import_react28.createContext)(false);
2527
+ function useVariablesComposerFlushPending() {
2528
+ return (0, import_react28.useContext)(VariablesComposerFlushPendingContext);
2529
+ }
2530
+
2524
2531
  // src/components/Variables/toolbox/VariablesComposer.tsx
2525
2532
  var import_jsx_runtime25 = require("@emotion/react/jsx-runtime");
2526
2533
  function VariablesComposer(props) {
@@ -2534,8 +2541,9 @@ function VariablesComposer(props) {
2534
2541
  autoFocus,
2535
2542
  ...variablesPluginProps
2536
2543
  } = props;
2537
- const [lastEmittedValue, setLastEmittedValue] = (0, import_react28.useState)(value);
2538
- const editorConfig = (0, import_react28.useMemo)(
2544
+ const [lastEmittedValue, setLastEmittedValue] = (0, import_react29.useState)(value);
2545
+ const [flushPending, setFlushPending] = (0, import_react29.useState)(false);
2546
+ const editorConfig = (0, import_react29.useMemo)(
2539
2547
  () => ({
2540
2548
  namespace: "uniform",
2541
2549
  onError(error) {
@@ -2547,8 +2555,26 @@ function VariablesComposer(props) {
2547
2555
  // oxlint-disable-next-line react/exhaustive-deps
2548
2556
  []
2549
2557
  );
2550
- const editorState = (0, import_react28.useRef)(void 0);
2551
- const updateTimeout = (0, import_react28.useRef)(void 0);
2558
+ const editorState = (0, import_react29.useRef)(void 0);
2559
+ const updateTimeout = (0, import_react29.useRef)(void 0);
2560
+ const flushDepsRef = (0, import_react29.useRef)({ onChange, lastEmittedValue });
2561
+ flushDepsRef.current = { onChange, lastEmittedValue };
2562
+ (0, import_react29.useEffect)(
2563
+ () => () => {
2564
+ if (!updateTimeout.current) {
2565
+ return;
2566
+ }
2567
+ clearTimeout(updateTimeout.current);
2568
+ const { onChange: emit, lastEmittedValue: lastEmitted } = flushDepsRef.current;
2569
+ const valueToEmit = editorState.current ? serializeVariablesEditorState(editorState.current) : void 0;
2570
+ const shouldEmit = editorState.current != null && valueToEmit !== lastEmitted;
2571
+ if (!shouldEmit) {
2572
+ return;
2573
+ }
2574
+ queueMicrotask(() => emit(valueToEmit));
2575
+ },
2576
+ []
2577
+ );
2552
2578
  if (typeof document === "undefined") return null;
2553
2579
  return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(import_LexicalComposer.LexicalComposer, { initialConfig: editorConfig, children: [
2554
2580
  /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
@@ -2560,6 +2586,7 @@ function VariablesComposer(props) {
2560
2586
  if (updateTimeout.current) {
2561
2587
  clearTimeout(updateTimeout.current);
2562
2588
  }
2589
+ setFlushPending(true);
2563
2590
  updateTimeout.current = window.setTimeout(() => {
2564
2591
  if (editorState.current) {
2565
2592
  const valueToEmit = serializeVariablesEditorState(editorState.current);
@@ -2568,6 +2595,8 @@ function VariablesComposer(props) {
2568
2595
  onChange(valueToEmit);
2569
2596
  }
2570
2597
  }
2598
+ setFlushPending(false);
2599
+ updateTimeout.current = void 0;
2571
2600
  }, 400);
2572
2601
  }
2573
2602
  }
@@ -2577,7 +2606,7 @@ function VariablesComposer(props) {
2577
2606
  /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(VariablesPlugin, { ...variablesPluginProps }),
2578
2607
  /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(DisablePlugin, { disabled }),
2579
2608
  /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_jsx_runtime25.Fragment, { children: autoFocus ? /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_LexicalAutoFocusPlugin.AutoFocusPlugin, {}) : null }),
2580
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_jsx_runtime25.Fragment, { children })
2609
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(VariablesComposerFlushPendingContext.Provider, { value: flushPending, children })
2581
2610
  ] });
2582
2611
  }
2583
2612
 
@@ -2590,18 +2619,27 @@ var import_LexicalHistoryPlugin = require("@lexical/react/LexicalHistoryPlugin")
2590
2619
  var import_LexicalPlainTextPlugin = require("@lexical/react/LexicalPlainTextPlugin");
2591
2620
  var import_utils4 = require("@lexical/utils");
2592
2621
  var import_lexical9 = require("lexical");
2593
- var import_react29 = require("react");
2622
+ var import_react30 = require("react");
2594
2623
  var import_jsx_runtime26 = require("@emotion/react/jsx-runtime");
2595
2624
  function VariablesComposerInput({
2596
2625
  css: css24,
2597
2626
  placeholder,
2598
2627
  ...contentEditableProps
2599
2628
  }) {
2629
+ const flushPending = useVariablesComposerFlushPending();
2600
2630
  return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("div", { children: [
2601
2631
  /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2602
2632
  import_LexicalPlainTextPlugin.PlainTextPlugin,
2603
2633
  {
2604
- contentEditable: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_LexicalContentEditable.ContentEditable, { ...contentEditableProps, placeholder: null, "aria-placeholder": void 0 }),
2634
+ contentEditable: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2635
+ import_LexicalContentEditable.ContentEditable,
2636
+ {
2637
+ ...contentEditableProps,
2638
+ "data-flush-pending": flushPending,
2639
+ placeholder: null,
2640
+ "aria-placeholder": void 0
2641
+ }
2642
+ ),
2605
2643
  placeholder: placeholder ? /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_jsx_runtime26.Fragment, { children: placeholder }) : null,
2606
2644
  ErrorBoundary: import_LexicalErrorBoundary.LexicalErrorBoundary
2607
2645
  }
@@ -2612,7 +2650,7 @@ function VariablesComposerInput({
2612
2650
  }
2613
2651
  function RichishCopyAndPastePlugin() {
2614
2652
  const [editor] = (0, import_LexicalComposerContext9.useLexicalComposerContext)();
2615
- (0, import_react29.useEffect)(() => {
2653
+ (0, import_react30.useEffect)(() => {
2616
2654
  return (0, import_utils4.mergeRegister)(
2617
2655
  editor.registerCommand(
2618
2656
  import_lexical9.COPY_COMMAND,
@@ -2719,7 +2757,7 @@ function InputVariables(props) {
2719
2757
  singleTokenMode,
2720
2758
  disableVariableDisplayNames
2721
2759
  } = props;
2722
- const [finalId] = (0, import_react31.useState)(id != null ? id : (() => (0, import_uuid.v4)()));
2760
+ const [finalId] = (0, import_react32.useState)(id != null ? id : (() => (0, import_uuid.v4)()));
2723
2761
  const { dispatch, canDispatch, isEditing } = useVariables(true);
2724
2762
  const { disableVariablesForReals, hadVariablesInValue, sharedMenuProps } = useInputVariablesState(props);
2725
2763
  const useInputWithNoVariables = Boolean(inputWhenNoVariables && !hadVariablesInValue);
@@ -2738,7 +2776,7 @@ function InputVariables(props) {
2738
2776
  {
2739
2777
  align: "center",
2740
2778
  gap: "xs",
2741
- css: import_react30.css`
2779
+ css: import_react31.css`
2742
2780
  position: relative;
2743
2781
  & > div:first-of-type {
2744
2782
  flex-grow: 1;
@@ -2867,7 +2905,7 @@ function InputVariablesOverlayMenu({
2867
2905
  var import_CgUsbC2 = require("@react-icons/all-files/cg/CgUsbC");
2868
2906
  var import_canvas7 = require("@uniformdev/canvas");
2869
2907
  var import_design_system10 = require("@uniformdev/design-system");
2870
- var import_react32 = require("react");
2908
+ var import_react33 = require("react");
2871
2909
  var import_jsx_runtime28 = require("@emotion/react/jsx-runtime");
2872
2910
  function ParameterConnectionIndicator({
2873
2911
  children,
@@ -2878,7 +2916,7 @@ function ParameterConnectionIndicator({
2878
2916
  overrideMenuButtonParentMargin,
2879
2917
  renderMenuInPortal = false
2880
2918
  }) {
2881
- const hasVariablesInValue = (0, import_react32.useMemo)(() => {
2919
+ const hasVariablesInValue = (0, import_react33.useMemo)(() => {
2882
2920
  let result = false;
2883
2921
  (0, import_canvas7.bindVariablesToObject)({
2884
2922
  value,
@@ -2923,21 +2961,21 @@ function ParameterConnectionIndicator({
2923
2961
 
2924
2962
  // src/components/Variables/ParameterOrSingleVariable.tsx
2925
2963
  var import_design_system11 = require("@uniformdev/design-system");
2926
- var import_react34 = require("react");
2964
+ var import_react35 = require("react");
2927
2965
 
2928
2966
  // src/components/Variables/composer/OnDisconnectPlugin.tsx
2929
2967
  var import_LexicalComposerContext10 = require("@lexical/react/LexicalComposerContext");
2930
2968
  var import_utils5 = require("@lexical/utils");
2931
2969
  var import_lexical10 = require("lexical");
2932
- var import_react33 = require("react");
2970
+ var import_react34 = require("react");
2933
2971
  function OnDisconnectPlugin({
2934
2972
  onDisconnect
2935
2973
  }) {
2936
2974
  const [editor] = (0, import_LexicalComposerContext10.useLexicalComposerContext)();
2937
2975
  const { variables } = useVariables(true);
2938
- const variablesRef = (0, import_react33.useRef)(variables);
2976
+ const variablesRef = (0, import_react34.useRef)(variables);
2939
2977
  variablesRef.current = variables;
2940
- (0, import_react33.useEffect)(() => {
2978
+ (0, import_react34.useEffect)(() => {
2941
2979
  return (0, import_utils5.mergeRegister)(
2942
2980
  editor.registerCommand(
2943
2981
  DISCONNECT_VARIABLE_COMMAND,
@@ -2982,7 +3020,7 @@ function ParameterOrSingleVariable(props) {
2982
3020
  hasVariablesInValue,
2983
3021
  setHadVariablesInValue
2984
3022
  } = useInputVariablesState(props);
2985
- const handleDisconnect = (0, import_react34.useCallback)(
3023
+ const handleDisconnect = (0, import_react35.useCallback)(
2986
3024
  (variable) => {
2987
3025
  setHadVariablesInValue(false);
2988
3026
  if (onDisconnect) {
@@ -3035,7 +3073,7 @@ function ParameterOrSingleVariable(props) {
3035
3073
  }
3036
3074
 
3037
3075
  // src/components/Variables/ParameterVariables.tsx
3038
- var import_react35 = require("@emotion/react");
3076
+ var import_react36 = require("@emotion/react");
3039
3077
  var import_design_system12 = require("@uniformdev/design-system");
3040
3078
  var import_jsx_runtime30 = require("@emotion/react/jsx-runtime");
3041
3079
  function ParameterVariables(props) {
@@ -3092,8 +3130,8 @@ function ParameterVariables(props) {
3092
3130
  "data-text-value": value,
3093
3131
  css: [
3094
3132
  input2,
3095
- typeof multiLine === "number" ? inputMultiLine(multiLine) : multiLine === true ? inputMultiLine(2) : import_react35.css``,
3096
- inputCss != null ? inputCss : import_react35.css``
3133
+ typeof multiLine === "number" ? inputMultiLine(multiLine) : multiLine === true ? inputMultiLine(2) : import_react36.css``,
3134
+ inputCss != null ? inputCss : import_react36.css``
3097
3135
  ]
3098
3136
  }
3099
3137
  )
@@ -3129,18 +3167,18 @@ ${prettifyBindExpression(bindExpression)}`
3129
3167
  }
3130
3168
 
3131
3169
  // src/components/Variables/VariablesList.tsx
3132
- var import_react38 = require("@emotion/react");
3170
+ var import_react39 = require("@emotion/react");
3133
3171
  var import_dnd2 = require("@hello-pangea/dnd");
3134
3172
  var import_CgTrash = require("@react-icons/all-files/cg/CgTrash");
3135
3173
  var import_design_system13 = require("@uniformdev/design-system");
3136
3174
 
3137
3175
  // src/components/DragDropContext.tsx
3138
3176
  var import_dnd = require("@hello-pangea/dnd");
3139
- var import_react36 = require("react");
3177
+ var import_react37 = require("react");
3140
3178
  var import_react_use = require("react-use");
3141
3179
  var import_jsx_runtime31 = require("@emotion/react/jsx-runtime");
3142
3180
  function DragDropContext({ children, ...props }) {
3143
- const [isReady, setIsReady] = (0, import_react36.useState)(false);
3181
+ const [isReady, setIsReady] = (0, import_react37.useState)(false);
3144
3182
  (0, import_react_use.useDebounce)(
3145
3183
  () => {
3146
3184
  setIsReady(true);
@@ -3152,8 +3190,8 @@ function DragDropContext({ children, ...props }) {
3152
3190
  }
3153
3191
 
3154
3192
  // src/components/Variables/styles/VariablesList.styles.ts
3155
- var import_react37 = require("@emotion/react");
3156
- var tableRow = (isDragging) => import_react37.css`
3193
+ var import_react38 = require("@emotion/react");
3194
+ var tableRow = (isDragging) => import_react38.css`
3157
3195
  position: relative;
3158
3196
  ${isDragging ? `
3159
3197
  display: table;
@@ -3161,7 +3199,7 @@ var tableRow = (isDragging) => import_react37.css`
3161
3199
  top: auto !important;
3162
3200
  ` : void 0}
3163
3201
  `;
3164
- var tableCellDragIcon = import_react37.css`
3202
+ var tableCellDragIcon = import_react38.css`
3165
3203
  &::after {
3166
3204
  content: '';
3167
3205
  display: block;
@@ -3179,7 +3217,7 @@ var tableCellDragIcon = import_react37.css`
3179
3217
  opacity: 1;
3180
3218
  }
3181
3219
  `;
3182
- var variableName = import_react37.css`
3220
+ var variableName = import_react38.css`
3183
3221
  border: none;
3184
3222
  font-weight: var(--fw-medium);
3185
3223
  padding: 0;
@@ -3189,7 +3227,7 @@ var variableName = import_react37.css`
3189
3227
  white-space: nowrap;
3190
3228
  max-width: 20ch;
3191
3229
  `;
3192
- var variableValue = import_react37.css`
3230
+ var variableValue = import_react38.css`
3193
3231
  overflow: hidden;
3194
3232
  text-overflow: ellipsis;
3195
3233
  white-space: nowrap;
@@ -3268,7 +3306,7 @@ function VariablesList() {
3268
3306
  title: `delete ${text}`,
3269
3307
  css: [
3270
3308
  import_design_system13.button,
3271
- import_react38.css`
3309
+ import_react39.css`
3272
3310
  background: transparent;
3273
3311
  `
3274
3312
  ],
@@ -3398,9 +3436,9 @@ function TextVariableRenderer({ definition, value, setValue }) {
3398
3436
  }
3399
3437
 
3400
3438
  // src/components/Request/RequestBody.tsx
3401
- var import_react40 = require("@emotion/react");
3439
+ var import_react41 = require("@emotion/react");
3402
3440
  var import_design_system15 = require("@uniformdev/design-system");
3403
- var import_react41 = require("react");
3441
+ var import_react42 = require("react");
3404
3442
 
3405
3443
  // src/components/Request/RequestProvider.tsx
3406
3444
  var React4 = __toESM(require("react"));
@@ -3488,11 +3526,11 @@ function useRequest() {
3488
3526
  }
3489
3527
 
3490
3528
  // src/components/Request/styles/Request.styles.ts
3491
- var import_react39 = require("@emotion/react");
3492
- var innerContentStyles = import_react39.css`
3529
+ var import_react40 = require("@emotion/react");
3530
+ var innerContentStyles = import_react40.css`
3493
3531
  background: var(--white);
3494
3532
  `;
3495
- var requestTypeContainer = (bgColor) => import_react39.css`
3533
+ var requestTypeContainer = (bgColor) => import_react40.css`
3496
3534
  align-items: start;
3497
3535
  background: ${bgColor};
3498
3536
  display: grid;
@@ -3530,11 +3568,11 @@ var LANGUAGE_TO_CONTENT_TYPE = {
3530
3568
  };
3531
3569
  function RequestBody() {
3532
3570
  const { request, dispatch } = useRequest();
3533
- const [language, setLanguage] = (0, import_react41.useState)("json");
3571
+ const [language, setLanguage] = (0, import_react42.useState)("json");
3534
3572
  return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(
3535
3573
  "div",
3536
3574
  {
3537
- css: import_react40.css`
3575
+ css: import_react41.css`
3538
3576
  background: var(--white);
3539
3577
  `,
3540
3578
  children: [
@@ -3542,7 +3580,7 @@ function RequestBody() {
3542
3580
  RequestTypeContainer,
3543
3581
  {
3544
3582
  bgColor: "var(--gray-100)",
3545
- css: import_react40.css`
3583
+ css: import_react41.css`
3546
3584
  padding: var(--spacing-sm) var(--spacing-base);
3547
3585
  `,
3548
3586
  children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
@@ -3819,8 +3857,8 @@ function RequestParameters({
3819
3857
  }
3820
3858
 
3821
3859
  // src/components/Request/RequestUrl.tsx
3822
- var import_react42 = require("@emotion/react");
3823
- var import_react43 = require("react");
3860
+ var import_react43 = require("@emotion/react");
3861
+ var import_react44 = require("react");
3824
3862
 
3825
3863
  // src/components/Request/urlEncodeRequestParameter.ts
3826
3864
  function urlEncodeRequestUrl(url, varValues) {
@@ -3846,7 +3884,7 @@ function RequestUrl() {
3846
3884
  var _a, _b;
3847
3885
  const { variables } = useVariables();
3848
3886
  const { request } = useRequest();
3849
- const mergedParameters = (0, import_react43.useMemo)(() => {
3887
+ const mergedParameters = (0, import_react44.useMemo)(() => {
3850
3888
  var _a2;
3851
3889
  if (!((_a2 = request.baseRequest) == null ? void 0 : _a2.parameters)) {
3852
3890
  return request.parameters;
@@ -3856,7 +3894,7 @@ function RequestUrl() {
3856
3894
  return /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(
3857
3895
  "small",
3858
3896
  {
3859
- css: import_react42.css`
3897
+ css: import_react43.css`
3860
3898
  display: inline-block;
3861
3899
  margin-bottom: var(--spacing-xs);
3862
3900
  word-break: break-word;
@@ -4091,11 +4129,11 @@ function convertRequestDataToDataType(dataType, requestData) {
4091
4129
 
4092
4130
  // src/components/Delegation/DelegationGate.tsx
4093
4131
  var import_design_system19 = require("@uniformdev/design-system");
4094
- var import_react45 = require("react");
4132
+ var import_react46 = require("react");
4095
4133
 
4096
4134
  // src/components/Delegation/styles/DelegationGate.style.ts
4097
- var import_react44 = require("@emotion/react");
4098
- var delegationGateStyle = import_react44.css`
4135
+ var import_react45 = require("@emotion/react");
4136
+ var delegationGateStyle = import_react45.css`
4099
4137
  min-height: 12rem;
4100
4138
  width: 100%;
4101
4139
  `;
@@ -4109,7 +4147,7 @@ function DefaultDelegationDisabled() {
4109
4147
  return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_design_system19.Callout, { type: "caution", title: "Feature unavailable", children: "This app requires permissions that are not currently enabled. Please contact your Uniform administrator to enable identity delegation for this integration." });
4110
4148
  }
4111
4149
  function DefaultDelegationError({ error }) {
4112
- (0, import_react45.useEffect)(() => {
4150
+ (0, import_react46.useEffect)(() => {
4113
4151
  console.error("Delegation connection failed", error);
4114
4152
  }, [error]);
4115
4153
  return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_design_system19.Callout, { type: "error", title: "Connection error", children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("p", { children: "Failed to connect to Uniform. Try again, or contact your administrator if the problem persists." }) });
@@ -4144,7 +4182,7 @@ function DelegationGate({
4144
4182
  }
4145
4183
 
4146
4184
  // src/components/Delegation/DelegationProvider.tsx
4147
- var import_react46 = require("react");
4185
+ var import_react47 = require("react");
4148
4186
  var import_jsx_runtime46 = require("@emotion/react/jsx-runtime");
4149
4187
  var DelegationDisabledError = class extends Error {
4150
4188
  constructor() {
@@ -4161,13 +4199,13 @@ function DelegationProvider({
4161
4199
  revalidateAfterMs = DEFAULT_REVALIDATE_AFTER_MS,
4162
4200
  children
4163
4201
  }) {
4164
- const [status, setStatus] = (0, import_react46.useState)("idle");
4165
- const [error, setError] = (0, import_react46.useState)(null);
4166
- const mountedRef = (0, import_react46.useRef)(true);
4167
- const statusRef = (0, import_react46.useRef)("idle");
4202
+ const [status, setStatus] = (0, import_react47.useState)("idle");
4203
+ const [error, setError] = (0, import_react47.useState)(null);
4204
+ const mountedRef = (0, import_react47.useRef)(true);
4205
+ const statusRef = (0, import_react47.useRef)("idle");
4168
4206
  statusRef.current = status;
4169
- const acquirePromiseRef = (0, import_react46.useRef)(null);
4170
- const acquire = (0, import_react46.useCallback)(() => {
4207
+ const acquirePromiseRef = (0, import_react47.useRef)(null);
4208
+ const acquire = (0, import_react47.useCallback)(() => {
4171
4209
  if (acquirePromiseRef.current) {
4172
4210
  return acquirePromiseRef.current;
4173
4211
  }
@@ -4215,7 +4253,7 @@ function DelegationProvider({
4215
4253
  });
4216
4254
  return acquirePromiseRef.current;
4217
4255
  }, [sdk, onSessionToken, checkActive]);
4218
- (0, import_react46.useEffect)(() => {
4256
+ (0, import_react47.useEffect)(() => {
4219
4257
  mountedRef.current = true;
4220
4258
  void acquire().catch(() => {
4221
4259
  });
@@ -4223,7 +4261,7 @@ function DelegationProvider({
4223
4261
  mountedRef.current = false;
4224
4262
  };
4225
4263
  }, [acquire]);
4226
- const revalidate = (0, import_react46.useCallback)(async () => {
4264
+ const revalidate = (0, import_react47.useCallback)(async () => {
4227
4265
  if (acquirePromiseRef.current) {
4228
4266
  return;
4229
4267
  }
@@ -4242,7 +4280,7 @@ function DelegationProvider({
4242
4280
  } catch (e) {
4243
4281
  }
4244
4282
  }, [checkActive, acquire]);
4245
- (0, import_react46.useEffect)(() => {
4283
+ (0, import_react47.useEffect)(() => {
4246
4284
  if (!revalidateOnFocus) {
4247
4285
  return;
4248
4286
  }
@@ -4268,7 +4306,7 @@ function DelegationProvider({
4268
4306
  document.removeEventListener("visibilitychange", handleVisibilityChange);
4269
4307
  };
4270
4308
  }, [revalidateOnFocus, revalidateAfterMs, revalidate]);
4271
- const value = (0, import_react46.useMemo)(() => ({ status, error, reacquire: acquire }), [status, error, acquire]);
4309
+ const value = (0, import_react47.useMemo)(() => ({ status, error, reacquire: acquire }), [status, error, acquire]);
4272
4310
  return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(DelegationContext.Provider, { value, children });
4273
4311
  }
4274
4312
 
@@ -4277,12 +4315,12 @@ var import_design_system20 = require("@uniformdev/design-system");
4277
4315
 
4278
4316
  // src/hooks/useInitializeUniformMeshSdk.ts
4279
4317
  var import_mesh_sdk2 = require("@uniformdev/mesh-sdk");
4280
- var import_react47 = require("react");
4318
+ var import_react48 = require("react");
4281
4319
  var useInitializeUniformMeshSdk = ({ autoResizingDisabled } = {}) => {
4282
- const [error, setError] = (0, import_react47.useState)();
4283
- const [sdk, setSdk] = (0, import_react47.useState)();
4284
- const initializationInProgress = (0, import_react47.useRef)(false);
4285
- (0, import_react47.useEffect)(
4320
+ const [error, setError] = (0, import_react48.useState)();
4321
+ const [sdk, setSdk] = (0, import_react48.useState)();
4322
+ const initializationInProgress = (0, import_react48.useRef)(false);
4323
+ (0, import_react48.useEffect)(
4286
4324
  () => {
4287
4325
  if (typeof window === "undefined" || sdk) {
4288
4326
  return;
@@ -4340,7 +4378,7 @@ var MeshApp = ({
4340
4378
  };
4341
4379
 
4342
4380
  // src/components/ObjectSearch/DataRefreshButton.tsx
4343
- var import_react48 = require("@emotion/react");
4381
+ var import_react49 = require("@emotion/react");
4344
4382
  var import_design_system21 = require("@uniformdev/design-system");
4345
4383
  var import_jsx_runtime48 = require("@emotion/react/jsx-runtime");
4346
4384
  var DataRefreshButton = ({
@@ -4353,7 +4391,7 @@ var DataRefreshButton = ({
4353
4391
  !isLoading ? null : /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
4354
4392
  import_design_system21.LoadingIndicator,
4355
4393
  {
4356
- css: import_react48.css`
4394
+ css: import_react49.css`
4357
4395
  ${isLoading ? "opacity: 0.2;" : void 0}
4358
4396
  `
4359
4397
  }
@@ -4363,15 +4401,15 @@ var DataRefreshButton = ({
4363
4401
  };
4364
4402
 
4365
4403
  // src/components/ObjectSearch/ObjectSearchContainer.tsx
4366
- var import_react51 = require("@emotion/react");
4404
+ var import_react52 = require("@emotion/react");
4367
4405
  var import_canvas9 = require("@uniformdev/canvas");
4368
4406
  var import_design_system24 = require("@uniformdev/design-system");
4369
4407
 
4370
4408
  // src/components/ObjectSearch/hooks/ObjectSearchContext.tsx
4371
4409
  var import_canvas8 = require("@uniformdev/canvas");
4372
- var import_react49 = require("react");
4410
+ var import_react50 = require("react");
4373
4411
  var import_jsx_runtime49 = require("@emotion/react/jsx-runtime");
4374
- var ObjectSearchContext = (0, import_react49.createContext)({
4412
+ var ObjectSearchContext = (0, import_react50.createContext)({
4375
4413
  onSetQuery: () => {
4376
4414
  },
4377
4415
  onSelectItem: () => {
@@ -4392,16 +4430,16 @@ var ObjectSearchProvider = ({
4392
4430
  children,
4393
4431
  defaultQuery
4394
4432
  }) => {
4395
- const [query, setQuery] = (0, import_react49.useState)({
4433
+ const [query, setQuery] = (0, import_react50.useState)({
4396
4434
  contentType: "",
4397
4435
  keyword: "",
4398
4436
  ...defaultQuery
4399
4437
  });
4400
4438
  const { flatVariables } = useVariables(true);
4401
- const querySearchDeferred = (0, import_react49.useDeferredValue)(query);
4402
- const [selectedItems, setSelectedItems] = (0, import_react49.useState)(currentlySelectedItems != null ? currentlySelectedItems : []);
4403
- const [list, setList] = (0, import_react49.useState)({});
4404
- const onSetQuery = (0, import_react49.useCallback)(
4439
+ const querySearchDeferred = (0, import_react50.useDeferredValue)(query);
4440
+ const [selectedItems, setSelectedItems] = (0, import_react50.useState)(currentlySelectedItems != null ? currentlySelectedItems : []);
4441
+ const [list, setList] = (0, import_react50.useState)({});
4442
+ const onSetQuery = (0, import_react50.useCallback)(
4405
4443
  (value2) => {
4406
4444
  if (Array.isArray(value2.contentType) && value2.contentType.length > 0) {
4407
4445
  return setQuery({
@@ -4413,7 +4451,7 @@ var ObjectSearchProvider = ({
4413
4451
  },
4414
4452
  [setQuery]
4415
4453
  );
4416
- const onSelectItem = (0, import_react49.useCallback)(
4454
+ const onSelectItem = (0, import_react50.useCallback)(
4417
4455
  (selectedResult) => {
4418
4456
  if (Array.isArray(selectedResult)) {
4419
4457
  setSelectedItems(selectedResult);
@@ -4427,17 +4465,17 @@ var ObjectSearchProvider = ({
4427
4465
  },
4428
4466
  [setSelectedItems, selectedItems]
4429
4467
  );
4430
- const onRemoveAllSelectedItems = (0, import_react49.useCallback)(() => {
4468
+ const onRemoveAllSelectedItems = (0, import_react50.useCallback)(() => {
4431
4469
  setSelectedItems([]);
4432
4470
  }, [setSelectedItems]);
4433
- const onSetList = (0, import_react49.useCallback)(
4471
+ const onSetList = (0, import_react50.useCallback)(
4434
4472
  (value2) => {
4435
4473
  setList(value2);
4436
4474
  },
4437
4475
  [setList]
4438
4476
  );
4439
- const boundQuery = (0, import_react49.useMemo)(() => bindQuery(query, flatVariables), [query, flatVariables]);
4440
- const value = (0, import_react49.useMemo)(
4477
+ const boundQuery = (0, import_react50.useMemo)(() => bindQuery(query, flatVariables), [query, flatVariables]);
4478
+ const value = (0, import_react50.useMemo)(
4441
4479
  () => ({
4442
4480
  boundQuery,
4443
4481
  onSetQuery,
@@ -4464,7 +4502,7 @@ var ObjectSearchProvider = ({
4464
4502
  return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(ObjectSearchContext.Provider, { value, children });
4465
4503
  };
4466
4504
  function useObjectSearchContext() {
4467
- return (0, import_react49.useContext)(ObjectSearchContext);
4505
+ return (0, import_react50.useContext)(ObjectSearchContext);
4468
4506
  }
4469
4507
  function bindQuery(query, inputs) {
4470
4508
  const { result, errors } = (0, import_canvas8.bindVariablesToObject)({
@@ -4482,9 +4520,9 @@ function bindQuery(query, inputs) {
4482
4520
  var import_design_system23 = require("@uniformdev/design-system");
4483
4521
 
4484
4522
  // src/components/ObjectSearch/styles/ObjectSearchListItem.styles.ts
4485
- var import_react50 = require("@emotion/react");
4523
+ var import_react51 = require("@emotion/react");
4486
4524
  var import_design_system22 = require("@uniformdev/design-system");
4487
- var ObjectListItemContainer = import_react50.css`
4525
+ var ObjectListItemContainer = import_react51.css`
4488
4526
  align-items: center;
4489
4527
  border: 1px solid var(--gray-300);
4490
4528
  border-radius: var(--rounded-base);
@@ -4493,11 +4531,11 @@ var ObjectListItemContainer = import_react50.css`
4493
4531
  grid-template-columns: 1fr auto;
4494
4532
  padding: var(--spacing-sm);
4495
4533
  `;
4496
- var ObjectListItemContainerDisabled = import_react50.css`
4534
+ var ObjectListItemContainerDisabled = import_react51.css`
4497
4535
  opacity: var(--opacity-50);
4498
4536
  pointer-events: none;
4499
4537
  `;
4500
- var ObjectListItemLoading = import_react50.css`
4538
+ var ObjectListItemLoading = import_react51.css`
4501
4539
  animation: ${import_design_system22.skeletonLoading} 1s linear infinite alternate;
4502
4540
  border-color: transparent;
4503
4541
  min-height: 42px;
@@ -4521,37 +4559,37 @@ var ObjectListItemLoading = import_react50.css`
4521
4559
  width: 1rem;
4522
4560
  }
4523
4561
  `;
4524
- var ObjectListItemHeadingGroup = import_react50.css`
4562
+ var ObjectListItemHeadingGroup = import_react51.css`
4525
4563
  align-items: center;
4526
4564
  display: grid;
4527
4565
  `;
4528
- var ObjectListItemThumbnail = import_react50.css`
4566
+ var ObjectListItemThumbnail = import_react51.css`
4529
4567
  width: 30px;
4530
4568
  height: 30px;
4531
4569
  object-fit: cover;
4532
4570
  `;
4533
- var ObjectListItemTitle = import_react50.css`
4571
+ var ObjectListItemTitle = import_react51.css`
4534
4572
  color: var(--typography-base);
4535
4573
  display: block;
4536
4574
  font-size: var(--fs-sm);
4537
4575
  `;
4538
- var ObjectListItemSubtitle = import_react50.css`
4576
+ var ObjectListItemSubtitle = import_react51.css`
4539
4577
  color: var(--gray-500);
4540
4578
  display: block;
4541
4579
  font-size: var(--fs-xs);
4542
4580
  line-height: 1;
4543
4581
  `;
4544
- var ObjectListItemInfoContainer = import_react50.css`
4582
+ var ObjectListItemInfoContainer = import_react51.css`
4545
4583
  align-items: center;
4546
4584
  display: flex;
4547
4585
  gap: var(--spacing-sm);
4548
4586
  justify-content: center;
4549
4587
  `;
4550
- var ObjectListItemControlledContent = import_react50.css`
4588
+ var ObjectListItemControlledContent = import_react51.css`
4551
4589
  display: flex;
4552
4590
  gap: var(--spacing-sm);
4553
4591
  `;
4554
- var ObjectListItemUnControlledContent = import_react50.css`
4592
+ var ObjectListItemUnControlledContent = import_react51.css`
4555
4593
  margin-top: var(--spacing-sm);
4556
4594
  grid-column: 1 / -1;
4557
4595
  `;
@@ -4644,7 +4682,7 @@ var ObjectSearchContainer = ({
4644
4682
  import_design_system24.ScrollableList,
4645
4683
  {
4646
4684
  role: "list",
4647
- css: import_react51.css`
4685
+ css: import_react52.css`
4648
4686
  > div {
4649
4687
  max-height: ${selectedListItems.length === 0 ? "50vh" : "184px"};
4650
4688
  }
@@ -4716,11 +4754,11 @@ var DefaultResultList = () => {
4716
4754
 
4717
4755
  // src/components/ObjectSearch/ObjectSearchFilter.tsx
4718
4756
  var import_design_system25 = require("@uniformdev/design-system");
4719
- var import_react53 = require("react");
4757
+ var import_react54 = require("react");
4720
4758
 
4721
4759
  // src/components/ObjectSearch/styles/ObjectSearchFilterContainer.styles.ts
4722
- var import_react52 = require("@emotion/react");
4723
- var ObjectSearchFilterContainerLabel = import_react52.css`
4760
+ var import_react53 = require("@emotion/react");
4761
+ var ObjectSearchFilterContainerLabel = import_react53.css`
4724
4762
  align-items: center;
4725
4763
  display: flex;
4726
4764
  font-size: var(--fs-sm);
@@ -4728,11 +4766,11 @@ var ObjectSearchFilterContainerLabel = import_react52.css`
4728
4766
  line-height: 1rem;
4729
4767
  margin-bottom: var(--spacing-sm);
4730
4768
  `;
4731
- var ObjectSearchFilterContainer = import_react52.css`
4769
+ var ObjectSearchFilterContainer = import_react53.css`
4732
4770
  display: grid;
4733
4771
  gap: var(--spacing-base);
4734
4772
  `;
4735
- var ObjectSearchFilterGrid = (gridColumns) => import_react52.css`
4773
+ var ObjectSearchFilterGrid = (gridColumns) => import_react53.css`
4736
4774
  display: grid;
4737
4775
  grid-template-columns: ${gridColumns};
4738
4776
  gap: var(--spacing-base);
@@ -4750,7 +4788,7 @@ var ObjectSearchFilter = ({
4750
4788
  }) => {
4751
4789
  var _a, _b;
4752
4790
  const { query, onSetQuery } = useObjectSearchContext();
4753
- const [searchState, setSearchState] = (0, import_react53.useState)({
4791
+ const [searchState, setSearchState] = (0, import_react54.useState)({
4754
4792
  contentType: (_a = query.contentType) != null ? _a : "",
4755
4793
  keyword: (_b = query.keyword) != null ? _b : ""
4756
4794
  });
@@ -4760,7 +4798,7 @@ var ObjectSearchFilter = ({
4760
4798
  });
4761
4799
  onSetQuery({ ...query, ...value });
4762
4800
  };
4763
- const memoizedSelectOptions = (0, import_react53.useMemo)(() => {
4801
+ const memoizedSelectOptions = (0, import_react54.useMemo)(() => {
4764
4802
  if (!requireContentType && !(selectOptions == null ? void 0 : selectOptions.length)) {
4765
4803
  return [];
4766
4804
  }
@@ -4822,9 +4860,9 @@ function Image({ src, alt, className }) {
4822
4860
  }
4823
4861
 
4824
4862
  // src/components/ObjectSearch/styles/ObjectSearchResultItemButton.styles.ts
4825
- var import_react54 = require("@emotion/react");
4863
+ var import_react55 = require("@emotion/react");
4826
4864
  var import_design_system26 = require("@uniformdev/design-system");
4827
- var ButtonStyles = import_react54.css`
4865
+ var ButtonStyles = import_react55.css`
4828
4866
  ${import_design_system26.button}
4829
4867
  background: transparent;
4830
4868
  border: 1px solid var(--typography-base);
@@ -4852,7 +4890,7 @@ var ButtonStyles = import_react54.css`
4852
4890
  text-decoration: none;
4853
4891
  }
4854
4892
  `;
4855
- var ButtonIcon = import_react54.css`
4893
+ var ButtonIcon = import_react55.css`
4856
4894
  width: 1rem;
4857
4895
  height: 1rem;
4858
4896
  `;
@@ -4881,8 +4919,8 @@ var LinkButton = ({
4881
4919
  };
4882
4920
 
4883
4921
  // src/components/ObjectSearch/styles/ObjectSearchResultItem.styles.ts
4884
- var import_react55 = require("@emotion/react");
4885
- var ObjectSearchResultItemContainer = import_react55.css`
4922
+ var import_react56 = require("@emotion/react");
4923
+ var ObjectSearchResultItemContainer = import_react56.css`
4886
4924
  align-items: center;
4887
4925
  border: 1px solid var(--gray-300);
4888
4926
  border-radius: var(--rounded-base);
@@ -4898,7 +4936,7 @@ var ObjectSearchResultItemContainer = import_react55.css`
4898
4936
  }
4899
4937
  }
4900
4938
  `;
4901
- var ObjectSearchDragHandle = import_react55.css`
4939
+ var ObjectSearchDragHandle = import_react56.css`
4902
4940
  border-left: 2px dotted var(--gray-300);
4903
4941
  border-right: 2px dotted var(--gray-300);
4904
4942
  position: absolute;
@@ -4907,40 +4945,40 @@ var ObjectSearchDragHandle = import_react55.css`
4907
4945
  transition: opacity var(--duration-fast) var(--timing-ease-out);
4908
4946
  opacity: 0;
4909
4947
  `;
4910
- var ObjectSearchResultItemSubtitle = import_react55.css`
4948
+ var ObjectSearchResultItemSubtitle = import_react56.css`
4911
4949
  color: var(--gray-500);
4912
4950
  display: block;
4913
4951
  font-size: var(--fs-xs);
4914
4952
  line-height: 1;
4915
4953
  `;
4916
- var ObjectSearchResultItemTitle = import_react55.css`
4954
+ var ObjectSearchResultItemTitle = import_react56.css`
4917
4955
  align-items: center;
4918
4956
  color: var(--typography-base);
4919
4957
  display: flex;
4920
4958
  gap: var(--spacing-xs);
4921
4959
  `;
4922
- var ObjectSearchResultItemTimeStamp = import_react55.css`
4960
+ var ObjectSearchResultItemTimeStamp = import_react56.css`
4923
4961
  color: var(--gray-500);
4924
4962
  font-size: var(--fs-xs);
4925
4963
  `;
4926
- var ObjectSearchResultItemTitleLink = import_react55.css`
4964
+ var ObjectSearchResultItemTitleLink = import_react56.css`
4927
4965
  text-decoration: none;
4928
4966
  color: var(--primary-action-default);
4929
4967
  font-size: var(--fs-sm);
4930
4968
  `;
4931
- var ObjectSearchAuthorStateGroup = import_react55.css`
4969
+ var ObjectSearchAuthorStateGroup = import_react56.css`
4932
4970
  align-items: center;
4933
4971
  display: flex;
4934
4972
  gap: var(--spacing-sm);
4935
4973
  `;
4936
- var ObjectSearchUpdateGroup = import_react55.css`
4974
+ var ObjectSearchUpdateGroup = import_react56.css`
4937
4975
  display: grid;
4938
4976
  `;
4939
- var ObjectSearchContentContainer = import_react55.css`
4977
+ var ObjectSearchContentContainer = import_react56.css`
4940
4978
  display: flex;
4941
4979
  gap: var(--spacing-base);
4942
4980
  `;
4943
- var ObjectSearchImage = import_react55.css`
4981
+ var ObjectSearchImage = import_react56.css`
4944
4982
  width: 56px;
4945
4983
  height: 56px;
4946
4984
  object-fit: cover;
@@ -5043,26 +5081,26 @@ var import_dnd3 = require("@hello-pangea/dnd");
5043
5081
  var import_design_system28 = require("@uniformdev/design-system");
5044
5082
 
5045
5083
  // src/components/ObjectSearch/styles/ObjectSearchResultList.styles.ts
5046
- var import_react56 = require("@emotion/react");
5047
- var ObjectSearchResultListContainer = import_react56.css`
5084
+ var import_react57 = require("@emotion/react");
5085
+ var ObjectSearchResultListContainer = import_react57.css`
5048
5086
  align-items: center;
5049
5087
  display: flex;
5050
5088
  gap: var(--spacing-sm);
5051
5089
  justify-content: space-between;
5052
5090
  `;
5053
- var ObjectSearchDragContainer = import_react56.css`
5091
+ var ObjectSearchDragContainer = import_react57.css`
5054
5092
  margin: 0 0 var(--spacing-sm);
5055
5093
  `;
5056
- var ObjectSearchContainerDragging = import_react56.css`
5094
+ var ObjectSearchContainerDragging = import_react57.css`
5057
5095
  box-shadow: var(--shadow-base);
5058
5096
  opacity: var(--opacity-50);
5059
5097
  `;
5060
- var ObjectSearchResultListCounterContainer = import_react56.css`
5098
+ var ObjectSearchResultListCounterContainer = import_react57.css`
5061
5099
  align-items: center;
5062
5100
  display: flex;
5063
5101
  gap: var(--spacing-sm);
5064
5102
  `;
5065
- var ObjectSearchResultListTitle = import_react56.css`
5103
+ var ObjectSearchResultListTitle = import_react57.css`
5066
5104
  font-weight: var(--fw-bold);
5067
5105
  line-height: 1;
5068
5106
  `;
@@ -5169,7 +5207,7 @@ function ObjectSearchResultList({
5169
5207
 
5170
5208
  // src/components/ObjectSearch/QueryFilter.tsx
5171
5209
  var import_design_system29 = require("@uniformdev/design-system");
5172
- var import_react57 = require("react");
5210
+ var import_react58 = require("react");
5173
5211
  var import_jsx_runtime58 = require("@emotion/react/jsx-runtime");
5174
5212
  var QueryFilter = ({
5175
5213
  requireContentType,
@@ -5198,7 +5236,7 @@ var QueryFilter = ({
5198
5236
  }) => {
5199
5237
  var _a, _b, _c, _d, _e, _f, _g;
5200
5238
  const { query, onSetQuery } = useObjectSearchContext();
5201
- const [queryState, setQueryState] = (0, import_react57.useState)({
5239
+ const [queryState, setQueryState] = (0, import_react58.useState)({
5202
5240
  contentType: (_a = query.contentType) != null ? _a : "",
5203
5241
  keyword: (_b = query.keyword) != null ? _b : "",
5204
5242
  count: (_c = query.count) != null ? _c : 5,
@@ -5209,7 +5247,7 @@ var QueryFilter = ({
5209
5247
  setQueryState((prev) => ({ ...prev, ...value }));
5210
5248
  onSetQuery({ ...query, ...value });
5211
5249
  };
5212
- (0, import_react57.useEffect)(() => {
5250
+ (0, import_react58.useEffect)(() => {
5213
5251
  onSetQuery(queryState);
5214
5252
  }, []);
5215
5253
  return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("fieldset", { children: [
@@ -5335,7 +5373,7 @@ var QueryFilter = ({
5335
5373
  };
5336
5374
 
5337
5375
  // src/components/ParamTypeDynamicDataProvider.tsx
5338
- var import_react58 = require("react");
5376
+ var import_react59 = require("react");
5339
5377
  var import_jsx_runtime59 = require("@emotion/react/jsx-runtime");
5340
5378
  function ParamTypeDynamicDataProvider(props) {
5341
5379
  const { children } = props;
@@ -5344,7 +5382,7 @@ function ParamTypeDynamicDataProvider(props) {
5344
5382
  } = useMeshLocation("paramType");
5345
5383
  const dynamicInputsAsVariables = useDynamicInputsAsVariables(dynamicInputs);
5346
5384
  const connectedDataAsVariables = useConnectedDataAsVariables(connectedData);
5347
- const variables = (0, import_react58.useMemo)(
5385
+ const variables = (0, import_react59.useMemo)(
5348
5386
  () => ({ ...connectedDataAsVariables, ...dynamicInputsAsVariables }),
5349
5387
  [dynamicInputsAsVariables, connectedDataAsVariables]
5350
5388
  );
@@ -5357,9 +5395,9 @@ var JsonMeshVariableEditor = ({
5357
5395
  variable,
5358
5396
  context
5359
5397
  }) => {
5360
- const sillyRef = (0, import_react58.useRef)(false);
5398
+ const sillyRef = (0, import_react59.useRef)(false);
5361
5399
  const { editConnectedData } = useMeshLocation("paramType");
5362
- (0, import_react58.useEffect)(() => {
5400
+ (0, import_react59.useEffect)(() => {
5363
5401
  if (sillyRef.current) {
5364
5402
  return;
5365
5403
  }
@@ -5829,7 +5867,7 @@ var MULTI_SELECT_OPERATORS = [
5829
5867
 
5830
5868
  // src/components/SearchAndFilter/editors/DateEditor.tsx
5831
5869
  var import_design_system30 = require("@uniformdev/design-system");
5832
- var import_react59 = require("react");
5870
+ var import_react60 = require("react");
5833
5871
  var import_react_use2 = require("react-use");
5834
5872
  var import_jsx_runtime60 = require("@emotion/react/jsx-runtime");
5835
5873
  var DateEditor = ({
@@ -5840,7 +5878,7 @@ var DateEditor = ({
5840
5878
  readOnly,
5841
5879
  valueTestId
5842
5880
  }) => {
5843
- const [innerValue, setInnerValue] = (0, import_react59.useState)(value != null ? value : "");
5881
+ const [innerValue, setInnerValue] = (0, import_react60.useState)(value != null ? value : "");
5844
5882
  (0, import_react_use2.useDebounce)(() => onChange(innerValue), 500, [innerValue]);
5845
5883
  return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
5846
5884
  import_design_system30.Input,
@@ -5859,7 +5897,7 @@ var DateEditor = ({
5859
5897
 
5860
5898
  // src/components/SearchAndFilter/editors/DateRangeEditor.tsx
5861
5899
  var import_design_system32 = require("@uniformdev/design-system");
5862
- var import_react60 = require("react");
5900
+ var import_react61 = require("react");
5863
5901
  var import_react_use3 = require("react-use");
5864
5902
 
5865
5903
  // src/components/SearchAndFilter/editors/shared/ErrorContainer.tsx
@@ -5895,9 +5933,9 @@ var DateRangeEditor = ({
5895
5933
  readOnly,
5896
5934
  valueTestId
5897
5935
  }) => {
5898
- const [minDateValue, setMinDateValue] = (0, import_react60.useState)(value ? value[0] : "");
5899
- const [maxDateValue, setMaxDateValue] = (0, import_react60.useState)(value ? value[1] : "");
5900
- const [error, setError] = (0, import_react60.useState)("");
5936
+ const [minDateValue, setMinDateValue] = (0, import_react61.useState)(value ? value[0] : "");
5937
+ const [maxDateValue, setMaxDateValue] = (0, import_react61.useState)(value ? value[1] : "");
5938
+ const [error, setError] = (0, import_react61.useState)("");
5901
5939
  (0, import_react_use3.useDebounce)(
5902
5940
  () => {
5903
5941
  if (minDateValue && maxDateValue && !error) {
@@ -5909,7 +5947,7 @@ var DateRangeEditor = ({
5909
5947
  500,
5910
5948
  [minDateValue, maxDateValue]
5911
5949
  );
5912
- (0, import_react60.useEffect)(() => {
5950
+ (0, import_react61.useEffect)(() => {
5913
5951
  if (!minDateValue || !maxDateValue) {
5914
5952
  return;
5915
5953
  }
@@ -5981,7 +6019,7 @@ var DateRangeEditor = ({
5981
6019
 
5982
6020
  // src/components/SearchAndFilter/editors/FilterMultiChoiceEditor.tsx
5983
6021
  var import_design_system33 = require("@uniformdev/design-system");
5984
- var import_react61 = require("react");
6022
+ var import_react62 = require("react");
5985
6023
 
5986
6024
  // src/components/SearchAndFilter/editors/shared/readOnlyAttributes.tsx
5987
6025
  var readOnlyAttributes = {
@@ -6002,7 +6040,7 @@ var FilterMultiChoiceEditor = ({
6002
6040
  }) => {
6003
6041
  const readOnlyProps = readOnly ? readOnlyAttributes : {};
6004
6042
  const isClearable = !readOnly || !disabled;
6005
- const { groupedOptions, selectedOptions } = (0, import_react61.useMemo)(
6043
+ const { groupedOptions, selectedOptions } = (0, import_react62.useMemo)(
6006
6044
  () => (0, import_design_system33.convertComboBoxGroupsToSelectableGroups)({ options: options != null ? options : [], selectedItems: new Set(value) }),
6007
6045
  [options, value]
6008
6046
  );
@@ -6036,7 +6074,7 @@ var FilterMultiChoiceEditor = ({
6036
6074
 
6037
6075
  // src/components/SearchAndFilter/editors/FilterSingleChoiceEditor.tsx
6038
6076
  var import_design_system34 = require("@uniformdev/design-system");
6039
- var import_react62 = require("react");
6077
+ var import_react63 = require("react");
6040
6078
  var import_jsx_runtime64 = require("@emotion/react/jsx-runtime");
6041
6079
  var FilterSingleChoiceEditor = ({
6042
6080
  options,
@@ -6047,7 +6085,7 @@ var FilterSingleChoiceEditor = ({
6047
6085
  valueTestId
6048
6086
  }) => {
6049
6087
  const readOnlyProps = readOnly ? readOnlyAttributes : {};
6050
- const { groupedOptions, selectedOptions } = (0, import_react62.useMemo)(
6088
+ const { groupedOptions, selectedOptions } = (0, import_react63.useMemo)(
6051
6089
  () => (0, import_design_system34.convertComboBoxGroupsToSelectableGroups)({
6052
6090
  options: options != null ? options : [],
6053
6091
  selectedItems: new Set(value ? [String(value)] : void 0),
@@ -6085,7 +6123,7 @@ var FilterSingleChoiceEditor = ({
6085
6123
 
6086
6124
  // src/components/SearchAndFilter/editors/NumberEditor.tsx
6087
6125
  var import_design_system35 = require("@uniformdev/design-system");
6088
- var import_react63 = require("react");
6126
+ var import_react64 = require("react");
6089
6127
  var import_react_use4 = require("react-use");
6090
6128
  var import_jsx_runtime65 = require("@emotion/react/jsx-runtime");
6091
6129
  var NumberEditor = ({
@@ -6096,7 +6134,7 @@ var NumberEditor = ({
6096
6134
  readOnly,
6097
6135
  valueTestId
6098
6136
  }) => {
6099
- const [innerValue, setInnerValue] = (0, import_react63.useState)(value != null ? value : "");
6137
+ const [innerValue, setInnerValue] = (0, import_react64.useState)(value != null ? value : "");
6100
6138
  (0, import_react_use4.useDebounce)(() => onChange(innerValue), 500, [innerValue]);
6101
6139
  return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
6102
6140
  import_design_system35.Input,
@@ -6116,7 +6154,7 @@ var NumberEditor = ({
6116
6154
 
6117
6155
  // src/components/SearchAndFilter/editors/NumberRangeEditor.tsx
6118
6156
  var import_design_system36 = require("@uniformdev/design-system");
6119
- var import_react64 = require("react");
6157
+ var import_react65 = require("react");
6120
6158
  var import_react_use5 = require("react-use");
6121
6159
  var import_jsx_runtime66 = require("@emotion/react/jsx-runtime");
6122
6160
  var NumberRangeEditor = ({
@@ -6127,9 +6165,9 @@ var NumberRangeEditor = ({
6127
6165
  readOnly,
6128
6166
  valueTestId
6129
6167
  }) => {
6130
- const [minValue, setMinValue] = (0, import_react64.useState)("");
6131
- const [maxValue, setMaxValue] = (0, import_react64.useState)("");
6132
- const [error, setError] = (0, import_react64.useState)("");
6168
+ const [minValue, setMinValue] = (0, import_react65.useState)("");
6169
+ const [maxValue, setMaxValue] = (0, import_react65.useState)("");
6170
+ const [error, setError] = (0, import_react65.useState)("");
6133
6171
  (0, import_react_use5.useDebounce)(
6134
6172
  () => {
6135
6173
  if (minValue && maxValue && !error) {
@@ -6141,7 +6179,7 @@ var NumberRangeEditor = ({
6141
6179
  500,
6142
6180
  [minValue, maxValue]
6143
6181
  );
6144
- (0, import_react64.useEffect)(() => {
6182
+ (0, import_react65.useEffect)(() => {
6145
6183
  if (!maxValue && !minValue) {
6146
6184
  return;
6147
6185
  }
@@ -6204,7 +6242,7 @@ var NumberRangeEditor = ({
6204
6242
 
6205
6243
  // src/components/SearchAndFilter/editors/StatusMultiEditor.tsx
6206
6244
  var import_design_system38 = require("@uniformdev/design-system");
6207
- var import_react65 = require("react");
6245
+ var import_react66 = require("react");
6208
6246
 
6209
6247
  // src/components/SearchAndFilter/editors/shared/CustomOptions.tsx
6210
6248
  var import_design_system37 = require("@uniformdev/design-system");
@@ -6230,7 +6268,7 @@ var StatusMultiEditor = ({
6230
6268
  valueTestId
6231
6269
  }) => {
6232
6270
  const readOnlyProps = readOnly ? readOnlyAttributes : {};
6233
- const { groupedOptions, selectedOptions } = (0, import_react65.useMemo)(
6271
+ const { groupedOptions, selectedOptions } = (0, import_react66.useMemo)(
6234
6272
  () => (0, import_design_system38.convertComboBoxGroupsToSelectableGroups)({ options: options != null ? options : [], selectedItems: new Set(value) }),
6235
6273
  [options, value]
6236
6274
  );
@@ -6262,7 +6300,7 @@ var StatusMultiEditor = ({
6262
6300
 
6263
6301
  // src/components/SearchAndFilter/editors/StatusSingleEditor.tsx
6264
6302
  var import_design_system39 = require("@uniformdev/design-system");
6265
- var import_react66 = require("react");
6303
+ var import_react67 = require("react");
6266
6304
  var import_jsx_runtime69 = require("@emotion/react/jsx-runtime");
6267
6305
  var StatusSingleEditor = ({
6268
6306
  options,
@@ -6273,7 +6311,7 @@ var StatusSingleEditor = ({
6273
6311
  valueTestId
6274
6312
  }) => {
6275
6313
  const readOnlyProps = readOnly ? readOnlyAttributes : {};
6276
- const { groupedOptions, selectedOptions } = (0, import_react66.useMemo)(
6314
+ const { groupedOptions, selectedOptions } = (0, import_react67.useMemo)(
6277
6315
  () => (0, import_design_system39.convertComboBoxGroupsToSelectableGroups)({
6278
6316
  options: options != null ? options : [],
6279
6317
  selectedItems: new Set(value ? [value] : void 0),
@@ -6310,7 +6348,7 @@ var StatusSingleEditor = ({
6310
6348
 
6311
6349
  // src/components/SearchAndFilter/editors/TextEditor.tsx
6312
6350
  var import_design_system40 = require("@uniformdev/design-system");
6313
- var import_react67 = require("react");
6351
+ var import_react68 = require("react");
6314
6352
  var import_react_use6 = require("react-use");
6315
6353
  var import_jsx_runtime70 = require("@emotion/react/jsx-runtime");
6316
6354
  var TextEditor = ({
@@ -6320,7 +6358,7 @@ var TextEditor = ({
6320
6358
  readOnly,
6321
6359
  valueTestId
6322
6360
  }) => {
6323
- const [innerValue, setInnerValue] = (0, import_react67.useState)(value != null ? value : "");
6361
+ const [innerValue, setInnerValue] = (0, import_react68.useState)(value != null ? value : "");
6324
6362
  (0, import_react_use6.useDebounce)(() => onChange(innerValue), 500, [innerValue]);
6325
6363
  return /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
6326
6364
  import_design_system40.Input,
@@ -6338,7 +6376,7 @@ var TextEditor = ({
6338
6376
 
6339
6377
  // src/components/SearchAndFilter/editors/TextMultiChoiceEditor.tsx
6340
6378
  var import_design_system41 = require("@uniformdev/design-system");
6341
- var import_react68 = require("react");
6379
+ var import_react69 = require("react");
6342
6380
  var import_jsx_runtime71 = require("@emotion/react/jsx-runtime");
6343
6381
  var TextMultiChoiceEditor = ({
6344
6382
  value,
@@ -6349,7 +6387,7 @@ var TextMultiChoiceEditor = ({
6349
6387
  }) => {
6350
6388
  const readOnlyProps = readOnly ? readOnlyAttributes : {};
6351
6389
  const isClearable = !readOnly || !disabled;
6352
- const { groupedOptions, selectedOptions } = (0, import_react68.useMemo)(() => {
6390
+ const { groupedOptions, selectedOptions } = (0, import_react69.useMemo)(() => {
6353
6391
  var _a;
6354
6392
  const coercedValue = typeof value === "string" ? [value] : value != null ? value : [];
6355
6393
  const options = (_a = coercedValue.map((v) => ({ label: v, value: v }))) != null ? _a : [];
@@ -6388,21 +6426,21 @@ var TextMultiChoiceEditor = ({
6388
6426
  var import_design_system43 = require("@uniformdev/design-system");
6389
6427
 
6390
6428
  // src/components/SearchAndFilter/styles/SearchAndFilter.styles.ts
6391
- var import_react69 = require("@emotion/react");
6429
+ var import_react70 = require("@emotion/react");
6392
6430
  var import_design_system42 = require("@uniformdev/design-system");
6393
- var SearchAndFilterControlsWrapper = (gridColumns) => import_react69.css`
6431
+ var SearchAndFilterControlsWrapper = (gridColumns) => import_react70.css`
6394
6432
  align-items: stretch;
6395
6433
  display: grid;
6396
6434
  grid-template-columns: ${gridColumns};
6397
6435
  gap: var(--spacing-sm);
6398
6436
  `;
6399
- var SearchAndFilterOutterControlWrapper = (gridColumns) => import_react69.css`
6437
+ var SearchAndFilterOutterControlWrapper = (gridColumns) => import_react70.css`
6400
6438
  align-items: stretch;
6401
6439
  display: grid;
6402
6440
  grid-template-columns: ${gridColumns};
6403
6441
  gap: var(--spacing-sm);
6404
6442
  `;
6405
- var ConditionalFilterRow = import_react69.css`
6443
+ var ConditionalFilterRow = import_react70.css`
6406
6444
  align-items: baseline;
6407
6445
  display: grid;
6408
6446
  grid-template-columns: 35px 1fr;
@@ -6438,7 +6476,7 @@ var ConditionalFilterRow = import_react69.css`
6438
6476
  animation: ${import_design_system42.fadeInLtr} var(--duration-fast) var(--timing-ease-out);
6439
6477
  }
6440
6478
  `;
6441
- var ConditionalInputRow = import_react69.css`
6479
+ var ConditionalInputRow = import_react70.css`
6442
6480
  display: flex;
6443
6481
  gap: var(--spacing-sm);
6444
6482
  flex-wrap: wrap;
@@ -6462,16 +6500,16 @@ var ConditionalInputRow = import_react69.css`
6462
6500
  }
6463
6501
  }
6464
6502
  `;
6465
- var ConditionalInputRowEmpty = import_react69.css`
6503
+ var ConditionalInputRowEmpty = import_react70.css`
6466
6504
  flex-wrap: nowrap;
6467
6505
  `;
6468
- var SearchInput = import_react69.css`
6506
+ var SearchInput = import_react70.css`
6469
6507
  && {
6470
6508
  max-height: 40px;
6471
6509
  min-height: unset;
6472
6510
  }
6473
6511
  `;
6474
- var BindableKeywordSearchInputStyles = import_react69.css`
6512
+ var BindableKeywordSearchInputStyles = import_react70.css`
6475
6513
  position: relative;
6476
6514
  width: 100%;
6477
6515
 
@@ -6486,19 +6524,19 @@ var BindableKeywordSearchInputStyles = import_react69.css`
6486
6524
  white-space: nowrap;
6487
6525
  }
6488
6526
  `;
6489
- var ClearSearchButtonContainer = import_react69.css`
6527
+ var ClearSearchButtonContainer = import_react70.css`
6490
6528
  align-items: center;
6491
6529
  display: flex;
6492
6530
  position: absolute;
6493
6531
  inset: 0 var(--spacing-lg) 0 auto;
6494
6532
  `;
6495
- var ClearSearchButtonStyles = import_react69.css`
6533
+ var ClearSearchButtonStyles = import_react70.css`
6496
6534
  background: none;
6497
6535
  border: none;
6498
6536
  padding: 0;
6499
6537
  pointer-events: all;
6500
6538
  `;
6501
- var FilterButton = import_react69.css`
6539
+ var FilterButton = import_react70.css`
6502
6540
  align-items: center;
6503
6541
  background: var(--white);
6504
6542
  border: 1px solid var(--gray-300);
@@ -6535,13 +6573,13 @@ var FilterButton = import_react69.css`
6535
6573
  opacity: var(--opacity-50);
6536
6574
  }
6537
6575
  `;
6538
- var FilterButtonText = import_react69.css`
6576
+ var FilterButtonText = import_react70.css`
6539
6577
  overflow: hidden;
6540
6578
  text-overflow: ellipsis;
6541
6579
  white-space: nowrap;
6542
6580
  max-width: 14ch;
6543
6581
  `;
6544
- var FilterButtonSelected = import_react69.css`
6582
+ var FilterButtonSelected = import_react70.css`
6545
6583
  background: var(--gray-100);
6546
6584
  border-color: var(--gray-300);
6547
6585
 
@@ -6549,7 +6587,7 @@ var FilterButtonSelected = import_react69.css`
6549
6587
  color: var(--accent-dark);
6550
6588
  }
6551
6589
  `;
6552
- var FilterButtonWithOptions = import_react69.css`
6590
+ var FilterButtonWithOptions = import_react70.css`
6553
6591
  :where([aria-expanded='true']) {
6554
6592
  background: var(--purple-rain-100);
6555
6593
  border-color: var(--accent-light);
@@ -6561,14 +6599,14 @@ var FilterButtonWithOptions = import_react69.css`
6561
6599
  }
6562
6600
  }
6563
6601
  `;
6564
- var SearchIcon = import_react69.css`
6602
+ var SearchIcon = import_react70.css`
6565
6603
  color: var(--icon-color);
6566
6604
  position: absolute;
6567
6605
  inset: 0 var(--spacing-base) 0 auto;
6568
6606
  margin: auto;
6569
6607
  transition: color var(--duration-fast) var(--timing-ease-out);
6570
6608
  `;
6571
- var AddConditionalBtn = import_react69.css`
6609
+ var AddConditionalBtn = import_react70.css`
6572
6610
  align-items: center;
6573
6611
  background: transparent;
6574
6612
  border: none;
@@ -6587,14 +6625,14 @@ var AddConditionalBtn = import_react69.css`
6587
6625
  color: var(--gray-400);
6588
6626
  }
6589
6627
  `;
6590
- var Title = import_react69.css`
6628
+ var Title = import_react70.css`
6591
6629
  color: var(--typography-light);
6592
6630
 
6593
6631
  &:focus {
6594
6632
  outline: none;
6595
6633
  }
6596
6634
  `;
6597
- var ResetConditionsBtn = import_react69.css`
6635
+ var ResetConditionsBtn = import_react70.css`
6598
6636
  background: transparent;
6599
6637
  border: none;
6600
6638
  color: var(--action-destructive-default);
@@ -6609,7 +6647,7 @@ var ResetConditionsBtn = import_react69.css`
6609
6647
  color: var(--gray-400);
6610
6648
  }
6611
6649
  `;
6612
- var CriteriaGroupOperatorTrigger = import_react69.css`
6650
+ var CriteriaGroupOperatorTrigger = import_react70.css`
6613
6651
  && {
6614
6652
  padding: 0;
6615
6653
  border-radius: var(--rounded-sm);
@@ -6628,13 +6666,13 @@ var CriteriaGroupOperatorTrigger = import_react69.css`
6628
6666
  }
6629
6667
  }
6630
6668
  `;
6631
- var IconBtn = import_react69.css`
6669
+ var IconBtn = import_react70.css`
6632
6670
  align-self: center;
6633
6671
  background: transparent;
6634
6672
  border: none;
6635
6673
  padding: var(--spacing-sm);
6636
6674
  `;
6637
- var SearchAndFilterOptionsContainer = import_react69.css`
6675
+ var SearchAndFilterOptionsContainer = import_react70.css`
6638
6676
  background: var(--gray-50);
6639
6677
  border: 1px solid var(--gray-300);
6640
6678
  border-radius: var(--rounded-base);
@@ -6645,17 +6683,17 @@ var SearchAndFilterOptionsContainer = import_react69.css`
6645
6683
  padding: var(--spacing-md) 0 var(--spacing-base);
6646
6684
  will-change: height;
6647
6685
  `;
6648
- var SearchAndFilterOptionsInnerContainer = import_react69.css`
6686
+ var SearchAndFilterOptionsInnerContainer = import_react70.css`
6649
6687
  display: flex;
6650
6688
  flex-direction: column;
6651
6689
  gap: var(--spacing-sm);
6652
6690
  padding-inline: var(--spacing-md);
6653
6691
  `;
6654
- var SearchAndFilterButtonGroup = import_react69.css`
6692
+ var SearchAndFilterButtonGroup = import_react70.css`
6655
6693
  margin-top: var(--spacing-xs);
6656
6694
  margin-left: calc(56px + var(--spacing-md));
6657
6695
  `;
6658
- var SearchAndFilterAdditionalContainer = import_react69.css`
6696
+ var SearchAndFilterAdditionalContainer = import_react70.css`
6659
6697
  align-items: center;
6660
6698
  border-top: 1px solid var(--gray-300);
6661
6699
  display: flex;
@@ -6701,13 +6739,13 @@ var import_CgClose = require("@react-icons/all-files/cg/CgClose");
6701
6739
  var import_canvas10 = require("@uniformdev/canvas");
6702
6740
  var import_design_system45 = require("@uniformdev/design-system");
6703
6741
  var import_lexical11 = require("lexical");
6704
- var import_react71 = require("react");
6742
+ var import_react72 = require("react");
6705
6743
  var import_react_use7 = require("react-use");
6706
6744
  var import_uuid2 = require("uuid");
6707
6745
 
6708
6746
  // src/components/SearchAndFilter/hooks/useSearchAndFilter.tsx
6709
6747
  var import_design_system44 = require("@uniformdev/design-system");
6710
- var import_react70 = require("react");
6748
+ var import_react71 = require("react");
6711
6749
 
6712
6750
  // src/components/SearchAndFilter/FilterEditor.tsx
6713
6751
  var import_jsx_runtime73 = require("@emotion/react/jsx-runtime");
@@ -6783,7 +6821,7 @@ var bindableFiltersMapper = {
6783
6821
 
6784
6822
  // src/components/SearchAndFilter/hooks/useSearchAndFilter.tsx
6785
6823
  var import_jsx_runtime74 = require("@emotion/react/jsx-runtime");
6786
- var SearchAndFilterContext = (0, import_react70.createContext)({
6824
+ var SearchAndFilterContext = (0, import_react71.createContext)({
6787
6825
  searchTerm: "",
6788
6826
  setSearchTerm: () => {
6789
6827
  },
@@ -6822,17 +6860,17 @@ var SearchAndFilterProvider = ({
6822
6860
  children,
6823
6861
  allowBindingSearchTerm
6824
6862
  }) => {
6825
- const [searchTerm, setSearchTerm] = (0, import_react70.useState)(defaultSearchTerm);
6826
- const deferredSearchTerm = (0, import_react70.useDeferredValue)(searchTerm);
6827
- const [filterVisibility, setFilterVisibility] = (0, import_react70.useState)(alwaysVisible || filterVisible);
6828
- const handleSearchTerm = (0, import_react70.useCallback)(
6863
+ const [searchTerm, setSearchTerm] = (0, import_react71.useState)(defaultSearchTerm);
6864
+ const deferredSearchTerm = (0, import_react71.useDeferredValue)(searchTerm);
6865
+ const [filterVisibility, setFilterVisibility] = (0, import_react71.useState)(alwaysVisible || filterVisible);
6866
+ const handleSearchTerm = (0, import_react71.useCallback)(
6829
6867
  (term) => {
6830
6868
  setSearchTerm(term);
6831
6869
  onSearchChange == null ? void 0 : onSearchChange(term);
6832
6870
  },
6833
6871
  [setSearchTerm, onSearchChange]
6834
6872
  );
6835
- const handleToggleFilterVisibility = (0, import_react70.useCallback)(
6873
+ const handleToggleFilterVisibility = (0, import_react71.useCallback)(
6836
6874
  (visible) => {
6837
6875
  if (alwaysVisible) {
6838
6876
  return;
@@ -6841,10 +6879,10 @@ var SearchAndFilterProvider = ({
6841
6879
  },
6842
6880
  [alwaysVisible]
6843
6881
  );
6844
- const handleAddFilter = (0, import_react70.useCallback)(() => {
6882
+ const handleAddFilter = (0, import_react71.useCallback)(() => {
6845
6883
  onChange([...filters, { field: "", operator: "", value: "" }]);
6846
6884
  }, [filters, onChange]);
6847
- const handleResetFilters = (0, import_react70.useCallback)(() => {
6885
+ const handleResetFilters = (0, import_react71.useCallback)(() => {
6848
6886
  setSearchTerm("");
6849
6887
  if (onResetFilterValues) {
6850
6888
  return onResetFilterValues();
@@ -6852,20 +6890,20 @@ var SearchAndFilterProvider = ({
6852
6890
  onSearchChange == null ? void 0 : onSearchChange("");
6853
6891
  onChange(resetFilterValues);
6854
6892
  }, [onChange, resetFilterValues, onSearchChange, onResetFilterValues]);
6855
- const handleDeleteFilter = (0, import_react70.useCallback)(
6893
+ const handleDeleteFilter = (0, import_react71.useCallback)(
6856
6894
  (index) => {
6857
6895
  const remainingFilters = filters.filter((_, i) => i !== index);
6858
6896
  onChange(remainingFilters);
6859
6897
  },
6860
6898
  [filters, onChange]
6861
6899
  );
6862
- const validFilterQuery = (0, import_react70.useMemo)(() => {
6900
+ const validFilterQuery = (0, import_react71.useMemo)(() => {
6863
6901
  const hasValidFilters = filters.every((f) => f.field && f.operator && f.value);
6864
6902
  if (hasValidFilters) {
6865
6903
  return filters;
6866
6904
  }
6867
6905
  }, [filters]);
6868
- (0, import_react70.useEffect)(() => {
6906
+ (0, import_react71.useEffect)(() => {
6869
6907
  if (filterVisibility) {
6870
6908
  const handleEscKeyFilterClose = (e) => {
6871
6909
  if (e.key === "Escape") {
@@ -6903,7 +6941,7 @@ var SearchAndFilterProvider = ({
6903
6941
  );
6904
6942
  };
6905
6943
  var useSearchAndFilter = () => {
6906
- const value = (0, import_react70.useContext)(SearchAndFilterContext);
6944
+ const value = (0, import_react71.useContext)(SearchAndFilterContext);
6907
6945
  return { ...value };
6908
6946
  };
6909
6947
 
@@ -6921,10 +6959,10 @@ var FilterControls = ({
6921
6959
  searchTerm,
6922
6960
  allowBindingSearchTerm
6923
6961
  } = useSearchAndFilter();
6924
- const editorRef = (0, import_react71.useRef)(null);
6962
+ const editorRef = (0, import_react72.useRef)(null);
6925
6963
  const variableRefernceCountInSearchTerm = (0, import_canvas10.hasReferencedVariables)(searchTerm);
6926
- const [idToResetInputVariables, setIdToResetInputVariables] = (0, import_react71.useState)("data-resource-search-term-input");
6927
- const [localSearchTerm, setLocalSearchTerm] = (0, import_react71.useState)(searchTerm);
6964
+ const [idToResetInputVariables, setIdToResetInputVariables] = (0, import_react72.useState)("data-resource-search-term-input");
6965
+ const [localSearchTerm, setLocalSearchTerm] = (0, import_react72.useState)(searchTerm);
6928
6966
  (0, import_react_use7.useDebounce)(
6929
6967
  () => {
6930
6968
  if (localSearchTerm !== searchTerm) {
@@ -6934,7 +6972,7 @@ var FilterControls = ({
6934
6972
  300,
6935
6973
  [localSearchTerm]
6936
6974
  );
6937
- (0, import_react71.useEffect)(() => {
6975
+ (0, import_react72.useEffect)(() => {
6938
6976
  if (searchTerm === "") {
6939
6977
  setLocalSearchTerm("");
6940
6978
  setIdToResetInputVariables(`data-resource-search-term-input-${(0, import_uuid2.v4)()}`);
@@ -7009,7 +7047,7 @@ var FilterControls = ({
7009
7047
  // src/components/SearchAndFilter/FilterItem.tsx
7010
7048
  var import_CgTrash2 = require("@react-icons/all-files/cg/CgTrash");
7011
7049
  var import_design_system46 = require("@uniformdev/design-system");
7012
- var import_react72 = require("react");
7050
+ var import_react73 = require("react");
7013
7051
 
7014
7052
  // src/components/SearchAndFilter/util/isFilterBindable.ts
7015
7053
  function isFilterBindable(filter, operator) {
@@ -7037,7 +7075,7 @@ var FilterItem = ({
7037
7075
  const operatorLabel = filters[index].operator !== "" ? `operator ${filters[index].operator}` : "unknown operator";
7038
7076
  const metaDataLabel = filters[index].value !== "" ? `value ${filters[index].value}` : "unknown value";
7039
7077
  const metaDataPossibleOptions = (_b = (_a = operatorOptions.find((op) => filters[index].operator === op.value)) == null ? void 0 : _a.editorType) != null ? _b : "singleChoice";
7040
- const { selectedFieldValue, selectedOperatorValue, selectedMetaValue, readOnly, bindable } = (0, import_react72.useMemo)(() => {
7078
+ const { selectedFieldValue, selectedOperatorValue, selectedMetaValue, readOnly, bindable } = (0, import_react73.useMemo)(() => {
7041
7079
  var _a2;
7042
7080
  const currentSelectedFilterGroup = filterOptions.find((item) => {
7043
7081
  var _a3;
@@ -7205,7 +7243,7 @@ var import_design_system48 = require("@uniformdev/design-system");
7205
7243
 
7206
7244
  // src/components/SearchAndFilter/FilterMenu.tsx
7207
7245
  var import_design_system47 = require("@uniformdev/design-system");
7208
- var import_react73 = __toESM(require("react"));
7246
+ var import_react74 = __toESM(require("react"));
7209
7247
  var import_jsx_runtime77 = require("@emotion/react/jsx-runtime");
7210
7248
  var SearchAndFilterOptionsContainer2 = ({
7211
7249
  buttonRow,
@@ -7237,8 +7275,8 @@ var FilterMenu = ({
7237
7275
  resetButtonText = "reset"
7238
7276
  }) => {
7239
7277
  const { filterVisibility, setFilterVisibility, handleResetFilters, filters } = useSearchAndFilter();
7240
- const innerMenuRef = import_react73.default.useRef(null);
7241
- (0, import_react73.useEffect)(() => {
7278
+ const innerMenuRef = import_react74.default.useRef(null);
7279
+ (0, import_react74.useEffect)(() => {
7242
7280
  var _a;
7243
7281
  if (filterVisibility) {
7244
7282
  (_a = innerMenuRef.current) == null ? void 0 : _a.focus();
@@ -7587,17 +7625,17 @@ var SearchAndFilter = ({
7587
7625
 
7588
7626
  // src/components/SearchAndFilter/SearchOnlyFilter.tsx
7589
7627
  var import_design_system51 = require("@uniformdev/design-system");
7590
- var import_react74 = require("react");
7628
+ var import_react75 = require("react");
7591
7629
  var import_react_use8 = require("react-use");
7592
7630
  var import_jsx_runtime81 = require("@emotion/react/jsx-runtime");
7593
- var SearchOnlyContext = (0, import_react74.createContext)({
7631
+ var SearchOnlyContext = (0, import_react75.createContext)({
7594
7632
  searchTerm: "",
7595
7633
  setSearchTerm: () => {
7596
7634
  }
7597
7635
  });
7598
7636
  var SearchOnlyFilter = ({ onSearchChange, maxWidth }) => {
7599
7637
  const { searchTerm, setSearchTerm } = useSearchAndFilter();
7600
- const [localeSearchTerm, setLocaleSearchTerm] = (0, import_react74.useState)("");
7638
+ const [localeSearchTerm, setLocaleSearchTerm] = (0, import_react75.useState)("");
7601
7639
  (0, import_react_use8.useDebounce)(
7602
7640
  () => {
7603
7641
  setSearchTerm(localeSearchTerm);
@@ -7631,9 +7669,9 @@ var SearchOnlyFilter = ({ onSearchChange, maxWidth }) => {
7631
7669
  var import_design_system53 = require("@uniformdev/design-system");
7632
7670
 
7633
7671
  // src/components/SearchAndFilter/styles/SortItems.styles.ts
7634
- var import_react75 = require("@emotion/react");
7672
+ var import_react76 = require("@emotion/react");
7635
7673
  var import_design_system52 = require("@uniformdev/design-system");
7636
- var ConditionalFilterRow2 = import_react75.css`
7674
+ var ConditionalFilterRow2 = import_react76.css`
7637
7675
  display: grid;
7638
7676
  grid-template-columns: 35px 1fr;
7639
7677
  gap: var(--spacing-sm);
@@ -7670,7 +7708,7 @@ var ConditionalFilterRow2 = import_react75.css`
7670
7708
  animation: ${import_design_system52.fadeInLtr} var(--duration-fast) var(--timing-ease-out);
7671
7709
  }
7672
7710
  `;
7673
- var ConditionalInputRow2 = import_react75.css`
7711
+ var ConditionalInputRow2 = import_react76.css`
7674
7712
  display: flex;
7675
7713
  gap: var(--spacing-sm);
7676
7714
  flex-wrap: wrap;
@@ -7693,13 +7731,13 @@ var ConditionalInputRow2 = import_react75.css`
7693
7731
  }
7694
7732
  }
7695
7733
  `;
7696
- var SearchInput2 = import_react75.css`
7734
+ var SearchInput2 = import_react76.css`
7697
7735
  && {
7698
7736
  max-height: 40px;
7699
7737
  min-height: unset;
7700
7738
  }
7701
7739
  `;
7702
- var FilterButton3 = import_react75.css`
7740
+ var FilterButton3 = import_react76.css`
7703
7741
  align-items: center;
7704
7742
  background: var(--white);
7705
7743
  border: 1px solid var(--gray-300);
@@ -7736,13 +7774,13 @@ var FilterButton3 = import_react75.css`
7736
7774
  opacity: var(--opacity-50);
7737
7775
  }
7738
7776
  `;
7739
- var FilterButtonText2 = import_react75.css`
7777
+ var FilterButtonText2 = import_react76.css`
7740
7778
  overflow: hidden;
7741
7779
  text-overflow: ellipsis;
7742
7780
  white-space: nowrap;
7743
7781
  max-width: 14ch;
7744
7782
  `;
7745
- var FilterButtonSelected2 = import_react75.css`
7783
+ var FilterButtonSelected2 = import_react76.css`
7746
7784
  background: var(--gray-100);
7747
7785
  border-color: var(--gray-300);
7748
7786
 
@@ -7750,7 +7788,7 @@ var FilterButtonSelected2 = import_react75.css`
7750
7788
  color: var(--accent-dark);
7751
7789
  }
7752
7790
  `;
7753
- var FilterButtonWithOptions2 = import_react75.css`
7791
+ var FilterButtonWithOptions2 = import_react76.css`
7754
7792
  :where([aria-expanded='true']) {
7755
7793
  background: var(--purple-rain-100);
7756
7794
  border-color: var(--accent-light);
@@ -7762,14 +7800,14 @@ var FilterButtonWithOptions2 = import_react75.css`
7762
7800
  }
7763
7801
  }
7764
7802
  `;
7765
- var SearchIcon2 = import_react75.css`
7803
+ var SearchIcon2 = import_react76.css`
7766
7804
  color: var(--icon-color);
7767
7805
  position: absolute;
7768
7806
  inset: 0 var(--spacing-base) 0 auto;
7769
7807
  margin: auto;
7770
7808
  transition: color var(--duration-fast) var(--timing-ease-out);
7771
7809
  `;
7772
- var AddConditionalBtn2 = import_react75.css`
7810
+ var AddConditionalBtn2 = import_react76.css`
7773
7811
  align-items: center;
7774
7812
  background: transparent;
7775
7813
  border: none;
@@ -7788,14 +7826,14 @@ var AddConditionalBtn2 = import_react75.css`
7788
7826
  color: var(--gray-400);
7789
7827
  }
7790
7828
  `;
7791
- var Title2 = import_react75.css`
7829
+ var Title2 = import_react76.css`
7792
7830
  color: var(--typography-light);
7793
7831
 
7794
7832
  &:focus {
7795
7833
  outline: none;
7796
7834
  }
7797
7835
  `;
7798
- var ResetConditionsBtn2 = import_react75.css`
7836
+ var ResetConditionsBtn2 = import_react76.css`
7799
7837
  background: transparent;
7800
7838
  border: none;
7801
7839
  color: var(--action-destructive-default);
@@ -7807,12 +7845,12 @@ var ResetConditionsBtn2 = import_react75.css`
7807
7845
  color: var(--action-destructive-hover);
7808
7846
  }
7809
7847
  `;
7810
- var IconBtn2 = import_react75.css`
7848
+ var IconBtn2 = import_react76.css`
7811
7849
  background: transparent;
7812
7850
  border: none;
7813
7851
  padding: var(--spacing-sm);
7814
7852
  `;
7815
- var SearchAndFilterOptionsContainer3 = import_react75.css`
7853
+ var SearchAndFilterOptionsContainer3 = import_react76.css`
7816
7854
  background: var(--gray-50);
7817
7855
  border: 1px solid var(--gray-300);
7818
7856
  border-radius: var(--rounded-base);
@@ -7825,17 +7863,17 @@ var SearchAndFilterOptionsContainer3 = import_react75.css`
7825
7863
  position: relative;
7826
7864
  z-index: 1;
7827
7865
  `;
7828
- var SearchAndFilterOptionsInnerContainer2 = import_react75.css`
7866
+ var SearchAndFilterOptionsInnerContainer2 = import_react76.css`
7829
7867
  display: flex;
7830
7868
  flex-direction: column;
7831
7869
  gap: var(--spacing-sm);
7832
7870
  padding-inline: var(--spacing-md);
7833
7871
  `;
7834
- var SearchAndFilterButtonGroup2 = import_react75.css`
7872
+ var SearchAndFilterButtonGroup2 = import_react76.css`
7835
7873
  margin-top: var(--spacing-xs);
7836
7874
  margin-left: calc(56px + var(--spacing-md));
7837
7875
  `;
7838
- var SortFilterWrapper = (hiddenLocaleInput) => import_react75.css`
7876
+ var SortFilterWrapper = (hiddenLocaleInput) => import_react76.css`
7839
7877
  align-items: center;
7840
7878
  display: flex;
7841
7879
  gap: var(--spacing-base);
@@ -7846,13 +7884,13 @@ var SortFilterWrapper = (hiddenLocaleInput) => import_react75.css`
7846
7884
  grid-template-columns: ${hiddenLocaleInput ? "1fr" : "1fr minmax(140px, 0.25fr)"};
7847
7885
  }
7848
7886
  `;
7849
- var SortFilterInputRow = import_react75.css`
7887
+ var SortFilterInputRow = import_react76.css`
7850
7888
  align-items: center;
7851
7889
  display: grid;
7852
7890
  grid-template-columns: 1fr auto;
7853
7891
  gap: var(--spacing-base);
7854
7892
  `;
7855
- var InputVariableWrapper = import_react75.css`
7893
+ var InputVariableWrapper = import_react76.css`
7856
7894
  flex-grow: 1;
7857
7895
 
7858
7896
  // we need to override label styles nested within the input variable
@@ -7998,7 +8036,7 @@ function createLocationValidator(setValue, validate) {
7998
8036
 
7999
8037
  // src/utils/useContentDataResourceLocaleInfo.ts
8000
8038
  var import_canvas12 = require("@uniformdev/canvas");
8001
- var import_react76 = require("react");
8039
+ var import_react77 = require("react");
8002
8040
  function useContentDataResourceLocaleInfo({
8003
8041
  locale,
8004
8042
  defaultLocale,
@@ -8006,12 +8044,12 @@ function useContentDataResourceLocaleInfo({
8006
8044
  dynamicInputs
8007
8045
  }) {
8008
8046
  var _a;
8009
- const setLocaleRef = (0, import_react76.useRef)(setLocale);
8047
+ const setLocaleRef = (0, import_react77.useRef)(setLocale);
8010
8048
  setLocaleRef.current = setLocale;
8011
8049
  const { flatVariables } = useVariables();
8012
8050
  const effectiveLocale = locale != null ? locale : dynamicInputs[import_canvas12.LOCALE_DYNAMIC_INPUT_NAME] ? (0, import_canvas12.createVariableReference)(import_canvas12.LOCALE_DYNAMIC_INPUT_NAME) : defaultLocale != null ? defaultLocale : "";
8013
8051
  const boundLocale = (_a = (0, import_canvas12.bindVariables)({ variables: flatVariables, value: effectiveLocale }).result) != null ? _a : effectiveLocale;
8014
- (0, import_react76.useEffect)(() => {
8052
+ (0, import_react77.useEffect)(() => {
8015
8053
  if (locale === void 0 && effectiveLocale && setLocaleRef.current) {
8016
8054
  setLocaleRef.current(effectiveLocale);
8017
8055
  }