blixify-ui-web 1.2.28 → 1.2.30

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.
@@ -153,7 +153,7 @@ var settingsModal_1 = require("./settingsModal");
153
153
  var flexFilterModel_1 = require("./flexFilterModel");
154
154
  var flexFilterModule_1 = require("./flexFilterModule");
155
155
  exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
156
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45;
156
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43;
157
157
  var intialiseDefaultFilterValues = function () {
158
158
  var _a;
159
159
  var initialFilterSearch = {};
@@ -214,143 +214,156 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
214
214
  initialFilterReferenceDate: initialFilterReferenceDate,
215
215
  };
216
216
  };
217
- var _46 = intialiseDefaultFilterValues(), initialFilterSearch = _46.initialFilterSearch, initialFilterSearchParams = _46.initialFilterSearchParams, initialFilterSelection = _46.initialFilterSelection, initialFilterReference = _46.initialFilterReference, initialFilterReferenceDate = _46.initialFilterReferenceDate;
218
- var _47 = (0, react_1.useState)(false), loading = _47[0], setLoading = _47[1];
219
- var _48 = (0, react_1.useState)(), notification = _48[0], setNotification = _48[1];
217
+ var _44 = intialiseDefaultFilterValues(), initialFilterSearch = _44.initialFilterSearch, initialFilterSearchParams = _44.initialFilterSearchParams, initialFilterSelection = _44.initialFilterSelection, initialFilterReference = _44.initialFilterReference, initialFilterReferenceDate = _44.initialFilterReferenceDate;
218
+ var _45 = (0, react_1.useState)(false), loading = _45[0], setLoading = _45[1];
219
+ var _46 = (0, react_1.useState)(), notification = _46[0], setNotification = _46[1];
220
220
  //INFO : Used by List
221
- var _49 = (0, react_1.useState)(initialFilterSearch), filterSearch = _49[0], setFilterSearch = _49[1];
222
- var _50 = (0, react_1.useState)(initialFilterSearchParams), filterSearchParams = _50[0], setFilterSearchParams = _50[1];
223
- var _51 = (0, react_1.useState)(initialFilterSelection), filterSelection = _51[0], setFilterSelection = _51[1];
224
- var _52 = (0, react_1.useState)(initialFilterReference), filterReference = _52[0], setFilterReference = _52[1];
225
- var _53 = (0, react_1.useState)({}), filterReferenceSearch = _53[0], setFilterReferenceSearch = _53[1];
226
- var _54 = (0, react_1.useState)({}), filterReferenceList = _54[0], setFilterReferenceList = _54[1];
227
- var _55 = (0, react_1.useState)(initialFilterReferenceDate), filterReferenceDate = _55[0], setFilterReferenceDate = _55[1];
228
- var _56 = (0, react_1.useState)(true), tableLoading = _56[0], setTableLoading = _56[1];
229
- var _57 = (0, react_1.useState)(""), cursor = _57[0], setCursor = _57[1];
230
- var _58 = (0, react_1.useState)(""), lastCursor = _58[0], setLastCursor = _58[1];
231
- var _59 = (0, react_1.useState)([]), tableData = _59[0], setTableData = _59[1];
232
- var _60 = (0, react_1.useState)([]), spaceTableData = _60[0], setSpaceTableData = _60[1];
233
- var _61 = (0, react_1.useState)(0), size = _61[0], setSize = _61[1];
234
- var _62 = (0, react_1.useState)((_b = (_a = props.organise) === null || _a === void 0 ? void 0 : _a.pageIndex) !== null && _b !== void 0 ? _b : 0), pageIndex = _62[0], setPageIndex = _62[1];
235
- var _63 = (0, react_1.useState)([]), selectedIds = _63[0], setSelectedIds = _63[1];
236
- var _64 = (0, react_1.useState)(false), selectAll = _64[0], setSelectAll = _64[1];
237
- var _65 = (0, react_1.useState)(""), deletePasscode = _65[0], setDeletePasscode = _65[1];
238
- var _66 = (0, react_1.useState)(""), deletePasscodeInput = _66[0], setDeletePasscodeInput = _66[1];
239
- var _67 = (0, react_1.useState)(""), deleteFeedId = _67[0], setDeleteFeedId = _67[1];
221
+ var _47 = (0, react_1.useState)(initialFilterSearch), filterSearch = _47[0], setFilterSearch = _47[1];
222
+ var _48 = (0, react_1.useState)(initialFilterSearchParams), filterSearchParams = _48[0], setFilterSearchParams = _48[1];
223
+ var _49 = (0, react_1.useState)(initialFilterSelection), filterSelection = _49[0], setFilterSelection = _49[1];
224
+ var _50 = (0, react_1.useState)(initialFilterReference), filterReference = _50[0], setFilterReference = _50[1];
225
+ var _51 = (0, react_1.useState)({}), filterReferenceSearch = _51[0], setFilterReferenceSearch = _51[1];
226
+ var _52 = (0, react_1.useState)({}), filterReferenceList = _52[0], setFilterReferenceList = _52[1];
227
+ var _53 = (0, react_1.useState)(initialFilterReferenceDate), filterReferenceDate = _53[0], setFilterReferenceDate = _53[1];
228
+ var _54 = (0, react_1.useState)(true), tableLoading = _54[0], setTableLoading = _54[1];
229
+ var _55 = (0, react_1.useState)(""), cursor = _55[0], setCursor = _55[1];
230
+ var _56 = (0, react_1.useState)(""), lastCursor = _56[0], setLastCursor = _56[1];
231
+ var _57 = (0, react_1.useState)([]), tableData = _57[0], setTableData = _57[1];
232
+ var _58 = (0, react_1.useState)([]), spaceTableData = _58[0], setSpaceTableData = _58[1];
233
+ var _59 = (0, react_1.useState)(0), size = _59[0], setSize = _59[1];
234
+ var _60 = (0, react_1.useState)((_b = (_a = props.organise) === null || _a === void 0 ? void 0 : _a.pageIndex) !== null && _b !== void 0 ? _b : 0), pageIndex = _60[0], setPageIndex = _60[1];
235
+ var _61 = (0, react_1.useState)([]), selectedIds = _61[0], setSelectedIds = _61[1];
236
+ var _62 = (0, react_1.useState)(false), selectAll = _62[0], setSelectAll = _62[1];
237
+ var _63 = (0, react_1.useState)(""), deletePasscode = _63[0], setDeletePasscode = _63[1];
238
+ var _64 = (0, react_1.useState)(""), deletePasscodeInput = _64[0], setDeletePasscodeInput = _64[1];
239
+ var _65 = (0, react_1.useState)(""), deleteFeedId = _65[0], setDeleteFeedId = _65[1];
240
240
  //INFO : Used by List Organise
