blixify-ui-web 1.2.21 → 1.2.23

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.
@@ -149,7 +149,7 @@ var settingsModal_1 = require("./settingsModal");
149
149
  var flexFilterModel_1 = require("./flexFilterModel");
150
150
  var flexFilterModule_1 = require("./flexFilterModule");
151
151
  exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
152
- 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;
152
+ 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;
153
153
  var intialiseDefaultFilterValues = function () {
154
154
  var _a;
155
155
  var initialFilterSearch = {};
@@ -210,143 +210,143 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
210
210
  initialFilterReferenceDate: initialFilterReferenceDate,
211
211
  };
212
212
  };
213
- var _45 = intialiseDefaultFilterValues(), initialFilterSearch = _45.initialFilterSearch, initialFilterSearchParams = _45.initialFilterSearchParams, initialFilterSelection = _45.initialFilterSelection, initialFilterReference = _45.initialFilterReference, initialFilterReferenceDate = _45.initialFilterReferenceDate;
214
- var _46 = (0, react_1.useState)(false), loading = _46[0], setLoading = _46[1];
215
- var _47 = (0, react_1.useState)(), notification = _47[0], setNotification = _47[1];
213
+ var _46 = intialiseDefaultFilterValues(), initialFilterSearch = _46.initialFilterSearch, initialFilterSearchParams = _46.initialFilterSearchParams, initialFilterSelection = _46.initialFilterSelection, initialFilterReference = _46.initialFilterReference, initialFilterReferenceDate = _46.initialFilterReferenceDate;
214
+ var _47 = (0, react_1.useState)(false), loading = _47[0], setLoading = _47[1];
215
+ var _48 = (0, react_1.useState)(), notification = _48[0], setNotification = _48[1];
216
216
  //INFO : Used by List
217
- var _48 = (0, react_1.useState)(initialFilterSearch), filterSearch = _48[0], setFilterSearch = _48[1];
218
- var _49 = (0, react_1.useState)(initialFilterSearchParams), filterSearchParams = _49[0], setFilterSearchParams = _49[1];
219
- var _50 = (0, react_1.useState)(initialFilterSelection), filterSelection = _50[0], setFilterSelection = _50[1];
220
- var _51 = (0, react_1.useState)(initialFilterReference), filterReference = _51[0], setFilterReference = _51[1];
221
- var _52 = (0, react_1.useState)({}), filterReferenceSearch = _52[0], setFilterReferenceSearch = _52[1];
222
- var _53 = (0, react_1.useState)({}), filterReferenceList = _53[0], setFilterReferenceList = _53[1];
223
- var _54 = (0, react_1.useState)(initialFilterReferenceDate), filterReferenceDate = _54[0], setFilterReferenceDate = _54[1];
224
- var _55 = (0, react_1.useState)(true), tableLoading = _55[0], setTableLoading = _55[1];
225
- var _56 = (0, react_1.useState)(""), cursor = _56[0], setCursor = _56[1];
226
- var _57 = (0, react_1.useState)(""), lastCursor = _57[0], setLastCursor = _57[1];
227
- var _58 = (0, react_1.useState)([]), tableData = _58[0], setTableData = _58[1];
228
- var _59 = (0, react_1.useState)([]), spaceTableData = _59[0], setSpaceTableData = _59[1];
229
- var _60 = (0, react_1.useState)(0), size = _60[0], setSize = _60[1];
230
- var _61 = (0, react_1.useState)((_b = (_a = props.organise) === null || _a === void 0 ? void 0 : _a.pageIndex) !== null && _b !== void 0 ? _b : 0), pageIndex = _61[0], setPageIndex = _61[1];
231
- var _62 = (0, react_1.useState)([]), selectedIds = _62[0], setSelectedIds = _62[1];
232
- var _63 = (0, react_1.useState)(false), selectAll = _63[0], setSelectAll = _63[1];
233
- var _64 = (0, react_1.useState)(""), deletePasscode = _64[0], setDeletePasscode = _64[1];
234
- var _65 = (0, react_1.useState)(""), deletePasscodeInput = _65[0], setDeletePasscodeInput = _65[1];
235
- var _66 = (0, react_1.useState)(""), deleteFeedId = _66[0], setDeleteFeedId = _66[1];
217
+ var _49 = (0, react_1.useState)(initialFilterSearch), filterSearch = _49[0], setFilterSearch = _49[1];
218
+ var _50 = (0, react_1.useState)(initialFilterSearchParams), filterSearchParams = _50[0], setFilterSearchParams = _50[1];
219
+ var _51 = (0, react_1.useState)(initialFilterSelection), filterSelection = _51[0], setFilterSelection = _51[1];
220
+ var _52 = (0, react_1.useState)(initialFilterReference), filterReference = _52[0], setFilterReference = _52[1];
221
+ var _53 = (0, react_1.useState)({}), filterReferenceSearch = _53[0], setFilterReferenceSearch = _53[1];
222
+ var _54 = (0, react_1.useState)({}), filterReferenceList = _54[0], setFilterReferenceList = _54[1];
223
+ var _55 = (0, react_1.useState)(initialFilterReferenceDate), filterReferenceDate = _55[0], setFilterReferenceDate = _55[1];
224
+ var _56 = (0, react_1.useState)(true), tableLoading = _56[0], setTableLoading = _56[1];
225
+ var _57 = (0, react_1.useState)(""), cursor = _57[0], setCursor = _57[1];
226
+ var _58 = (0, react_1.useState)(""), lastCursor = _58[0], setLastCursor = _58[1];
227
+ var _59 = (0, react_1.useState)([]), tableData = _59[0], setTableData = _59[1];
228
+ var _60 = (0, react_1.useState)([]), spaceTableData = _60[0], setSpaceTableData = _60[1];
229
+ var _61 = (0, react_1.useState)(0), size = _61[0], setSize = _61[1];
230
+ 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];
231
+ var _63 = (0, react_1.useState)([]), selectedIds = _63[0], setSelectedIds = _63[1];
232
+ var _64 = (0, react_1.useState)(false), selectAll = _64[0], setSelectAll = _64[1];
233
+ var _65 = (0, react_1.useState)(""), deletePasscode = _65[0], setDeletePasscode = _65[1];
234
+ var _66 = (0, react_1.useState)(""), deletePasscodeInput = _66[0], setDeletePasscodeInput = _66[1];
235
+ var _67 = (0, react_1.useState)(""), deleteFeedId = _67[0], setDeleteFeedId = _67[1];
236
236
  //INFO : Used by List Organise
