Switching to test mode, under section listings and under section accounts unable to create parent category as hitting the save button results nothing
any idea?
Switching to test mode, under section listings and under section accounts unable to create parent category as hitting the save button results nothing
any idea?
I tried in different browsers, opera, chrome, edge
same result
basically clicking on save does nothing
it happens both under listings, as well as under accounts
therefore unable to either add categories under listings, or categories under accounts
please let me know what other information you need
We need to troubleshoot this in deep. Not sure why this is happening. I will get back to you in 24hours. Checking with team on monday.
thanks for looking into this
there seems to be an issue with saving anything in the test mode as I tried other components, such as attributes, and the same occurred
another issue I came across, in normal mode, when you want to add an attribute under listing, it jumps to the home screen and again you have to click on settings and it’s a loop of this happening
Hey!
We discussed this internally and looking for some screenshots on what you are creating.
Testmode
Our assumption is you are entering a value in CATEGORY TYPE, Did you tried like that?
It will be really helpful if you can share visual like screenshots. So we can reproduce the errors.
Hi!
Thank you for the detailed screenshot. We found that your test account doesn’t have any default language set. Superadmin → Settings → Languages add the language of your choice and try to create categories. It should work fine.
Should you face any other issues, feel free to reply.
Thanks
thanks
I think it’s best to put a notice on the admin panel, to set the language first, to prevent confusion, or best, set English as default, so use can simply get on with testing the admin panel and sandbox environment
New issue
Account Attributes
trying to add attributes to accounts, results following error message:
full text of the error message:
TypeError: Cannot read properties of undefined (reading ‘key’)
keyExtractor
node_modules/react-native-web/dist/vendor/react-native/VirtualizedList/index.js:1350
1347 | horizontal: false, 1348 | initialNumToRender: 10, 1349 | keyExtractor: function keyExtractor(item, index) {> 1350 | if (item.key != null) { | ^ 1351 | return item.key; 1352 | } 1353 |
View compiled
FlatList._this._keyExtractor
node_modules/react-native-web/dist/vendor/react-native/FlatList/index.js:308
305 | /* $FlowFixMe(>=0.63.0 site=react_native_fb) This comment suppresses an 306 | * error found when Flow v0.63 was deployed. To see the error delete this 307 | * comment and run Flow. */> 308 | return keyExtractor(items, index); | ^ 309 | } 310 | }; 311 |
View compiled
_loop
node_modules/react-native-web/dist/vendor/react-native/VirtualizedList/index.js:838
835 | 836 | var _loop = function _loop(ii) { 837 | var item = getItem(data, ii);> 838 | var key = keyExtractor(item, ii); | ^ 839 | 840 | _this2._indicesToKeys.set(ii, key); 841 |
View compiled
VirtualizedList._pushCells
node_modules/react-native-web/dist/vendor/react-native/VirtualizedList/index.js:871
868 | }; 869 | 870 | for (var ii = first; ii <= last; ii++) {> 871 | _loop(ii); | ^ 872 | } 873 | }; 874 |
View compiled
VirtualizedList.render
node_modules/react-native-web/dist/vendor/react-native/VirtualizedList/index.js:935
932 | first = _this$state.first, 933 | last = _this$state.last; 934 | > 935 | this._pushCells(cells, stickyHeaderIndices, stickyIndicesFromProps, 0, lastInitialIndex, inversionStyle); | ^ 936 | 937 | var firstAfterInitial = Math.max(lastInitialIndex + 1, first); 938 |
View compiled
finishClassComponent
node_modules/react-dom/cjs/react-dom.development.js:17485
17482 | } else { 17483 | { 17484 | setIsRendering(true);> 17485 | nextChildren = instance.render(); | ^ 17486 | 17487 | if ( workInProgress.mode & StrictMode) { 17488 | disableLogs();
View compiled
updateClassComponent
node_modules/react-dom/cjs/react-dom.development.js:17435
17432 | shouldUpdate = updateClassInstance(current, workInProgress, Component, nextProps, renderLanes); 17433 | } 17434 | > 17435 | var nextUnitOfWork = finishClassComponent(current, workInProgress, Component, shouldUpdate, hasContext, renderLanes); | ^ 17436 | 17437 | { 17438 | var inst = workInProgress.stateNode;
View compiled
beginWork
node_modules/react-dom/cjs/react-dom.development.js:19073
19070 | 19071 | var _resolvedProps = workInProgress.elementType === _Component2 ? _unresolvedProps : resolveDefaultProps(_Component2, _unresolvedProps); 19072 | > 19073 | return updateClassComponent(current, workInProgress, _Component2, _resolvedProps, renderLanes); | ^ 19074 | } 19075 | 19076 | case HostRoot:
View compiled
HTMLUnknownElement.callCallback
node_modules/react-dom/cjs/react-dom.development.js:3945
3942 | function callCallback() { 3943 | didCall = true; 3944 | restoreAfterDispatch();> 3945 | func.apply(context, funcArgs); | ^ 3946 | didError = false; 3947 | } // Create a global error event handler. We use this to capture the value 3948 | // that was thrown. It's possible that this error handler will fire more
View compiled
invokeGuardedCallbackDev
node_modules/react-dom/cjs/react-dom.development.js:3994
3991 | // errors, it will trigger our global error handler. 3992 | 3993 | evt.initEvent(evtType, false, false);> 3994 | fakeNode.dispatchEvent(evt); | ^ 3995 | 3996 | if (windowEventDescriptor) { 3997 | Object.defineProperty(window, 'event', windowEventDescriptor);
View compiled
invokeGuardedCallback
node_modules/react-dom/cjs/react-dom.development.js:4056
4053 | function invokeGuardedCallback(name, func, context, a, b, c, d, e, f) { 4054 | hasError = false; 4055 | caughtError = null;> 4056 | invokeGuardedCallbackImpl$1.apply(reporter, arguments); 4057 | } 4058 | /** 4059 | * Same as invokeGuardedCallback, but instead of returning an error, it stores
View compiled
beginWork$1
node_modules/react-dom/cjs/react-dom.development.js:23964
23961 | } // Run beginWork again. 23962 | 23963 | > 23964 | invokeGuardedCallback(null, beginWork, null, current, unitOfWork, lanes); | ^ 23965 | 23966 | if (hasCaughtError()) { 23967 | var replayError = clearCaughtError(); // `invokeGuardedCallback` sometimes sets an expando `_suppressLogging`.
View compiled
performUnitOfWork
node_modules/react-dom/cjs/react-dom.development.js:22776
22773 | 22774 | if ( (unitOfWork.mode & ProfileMode) !== NoMode) { 22775 | startProfilerTimer(unitOfWork);> 22776 | next = beginWork$1(current, unitOfWork, subtreeRenderLanes); | ^ 22777 | stopProfilerTimerIfRunningAndRecordDelta(unitOfWork, true); 22778 | } else { 22779 | next = beginWork$1(current, unitOfWork, subtreeRenderLanes);
View compiled
workLoopSync
node_modules/react-dom/cjs/react-dom.development.js:22707
22704 | function workLoopSync() { 22705 | // Already timed out, so perform work without checking if we need to yield. 22706 | while (workInProgress !== null) {> 22707 | performUnitOfWork(workInProgress); 22708 | } 22709 | } 22710 |
View compiled
renderRootSync
node_modules/react-dom/cjs/react-dom.development.js:22670
22667 | 22668 | do { 22669 | try {> 22670 | workLoopSync(); | ^ 22671 | break; 22672 | } catch (thrownValue) { 22673 | handleError(root, thrownValue);
View compiled
performSyncWorkOnRoot
node_modules/react-dom/cjs/react-dom.development.js:22293
22290 | } 22291 | } else { 22292 | lanes = getNextLanes(root, NoLanes);> 22293 | exitStatus = renderRootSync(root, lanes); | ^ 22294 | } 22295 | 22296 | if (root.tag !== LegacyRoot && exitStatus === RootErrored) {
View compiled
(anonymous function)
node_modules/react-dom/cjs/react-dom.development.js:11327
11324 | var callback = _queue[i]; 11325 | 11326 | do {> 11327 | callback = callback(_isSync2); | ^ 11328 | } while (callback !== null); 11329 | } 11330 | });
View compiled
unstable_runWithPriority
node_modules/scheduler/cjs/scheduler.development.js:646
643 | currentPriorityLevel = priorityLevel; 644 | 645 | try {> 646 | return eventHandler(); | ^ 647 | } finally { 648 | currentPriorityLevel = previousPriorityLevel; 649 | }
View compiled
runWithPriority$1
node_modules/react-dom/cjs/react-dom.development.js:11276
11273 | 11274 | function runWithPriority$1(reactPriorityLevel, fn) { 11275 | var priorityLevel = reactPriorityToSchedulerPriority(reactPriorityLevel);> 11276 | return Scheduler_runWithPriority(priorityLevel, fn); 11277 | } 11278 | function scheduleCallback(reactPriorityLevel, callback, options) { 11279 | var priorityLevel = reactPriorityToSchedulerPriority(reactPriorityLevel);
View compiled
flushSyncCallbackQueueImpl
node_modules/react-dom/cjs/react-dom.development.js:11322
11319 | try { 11320 | var _isSync2 = true; 11321 | var _queue = syncQueue;> 11322 | runWithPriority$1(ImmediatePriority$1, function () { | ^ 11323 | for (; i < _queue.length; i++) { 11324 | var callback = _queue[i]; 11325 |
View compiled
flushSyncCallbackQueue
node_modules/react-dom/cjs/react-dom.development.js:11309
11306 | Scheduler_cancelCallback(node); 11307 | } 11308 | > 11309 | flushSyncCallbackQueueImpl(); 11310 | } 11311 | 11312 | function flushSyncCallbackQueueImpl() {
View compiled
scheduleUpdateOnFiber
node_modules/react-dom/cjs/react-dom.development.js:21893
21890 | // without immediately flushing it. We only do this for user-initiated 21891 | // updates, to preserve historical behavior of legacy mode. 21892 | resetRenderTimer();> 21893 | flushSyncCallbackQueue(); | ^ 21894 | } 21895 | } 21896 | } else {
View compiled
enqueueSetState
node_modules/react-dom/cjs/react-dom.development.js:12467
12464 | } 12465 | 12466 | enqueueUpdate(fiber, update);> 12467 | scheduleUpdateOnFiber(fiber, lane, eventTime); | ^ 12468 | }, 12469 | enqueueReplaceState: function (inst, payload, callback) { 12470 | var fiber = get(inst);
View compiled
AttributesList.push…/node_modules/react/cjs/react.development.js.Component.setState
node_modules/react/cjs/react.development.js:365
362 | } 363 | } 364 | > 365 | this.updater.enqueueSetState(this, partialState, callback, 'setState'); 366 | }; 367 | /** 368 | * Forces an update. This should only be invoked when it is known with
View compiled
AttributesList.loadAttributeApi
src/Settings/Listings/AttributesList.js:76
73 | } 74 | this.state.haveData = this.state.attributeArray.length == 0 ? true : false 75 | }> 76 | this.setState({dataLoad: true}); | ^ 77 | }; 78 | deleteAtrrApi = async id => { 79 | this.setState({dataLoad: false});
View compiled
This screen is visible only in development. It will not appear if the app crashes in production.
Open your browser’s developer console to further inspect this error. Click the ‘X’ or hit ESC to dismiss this message.
Thanks for the feedback, please do so more.
That was actually an overlooked situation. To share, we recently merged two interface (sandbox and Production). And tried to simplify things as much as we can. The one work we did is merging the login to use sandbox and production. When we did, the production setup worked properly where you will find the language you chosen but we forget to add languages for sandbox.
Also, there was the PLAN: onboarding which supposed to happen for sandbox when a user switched to TEST DATA for first time. We switched for some reason but missed to handle this.
This is one of the higher priority for new users, will let you know once we fixed that!
still get error
TypeError: Cannot read properties of undefined (reading ‘key’)
keyExtractor
node_modules/react-native-web/dist/vendor/react-native/VirtualizedList/index.js:1350
1347 | horizontal: false, 1348 | initialNumToRender: 10, 1349 | keyExtractor: function keyExtractor(item, index) {> 1350 | if (item.key != null) { | ^ 1351 | return item.key; 1352 | } 1353 |
View compiled
FlatList._this._keyExtractor
node_modules/react-native-web/dist/vendor/react-native/FlatList/index.js:308
305 | /* $FlowFixMe(>=0.63.0 site=react_native_fb) This comment suppresses an 306 | * error found when Flow v0.63 was deployed. To see the error delete this 307 | * comment and run Flow. */> 308 | return keyExtractor(items, index); | ^ 309 | } 310 | }; 311 |
View compiled
_loop
node_modules/react-native-web/dist/vendor/react-native/VirtualizedList/index.js:838
835 | 836 | var _loop = function _loop(ii) { 837 | var item = getItem(data, ii);> 838 | var key = keyExtractor(item, ii); | ^ 839 | 840 | _this2._indicesToKeys.set(ii, key); 841 |
View compiled
VirtualizedList._pushCells
node_modules/react-native-web/dist/vendor/react-native/VirtualizedList/index.js:871
868 | }; 869 | 870 | for (var ii = first; ii <= last; ii++) {> 871 | _loop(ii); | ^ 872 | } 873 | }; 874 |
View compiled
VirtualizedList.render
node_modules/react-native-web/dist/vendor/react-native/VirtualizedList/index.js:935
932 | first = _this$state.first, 933 | last = _this$state.last; 934 | > 935 | this._pushCells(cells, stickyHeaderIndices, stickyIndicesFromProps, 0, lastInitialIndex, inversionStyle); | ^ 936 | 937 | var firstAfterInitial = Math.max(lastInitialIndex + 1, first); 938 |
View compiled
finishClassComponent
node_modules/react-dom/cjs/react-dom.development.js:17485
17482 | } else { 17483 | { 17484 | setIsRendering(true);> 17485 | nextChildren = instance.render(); | ^ 17486 | 17487 | if ( workInProgress.mode & StrictMode) { 17488 | disableLogs();
View compiled
updateClassComponent
node_modules/react-dom/cjs/react-dom.development.js:17435
17432 | shouldUpdate = updateClassInstance(current, workInProgress, Component, nextProps, renderLanes); 17433 | } 17434 | > 17435 | var nextUnitOfWork = finishClassComponent(current, workInProgress, Component, shouldUpdate, hasContext, renderLanes); | ^ 17436 | 17437 | { 17438 | var inst = workInProgress.stateNode;
View compiled
beginWork
node_modules/react-dom/cjs/react-dom.development.js:19073
19070 | 19071 | var _resolvedProps = workInProgress.elementType === _Component2 ? _unresolvedProps : resolveDefaultProps(_Component2, _unresolvedProps); 19072 | > 19073 | return updateClassComponent(current, workInProgress, _Component2, _resolvedProps, renderLanes); | ^ 19074 | } 19075 | 19076 | case HostRoot:
View compiled
HTMLUnknownElement.callCallback
node_modules/react-dom/cjs/react-dom.development.js:3945
3942 | function callCallback() { 3943 | didCall = true; 3944 | restoreAfterDispatch();> 3945 | func.apply(context, funcArgs); | ^ 3946 | didError = false; 3947 | } // Create a global error event handler. We use this to capture the value 3948 | // that was thrown. It's possible that this error handler will fire more
View compiled
invokeGuardedCallbackDev
node_modules/react-dom/cjs/react-dom.development.js:3994
3991 | // errors, it will trigger our global error handler. 3992 | 3993 | evt.initEvent(evtType, false, false);> 3994 | fakeNode.dispatchEvent(evt); | ^ 3995 | 3996 | if (windowEventDescriptor) { 3997 | Object.defineProperty(window, 'event', windowEventDescriptor);
View compiled
invokeGuardedCallback
node_modules/react-dom/cjs/react-dom.development.js:4056
4053 | function invokeGuardedCallback(name, func, context, a, b, c, d, e, f) { 4054 | hasError = false; 4055 | caughtError = null;> 4056 | invokeGuardedCallbackImpl$1.apply(reporter, arguments); 4057 | } 4058 | /** 4059 | * Same as invokeGuardedCallback, but instead of returning an error, it stores
View compiled
beginWork$1
node_modules/react-dom/cjs/react-dom.development.js:23964
23961 | } // Run beginWork again. 23962 | 23963 | > 23964 | invokeGuardedCallback(null, beginWork, null, current, unitOfWork, lanes); | ^ 23965 | 23966 | if (hasCaughtError()) { 23967 | var replayError = clearCaughtError(); // `invokeGuardedCallback` sometimes sets an expando `_suppressLogging`.
View compiled
performUnitOfWork
node_modules/react-dom/cjs/react-dom.development.js:22776
22773 | 22774 | if ( (unitOfWork.mode & ProfileMode) !== NoMode) { 22775 | startProfilerTimer(unitOfWork);> 22776 | next = beginWork$1(current, unitOfWork, subtreeRenderLanes); | ^ 22777 | stopProfilerTimerIfRunningAndRecordDelta(unitOfWork, true); 22778 | } else { 22779 | next = beginWork$1(current, unitOfWork, subtreeRenderLanes);
View compiled
workLoopSync
node_modules/react-dom/cjs/react-dom.development.js:22707
22704 | function workLoopSync() { 22705 | // Already timed out, so perform work without checking if we need to yield. 22706 | while (workInProgress !== null) {> 22707 | performUnitOfWork(workInProgress); 22708 | } 22709 | } 22710 |
View compiled
renderRootSync
node_modules/react-dom/cjs/react-dom.development.js:22670
22667 | 22668 | do { 22669 | try {> 22670 | workLoopSync(); | ^ 22671 | break; 22672 | } catch (thrownValue) { 22673 | handleError(root, thrownValue);
View compiled
performSyncWorkOnRoot
node_modules/react-dom/cjs/react-dom.development.js:22293
22290 | } 22291 | } else { 22292 | lanes = getNextLanes(root, NoLanes);> 22293 | exitStatus = renderRootSync(root, lanes); | ^ 22294 | } 22295 | 22296 | if (root.tag !== LegacyRoot && exitStatus === RootErrored) {
View compiled
(anonymous function)
node_modules/react-dom/cjs/react-dom.development.js:11327
11324 | var callback = _queue[i]; 11325 | 11326 | do {> 11327 | callback = callback(_isSync2); | ^ 11328 | } while (callback !== null); 11329 | } 11330 | });
View compiled
unstable_runWithPriority
node_modules/scheduler/cjs/scheduler.development.js:646
643 | currentPriorityLevel = priorityLevel; 644 | 645 | try {> 646 | return eventHandler(); | ^ 647 | } finally { 648 | currentPriorityLevel = previousPriorityLevel; 649 | }
View compiled
runWithPriority$1
node_modules/react-dom/cjs/react-dom.development.js:11276
11273 | 11274 | function runWithPriority$1(reactPriorityLevel, fn) { 11275 | var priorityLevel = reactPriorityToSchedulerPriority(reactPriorityLevel);> 11276 | return Scheduler_runWithPriority(priorityLevel, fn); 11277 | } 11278 | function scheduleCallback(reactPriorityLevel, callback, options) { 11279 | var priorityLevel = reactPriorityToSchedulerPriority(reactPriorityLevel);
View compiled
flushSyncCallbackQueueImpl
node_modules/react-dom/cjs/react-dom.development.js:11322
11319 | try { 11320 | var _isSync2 = true; 11321 | var _queue = syncQueue;> 11322 | runWithPriority$1(ImmediatePriority$1, function () { | ^ 11323 | for (; i < _queue.length; i++) { 11324 | var callback = _queue[i]; 11325 |
View compiled
flushSyncCallbackQueue
node_modules/react-dom/cjs/react-dom.development.js:11309
11306 | Scheduler_cancelCallback(node); 11307 | } 11308 | > 11309 | flushSyncCallbackQueueImpl(); 11310 | } 11311 | 11312 | function flushSyncCallbackQueueImpl() {
View compiled
scheduleUpdateOnFiber
node_modules/react-dom/cjs/react-dom.development.js:21893
21890 | // without immediately flushing it. We only do this for user-initiated 21891 | // updates, to preserve historical behavior of legacy mode. 21892 | resetRenderTimer();> 21893 | flushSyncCallbackQueue(); | ^ 21894 | } 21895 | } 21896 | } else {
View compiled
enqueueSetState
node_modules/react-dom/cjs/react-dom.development.js:12467
12464 | } 12465 | 12466 | enqueueUpdate(fiber, update);> 12467 | scheduleUpdateOnFiber(fiber, lane, eventTime); | ^ 12468 | }, 12469 | enqueueReplaceState: function (inst, payload, callback) { 12470 | var fiber = get(inst);
View compiled
AttributesList.push…/node_modules/react/cjs/react.development.js.Component.setState
node_modules/react/cjs/react.development.js:365
362 | } 363 | } 364 | > 365 | this.updater.enqueueSetState(this, partialState, callback, 'setState'); 366 | }; 367 | /** 368 | * Forces an update. This should only be invoked when it is known with
View compiled
AttributesList.loadAttributeApi
src/Settings/Listings/AttributesList.js:76
73 | } 74 | this.state.haveData = this.state.attributeArray.length == 0 ? true : false 75 | }> 76 | this.setState({dataLoad: true}); | ^ 77 | }; 78 | deleteAtrrApi = async id => { 79 | this.setState({dataLoad: false});
View compiled
This screen is visible only in development. It will not appear if the app crashes in production.
Open your browser’s developer console to further inspect this error. Click the ‘X’ or hit ESC to dismiss this message.
glad I shed light to this
Hi!
We identified what’s the issue and still need to fix that.
The issue due to newly released attributes
The first 4 items creation will not have any problems as that’s old attributes. But the new functionality is having the error.
Keep you posted
Hi @fplaza
We have fixed that issue by removing our beta attributes. Now you can create new attributes with our stable attributes selection.
Let us know if you face any further issues.
Thanks for your patience on this.
well it doesn’t seem to be fixed, as we keep getting the same lengthy error message whenever we click on adding listing attributes
tried to refresh the page, it goes back to the main page, where we need again to click on settings and choose listing and then adding listing attributes, and the same happens again
not sure what else we can do from our end, apart from logging the errors and reporting them to you guys
Hi @fplaza
It seems you’re trying it on sandbox mode.
We have removed existing beta attributes on the sandbox as well.
Can you try now?
Thanks
yes, in the test mode (sandbox)
now it seems to be working
thanks!