241
- var _68 = (0, react_1.useState)(false), sortModal = _68[0], setSortModal = _68[1];
242
- var _69 = (0, react_1.useState)(false), filterModal = _69[0], setFilterModal = _69[1];
243
- var _70 = (0, react_1.useState)(false), filterDraft = _70[0], setFilterDraft = _70[1];
244
- var _71 = (0, react_1.useState)(false), addTabModal = _71[0], setAddTabModal = _71[1];
245
- var _72 = (0, react_1.useState)(false), overviewModal = _72[0], setOverviewModal = _72[1];
246
- var _73 = (0, react_1.useState)(props.defaultTab
247
- ? (0, listModule_1.renderSelectedRefreshTab)(props.localURLEndpoint, props.type, props.collectionId, props.id, (_c = props.organise) === null || _c === void 0 ? void 0 : _c.extendedTabs, (_d = props.organise) === null || _d === void 0 ? void 0 : _d.viewId)
248
- : ""), selectedTab = _73[0], setSelectedTab = _73[1];
249
- var _74 = (0, react_1.useState)("dayGridMonth"), calendarView = _74[0], setCalendarView = _74[1];
250
- var _75 = (0, react_1.useState)(new Date()), calendarTabMonth = _75[0], setCalendarTabMonth = _75[1];
251
- var _76 = (0, react_1.useState)(true), kanbanDroppable = _76[0], setKanbanDroppable = _76[1];
252
- var _77 = (0, react_1.useState)([]), kanbanOptions = _77[0], setKanbanOptions = _77[1];
253
- var _78 = (0, react_1.useState)(false), queryForm = _78[0], setQueryForm = _78[1];
254
- var _79 = (0, react_1.useState)(false), batchUpdateModal = _79[0], setBatchUpdateModal = _79[1];
255
- var _80 = (0, react_1.useState)({
241
+ var _66 = (0, react_1.useState)(false), sortModal = _66[0], setSortModal = _66[1];
242
+ var _67 = (0, react_1.useState)(false), filterModal = _67[0], setFilterModal = _67[1];
243
+ var _68 = (0, react_1.useState)(false), filterDraft = _68[0], setFilterDraft = _68[1];
244
+ var _69 = (0, react_1.useState)(false), addTabModal = _69[0], setAddTabModal = _69[1];
245
+ var _70 = (0, react_1.useState)(false), overviewModal = _70[0], setOverviewModal = _70[1];
246
+ //INFO : resolve the initial tab synchronously so the mount cond is already
247
+ // tab-scoped an empty initial tab caused a second wasted list fetch
248
+ var _71 = (0, react_1.useState)(function () {
249
+ var _a, _b;
250
+ return (0, listModule_1.renderSelectedRefreshTab)(props.localURLEndpoint, props.type, props.collectionId, props.id, (_a = props.organise) === null || _a === void 0 ? void 0 : _a.extendedTabs, (_b = props.organise) === null || _b === void 0 ? void 0 : _b.viewId);
251
+ }), selectedTab = _71[0], setSelectedTab = _71[1];
252
+ var _72 = (0, react_1.useState)("dayGridMonth"), calendarView = _72[0], setCalendarView = _72[1];
253
+ var _73 = (0, react_1.useState)(new Date()), calendarTabMonth = _73[0], setCalendarTabMonth = _73[1];
254
+ var _74 = (0, react_1.useState)(true), kanbanDroppable = _74[0], setKanbanDroppable = _74[1];
255
+ var _75 = (0, react_1.useState)([]), kanbanOptions = _75[0], setKanbanOptions = _75[1];
256
+ var _76 = (0, react_1.useState)(false), queryForm = _76[0], setQueryForm = _76[1];
257
+ var _77 = (0, react_1.useState)(false), batchUpdateModal = _77[0], setBatchUpdateModal = _77[1];
258
+ var _78 = (0, react_1.useState)({
256
259
  columnId: "",
257
260
  columnData: {},
258
- }), batchUpdateData = _80[0], setBatchUpdateData = _80[1];
259
- var _81 = (0, react_1.useState)((props === null || props === void 0 ? void 0 : props.model) || []), structure = _81[0], setStructure = _81[1];
260
- var _82 = (0, react_1.useState)(((_e = props === null || props === void 0 ? void 0 : props.organise) === null || _e === void 0 ? void 0 : _e.additionalQuery) || []), additionalQuery = _82[0], setAdditionalQuery = _82[1];
261
+ }), batchUpdateData = _78[0], setBatchUpdateData = _78[1];
262
+ var _79 = (0, react_1.useState)((props === null || props === void 0 ? void 0 : props.model) || []), structure = _79[0], setStructure = _79[1];
263
+ var _80 = (0, react_1.useState)(((_c = props === null || props === void 0 ? void 0 : props.organise) === null || _c === void 0 ? void 0 : _c.additionalQuery) || []), additionalQuery = _80[0], setAdditionalQuery = _80[1];
261
264
  // INFO: State for user-configurable flex filters (Monday.com-style)
262
265
  // INFO: Initialize with one empty row so users see inputs immediately without clicking "Add Filter"
263
- var _83 = (0, react_1.useState)([
266
+ var _81 = (0, react_1.useState)([
267
+ {
268
+ id: "flex-filter-init-row",
269
+ columnId: "",
270
+ operator: "=",
271
+ value: undefined,
272
+ },
273
+ ]), flexFilters = _81[0], setFlexFilters = _81[1];
274
+ // INFO: Debounced version of flexFilters used by renderImpSearchFilterConditions
275
+ // to prevent API calls on every keystroke when typing in value inputs
276
+ var _82 = (0, react_1.useState)([
264
277
  {
265
278
  id: "flex-filter-init-row",
266
279
  columnId: "",
267
280
  operator: "=",
268
281
  value: undefined,
269
282
  },
270
- ]), flexFilters = _83[0], setFlexFilters = _83[1];
271
- var _84 = (0, react_1.useState)({}), flexFilterReferenceOptions = _84[0], setFlexFilterReferenceOptions = _84[1];
272
- var _85 = (0, react_1.useState)({}), flexFilterReferenceSearch = _85[0], setFlexFilterReferenceSearch = _85[1];
273
- var _86 = (0, react_1.useState)(false), flexFilterModalOpen = _86[0], setFlexFilterModalOpen = _86[1];
283
+ ]), flexFiltersDebounced = _82[0], setFlexFiltersDebounced = _82[1];
284
+ var _83 = (0, react_1.useState)({}), flexFilterReferenceOptions = _83[0], setFlexFilterReferenceOptions = _83[1];
285
+ var _84 = (0, react_1.useState)({}), flexFilterReferenceSearch = _84[0], setFlexFilterReferenceSearch = _84[1];
286
+ var _85 = (0, react_1.useState)(false), flexFilterModalOpen = _85[0], setFlexFilterModalOpen = _85[1];
274
287
  //INFO : Used by Auth
275
- var _87 = (0, react_1.useState)({
288
+ var _86 = (0, react_1.useState)({
276
289
  email: "",
277
290
  google: "",
278
291
  phone: "",
279
292
  disabled: false,
280
293
  create: false,
281
- }), authMethods = _87[0], setAuthMethods = _87[1];
282
- var _88 = (0, react_1.useState)(""), selectedAuthMethod = _88[0], setSelectedAuthMethod = _88[1];
294
+ }), authMethods = _86[0], setAuthMethods = _86[1];
295
+ var _87 = (0, react_1.useState)(""), selectedAuthMethod = _87[0], setSelectedAuthMethod = _87[1];
283
296
  // INFO: Used by Activity Log