237
- var _67 = (0, react_1.useState)(false), sortModal = _67[0], setSortModal = _67[1];
238
- var _68 = (0, react_1.useState)(false), filterModal = _68[0], setFilterModal = _68[1];
239
- var _69 = (0, react_1.useState)(false), filterDraft = _69[0], setFilterDraft = _69[1];
240
- var _70 = (0, react_1.useState)(false), addTabModal = _70[0], setAddTabModal = _70[1];
241
- var _71 = (0, react_1.useState)(false), overviewModal = _71[0], setOverviewModal = _71[1];
242
- var _72 = (0, react_1.useState)(props.defaultTab
237
+ var _68 = (0, react_1.useState)(false), sortModal = _68[0], setSortModal = _68[1];
238
+ var _69 = (0, react_1.useState)(false), filterModal = _69[0], setFilterModal = _69[1];
239
+ var _70 = (0, react_1.useState)(false), filterDraft = _70[0], setFilterDraft = _70[1];
240
+ var _71 = (0, react_1.useState)(false), addTabModal = _71[0], setAddTabModal = _71[1];
241
+ var _72 = (0, react_1.useState)(false), overviewModal = _72[0], setOverviewModal = _72[1];
242
+ var _73 = (0, react_1.useState)(props.defaultTab
243
243
  ? (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)
244
- : ""), selectedTab = _72[0], setSelectedTab = _72[1];
245
- var _73 = (0, react_1.useState)("dayGridMonth"), calendarView = _73[0], setCalendarView = _73[1];
246
- var _74 = (0, react_1.useState)(new Date()), calendarTabMonth = _74[0], setCalendarTabMonth = _74[1];
247
- var _75 = (0, react_1.useState)(true), kanbanDroppable = _75[0], setKanbanDroppable = _75[1];
248
- var _76 = (0, react_1.useState)([]), kanbanOptions = _76[0], setKanbanOptions = _76[1];
249
- var _77 = (0, react_1.useState)(false), queryForm = _77[0], setQueryForm = _77[1];
250
- var _78 = (0, react_1.useState)(false), batchUpdateModal = _78[0], setBatchUpdateModal = _78[1];
251
- var _79 = (0, react_1.useState)({
244
+ : ""), selectedTab = _73[0], setSelectedTab = _73[1];
245
+ var _74 = (0, react_1.useState)("dayGridMonth"), calendarView = _74[0], setCalendarView = _74[1];
246
+ var _75 = (0, react_1.useState)(new Date()), calendarTabMonth = _75[0], setCalendarTabMonth = _75[1];
247
+ var _76 = (0, react_1.useState)(true), kanbanDroppable = _76[0], setKanbanDroppable = _76[1];
248
+ var _77 = (0, react_1.useState)([]), kanbanOptions = _77[0], setKanbanOptions = _77[1];
249
+ var _78 = (0, react_1.useState)(false), queryForm = _78[0], setQueryForm = _78[1];
250
+ var _79 = (0, react_1.useState)(false), batchUpdateModal = _79[0], setBatchUpdateModal = _79[1];
251
+ var _80 = (0, react_1.useState)({
252
252
  columnId: "",
253
253
  columnData: {},
254
- }), batchUpdateData = _79[0], setBatchUpdateData = _79[1];
255
- var _80 = (0, react_1.useState)((props === null || props === void 0 ? void 0 : props.model) || []), structure = _80[0], setStructure = _80[1];
256
- var _81 = (0, react_1.useState)(((_e = props === null || props === void 0 ? void 0 : props.organise) === null || _e === void 0 ? void 0 : _e.additionalQuery) || []), additionalQuery = _81[0], setAdditionalQuery = _81[1];
254
+ }), batchUpdateData = _80[0], setBatchUpdateData = _80[1];
255
+ var _81 = (0, react_1.useState)((props === null || props === void 0 ? void 0 : props.model) || []), structure = _81[0], setStructure = _81[1];
256
+ 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];
257
257
  // INFO: State for user-configurable flex filters (Monday.com-style)
258
258
  // INFO: Initialize with one empty row so users see inputs immediately without clicking "Add Filter"
259
- var _82 = (0, react_1.useState)([
259
+ var _83 = (0, react_1.useState)([
260
260
  {
261
261
  id: "flex-filter-init-row",
262
262
  columnId: "",
263
263
  operator: "=",
264
264
  value: undefined,
265
265
  },
266
- ]), flexFilters = _82[0], setFlexFilters = _82[1];
267
- var _83 = (0, react_1.useState)({}), flexFilterReferenceOptions = _83[0], setFlexFilterReferenceOptions = _83[1];
268
- var _84 = (0, react_1.useState)({}), flexFilterReferenceSearch = _84[0], setFlexFilterReferenceSearch = _84[1];
269
- var _85 = (0, react_1.useState)(false), flexFilterModalOpen = _85[0], setFlexFilterModalOpen = _85[1];
266
+ ]), flexFilters = _83[0], setFlexFilters = _83[1];
267
+ var _84 = (0, react_1.useState)({}), flexFilterReferenceOptions = _84[0], setFlexFilterReferenceOptions = _84[1];
268
+ var _85 = (0, react_1.useState)({}), flexFilterReferenceSearch = _85[0], setFlexFilterReferenceSearch = _85[1];
269
+ var _86 = (0, react_1.useState)(false), flexFilterModalOpen = _86[0], setFlexFilterModalOpen = _86[1];
270
270
  //INFO : Used by Auth
271
- var _86 = (0, react_1.useState)({
271
+ var _87 = (0, react_1.useState)({
272
272
  email: "",
273
273
  google: "",
274
274
  phone: "",
275
275
  disabled: false,
276
276
  create: false,
277
- }), authMethods = _86[0], setAuthMethods = _86[1];
278
- var _87 = (0, react_1.useState)(""), selectedAuthMethod = _87[0], setSelectedAuthMethod = _87[1];
277
+ }), authMethods = _87[0], setAuthMethods = _87[1];
278
+ var _88 = (0, react_1.useState)(""), selectedAuthMethod = _88[0], setSelectedAuthMethod = _88[1];
279
279
  // INFO: Used by Activity Log
280
- var _88 = (0, react_1.useState)(false), activityModal = _88[0], setActivityModal = _88[1];
281
- var _89 = (0, react_1.useState)(""), activityId = _89[0], setActivityId = _89[1];
280
+ var _89 = (0, react_1.useState)(false), activityModal = _89[0], setActivityModal = _89[1];
281
+ var _90 = (0, react_1.useState)(""), activityId = _90[0], setActivityId = _90[1];
282
282
  //INFO : Used by Export
