"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _stack = require("@react-navigation/stack");
var _react = _interopRequireDefault(require("react"));
var _reactI18next = require("react-i18next");
var _HeaderHome = _interopRequireDefault(require("../components/buttons/HeaderHome"));
var _theme = require("../contexts/theme");
var _Chat = _interopRequireDefault(require("../screens/Chat"));
var _ContactDetails = _interopRequireDefault(require("../screens/ContactDetails"));
var _CredentialDetails = _interopRequireDefault(require("../screens/CredentialDetails"));
var _CredentialOffer = _interopRequireDefault(require("../screens/CredentialOffer"));
var _ListContacts = _interopRequireDefault(require("../screens/ListContacts"));
var _ProofDetails = _interopRequireDefault(require("../screens/ProofDetails"));
var _ProofRequest = _interopRequireDefault(require("../screens/ProofRequest"));
var _RenameContact = _interopRequireDefault(require("../screens/RenameContact"));
var _WhatAreContacts = _interopRequireDefault(require("../screens/WhatAreContacts"));
var _navigators = require("../types/navigators");
var _defaultStackOptions = require("./defaultStackOptions");
var _containerApi = require("../container-api");
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
const ContactStack = () => {
  const Stack = (0, _stack.createStackNavigator)();
  const theme = (0, _theme.useTheme)();
  const {
    t
  } = (0, _reactI18next.useTranslation)();
  const defaultStackOptions = (0, _defaultStackOptions.useDefaultStackOptions)(theme);
  const [ScreenOptionsDictionary] = (0, _containerApi.useServices)([_containerApi.TOKENS.OBJECT_SCREEN_CONFIG]);
  return /*#__PURE__*/_react.default.createElement(Stack.Navigator, {
    screenOptions: {
      ...defaultStackOptions
    }
  }, /*#__PURE__*/_react.default.createElement(Stack.Screen, {
    name: _navigators.Screens.Contacts,
    component: _ListContacts.default,
    options: {
      title: t('Screens.Contacts'),
      ...ScreenOptionsDictionary[_navigators.Screens.Contacts]
    }
  }), /*#__PURE__*/_react.default.createElement(Stack.Screen, {
    name: _navigators.Screens.ContactDetails,
    component: _ContactDetails.default,
    options: {
      title: t('Screens.ContactDetails'),
      ...ScreenOptionsDictionary[_navigators.Screens.ContactDetails]
    }
  }), /*#__PURE__*/_react.default.createElement(Stack.Screen, {
    name: _navigators.Screens.RenameContact,
    component: _RenameContact.default,
    options: {
      title: t('Screens.RenameContact'),
      ...ScreenOptionsDictionary[_navigators.Screens.RenameContact]
    }
  }), /*#__PURE__*/_react.default.createElement(Stack.Screen, {
    name: _navigators.Screens.Chat,
    component: _Chat.default,
    options: {
      ...ScreenOptionsDictionary[_navigators.Screens.Chat]
    }
  }), /*#__PURE__*/_react.default.createElement(Stack.Screen, {
    name: _navigators.Screens.WhatAreContacts,
    component: _WhatAreContacts.default,
    options: {
      title: '',
      ...ScreenOptionsDictionary[_navigators.Screens.WhatAreContacts]
    }
  }), /*#__PURE__*/_react.default.createElement(Stack.Screen, {
    name: _navigators.Screens.CredentialDetails,
    component: _CredentialDetails.default,
    options: {
      title: t('Screens.CredentialDetails'),
      ...ScreenOptionsDictionary[_navigators.Screens.CredentialDetails]
    }
  }), /*#__PURE__*/_react.default.createElement(Stack.Screen, {
    name: _navigators.Screens.CredentialOffer,
    component: _CredentialOffer.default,
    options: {
      title: t('Screens.CredentialOffer'),
      ...ScreenOptionsDictionary[_navigators.Screens.CredentialOffer]
    }
  }), /*#__PURE__*/_react.default.createElement(Stack.Screen, {
    name: _navigators.Screens.ProofDetails,
    component: _ProofDetails.default,
    options: () => ({
      title: '',
      headerRight: () => /*#__PURE__*/_react.default.createElement(_HeaderHome.default, null),
      ...ScreenOptionsDictionary[_navigators.Screens.ProofDetails]
    })
  }), /*#__PURE__*/_react.default.createElement(Stack.Screen, {
    name: _navigators.Screens.ProofRequest,
    component: _ProofRequest.default,
    options: {
      title: t('Screens.ProofRequest'),
      ...ScreenOptionsDictionary[_navigators.Screens.ProofRequest]
    }
  }));
};
var _default = exports.default = ContactStack;
//# sourceMappingURL=ContactStack.js.map