284
- var _89 = (0, react_1.useState)(false), activityModal = _89[0], setActivityModal = _89[1];
285
- var _90 = (0, react_1.useState)(""), activityId = _90[0], setActivityId = _90[1];
297
+ var _88 = (0, react_1.useState)(false), activityModal = _88[0], setActivityModal = _88[1];
298
+ var _89 = (0, react_1.useState)(""), activityId = _89[0], setActivityId = _89[1];
286
299
  //INFO : Used by Export
287
- var _91 = (0, react_1.useState)(null), csvFile = _91[0], setCSVFile = _91[1];
288
- var _92 = (0, react_1.useState)([]), csvFileData = _92[0], setCSVFileData = _92[1];
289
- var _93 = (0, react_1.useState)(0), stepCSVIndex = _93[0], setStepCSVIndex = _93[1];
290
- var _94 = (0, react_1.useState)({}), listCSVMapAttribute = _94[0], setListCSVMapAttribute = _94[1];
291
- var _95 = (0, react_1.useState)({}), listCSVObjAttribute = _95[0], setListCSVObjAttribute = _95[1];
292
- var _96 = (0, react_1.useState)([]), csvAPIAttribute = _96[0], setCSVAPIAttribute = _96[1];
293
- var _97 = (0, react_1.useState)(((_f = props.devSettings.currentUser) === null || _f === void 0 ? void 0 : _f.userEmail) || ""), exportCSVEmail = _97[0], setExportCSVEmail = _97[1];
294
- var _98 = (0, react_1.useState)(((_h = (_g = props.organise) === null || _g === void 0 ? void 0 : _g.exportSettings) === null || _h === void 0 ? void 0 : _h.defaultExportPDFName) || ""), exportPDFTitle = _98[0], setExportPDFTitle = _98[1];
295
- var _99 = (0, react_1.useState)(false), exportPDFLoading = _99[0], setExportPDFLoading = _99[1];
296
- var _100 = (0, react_1.useState)(false), exportReadPDFLoading = _100[0], setExportReadPDFLoading = _100[1];
297
- var _101 = (0, react_1.useState)((_l = (_k = (_j = props.organise) === null || _j === void 0 ? void 0 : _j.exportSettings) === null || _k === void 0 ? void 0 : _k.sumColumnId) !== null && _l !== void 0 ? _l : []), exportSumAttributeIds = _101[0], setExportSumAttributeIds = _101[1];
298
- var _102 = (0, react_1.useState)((_p = (_o = (_m = props.organise) === null || _m === void 0 ? void 0 : _m.exportSettings) === null || _o === void 0 ? void 0 : _o.hideSubItems) !== null && _p !== void 0 ? _p : false), hideSubItems = _102[0], setHideSubItems = _102[1];
299
- var _103 = (0, react_1.useState)([]), importTableData = _103[0], setImportTableData = _103[1];
300
- var _104 = (0, react_1.useState)([]), queryList = _104[0], setQueryList = _104[1];
301
- var _105 = (0, react_1.useState)(undefined), allQueryList = _105[0], setAllQueryList = _105[1];
302
- var _106 = (0, react_1.useState)(-1), queryIndex = _106[0], setQueryIndex = _106[1];
303
- var _107 = (0, react_1.useState)((_q = props.organise) === null || _q === void 0 ? void 0 : _q.groupBy), groupId = _107[0], setGroupId = _107[1];
304
- var _108 = (0, react_1.useState)(""), readTabSection = _108[0], setReadTabSection = _108[1];
305
- var _109 = (0, react_1.useState)(false), readFloatingNav = _109[0], setReadFloatingNav = _109[1];
300
+ var _90 = (0, react_1.useState)(null), csvFile = _90[0], setCSVFile = _90[1];
301
+ var _91 = (0, react_1.useState)([]), csvFileData = _91[0], setCSVFileData = _91[1];
302
+ var _92 = (0, react_1.useState)(0), stepCSVIndex = _92[0], setStepCSVIndex = _92[1];
303
+ var _93 = (0, react_1.useState)({}), listCSVMapAttribute = _93[0], setListCSVMapAttribute = _93[1];
304
+ var _94 = (0, react_1.useState)({}), listCSVObjAttribute = _94[0], setListCSVObjAttribute = _94[1];
305
+ var _95 = (0, react_1.useState)([]), csvAPIAttribute = _95[0], setCSVAPIAttribute = _95[1];
306
+ var _96 = (0, react_1.useState)(((_d = props.devSettings.currentUser) === null || _d === void 0 ? void 0 : _d.userEmail) || ""), exportCSVEmail = _96[0], setExportCSVEmail = _96[1];
307
+ var _97 = (0, react_1.useState)(((_f = (_e = props.organise) === null || _e === void 0 ? void 0 : _e.exportSettings) === null || _f === void 0 ? void 0 : _f.defaultExportPDFName) || ""), exportPDFTitle = _97[0], setExportPDFTitle = _97[1];
308
+ var _98 = (0, react_1.useState)(false), exportPDFLoading = _98[0], setExportPDFLoading = _98[1];
309
+ var _99 = (0, react_1.useState)(false), exportReadPDFLoading = _99[0], setExportReadPDFLoading = _99[1];
310
+ var _100 = (0, react_1.useState)((_j = (_h = (_g = props.organise) === null || _g === void 0 ? void 0 : _g.exportSettings) === null || _h === void 0 ? void 0 : _h.sumColumnId) !== null && _j !== void 0 ? _j : []), exportSumAttributeIds = _100[0], setExportSumAttributeIds = _100[1];
311
+ var _101 = (0, react_1.useState)((_m = (_l = (_k = props.organise) === null || _k === void 0 ? void 0 : _k.exportSettings) === null || _l === void 0 ? void 0 : _l.hideSubItems) !== null && _m !== void 0 ? _m : false), hideSubItems = _101[0], setHideSubItems = _101[1];
312
+ var _102 = (0, react_1.useState)([]), importTableData = _102[0], setImportTableData = _102[1];
313
+ var _103 = (0, react_1.useState)([]), queryList = _103[0], setQueryList = _103[1];
314
+ var _104 = (0, react_1.useState)(undefined), allQueryList = _104[0], setAllQueryList = _104[1];
315
+ var _105 = (0, react_1.useState)(-1), queryIndex = _105[0], setQueryIndex = _105[1];
316
+ var _106 = (0, react_1.useState)((_o = props.organise) === null || _o === void 0 ? void 0 : _o.groupBy), groupId = _106[0], setGroupId = _106[1];
317
+ var _107 = (0, react_1.useState)(""), readTabSection = _107[0], setReadTabSection = _107[1];
318
+ var _108 = (0, react_1.useState)(false), readFloatingNav = _108[0], setReadFloatingNav = _108[1];
306
319
  var readTabSectionRefs = (0, react_1.useRef)({});
307
320
  //INFO : Used by Read
308
321
  //INFO : Used by Update