283
- var _90 = (0, react_1.useState)(null), csvFile = _90[0], setCSVFile = _90[1];
284
- var _91 = (0, react_1.useState)([]), csvFileData = _91[0], setCSVFileData = _91[1];
285
- var _92 = (0, react_1.useState)(0), stepCSVIndex = _92[0], setStepCSVIndex = _92[1];
286
- var _93 = (0, react_1.useState)({}), listCSVMapAttribute = _93[0], setListCSVMapAttribute = _93[1];
287
- var _94 = (0, react_1.useState)({}), listCSVObjAttribute = _94[0], setListCSVObjAttribute = _94[1];
288
- var _95 = (0, react_1.useState)([]), csvAPIAttribute = _95[0], setCSVAPIAttribute = _95[1];
289
- var _96 = (0, react_1.useState)(((_f = props.devSettings.currentUser) === null || _f === void 0 ? void 0 : _f.userEmail) || ""), exportCSVEmail = _96[0], setExportCSVEmail = _96[1];
290
- var _97 = (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 = _97[0], setExportPDFTitle = _97[1];
291
- var _98 = (0, react_1.useState)(false), exportPDFLoading = _98[0], setExportPDFLoading = _98[1];
292
- var _99 = (0, react_1.useState)(false), exportReadPDFLoading = _99[0], setExportReadPDFLoading = _99[1];
293
- var _100 = (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 = _100[0], setExportSumAttributeIds = _100[1];
294
- var _101 = (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 = _101[0], setHideSubItems = _101[1];
295
- var _102 = (0, react_1.useState)([]), importTableData = _102[0], setImportTableData = _102[1];
296
- var _103 = (0, react_1.useState)([]), queryList = _103[0], setQueryList = _103[1];
297
- var _104 = (0, react_1.useState)(undefined), allQueryList = _104[0], setAllQueryList = _104[1];
298
- var _105 = (0, react_1.useState)(-1), queryIndex = _105[0], setQueryIndex = _105[1];
299
- var _106 = (0, react_1.useState)((_q = props.organise) === null || _q === void 0 ? void 0 : _q.groupBy), groupId = _106[0], setGroupId = _106[1];
300
- var _107 = (0, react_1.useState)(""), readTabSection = _107[0], setReadTabSection = _107[1];
301
- var _108 = (0, react_1.useState)(false), readFloatingNav = _108[0], setReadFloatingNav = _108[1];
283
+ var _91 = (0, react_1.useState)(null), csvFile = _91[0], setCSVFile = _91[1];
284
+ var _92 = (0, react_1.useState)([]), csvFileData = _92[0], setCSVFileData = _92[1];
285
+ var _93 = (0, react_1.useState)(0), stepCSVIndex = _93[0], setStepCSVIndex = _93[1];
286
+ var _94 = (0, react_1.useState)({}), listCSVMapAttribute = _94[0], setListCSVMapAttribute = _94[1];
287
+ var _95 = (0, react_1.useState)({}), listCSVObjAttribute = _95[0], setListCSVObjAttribute = _95[1];
288
+ var _96 = (0, react_1.useState)([]), csvAPIAttribute = _96[0], setCSVAPIAttribute = _96[1];
289
+ var _97 = (0, react_1.useState)(((_f = props.devSettings.currentUser) === null || _f === void 0 ? void 0 : _f.userEmail) || ""), exportCSVEmail = _97[0], setExportCSVEmail = _97[1];
290
+ 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];
291
+ var _99 = (0, react_1.useState)(false), exportPDFLoading = _99[0], setExportPDFLoading = _99[1];
292
+ var _100 = (0, react_1.useState)(false), exportReadPDFLoading = _100[0], setExportReadPDFLoading = _100[1];
293
+ 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];
294
+ 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];
295
+ var _103 = (0, react_1.useState)([]), importTableData = _103[0], setImportTableData = _103[1];
296
+ var _104 = (0, react_1.useState)([]), queryList = _104[0], setQueryList = _104[1];
297
+ var _105 = (0, react_1.useState)(undefined), allQueryList = _105[0], setAllQueryList = _105[1];
298
+ var _106 = (0, react_1.useState)(-1), queryIndex = _106[0], setQueryIndex = _106[1];
299
+ var _107 = (0, react_1.useState)((_q = props.organise) === null || _q === void 0 ? void 0 : _q.groupBy), groupId = _107[0], setGroupId = _107[1];
300
+ var _108 = (0, react_1.useState)(""), readTabSection = _108[0], setReadTabSection = _108[1];
301
+ var _109 = (0, react_1.useState)(false), readFloatingNav = _109[0], setReadFloatingNav = _109[1];
302
302
  var readTabSectionRefs = (0, react_1.useRef)({});
303
303
  //INFO : Used by Read
304
304
  //INFO : Used by Update
305
- var _109 = (0, react_1.useState)(false), modalVisible = _109[0], setModalVisible = _109[1];
306
- var _110 = (0, react_1.useState)(false), deleteModal = _110[0], setDeleteModal = _110[1];
307
- var _111 = (0, react_1.useState)(false), excelModal = _111[0], setExcelModal = _111[1];
308
- var _112 = (0, react_1.useState)(false), exportExcel = _112[0], setExportExcel = _112[1];
309
- var _113 = (0, react_1.useState)(""), exportType = _113[0], setExportType = _113[1];
310
- var _114 = (0, react_1.useState)(false), exportQR = _114[0], setExportQR = _114[1];
311
- var _115 = (0, react_1.useState)(function () {
305
+ var _110 = (0, react_1.useState)(false), modalVisible = _110[0], setModalVisible = _110[1];
306
+ var _111 = (0, react_1.useState)(false), deleteModal = _111[0], setDeleteModal = _111[1];
307
+ var _112 = (0, react_1.useState)(false), excelModal = _112[0], setExcelModal = _112[1];
308
+ var _113 = (0, react_1.useState)(false), exportExcel = _113[0], setExportExcel = _113[1];
309
+ var _114 = (0, react_1.useState)(""), exportType = _114[0], setExportType = _114[1];
310
+ var _115 = (0, react_1.useState)(false), exportQR = _115[0], setExportQR = _115[1];
311
+ var _116 = (0, react_1.useState)(function () {
312
312
  var _a, _b;
313
313
  var firstTabId = (_b = (_a = structure.find(function (item) { return item.tabId; })) === null || _a === void 0 ? void 0 : _a.tabId) !== null && _b !== void 0 ? _b : "";
314
314
  return firstTabId;
315
- }), activeTab = _115[0], setActiveTab = _115[1];
316
- var _116 = (0, react_1.useState)(false), signatureSigning = _116[0], setSignatureSigning = _116[1];
317
- var _117 = (0, react_1.useState)({}), selectedData = _117[0], setSelectedData = _117[1];
318
- var _118 = (0, react_1.useState)(""), selectedObjectStructureId = _118[0], setSelectedObjectStructureId = _118[1];
319
- var _119 = (0, react_1.useState)(""), selectedObjectId = _119[0], setSelectedObjectId = _119[1];
320
- var _120 = (0, react_1.useState)(""), selectedListAddressId = _120[0], setSelectedListAddressId = _120[1];
321
- var _121 = (0, react_1.useState)(-1), selectedListAddressIndex = _121[0], setSelectedListAddressIndex = _121[1];
322
- var _122 = (0, react_1.useState)({
315
+ }), activeTab = _116[0], setActiveTab = _116[1];
316
+ var _117 = (0, react_1.useState)(false), signatureSigning = _117[0], setSignatureSigning = _117[1];
317
+ var _118 = (0, react_1.useState)({}), selectedData = _118[0], setSelectedData = _118[1];
318
+ var _119 = (0, react_1.useState)(""), selectedObjectStructureId = _119[0], setSelectedObjectStructureId = _119[1];
319
+ var _120 = (0, react_1.useState)(""), selectedObjectId = _120[0], setSelectedObjectId = _120[1];
320
+ var _121 = (0, react_1.useState)(""), selectedListAddressId = _121[0], setSelectedListAddressId = _121[1];
321
+ var _122 = (0, react_1.useState)(-1), selectedListAddressIndex = _122[0], setSelectedListAddressIndex = _122[1];
322
+ var _123 = (0, react_1.useState)({
323
323
  lat: 0,
324
324
  lng: 0,
325
325
  name: "",
326
- }), selectedListAddress = _122[0], setSelectedListAddress = _122[1];
327
- var _123 = (0, react_1.useState)({}), selectedObjectData = _123[0], setSelectedObjectData = _123[1];
328
- var _124 = (0, react_1.useState)(false), referenceLoading = _124[0], setReferenceLoading = _124[1];
329
- var _125 = (0, react_1.useState)({}), referencesOptions = _125[0], setReferencesOptions = _125[1];
330
- var _126 = (0, react_1.useState)({}), referencesDetails = _126[0], setReferencesDetails = _126[1];
331
- var _127 = (0, react_1.useState)({}), referenceDeleteTableData = _127[0], setReferenceDeleteTableData = _127[1];
332
- var _128 = (0, react_1.useState)(0), referenceDeleteIndex = _128[0], setReferenceDeleteIndex = _128[1];
333
- var _129 = (0, react_1.useState)({
326
+ }), selectedListAddress = _123[0], setSelectedListAddress = _123[1];
327
+ var _124 = (0, react_1.useState)({}), selectedObjectData = _124[0], setSelectedObjectData = _124[1];
328
+ var _125 = (0, react_1.useState)(false), referenceLoading = _125[0], setReferenceLoading = _125[1];
329
+ var _126 = (0, react_1.useState)({}), referencesOptions = _126[0], setReferencesOptions = _126[1];
330
+ var _127 = (0, react_1.useState)({}), referencesDetails = _127[0], setReferencesDetails = _127[1];
331
+ var _128 = (0, react_1.useState)({}), referenceDeleteTableData = _128[0], setReferenceDeleteTableData = _128[1];
332
+ var _129 = (0, react_1.useState)(0), referenceDeleteIndex = _129[0], setReferenceDeleteIndex = _129[1];
333
+ var _130 = (0, react_1.useState)({
334
334
  id: "",
335
335
  name: "",
336
336
  type: "string",
337
- }), referenceCreationModal = _129[0], setReferenceCreationModal = _129[1];
338
- var _130 = (0, react_1.useState)({}), referenceModelSchema = _130[0], setReferenceSchema = _130[1];
339
- var _131 = (0, react_1.useState)([]), kanbanChecked = _131[0], setKanbanChecked = _131[1];
337
+ }), referenceCreationModal = _130[0], setReferenceCreationModal = _130[1];
338
+ var _131 = (0, react_1.useState)({}), referenceModelSchema = _131[0], setReferenceSchema = _131[1];
339
+ var _132 = (0, react_1.useState)([]), kanbanChecked = _132[0], setKanbanChecked = _132[1];
340
340
  //INFO : Offline
