12345678910111213141516171819202122232425262728293031323334353637383940 |
- /**
- * Copyright (c) Facebook, Inc. and its affiliates.
- *
- * This source code is licensed under the MIT license found in the
- * LICENSE file in the root directory of this source tree.
- *
- * @format
- * @flow strict-local
- */
- 'use strict';
- import NativeJSDevSupport from './NativeJSDevSupport';
- const ReactNative = require('../Renderer/shims/ReactNative');
- const JSDevSupportModule = {
- getJSHierarchy: function(tag: number) {
- if (NativeJSDevSupport) {
- const constants = NativeJSDevSupport.getConstants();
- try {
- const {
- computeComponentStackForErrorReporting,
- } = ReactNative.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
- const componentStack = computeComponentStackForErrorReporting(tag);
- if (!componentStack) {
- NativeJSDevSupport.onFailure(
- constants.ERROR_CODE_VIEW_NOT_FOUND,
- "Component stack doesn't exist for tag " + tag,
- );
- } else {
- NativeJSDevSupport.onSuccess(componentStack);
- }
- } catch (e) {
- NativeJSDevSupport.onFailure(constants.ERROR_CODE_EXCEPTION, e.message);
- }
- }
- },
- };
- module.exports = JSDevSupportModule;
|