309
- var _110 = (0, react_1.useState)(false), modalVisible = _110[0], setModalVisible = _110[1];
310
- var _111 = (0, react_1.useState)(false), deleteModal = _111[0], setDeleteModal = _111[1];
311
- var _112 = (0, react_1.useState)(false), excelModal = _112[0], setExcelModal = _112[1];
312
- var _113 = (0, react_1.useState)(false), exportExcel = _113[0], setExportExcel = _113[1];
313
- var _114 = (0, react_1.useState)(""), exportType = _114[0], setExportType = _114[1];
314
- var _115 = (0, react_1.useState)(false), exportQR = _115[0], setExportQR = _115[1];
315
- var _116 = (0, react_1.useState)(function () {
322
+ var _109 = (0, react_1.useState)(false), modalVisible = _109[0], setModalVisible = _109[1];
323
+ var _110 = (0, react_1.useState)(false), deleteModal = _110[0], setDeleteModal = _110[1];
324
+ var _111 = (0, react_1.useState)(false), excelModal = _111[0], setExcelModal = _111[1];
325
+ var _112 = (0, react_1.useState)(false), exportExcel = _112[0], setExportExcel = _112[1];
326
+ var _113 = (0, react_1.useState)(""), exportType = _113[0], setExportType = _113[1];
327
+ var _114 = (0, react_1.useState)(false), exportQR = _114[0], setExportQR = _114[1];
328
+ var _115 = (0, react_1.useState)(function () {
316
329
  var _a, _b;
317
330
  var firstTabId = (_b = (_a = structure.find(function (item) { return item.tabId; })) === null || _a === void 0 ? void 0 : _a.tabId) !== null && _b !== void 0 ? _b : "";
318
331
  return firstTabId;
319
- }), activeTab = _116[0], setActiveTab = _116[1];
320
- var _117 = (0, react_1.useState)(false), signatureSigning = _117[0], setSignatureSigning = _117[1];
321
- var _118 = (0, react_1.useState)({}), selectedData = _118[0], setSelectedData = _118[1];
322
- var _119 = (0, react_1.useState)(""), selectedObjectStructureId = _119[0], setSelectedObjectStructureId = _119[1];
323
- var _120 = (0, react_1.useState)(""), selectedObjectId = _120[0], setSelectedObjectId = _120[1];
324
- var _121 = (0, react_1.useState)(""), selectedListAddressId = _121[0], setSelectedListAddressId = _121[1];
325
- var _122 = (0, react_1.useState)(-1), selectedListAddressIndex = _122[0], setSelectedListAddressIndex = _122[1];
326
- var _123 = (0, react_1.useState)({
332
+ }), activeTab = _115[0], setActiveTab = _115[1];
333
+ var _116 = (0, react_1.useState)(false), signatureSigning = _116[0], setSignatureSigning = _116[1];
334
+ var _117 = (0, react_1.useState)({}), selectedData = _117[0], setSelectedData = _117[1];
335
+ var _118 = (0, react_1.useState)(""), selectedObjectStructureId = _118[0], setSelectedObjectStructureId = _118[1];
336
+ var _119 = (0, react_1.useState)(""), selectedObjectId = _119[0], setSelectedObjectId = _119[1];
337
+ var _120 = (0, react_1.useState)(""), selectedListAddressId = _120[0], setSelectedListAddressId = _120[1];
338
+ var _121 = (0, react_1.useState)(-1), selectedListAddressIndex = _121[0], setSelectedListAddressIndex = _121[1];
339
+ var _122 = (0, react_1.useState)({
327
340
  lat: 0,
328
341
  lng: 0,
329
342
  name: "",
330
- }), selectedListAddress = _123[0], setSelectedListAddress = _123[1];
331
- var _124 = (0, react_1.useState)({}), selectedObjectData = _124[0], setSelectedObjectData = _124[1];
332
- var _125 = (0, react_1.useState)(false), referenceLoading = _125[0], setReferenceLoading = _125[1];
333
- var _126 = (0, react_1.useState)({}), referencesOptions = _126[0], setReferencesOptions = _126[1];
334
- var _127 = (0, react_1.useState)({}), referencesDetails = _127[0], setReferencesDetails = _127[1];
335
- var _128 = (0, react_1.useState)({}), referenceDeleteTableData = _128[0], setReferenceDeleteTableData = _128[1];
336
- var _129 = (0, react_1.useState)(0), referenceDeleteIndex = _129[0], setReferenceDeleteIndex = _129[1];
337
- var _130 = (0, react_1.useState)({
343
+ }), selectedListAddress = _122[0], setSelectedListAddress = _122[1];
344
+ var _123 = (0, react_1.useState)({}), selectedObjectData = _123[0], setSelectedObjectData = _123[1];
345
+ var _124 = (0, react_1.useState)(false), referenceLoading = _124[0], setReferenceLoading = _124[1];
346
+ var _125 = (0, react_1.useState)({}), referencesOptions = _125[0], setReferencesOptions = _125[1];
347
+ var _126 = (0, react_1.useState)({}), referencesDetails = _126[0], setReferencesDetails = _126[1];
348
+ var _127 = (0, react_1.useState)({}), referenceDeleteTableData = _127[0], setReferenceDeleteTableData = _127[1];
349
+ var _128 = (0, react_1.useState)(0), referenceDeleteIndex = _128[0], setReferenceDeleteIndex = _128[1];
350
+ var _129 = (0, react_1.useState)({
338
351
  id: "",
339
352
  name: "",
340
353
  type: "string",
341
- }), referenceCreationModal = _130[0], setReferenceCreationModal = _130[1];
342
- var _131 = (0, react_1.useState)({}), referenceModelSchema = _131[0], setReferenceSchema = _131[1];
343
- var _132 = (0, react_1.useState)([]), kanbanChecked = _132[0], setKanbanChecked = _132[1];
354
+ }), referenceCreationModal = _129[0], setReferenceCreationModal = _129[1];
355
+ var _130 = (0, react_1.useState)({}), referenceModelSchema = _130[0], setReferenceSchema = _130[1];
356
+ var _131 = (0, react_1.useState)([]), kanbanChecked = _131[0], setKanbanChecked = _131[1];
344
357
  //INFO : Offline
345
- var _133 = (0, react_1.useState)(0), offlineDataLength = _133[0], setOfflineDataLength = _133[1];
346
- var _134 = (0, react_1.useState)(false), offlineModal = _134[0], setOfflineModal = _134[1];
358
+ var _132 = (0, react_1.useState)(0), offlineDataLength = _132[0], setOfflineDataLength = _132[1];
359
+ var _133 = (0, react_1.useState)(false), offlineModal = _133[0], setOfflineModal = _133[1];
347
360
  // INFO: live-stream state — driven by socket connection and navigator.onLine
348
- var _135 = (0, react_1.useState)(false), isLive = _135[0], setIsLive = _135[1];
349
- var _136 = (0, react_1.useState)(false), isLiveOffline = _136[0], setIsLiveOffline = _136[1];
361
+ var _134 = (0, react_1.useState)(false), isLive = _134[0], setIsLive = _134[1];
362
+ var _135 = (0, react_1.useState)(false), isLiveOffline = _135[0], setIsLiveOffline = _135[1];
350
363
  // INFO: true when navigator is offline — used to switch ReadQueryHoc between