341
- var _132 = (0, react_1.useState)(0), offlineDataLength = _132[0], setOfflineDataLength = _132[1];
342
- var _133 = (0, react_1.useState)(false), offlineModal = _133[0], setOfflineModal = _133[1];
341
+ var _133 = (0, react_1.useState)(0), offlineDataLength = _133[0], setOfflineDataLength = _133[1];
342
+ var _134 = (0, react_1.useState)(false), offlineModal = _134[0], setOfflineModal = _134[1];
343
343
  // INFO: live-stream state — driven by socket connection and navigator.onLine
344
- var _134 = (0, react_1.useState)(false), isLive = _134[0], setIsLive = _134[1];
345
- var _135 = (0, react_1.useState)(false), isLiveOffline = _135[0], setIsLiveOffline = _135[1];
344
+ var _135 = (0, react_1.useState)(false), isLive = _135[0], setIsLive = _135[1];
345
+ var _136 = (0, react_1.useState)(false), isLiveOffline = _136[0], setIsLiveOffline = _136[1];
346
346
  // INFO: true when navigator is offline — used to switch ReadQueryHoc between
347
347
  // server reads (online, full pagination) and IndexedDB reads (offline, cached data).
348
348
  // Independent of SSE status so it works even when bareSocketName is not set.
349
- var _136 = (0, react_1.useState)(typeof navigator !== "undefined" ? !navigator.onLine : false), isNetworkOffline = _136[0], setIsNetworkOffline = _136[1];
349
+ var _137 = (0, react_1.useState)(typeof navigator !== "undefined" ? !navigator.onLine : false), isNetworkOffline = _137[0], setIsNetworkOffline = _137[1];
350
350
  var previousType = (0, react_1.useRef)(null);
351
351
  var previousSelectedData = (0, react_1.useRef)(null);
352
352
  var scrollSentinelRef = (0, react_1.useRef)(null);
@@ -426,29 +426,33 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
426
426
  var limit = props.limit ? props.limit : 10;
427
427
  var isEditor = ((_v = props.edit) === null || _v === void 0 ? void 0 : _v.allEditable) ? true : false;
428
428
  var isOffline = (_w = props.bareSettings) === null || _w === void 0 ? void 0 : _w.bareOffline;
429
- var showId = (_x = props.space) === null || _x === void 0 ? void 0 : _x.showId;
429
+ // INFO: when bareOfflineNetworkAware is true, the save path is also gated on
430
+ // the live network state — online saves go to the server even if bareOffline
431
+ // is true, offline saves go to IDB as normal.
432
+ var isOfflineNetworkListener = isOffline && ((_x = props.bareSettings) === null || _x === void 0 ? void 0 : _x.bareOfflineNetworkListener);
433
+ var showId = (_y = props.space) === null || _y === void 0 ? void 0 : _y.showId;
430
434
  var remainId = showId || selectedObjectStructureId ? true : false;
