root-context.js 813 B

1234567891011121314151617181920212223242526
  1. import React from 'react'
  2. import PropTypes from 'prop-types'
  3. import { ApplicationProvider } from './application-context'
  4. import { EditorProvider } from './editor-context'
  5. import createSharedContext from 'react2angular-shared-context'
  6. import { ChatProvider } from '../../features/chat/context/chat-context'
  7. import { LayoutProvider } from './layout-context'
  8. export function ContextRoot({ children, ide }) {
  9. return (
  10. <ApplicationProvider>
  11. <EditorProvider $scope={ide.$scope}>
  12. <LayoutProvider $scope={ide.$scope}>
  13. <ChatProvider>{children}</ChatProvider>
  14. </LayoutProvider>
  15. </EditorProvider>
  16. </ApplicationProvider>
  17. )
  18. }
  19. ContextRoot.propTypes = {
  20. children: PropTypes.any,
  21. ide: PropTypes.any.isRequired
  22. }
  23. export const rootContext = createSharedContext(ContextRoot)