351
364
  // server reads (online, full pagination) and IndexedDB reads (offline, cached data).
352
365
  // Independent of SSE status so it works even when bareSocketName is not set.
353
- var _137 = (0, react_1.useState)(typeof navigator !== "undefined" ? !navigator.onLine : false), isNetworkOffline = _137[0], setIsNetworkOffline = _137[1];
366
+ var _136 = (0, react_1.useState)(typeof navigator !== "undefined" ? !navigator.onLine : false), isNetworkOffline = _136[0], setIsNetworkOffline = _136[1];
354
367
  var previousType = (0, react_1.useRef)(null);
355
368
  var previousSelectedData = (0, react_1.useRef)(null);
356
369
  var scrollSentinelRef = (0, react_1.useRef)(null);
@@ -405,6 +418,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
405
418
  var readQueryHocRef = (0, react_1.useRef)(null);
406
419
  var listRQueryHocRef = (0, react_1.useRef)(null);
407
420
  var typingTimeout = (0, react_1.useRef)(null);
421
+ var flexFilterTypingTimeout = (0, react_1.useRef)(null);
408
422
  var mapViewRef = (0, react_1.useRef)(null);
409
423
  var prevTabPropsRef = (0, react_1.useRef)(selectedTab);
410
424
  var lastUploadedDataRef = (0, react_1.useRef)(null);
@@ -422,41 +436,41 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
422
436
  var isSubmittingRef = (0, react_1.useRef)(false);
423
437
  var devSettings = props.devSettings;
424
438
  var serverId = (0, utils_1.parseServerId)(devSettings.server);
425
- var viewType = (_s = (_r = props.organise) === null || _r === void 0 ? void 0 : _r.viewId) !== null && _s !== void 0 ? _s : "general";
439
+ var viewType = (_q = (_p = props.organise) === null || _p === void 0 ? void 0 : _p.viewId) !== null && _q !== void 0 ? _q : "general";
426
440
  var isFirebaseClient = devSettings.server === "firebase";
427
441
  var isFirebase = isFirebaseClient || devSettings.server === "fbServer";
428
- var dbModule = isFirebaseClient ? (_t = props.lib) === null || _t === void 0 ? void 0 : _t.firebase : (_u = props.lib) === null || _u === void 0 ? void 0 : _u.axios;
442
+ var dbModule = isFirebaseClient ? (_r = props.lib) === null || _r === void 0 ? void 0 : _r.firebase : (_s = props.lib) === null || _s === void 0 ? void 0 : _s.axios;
429
443
  var schemaPresent = props.devSettings.schemaEndpoint ? true : false;
430
444
  var limit = props.limit ? props.limit : 10;
431
- var isEditor = ((_v = props.edit) === null || _v === void 0 ? void 0 : _v.allEditable) ? true : false;
432
- var isOffline = (_w = props.bareSettings) === null || _w === void 0 ? void 0 : _w.bareOffline;
445
+ var isEditor = ((_t = props.edit) === null || _t === void 0 ? void 0 : _t.allEditable) ? true : false;
446
+ var isOffline = (_u = props.bareSettings) === null || _u === void 0 ? void 0 : _u.bareOffline;
433
447
  // INFO: when bareOfflineNetworkAware is true, the save path is also gated on
434
448
  // the live network state — online saves go to the server even if bareOffline
435
449
  // is true, offline saves go to IDB as normal.
436
- var isOfflineNetworkListener = isOffline && ((_x = props.bareSettings) === null || _x === void 0 ? void 0 : _x.bareOfflineNetworkListener);
437
- var showId = (_y = props.space) === null || _y === void 0 ? void 0 : _y.showId;
450
+ var isOfflineNetworkListener = isOffline && ((_v = props.bareSettings) === null || _v === void 0 ? void 0 : _v.bareOfflineNetworkListener);
451
+ var showId = (_w = props.space) === null || _w === void 0 ? void 0 : _w.showId;
438
452
  var remainId = showId || selectedObjectStructureId ? true : false;