431
- var idField = ((_y = props.space) === null || _y === void 0 ? void 0 : _y.idField) || ((_z = props.organise) === null || _z === void 0 ? void 0 : _z.idField);
432
- var pipeline = (_0 = props === null || props === void 0 ? void 0 : props.space) === null || _0 === void 0 ? void 0 : _0.pipeline;
433
- if ((_1 = props.bareSettings) === null || _1 === void 0 ? void 0 : _1.bareListPipeline) {
435
+ var idField = ((_z = props.space) === null || _z === void 0 ? void 0 : _z.idField) || ((_0 = props.organise) === null || _0 === void 0 ? void 0 : _0.idField);
436
+ var pipeline = (_1 = props === null || props === void 0 ? void 0 : props.space) === null || _1 === void 0 ? void 0 : _1.pipeline;
437
+ if ((_2 = props.bareSettings) === null || _2 === void 0 ? void 0 : _2.bareListPipeline) {
434
438
  pipeline = pipeline
435
439
  ? __spreadArray(__spreadArray([], pipeline, true), props.bareSettings.bareListPipeline, true) : props.bareSettings.bareListPipeline;
436
440
  }
437
- var hasNavigation = ((_2 = props.organise) === null || _2 === void 0 ? void 0 : _2.handleNavigate) ? true : false;
438
- var columnType = (_4 = (_3 = props.bareSettings) === null || _3 === void 0 ? void 0 : _3.bareUpdateColumnType) !== null && _4 !== void 0 ? _4 : "two";
441
+ var hasNavigation = ((_3 = props.organise) === null || _3 === void 0 ? void 0 : _3.handleNavigate) ? true : false;
442
+ var columnType = (_5 = (_4 = props.bareSettings) === null || _4 === void 0 ? void 0 : _4.bareUpdateColumnType) !== null && _5 !== void 0 ? _5 : "two";
439
443
  var formColumn = columnType === "one" ? "grid-cols-2" : "grid-cols-4";
440
- var useMobileView = (_6 = (_5 = props.bareSettings) === null || _5 === void 0 ? void 0 : _5.bareUpdateMobileView) !== null && _6 !== void 0 ? _6 : false;
444
+ var useMobileView = (_7 = (_6 = props.bareSettings) === null || _6 === void 0 ? void 0 : _6.bareUpdateMobileView) !== null && _7 !== void 0 ? _7 : false;
441
445
  var gridGap = useMobileView ? "gap-x-6 gap-y-2 md:gap-y-6" : "gap-6";
442
- var isActivityLog = (((_8 = (_7 = props.edit) === null || _7 === void 0 ? void 0 : _7.activityLog) === null || _8 === void 0 ? void 0 : _8.enableComments) &&
443
- ((_9 = props.edit) === null || _9 === void 0 ? void 0 : _9.activityLog.commentCollectionId)) ||
444
- (((_11 = (_10 = props.edit) === null || _10 === void 0 ? void 0 : _10.activityLog) === null || _11 === void 0 ? void 0 : _11.enableLogs) &&
445
- ((_12 = props.edit) === null || _12 === void 0 ? void 0 : _12.activityLog.logsCollectionId));
446
- var customPaginationSize = ((_13 = props.organise) === null || _13 === void 0 ? void 0 : _13.customPaginationCount)
446
+ var isActivityLog = (((_9 = (_8 = props.edit) === null || _8 === void 0 ? void 0 : _8.activityLog) === null || _9 === void 0 ? void 0 : _9.enableComments) &&
447
+ ((_10 = props.edit) === null || _10 === void 0 ? void 0 : _10.activityLog.commentCollectionId)) ||
448
+ (((_12 = (_11 = props.edit) === null || _11 === void 0 ? void 0 : _11.activityLog) === null || _12 === void 0 ? void 0 : _12.enableLogs) &&
449
+ ((_13 = props.edit) === null || _13 === void 0 ? void 0 : _13.activityLog.logsCollectionId));
450
+ var customPaginationSize = ((_14 = props.organise) === null || _14 === void 0 ? void 0 : _14.customPaginationCount)
447
451
  ? props.organise.customPaginationCount(size)
448
452
  : undefined;
449
453
  //TODO : Code - Pass ...devSettings, search dbEndpoint:
450
454
  var writeServerQuery = new writeQuery_1.WriteQuery({
451
- dbModule: (_14 = props.lib) === null || _14 === void 0 ? void 0 : _14.axios,
455
+ dbModule: (_15 = props.lib) === null || _15 === void 0 ? void 0 : _15.axios,
452
456
  dbType: devSettings.server,
453
457
  dbCollection: props.collectionId,
454
458
  dbEndpoint: devSettings.dbEndpoint,
@@ -456,7 +460,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
456
460
  dbUserToken: devSettings.dbUserToken,
457
461
  });
458
462
  var readServerQuery = new readQuery_1.ReadQuery({
459
- dbModule: (_15 = props.lib) === null || _15 === void 0 ? void 0 : _15.axios,
463
+ dbModule: (_16 = props.lib) === null || _16 === void 0 ? void 0 : _16.axios,
460
464
  dbType: devSettings.server,
461
465
  dbCollection: props.collectionId,
462
466
  dbEndpoint: devSettings.dbEndpoint,
@@ -464,9 +468,9 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
464
468
  dbUserToken: devSettings.dbUserToken,
465
469
  });
466
470
  var moreButtonPopUp = [
467
- ((_16 = props.edit) === null || _16 === void 0 ? void 0 : _16.allEditable) &&
471
+ ((_17 = props.edit) === null || _17 === void 0 ? void 0 : _17.allEditable) &&
468
472
  !isFirebase &&
469
- !((_18 = (_17 = props.organise) === null || _17 === void 0 ? void 0 : _17.exportSettings) === null || _18 === void 0 ? void 0 : _18.hideImportCSV)
473
+ !((_19 = (_18 = props.organise) === null || _18 === void 0 ? void 0 : _18.exportSettings) === null || _19 === void 0 ? void 0 : _19.hideImportCSV)
470
474
  ? {
471
475
  text: "Import Excel",
472
476
  onClick: function () {
@@ -475,7 +479,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
475
479
  },
476
480
  }
477
481
  : null,
478
- !((_20 = (_19 = props.organise) === null || _19 === void 0 ? void 0 : _19.exportSettings) === null || _20 === void 0 ? void 0 : _20.hideExportCSV)
482
+ !((_21 = (_20 = props.organise) === null || _20 === void 0 ? void 0 : _20.exportSettings) === null || _21 === void 0 ? void 0 : _21.hideExportCSV)
479
483
  ? {
480
484
  text: "Export CSV",
481
485
  onClick: function () {
@@ -485,7 +489,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
485
489
  },
486
490
  }
487
491
  : null,
488
- !((_22 = (_21 = props.organise) === null || _21 === void 0 ? void 0 : _21.exportSettings) === null || _22 === void 0 ? void 0 : _22.hideExportExcel)
492
+ !((_23 = (_22 = props.organise) === null || _22 === void 0 ? void 0 : _22.exportSettings) === null || _23 === void 0 ? void 0 : _23.hideExportExcel)
489
493
  ? {
490
494
  text: "Export Excel",
491
495
  onClick: function () {
@@ -495,7 +499,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
495
499
  },
496
500
  }
497
501
  : null,
498
- !((_24 = (_23 = props.organise) === null || _23 === void 0 ? void 0 : _23.exportSettings) === null || _24 === void 0 ? void 0 : _24.hideExportPDF)
502
+ !((_25 = (_24 = props.organise) === null || _24 === void 0 ? void 0 : _24.exportSettings) === null || _25 === void 0 ? void 0 : _25.hideExportPDF)
499
503
  ? {
500
504
  text: "Export PDF",
501
505
  onClick: function () {
@@ -505,7 +509,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
505
509
  },
506
510
  }
507
511
  : null,
508
- !((_26 = (_25 = props.organise) === null || _25 === void 0 ? void 0 : _25.exportSettings) === null || _26 === void 0 ? void 0 : _26.hideExportQR)
512
+ !((_27 = (_26 = props.organise) === null || _26 === void 0 ? void 0 : _26.exportSettings) === null || _27 === void 0 ? void 0 : _27.hideExportQR)
509
513
  ? {
510
514
  text: "Export QR",
511
515
  onClick: function () {
@@ -515,7 +519,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
515
519
  },
516
520
  }
517
521
  : null,
518
- !((_28 = (_27 = props.organise) === null || _27 === void 0 ? void 0 : _27.exportSettings) === null || _28 === void 0 ? void 0 : _28.hideExportQR)
522
+ !((_29 = (_28 = props.organise) === null || _28 === void 0 ? void 0 : _28.exportSettings) === null || _29 === void 0 ? void 0 : _29.hideExportQR)
519
523
  ? {
520
524
  text: "Export QR(Data)",
521
525
  onClick: function () {
@@ -525,7 +529,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
525
529
  },
526
530
  }
527
531
  : null,
528
- !((_30 = (_29 = props.organise) === null || _29 === void 0 ? void 0 : _29.exportSettings) === null || _30 === void 0 ? void 0 : _30.hideExportPrint)
532
+ !((_31 = (_30 = props.organise) === null || _30 === void 0 ? void 0 : _30.exportSettings) === null || _31 === void 0 ? void 0 : _31.hideExportPrint)
529
533
  ? {
530
534
  text: "Print",
531
535
  onClick: function () {
@@ -535,7 +539,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
535
539
  },
536
540
  }
537
541
  : null,
538
- !((_32 = (_31 = props.organise) === null || _31 === void 0 ? void 0 : _31.exportSettings) === null || _32 === void 0 ? void 0 : _32.hideExportDraft)
542
+ !((_33 = (_32 = props.organise) === null || _32 === void 0 ? void 0 : _32.exportSettings) === null || _33 === void 0 ? void 0 : _33.hideExportDraft)
539
543
  ? {
540
544
  text: filterDraft ? "Show All Items" : "Filter Draft",
541
545
  onClick: function () {
@@ -544,7 +548,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
544
548
  }
545
549
  : null,
546
550
  ].filter(Boolean);
547
- if ((_33 = props.organise) === null || _33 === void 0 ? void 0 : _33.moreSettings)
551
+ if ((_34 = props.organise) === null || _34 === void 0 ? void 0 : _34.moreSettings)
548
552
  moreButtonPopUp = moreButtonPopUp.concat(props.organise.moreSettings);
549
553
  //=====================================================================================
550
554
  //SECTION: Flex Filter Handlers
@@ -667,7 +671,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
667
671
  (0, react_1.useEffect)(function () {
668
672
  handleOfflinePrefetch();
669
673
  /* eslint-disable */
670
- }, [props.collectionId, (_34 = props.bareSettings) === null || _34 === void 0 ? void 0 : _34.bareOffline]);
674
+ }, [props.collectionId, (_35 = props.bareSettings) === null || _35 === void 0 ? void 0 : _35.bareOffline]);
671
675
  /* eslint-enable */
