Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
import { action, observable } from 'xmobx/mobx'
import { EMPTY_ARRAY } from 'exotic'
import omniStorage from 'uxui-modules/persistance'
import { UserInviteState, FormSubmitData } from './typings'

class UserInviteStorage implements UserInviteState {
  @observable
  userInviteList: EMPTY_ARRAY = omniStorage.get('user_invite_list') || []

  @action
  persistUser() {
    omniStorage.set('user_invite_list', this.userInviteList)
  }

  @action.bound
  handleAddUser(SERIALIZED_DATA_ON_FORM_SUBMIT: FormSubmitData) {
    this.userInviteList.push(SERIALIZED_DATA_ON_FORM_SUBMIT)
    this.persistUser()
  }

  @action.bound
  handleRemoveUser(index: number) {
    console.log('handleRemoveUser data', index)
    console.log('handleRemoveUser list Before', this.userInviteList)
    // this.userInviteList.remove(SERIALIZED_DATA_ON_FORM_SUBMIT)
    this.userInviteList.splice(index, 1)
    console.log('handleRemoveUser list After', this.userInviteList)
    this.persistUser()
  }
}

export { UserInviteStorage }
export default UserInviteStorage