439
- var idField = ((_z = props.space) === null || _z === void 0 ? void 0 : _z.idField) || ((_0 = props.organise) === null || _0 === void 0 ? void 0 : _0.idField);
440
- var pipeline = (_1 = props === null || props === void 0 ? void 0 : props.space) === null || _1 === void 0 ? void 0 : _1.pipeline;
441
- if ((_2 = props.bareSettings) === null || _2 === void 0 ? void 0 : _2.bareListPipeline) {
453
+ var idField = ((_x = props.space) === null || _x === void 0 ? void 0 : _x.idField) || ((_y = props.organise) === null || _y === void 0 ? void 0 : _y.idField);
454
+ var pipeline = (_z = props === null || props === void 0 ? void 0 : props.space) === null || _z === void 0 ? void 0 : _z.pipeline;
455
+ if ((_0 = props.bareSettings) === null || _0 === void 0 ? void 0 : _0.bareListPipeline) {
442
456
  pipeline = pipeline
443
457
  ? __spreadArray(__spreadArray([], pipeline, true), props.bareSettings.bareListPipeline, true) : props.bareSettings.bareListPipeline;
444
458
  }
445
- var hasNavigation = ((_3 = props.organise) === null || _3 === void 0 ? void 0 : _3.handleNavigate) ? true : false;
446
- var columnType = (_5 = (_4 = props.bareSettings) === null || _4 === void 0 ? void 0 : _4.bareUpdateColumnType) !== null && _5 !== void 0 ? _5 : "two";
459
+ var hasNavigation = ((_1 = props.organise) === null || _1 === void 0 ? void 0 : _1.handleNavigate) ? true : false;
460
+ var columnType = (_3 = (_2 = props.bareSettings) === null || _2 === void 0 ? void 0 : _2.bareUpdateColumnType) !== null && _3 !== void 0 ? _3 : "two";
447
461
  var formColumn = columnType === "one" ? "grid-cols-2" : "grid-cols-4";
448
- var useMobileView = (_7 = (_6 = props.bareSettings) === null || _6 === void 0 ? void 0 : _6.bareUpdateMobileView) !== null && _7 !== void 0 ? _7 : false;
462
+ var useMobileView = (_5 = (_4 = props.bareSettings) === null || _4 === void 0 ? void 0 : _4.bareUpdateMobileView) !== null && _5 !== void 0 ? _5 : false;
449
463
  var gridGap = useMobileView ? "gap-x-6 gap-y-2 md:gap-y-6" : "gap-6";
450
- var isActivityLog = (((_9 = (_8 = props.edit) === null || _8 === void 0 ? void 0 : _8.activityLog) === null || _9 === void 0 ? void 0 : _9.enableComments) &&
451
- ((_10 = props.edit) === null || _10 === void 0 ? void 0 : _10.activityLog.commentCollectionId)) ||
452
- (((_12 = (_11 = props.edit) === null || _11 === void 0 ? void 0 : _11.activityLog) === null || _12 === void 0 ? void 0 : _12.enableLogs) &&
453
- ((_13 = props.edit) === null || _13 === void 0 ? void 0 : _13.activityLog.logsCollectionId));
454
- var customPaginationSize = ((_14 = props.organise) === null || _14 === void 0 ? void 0 : _14.customPaginationCount)
464
+ var isActivityLog = (((_7 = (_6 = props.edit) === null || _6 === void 0 ? void 0 : _6.activityLog) === null || _7 === void 0 ? void 0 : _7.enableComments) &&
465
+ ((_8 = props.edit) === null || _8 === void 0 ? void 0 : _8.activityLog.commentCollectionId)) ||
466
+ (((_10 = (_9 = props.edit) === null || _9 === void 0 ? void 0 : _9.activityLog) === null || _10 === void 0 ? void 0 : _10.enableLogs) &&
467
+ ((_11 = props.edit) === null || _11 === void 0 ? void 0 : _11.activityLog.logsCollectionId));
468
+ var customPaginationSize = ((_12 = props.organise) === null || _12 === void 0 ? void 0 : _12.customPaginationCount)
455
469
  ? props.organise.customPaginationCount(size)
456
470
  : undefined;
457
471
  //TODO : Code - Pass ...devSettings, search dbEndpoint:
458
472
  var writeServerQuery = new writeQuery_1.WriteQuery({
459
- dbModule: (_15 = props.lib) === null || _15 === void 0 ? void 0 : _15.axios,
473
+ dbModule: (_13 = props.lib) === null || _13 === void 0 ? void 0 : _13.axios,
460
474
  dbType: devSettings.server,
461
475
  dbCollection: props.collectionId,
462
476
  dbEndpoint: devSettings.dbEndpoint,
@@ -464,7 +478,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
464
478
  dbUserToken: devSettings.dbUserToken,
465
479
  });
466
480
  var readServerQuery = new readQuery_1.ReadQuery({
467
- dbModule: (_16 = props.lib) === null || _16 === void 0 ? void 0 : _16.axios,
481
+ dbModule: (_14 = props.lib) === null || _14 === void 0 ? void 0 : _14.axios,
468
482
  dbType: devSettings.server,
469
483
  dbCollection: props.collectionId,
470
484
  dbEndpoint: devSettings.dbEndpoint,
@@ -472,9 +486,9 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
472
486
  dbUserToken: devSettings.dbUserToken,
473
487
  });
474
488
  var moreButtonPopUp = [
475
- ((_17 = props.edit) === null || _17 === void 0 ? void 0 : _17.allEditable) &&
489
+ ((_15 = props.edit) === null || _15 === void 0 ? void 0 : _15.allEditable) &&
476
490
  !isFirebase &&
477
- !((_19 = (_18 = props.organise) === null || _18 === void 0 ? void 0 : _18.exportSettings) === null || _19 === void 0 ? void 0 : _19.hideImportCSV)
491
+ !((_17 = (_16 = props.organise) === null || _16 === void 0 ? void 0 : _16.exportSettings) === null || _17 === void 0 ? void 0 : _17.hideImportCSV)
478
492
  ? {
479
493
  text: "Import Excel",
480
494
  onClick: function () {
@@ -483,7 +497,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
483
497
  },
484
498
  }
485
499
  : null,
486
- !((_21 = (_20 = props.organise) === null || _20 === void 0 ? void 0 : _20.exportSettings) === null || _21 === void 0 ? void 0 : _21.hideExportCSV)
500
+ !((_19 = (_18 = props.organise) === null || _18 === void 0 ? void 0 : _18.exportSettings) === null || _19 === void 0 ? void 0 : _19.hideExportCSV)
487
501
  ? {
488
502
  text: "Export CSV",
489
503
  onClick: function () {
@@ -493,7 +507,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
493
507
  },
494
508
  }
495
509
  : null,
496
- !((_23 = (_22 = props.organise) === null || _22 === void 0 ? void 0 : _22.exportSettings) === null || _23 === void 0 ? void 0 : _23.hideExportExcel)
510
+ !((_21 = (_20 = props.organise) === null || _20 === void 0 ? void 0 : _20.exportSettings) === null || _21 === void 0 ? void 0 : _21.hideExportExcel)
497
511
  ? {
498
512
  text: "Export Excel",
499
513
  onClick: function () {
@@ -503,7 +517,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
503
517
  },
504
518
  }
505
519
  : null,
506
- !((_25 = (_24 = props.organise) === null || _24 === void 0 ? void 0 : _24.exportSettings) === null || _25 === void 0 ? void 0 : _25.hideExportPDF)
520
+ !((_23 = (_22 = props.organise) === null || _22 === void 0 ? void 0 : _22.exportSettings) === null || _23 === void 0 ? void 0 : _23.hideExportPDF)
507
521
  ? {
508
522
  text: "Export PDF",
509
523
  onClick: function () {
@@ -513,7 +527,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
513
527
  },
514
528
  }
515
529
  : null,
516
- !((_27 = (_26 = props.organise) === null || _26 === void 0 ? void 0 : _26.exportSettings) === null || _27 === void 0 ? void 0 : _27.hideExportQR)
530
+ !((_25 = (_24 = props.organise) === null || _24 === void 0 ? void 0 : _24.exportSettings) === null || _25 === void 0 ? void 0 : _25.hideExportQR)
517
531
  ? {
518
532
  text: "Export QR",
519
533
  onClick: function () {
@@ -523,7 +537,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
523
537
  },
524
538
  }
525
539
  : null,
526
- !((_29 = (_28 = props.organise) === null || _28 === void 0 ? void 0 : _28.exportSettings) === null || _29 === void 0 ? void 0 : _29.hideExportQR)
540
+ !((_27 = (_26 = props.organise) === null || _26 === void 0 ? void 0 : _26.exportSettings) === null || _27 === void 0 ? void 0 : _27.hideExportQR)
527
541
  ? {
528
542
  text: "Export QR(Data)",
529
543
  onClick: function () {
@@ -533,7 +547,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
533
547
  },
534
548
  }
535
549
  : null,
536
- !((_31 = (_30 = props.organise) === null || _30 === void 0 ? void 0 : _30.exportSettings) === null || _31 === void 0 ? void 0 : _31.hideExportPrint)
550
+ !((_29 = (_28 = props.organise) === null || _28 === void 0 ? void 0 : _28.exportSettings) === null || _29 === void 0 ? void 0 : _29.hideExportPrint)
537
551
  ? {
538
552
  text: "Print",
539
553
  onClick: function () {
@@ -543,7 +557,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
543
557
  },
544
558
  }
545
559
  : null,
546
- !((_33 = (_32 = props.organise) === null || _32 === void 0 ? void 0 : _32.exportSettings) === null || _33 === void 0 ? void 0 : _33.hideExportDraft)
560
+ !((_31 = (_30 = props.organise) === null || _30 === void 0 ? void 0 : _30.exportSettings) === null || _31 === void 0 ? void 0 : _31.hideExportDraft)
547
561
  ? {
548
562
  text: filterDraft ? "Show All Items" : "Filter Draft",
549
563
  onClick: function () {
@@ -552,11 +566,19 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
552
566
  }
553
567
  : null,
554
568
  ].filter(Boolean);
555
- if ((_34 = props.organise) === null || _34 === void 0 ? void 0 : _34.moreSettings)
569
+ if ((_32 = props.organise) === null || _32 === void 0 ? void 0 : _32.moreSettings)
556
570
  moreButtonPopUp = moreButtonPopUp.concat(props.organise.moreSettings);
557
571
  //=====================================================================================
558
572
  //SECTION: Flex Filter Handlers
559
573
  //=====================================================================================
574
+ // INFO: cancel any pending value-typing timer before setting flexFiltersDebounced
575
+ // directly — a stale timer would re-apply old typed filters up to 500ms later
576
+ var handleClearFlexFilterTypingTimeout = function () {
577
+ if (flexFilterTypingTimeout.current) {
578
+ clearTimeout(flexFilterTypingTimeout.current);
579
+ flexFilterTypingTimeout.current = null;
580
+ }
581
+ };
560
582
  var handleFlexFilterAdd = function () {
561
583
  var newFilter = {
562
584
  id: (0, uuid_1.v4)(),
@@ -564,28 +586,38 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
564
586
  operator: "=",
565
587
  value: undefined,
566
588
  };
567
- setFlexFilters(__spreadArray(__spreadArray([], flexFilters, true), [newFilter], false));
589
+ var updatedFilters = __spreadArray(__spreadArray([], flexFilters, true), [newFilter], false);
590
+ handleClearFlexFilterTypingTimeout();
591
+ setFlexFilters(updatedFilters);
592
+ setFlexFiltersDebounced(updatedFilters);
568
593
  };
569
594
  var handleFlexFilterRemove = function (filterId) {
570
595
  var remaining = flexFilters.filter(function (f) { return f.id !== filterId; });
571
596
  // INFO: Always keep at least one empty row visible
597
+ var updatedFilters;
572
598
  if (remaining.length === 0) {
573
- setFlexFilters([
599
+ updatedFilters = [
574
600
  { id: (0, uuid_1.v4)(), columnId: "", operator: "=", value: undefined },
575
- ]);
601
+ ];
576
602
  }
577
603
  else {
578
- setFlexFilters(remaining);
604
+ updatedFilters = remaining;
579
605
  }
606
+ handleClearFlexFilterTypingTimeout();
607
+ setFlexFilters(updatedFilters);
608
+ setFlexFiltersDebounced(updatedFilters);
580
609
  };
581
610
  var handleFlexFilterClearAll = function () {
582
611
  // INFO: Reset to one empty row so the UI never shows a blank state
583
- setFlexFilters([
612
+ var updatedFilters = [
584
613
  { id: (0, uuid_1.v4)(), columnId: "", operator: "=", value: undefined },
585
- ]);
614
+ ];
615
+ handleClearFlexFilterTypingTimeout();
616
+ setFlexFilters(updatedFilters);
617
+ setFlexFiltersDebounced(updatedFilters);
586
618
  };
587
619
  var handleFlexFilterColumnChange = function (filterId, columnId) {
588
- setFlexFilters(flexFilters.map(function (f) {
620
+ var updatedFilters = flexFilters.map(function (f) {
589
621
  if (f.id !== filterId)
590
622
  return f;
591
623
  // INFO: Reset operator and value when column changes since available operators differ per type
@@ -593,18 +625,33 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
593
625
  var operators = ds ? flexFilterModel_1.FLEX_FILTER_OPERATOR_MAP[ds.type] : undefined;
594
626
  var defaultOperator = operators && operators.length > 0 ? operators[0] : "=";
595
627
  return __assign(__assign({}, f), { columnId: columnId, operator: defaultOperator, value: undefined });
596
- }));
628
+ });
629
+ handleClearFlexFilterTypingTimeout();
630
+ setFlexFilters(updatedFilters);
631
+ setFlexFiltersDebounced(updatedFilters);
597
632
  };
598
633
  var handleFlexFilterOperatorChange = function (filterId, operator) {
599
- setFlexFilters(flexFilters.map(function (f) {
634
+ var updatedFilters = flexFilters.map(function (f) {
600
635
  if (f.id !== filterId)
601
636
  return f;
602
637
  // INFO: Reset value when operator changes to avoid type mismatch
603
638
  return __assign(__assign({}, f), { operator: operator, value: undefined });
604
- }));
639
+ });
640
+ handleClearFlexFilterTypingTimeout();
641
+ setFlexFilters(updatedFilters);
642
+ setFlexFiltersDebounced(updatedFilters);
605
643
  };
606
644
  var handleFlexFilterValueChange = function (filterId, value) {
607
- setFlexFilters(flexFilters.map(function (f) { return (f.id === filterId ? __assign(__assign({}, f), { value: value }) : f); }));
645
+ var updatedFilters = flexFilters.map(function (f) {
646
+ return f.id === filterId ? __assign(__assign({}, f), { value: value }) : f;
647
+ });
648
+ // INFO: Update UI state immediately for responsive typing
649
+ setFlexFilters(updatedFilters);
650
+ // INFO: Debounce the query-triggering state to prevent API calls on every keystroke
651
+ handleClearFlexFilterTypingTimeout();
652
+ flexFilterTypingTimeout.current = setTimeout(function () {
653
+ setFlexFiltersDebounced(updatedFilters);
654
+ }, 500);
608
655
  };
609
656
  var handleFlexFilterReferenceOptionsLoaded = function (columnId, options) {
610
657
  setFlexFilterReferenceOptions(function (prev) {
@@ -627,9 +674,9 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
627
674
  filterReference: filterReference,
628
675
  filterDraft: filterDraft,
629
676
  }, additionalQuery !== null && additionalQuery !== void 0 ? additionalQuery : [], (_a = props.bareSettings) === null || _a === void 0 ? void 0 : _a.bareListFilterQuery, selectedTab);
630
- // INFO: Merge flex filter conditions into the query array
631
- if (flexFilters.length > 0) {
632
- var flexQuery = (0, listModule_1.renderFlexFilterConditions)(flexFilters, structure);
677
+ // INFO: Merge flex filter conditions into the query array (uses debounced state to avoid API calls on every keystroke)
678
+ if (flexFiltersDebounced.length > 0) {
679
+ var flexQuery = (0, listModule_1.renderFlexFilterConditions)(flexFiltersDebounced, structure);
633
680
  if (flexQuery.length > 0) {
634
681
  if (query) {
635
682
  query = __spreadArray(__spreadArray([], query, true), flexQuery, true);
@@ -675,7 +722,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
675
722
  (0, react_1.useEffect)(function () {
676
723
  handleOfflinePrefetch();
677
724
  /* eslint-disable */
678
- }, [props.collectionId, (_35 = props.bareSettings) === null || _35 === void 0 ? void 0 : _35.bareOffline]);
725
+ }, [props.collectionId, (_33 = props.bareSettings) === null || _33 === void 0 ? void 0 : _33.bareOffline]);
679
726
  /* eslint-enable */
680
727
  // INFO: MRQ polling — calls handleRefresh every N ms (e.g. 1500) as a fallback.
681
728
  // Calls through handleRefreshRef so the interval always dispatches the latest
@@ -695,7 +742,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
695
742
  }, interval);
696
743
  return function () { return clearInterval(timer); };
697
744
  /* eslint-disable */
698
- }, [(_36 = props.bareSettings) === null || _36 === void 0 ? void 0 : _36.barePollingInterval, isLive, isNetworkOffline]);
745
+ }, [(_34 = props.bareSettings) === null || _34 === void 0 ? void 0 : _34.barePollingInterval, isLive, isNetworkOffline]);
699
746
  /* eslint-enable */
