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    
  ..
  plugins
  InputChain.tsx
  InputState.tsx
  ObserverInput.tsx
  README.md
  ReactChain.tsx
  _elements.tsx
  config.ts
  deps.ts
  fixture.ts
  index.ts
  typings.inputs.ts
  typings.ts
Size: Mime:

INPUT

same as ObserverForm + FormState, we have InputState + ObserverInput

InputChain

  • all of our extensions can be done using input chain
  • these can all be registered in the config file

InputState

  • very confusingly, the FormState is used in ObserverInput
    • one of the reasons this happens, is because ObservableForm accepts an Input override, while ObservableForm doesn't respect it...
    • this has a bunch of duplication with TextBox
  • this currently takes the vanilla js input config provided in the FormState and essentially makes all properties observable & assigns those properties to the instance
  • this has a lot of lifecycle methods for common form operations:
    • disabling (to hide the input)
    • enabling (opposite of disable)
    • select (for use on toggle type inputs)
    • unselect (opposite of select)
    • setProps, setReference
    • serialization
    • validation
    • focus management
    • setType (for all the different types of input - ranges, text, numbers, and this extends for our custom types)
    • most importantly, this is the place for setting/getting the value

ObserverInput

  • this uses 1 InputState

Example

  1. link to Form
  2. link to stories
  3. link to plugins
  4. link to tests
  5. link to stories

TODO

  • finish testing