index.ts 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. import { RegistryTypes } from '@polkadot/types/types'
  2. import common from './common'
  3. import members from './members'
  4. import council from './council'
  5. import roles from './roles'
  6. import forum from './forum'
  7. import stake from './stake'
  8. import mint from './mint'
  9. import recurringRewards from './recurring-rewards'
  10. import hiring from './hiring'
  11. import versionedStore from './versioned-store'
  12. import versionedStorePermissions from './versioned-store/permissions'
  13. import contentWorkingGroup from './content-working-group'
  14. import workingGroup from './working-group'
  15. import discovery from './discovery'
  16. import media from './media'
  17. import proposals from './proposals'
  18. import { InterfaceTypes } from '@polkadot/types/types/registry'
  19. import { createType, TypeRegistry } from '@polkadot/types'
  20. export {
  21. common,
  22. members,
  23. council,
  24. roles,
  25. forum,
  26. stake,
  27. mint,
  28. recurringRewards,
  29. hiring,
  30. versionedStore,
  31. versionedStorePermissions,
  32. contentWorkingGroup,
  33. workingGroup,
  34. discovery,
  35. media,
  36. proposals,
  37. }
  38. export const types: RegistryTypes = {
  39. MemoText: 'Text', // for the memo module
  40. ...common,
  41. ...members,
  42. ...council,
  43. ...roles,
  44. ...forum,
  45. ...stake,
  46. ...mint,
  47. ...recurringRewards,
  48. ...hiring,
  49. ...versionedStore,
  50. ...versionedStorePermissions,
  51. ...contentWorkingGroup,
  52. ...workingGroup,
  53. ...discovery,
  54. ...media,
  55. ...proposals,
  56. // Required since migration to Substrate 2.0,
  57. // see: https://polkadot.js.org/api/start/FAQ.html#the-node-returns-a-could-not-convert-error-on-send
  58. Address: 'AccountId',
  59. LookupSource: 'AccountId',
  60. }
  61. // Allows creating types without api instance (it's not a recommended way though, so should be used just for mocks)
  62. export const mockRegistry = new TypeRegistry()
  63. mockRegistry.register(types)
  64. export function createMock<TypeName extends keyof InterfaceTypes>(
  65. type: TypeName,
  66. value: any
  67. ): InterfaceTypes[TypeName] {
  68. return createType(mockRegistry, type, value)
  69. }