700
747
  // INFO: Pub/Sub → SSE live-stream — driven by bareSettings.bareSocketName
701
748
  // EventSource URL: {sseEndpoint}/{room}?bm_apiToken={token}
@@ -737,7 +784,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
737
784
  };
738
785
  /* eslint-disable */
739
786
  }, [
740
- (_37 = props.bareSettings) === null || _37 === void 0 ? void 0 : _37.bareSocketName,
787
+ (_35 = props.bareSettings) === null || _35 === void 0 ? void 0 : _35.bareSocketName,
741
788
  props.collectionId,
742
789
  props.devSettings.sseEndpoint,
743
790
  props.devSettings.dbAPIToken,
@@ -760,6 +807,10 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
760
807
  }
761
808
  };
762
809
  }, []);
810
+ // INFO: avoid setting state after unmount
811
+ (0, react_1.useEffect)(function () {
812
+ return function () { return handleClearFlexFilterTypingTimeout(); };
813
+ }, []);
763
814
  // INFO: scroll-mode auto-pagination. Observes a sentinel below the list;
764
815
  // when it enters the viewport we fire handlePagination("next"). End-of-list
765
816
  // is per-backend — Firebase relies on cursor presence; non-Firebase uses
@@ -966,10 +1017,10 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
966
1017
  props.collectionId,