672
676
  // INFO: MRQ polling — calls handleRefresh every N ms (e.g. 1500) as a fallback.
673
677
  // Calls through handleRefreshRef so the interval always dispatches the latest
@@ -687,7 +691,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
687
691
  }, interval);
688
692
  return function () { return clearInterval(timer); };
689
693
  /* eslint-disable */
690
- }, [(_35 = props.bareSettings) === null || _35 === void 0 ? void 0 : _35.barePollingInterval, isLive, isNetworkOffline]);
694
+ }, [(_36 = props.bareSettings) === null || _36 === void 0 ? void 0 : _36.barePollingInterval, isLive, isNetworkOffline]);
691
695
  /* eslint-enable */
692
696
  // INFO: Pub/Sub → SSE live-stream — driven by bareSettings.bareSocketName
693
697
  // EventSource URL: {sseEndpoint}/{room}?bm_apiToken={token}
@@ -729,7 +733,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
729
733
  };
730
734
  /* eslint-disable */
731
735
  }, [
732
- (_36 = props.bareSettings) === null || _36 === void 0 ? void 0 : _36.bareSocketName,
736
+ (_37 = props.bareSettings) === null || _37 === void 0 ? void 0 : _37.bareSocketName,
733
737
  props.collectionId,
734
738
  props.devSettings.sseEndpoint,
735
739
  props.devSettings.dbAPIToken,
@@ -958,10 +962,10 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
958
962
  props.collectionId,
959
963
  props.model,
960
964
  props.localURLEndpoint,
961
- (_37 = props.organise) === null || _37 === void 0 ? void 0 : _37.extendedTabs,
962
- (_38 = props.organise) === null || _38 === void 0 ? void 0 : _38.viewId,
963
- (_39 = props.organise) === null || _39 === void 0 ? void 0 : _39.additionalQuery,
964
- (_40 = props.organise) === null || _40 === void 0 ? void 0 : _40.groupBy,
965
+ (_38 = props.organise) === null || _38 === void 0 ? void 0 : _38.extendedTabs,
966
+ (_39 = props.organise) === null || _39 === void 0 ? void 0 : _39.viewId,
967
+ (_40 = props.organise) === null || _40 === void 0 ? void 0 : _40.additionalQuery,
968
+ (_41 = props.organise) === null || _41 === void 0 ? void 0 : _41.groupBy,
965
969
  props.type,
966
970
  ]);
967
971
  (0, react_1.useEffect)(function () {
@@ -1051,7 +1055,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
1051
1055
  };
1052
1056
  }, 100);
1053
1057
  return function () { return clearTimeout(timeoutId); };