967
1018
  props.model,
968
1019
  props.localURLEndpoint,
969
- (_38 = props.organise) === null || _38 === void 0 ? void 0 : _38.extendedTabs,
970
- (_39 = props.organise) === null || _39 === void 0 ? void 0 : _39.viewId,
971
- (_40 = props.organise) === null || _40 === void 0 ? void 0 : _40.additionalQuery,
972
- (_41 = props.organise) === null || _41 === void 0 ? void 0 : _41.groupBy,
1020
+ (_36 = props.organise) === null || _36 === void 0 ? void 0 : _36.extendedTabs,
1021
+ (_37 = props.organise) === null || _37 === void 0 ? void 0 : _37.viewId,
1022
+ (_38 = props.organise) === null || _38 === void 0 ? void 0 : _38.additionalQuery,
1023
+ (_39 = props.organise) === null || _39 === void 0 ? void 0 : _39.groupBy,
973
1024
  props.type,
974
1025
  ]);
975
1026
  (0, react_1.useEffect)(function () {
@@ -1059,7 +1110,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
1059
1110
  };
1060
1111
  }, 100);
1061
1112
  return function () { return clearTimeout(timeoutId); };
1062
- }, [(_42 = props.organise) === null || _42 === void 0 ? void 0 : _42.showReadFloatingNav, props.type, props.id, loading]);
1113
+ }, [(_40 = props.organise) === null || _40 === void 0 ? void 0 : _40.showReadFloatingNav, props.type, props.id, loading]);
1063
1114
  (0, react_1.useEffect)(function () {
1064
1115
  if (props.type !== "read")
1065
1116
  return;
@@ -1931,7 +1982,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
1931
1982
  if (!((eachModel.type === "reference" ||
1932
1983
  eachModel.type === "listReference") &&
1933
1984
  eachModel.referenceMapColumnId)) return [3 /*break*/, 2];
1934
- return [4 /*yield*/, (0, updateModule_1.handleRetrieveObjectReferenceOptions)(eachModel, clonedOptions_1, clonedDetails_1, selectedData, dbModule, devSettings)];
1985
+ return [4 /*yield*/, (0, updateModule_1.handleRetrieveObjectReferenceOptions)(eachModel, clonedOptions_1, clonedDetails_1, selectedData, dbModule, devSettings, undefined, undefined, undefined, undefined, props.type === "read")];
1935
1986
  case 1:
1936
1987
  _a.sent();
1937
1988
  _a.label = 2;
@@ -1945,7 +1996,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
1945
1996
  if (!((eachObjectData.type === "reference" ||
1946
1997
  eachObjectData.type === "listReference") &&
1947
1998
  eachObjectData.referenceMapColumnId)) return [3 /*break*/, 2];
1948
- return [4 /*yield*/, (0, updateModule_1.handleRetrieveObjectReferenceOptions)(eachObjectData, clonedOptions_1, clonedDetails_1, selectedData, dbModule, devSettings, eachModel.id, eachModel.type === "listObject", selectedData)];
1999
+ return [4 /*yield*/, (0, updateModule_1.handleRetrieveObjectReferenceOptions)(eachObjectData, clonedOptions_1, clonedDetails_1, selectedData, dbModule, devSettings, eachModel.id, eachModel.type === "listObject", selectedData, undefined, props.type === "read")];
1949
2000
  case 1:
1950
2001
  _a.sent();
1951
2002
  _a.label = 2;
@@ -4604,7 +4655,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
4604
4655
  props.bareSettings.bareReadHandleData(newRespData);
4605
4656
  if ((props.type === "update" || props.type === "read") &&
4606
4657
  props.id !== "new") {
4607
- (0, updateModule_1.handleRetrieveReferenceOptions)(newRespData, structure, dbModule, devSettings, setReferencesOptions, setReferencesDetails);
4658
+ (0, updateModule_1.handleRetrieveReferenceOptions)(newRespData, structure, dbModule, devSettings, setReferencesOptions, setReferencesDetails, props.type === "read");
4608
4659
  }
4609
4660
  _k.label = 9;
4610
4661
  case 9:
@@ -8596,7 +8647,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
8596
8647
  };
8597
8648
  return (react_1.default.createElement(react_1.default.Fragment, null,
8598
8649
  renderNotification("root"),
8599
- ((_44 = (_43 = props.renderSettings) === null || _43 === void 0 ? void 0 : _43.renderLoadingUI) === null || _44 === void 0 ? void 0 : _44.call(_43)) && loading ? ((_45 = props.renderSettings) === null || _45 === void 0 ? void 0 : _45.renderLoadingUI()) : (react_1.default.createElement(modal_1.Modal, { maxWidth: selectedObjectStructureId || excelModal ? "2xl" : undefined, open: modalVisible, title: renderModalTitle(), renderContent: renderModalContent, onClose: function () {
8650
+ ((_42 = (_41 = props.renderSettings) === null || _41 === void 0 ? void 0 : _41.renderLoadingUI) === null || _42 === void 0 ? void 0 : _42.call(_41)) && loading ? ((_43 = props.renderSettings) === null || _43 === void 0 ? void 0 : _43.renderLoadingUI()) : (react_1.default.createElement(modal_1.Modal, { maxWidth: selectedObjectStructureId || excelModal ? "2xl" : undefined, open: modalVisible, title: renderModalTitle(), renderContent: renderModalContent, onClose: function () {
8600
8651
  var _a, _b;
8601
8652
  if (loading)
8602
8653
  return;