1054
- }, [(_41 = props.organise) === null || _41 === void 0 ? void 0 : _41.showReadFloatingNav, props.type, props.id, loading]);
1058
+ }, [(_42 = props.organise) === null || _42 === void 0 ? void 0 : _42.showReadFloatingNav, props.type, props.id, loading]);
1055
1059
  (0, react_1.useEffect)(function () {
1056
1060
  if (props.type !== "read")
1057
1061
  return;
@@ -1324,81 +1328,128 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
1324
1328
  // list → mutate tableData row(s) in-place; drive IndexedDB offline store
1325
1329
  // read / update → push update into selectedData; on delete navigate back to list
1326
1330
  var handleApplyEnvelope = function (envelope) { return __awaiter(void 0, void 0, void 0, function () {
1327
- var isListView, _a, record_1, record_2, record, deletedId_1, snapData_1, record_3, safeFields_1, record, record;
1331
+ var isListView, prettifyRecords, _a, record_1, rawRecord, prettyRecord, record_2, idx, mergedRaw, prettyRecord, newTableData, newSpaceTableData, record, deletedId_1, newTableData, newSpaceTableData, snapData, rawMap_1, changedRecords_1, prettyMap_1, prettyChanged, newTableData, newSpaceTableData, record_3, safeFields_1, record, record;
1328
1332
  var _b;
1329
1333
  return __generator(this, function (_c) {
1330
1334
  switch (_c.label) {
1331
1335
  case 0:
1332
1336
  isListView = props.type === "list";
1333
- if (!isListView) return [3 /*break*/, 10];
1337
+ if (!isListView) return [3 /*break*/, 13];
1338
+ prettifyRecords = function (records) { return __awaiter(void 0, void 0, void 0, function () {
1339
+ var resolved;
1340
+ var _a, _b, _c, _d, _e, _f;
1341
+ return __generator(this, function (_g) {
1342
+ switch (_g.label) {
1343
+ case 0:
1344
+ if (!isOffline) return [3 /*break*/, 2];
1345
+ return [4 /*yield*/, handleResolveOfflineReferences(records)];
1346
+ case 1:
1347
+ resolved = _g.sent();
1348
+ return [2 /*return*/, resolved.map(function (eachData) {
1349
+ var _a, _b;
1350
+ var tempData = __assign({}, eachData);
1351
+ (0, listModule_1.handleDataEditButton)(tempData, (_a = props.organise) === null || _a === void 0 ? void 0 : _a.handleNavigate, (_b = props.bareSettings) === null || _b === void 0 ? void 0 : _b.bareListActionBtns);
1352
+ return tempData;
1353
+ })];
1354
+ case 2: return [2 /*return*/, (0, listModule_1.handleListDataBasedOnModel)(records, props.devSettings, (_a = props.lib) === null || _a === void 0 ? void 0 : _a.axios, structure, (_b = props.organise) === null || _b === void 0 ? void 0 : _b.handleNavigate, ((_c = props.organise) === null || _c === void 0 ? void 0 : _c.viewId) === "general", setActivityModal, setActivityId, isActivityLog ? (_d = props.edit) === null || _d === void 0 ? void 0 : _d.activityLog : undefined, (_e = props.bareSettings) === null || _e === void 0 ? void 0 : _e.bareListActionBtns, (_f = props.edit) === null || _f === void 0 ? void 0 : _f.disabledUpdate)];
1355
+ }
1356
+ });
1357
+ }); };
1334
1358
  _a = envelope.type;
1335
1359
  switch (_a) {
1336
1360
  case "insert": return [3 /*break*/, 1];
1337
- case "update": return [3 /*break*/, 3];
1338
- case "delete": return [3 /*break*/, 5];
1339
- case "snapshot": return [3 /*break*/, 7];
1361
+ case "update": return [3 /*break*/, 4];
1362
+ case "delete": return [3 /*break*/, 7];
1363
+ case "snapshot": return [3 /*break*/, 9];
1340
1364
  }
1341
- return [3 /*break*/, 9];
1365
+ return [3 /*break*/, 12];
1342
1366
  case 1:
1343
1367
  record_1 = envelope.payload;
1344
- setTableData(function (prev) {
1345
- if (prev.some(function (r) { return r._id === record_1._id; }))
1346
- return prev;
1347
- return __spreadArray([record_1], prev, true); // INFO: prepend — newest row at top
1348
- });
1349
- return [4 /*yield*/, indexedDb_1.indexedDb.handleUpsertLive(props.collectionId, record_1)];
1368
+ // INFO: skip if this record is already present (dedup)
1369
+ if (tableData.some(function (r) { return r._id === record_1._id; }))
1370
+ return [3 /*break*/, 12];
1371
+ rawRecord = __assign({}, record_1);
1372
+ if (rawRecord["_id"] && !rawRecord["id"]) {
1373
+ rawRecord["id"] = rawRecord["_id"];
1374
+ }
1375
+ return [4 /*yield*/, prettifyRecords([rawRecord])];
1350
1376
  case 2:
1351
- _c.sent();
1352
- return [3 /*break*/, 9];
1377
+ prettyRecord = (_c.sent())[0];
1378
+ // INFO: prepend to both lists so the newest row appears at the top,
1379
+ // keeping tableData and spaceTableData positionally identical.
1380
+ handleSetListData(__spreadArray([rawRecord], tableData, true), __spreadArray([prettyRecord], spaceTableData, true));
1381
+ return [4 /*yield*/, indexedDb_1.indexedDb.handleUpsertLive(props.collectionId, record_1)];
1353
1382
  case 3:
1383
+ _c.sent();
1384
+ return [3 /*break*/, 12];
1385
+ case 4:
1354
1386
  record_2 = envelope.payload;
1355
- setTableData(function (prev) {
1356
- var idx = prev.findIndex(function (r) { return r._id === record_2._id; });
1357
- if (idx < 0)
1358
- return prev; // INFO: row not in current page — skip
1359
- var next = __spreadArray([], prev, true);
1360
- next[idx] = __assign(__assign({}, next[idx]), record_2);
1361
- return next;
1362
- });
1387
+ idx = tableData.findIndex(function (r) { return r._id === record_2._id; });
1388
+ if (idx < 0)
1389
+ return [3 /*break*/, 12]; // INFO: row not in current page — skip
1390
+ mergedRaw = __assign(__assign({}, tableData[idx]), record_2);
1391
+ if (mergedRaw["_id"] && !mergedRaw["id"]) {
1392
+ mergedRaw["id"] = mergedRaw["_id"];
1393
+ }
1394
+ return [4 /*yield*/, prettifyRecords([mergedRaw])];
1395
+ case 5:
1396
+ prettyRecord = (_c.sent())[0];
1397
+ newTableData = __spreadArray([], tableData, true);
1398
+ newSpaceTableData = __spreadArray([], spaceTableData, true);
1399
+ newTableData[idx] = mergedRaw;
1400
+ newSpaceTableData[idx] = prettyRecord;
1401
+ handleSetListData(newTableData, newSpaceTableData);
1363
1402
  return [4 /*yield*/, indexedDb_1.indexedDb.handleUpsertLive(props.collectionId, record_2)];
1364
- case 4:
1403
+ case 6:
1365
1404
  _c.sent();
1366
- return [3 /*break*/, 9];
1367
- case 5:
1405
+ return [3 /*break*/, 12];
1406
+ case 7:
1368
1407
  record = envelope.payload;
1369
1408
  deletedId_1 = record._id;
1370
- setTableData(function (prev) {
1371
- return prev.filter(function (r) { return r._id !== deletedId_1; });
1372
- });
1409
+ newTableData = tableData.filter(function (r) { return r._id !== deletedId_1; });
1410
+ newSpaceTableData = spaceTableData.filter(function (_, i) { var _a; return ((_a = tableData[i]) === null || _a === void 0 ? void 0 : _a._id) !== deletedId_1; });
1411
+ handleSetListData(newTableData, newSpaceTableData);
1373
1412
  return [4 /*yield*/, indexedDb_1.indexedDb.handleDeleteLive(props.collectionId, deletedId_1)];
1374
- case 6:
1413
+ case 8:
1375
1414
  _c.sent();
1376
- return [3 /*break*/, 9];
1377
- case 7:
1378
- snapData_1 = Array.isArray(envelope.payload)
1415
+ return [3 /*break*/, 12];
1416
+ case 9:
1417
+ snapData = Array.isArray(envelope.payload)
1379
1418
  ? envelope.payload
1380
1419
  : [envelope.payload];
1381
- setTableData(function (prev) {
1382
- var map = new Map(prev.map(function (r) { return [r._id, r]; }));
1383
- snapData_1.forEach(function (r) {
1384
- return map.set(r._id, __assign(__assign({}, map.get(r._id)), r));
1385
- });
1386
- return Array.from(map.values());
1420
+ rawMap_1 = new Map(tableData.map(function (r) { return [r._id, r]; }));
1421
+ changedRecords_1 = [];
1422
+ snapData.forEach(function (r) {
1423
+ var merged = __assign(__assign({}, rawMap_1.get(r._id)), r);
1424
+ if (merged["_id"] && !merged["id"])
1425
+ merged["id"] = merged["_id"];
1426
+ rawMap_1.set(r._id, merged);
1427
+ changedRecords_1.push(merged);
1387
1428
  });
1429
+ prettyMap_1 = new Map(tableData.map(function (r, i) { return [r._id, spaceTableData[i]]; }));
1430
+ return [4 /*yield*/, prettifyRecords(changedRecords_1)];
1431
+ case 10:
1432
+ prettyChanged = _c.sent();
1433
+ prettyChanged.forEach(function (pretty, i) {
1434
+ prettyMap_1.set(changedRecords_1[i]._id, pretty);
1435
+ });
1436
+ newTableData = Array.from(rawMap_1.values());
1437
+ newSpaceTableData = newTableData.map(function (r) { var _a; return (_a = prettyMap_1.get(r._id)) !== null && _a !== void 0 ? _a : r; });
1438
+ handleSetListData(newTableData, newSpaceTableData);
1388
1439
  // INFO: persist reconciled docs to IndexedDB so offline mode stays
1389
1440
  // consistent after a snapshot — mirrors what insert/update/delete do
1390
1441
  // via handleUpsertLive.
1391
- return [4 /*yield*/, Promise.all(snapData_1.map(function (r) {
1442
+ return [4 /*yield*/, Promise.all(snapData.map(function (r) {
1392
1443
  return indexedDb_1.indexedDb.handleUpsertLive(props.collectionId, r);
1393
1444
  }))];
1394
- case 8:
1445
+ case 11:
1395
1446
  // INFO: persist reconciled docs to IndexedDB so offline mode stays
1396
1447
  // consistent after a snapshot — mirrors what insert/update/delete do
1397
1448
  // via handleUpsertLive.
1398
1449
  _c.sent();
1399
- return [3 /*break*/, 9];
1400
- case 9: return [3 /*break*/, 11];
1401
- case 10:
1450
+ return [3 /*break*/, 12];
1451
+ case 12: return [3 /*break*/, 14];
1452
+ case 13:
1402
1453
  // INFO: read / update view — push update into form; navigate away on delete
1403
1454
  switch (envelope.type) {
1404
1455
  case "update": {
@@ -1459,8 +1510,8 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
1459
1510
  // handle collection-level rooms that may broadcast all event types.
1460
1511
  break;
1461
1512
  }
1462
- _c.label = 11;
1463
- case 11: return [2 /*return*/];
1513
+ _c.label = 14;
1514
+ case 14: return [2 /*return*/];
1464
1515
  }
1465
1516
  });
1466
1517
  }); };
@@ -2478,7 +2529,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
2478
2529
  case 0:
2479
2530
  _a.trys.push([0, 4, , 5]);
2480
2531
  uploadAsset_1 = function (eachImage, selectedField, listObjectId, multiple) { return __awaiter(void 0, void 0, void 0, function () {
2481
- var uploadedData_1, imageValue, imageCollectionName, imageParentId, fileName, responseData, err_7;
2532
+ var uploadedData_1, hadValidEntries, imageValue, imageCollectionName, imageParentId, fileName, responseData, err_7;
2482
2533
  var _a, _b;
2483
2534
  return __generator(this, function (_c) {
2484
2535
  switch (_c.label) {
@@ -2493,11 +2544,16 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
2493
2544
  Array.isArray(selectedField["upload"]))) return [3 /*break*/, 3];
2494
2545
  uploadedData_1 = [];
2495
2546
  return [4 /*yield*/, Promise.all(selectedField["upload"].map(function (eachField) { return __awaiter(void 0, void 0, void 0, function () {
2496
- var imageCollectionName, imageParentId, originalFileName, fileName, responseData, uploaded;
2547
+ var fileNameIsValid, imageCollectionName, imageParentId, originalFileName, fileName, responseData, uploaded;
2497
2548
  var _a, _b, _c;
2498
2549
  return __generator(this, function (_d) {
2499
2550
  switch (_d.label) {
2500
2551
  case 0:
2552
+ fileNameIsValid = eachField.fileName instanceof File ||
2553
+ (typeof eachField.fileName === "string" &&
2554
+ eachField.fileName.trim() !== "");
2555
+ if (!fileNameIsValid)
2556
+ return [2 /*return*/, null];
2501
2557
  imageCollectionName = (_a = eachImage.imageCollectionName) !== null && _a !== void 0 ? _a : "";
2502
2558
  if (objectId) {
2503
2559
  imageCollectionName += "/".concat(dataId);
@@ -2543,6 +2599,10 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
2543
2599
  }); }))];
2544
2600
  case 2:
2545
2601
  _c.sent();
2602
+ hadValidEntries = uploadedData_1.length > 0 ||
2603
+ selectedField["upload"].length === 0;
2604
+ if (!hadValidEntries)
2605
+ return [2 /*return*/, selectedField];
2546
2606
  return [2 /*return*/, selectedField["data"].concat(uploadedData_1)];
2547
2607
  case 3: return [2 /*return*/, selectedField];
2548
2608
  case 4: return [3 /*break*/, 8];
@@ -3743,7 +3803,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
3743
3803
  selectedId = offlineId;
3744
3804
  id = offlineId;
3745
3805
  }
3746
- if (!(isOffline && !offlineId)) return [3 /*break*/, 2];
3806
+ if (!(isOffline && !(isOfflineNetworkListener && !isNetworkOffline) && !offlineId)) return [3 /*break*/, 2];
3747
3807
  createSelectedData_1 = selectedData;
3748
3808
  return [3 /*break*/, 4];
3749
3809
  case 2: return [4 /*yield*/, handleUploadImage(id, data)];
@@ -3924,7 +3984,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
3924
3984
  case 16: return [3 /*break*/, 25];
3925
3985
  case 17:
3926
3986
  if (!selectedId) return [3 /*break*/, 25];
3927
- if (!(isOffline && !offlineId)) return [3 /*break*/, 23];
3987
+ if (!(isOffline && !(isOfflineNetworkListener && !isNetworkOffline) && !offlineId)) return [3 /*break*/, 23];
3928
3988
  _w.label = 18;
3929
3989
  case 18:
3930
3990
  _w.trys.push([18, 21, , 22]);
@@ -8345,7 +8405,7 @@ exports.DataTemplate = (0, react_1.forwardRef)(function (props, ref) {
8345
8405
  };
8346
8406
  return (react_1.default.createElement(react_1.default.Fragment, null,
8347
8407
  renderNotification("root"),
8348
- ((_43 = (_42 = props.renderSettings) === null || _42 === void 0 ? void 0 : _42.renderLoadingUI) === null || _43 === void 0 ? void 0 : _43.call(_42)) && loading ? ((_44 = props.renderSettings) === null || _44 === void 0 ? void 0 : _44.renderLoadingUI()) : (react_1.default.createElement(modal_1.Modal, { maxWidth: selectedObjectStructureId || excelModal ? "2xl" : undefined, open: modalVisible, title: renderModalTitle(), renderContent: renderModalContent, onClose: function () {
8408
+ ((_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 () {
8349
8409
  var _a, _b;
8350
8410
  if (loading)
8351
8411
  return;