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    
@skava/forms / CHANGELOG.md
Size: Mime:

3.5.x - wip

  • minor optimization with setFormStateOnInput split to a bound method
  • test & fix when it is valid, but becomes UNvalid http://localhost:9001/?selectedKind=forms%2Fv3&selectedStory=shipping&full=0&addons=1&stories=1&panelRight=0
  • merge in useful bits to make item level shipping simpler

3.5.4-es - mar 16

  • publish as es output

3.5.4 - mar 16

3.5.3 - mar 11

  • fix incrementer styled error @shanmathi
  • update babel-plugin-styled-components to 3.0.0 @james
  • ^ @todo need to add the same build step as done in component-library-presets to build .withConfig

3.5.2 - mar 6

  • 4.0.59 @skava/ui dep & react patch update @james

3.5.1 - mar 6

  • select dropdown wrapper added @shanmathi
  • checkbox change onClick to onToggle @gayathri

3.5.0 - feb 25

  • add onChange & onBlur to TextPlugin & SelectDropDown @shanmathi @bhargavi

3.4.3-4 - feb 23

  • missed merge

3.4.2 - feb 22

  • fix SelectDropDownPlugin labelText @shanmathi

3.4.2 - feb 20

  • fix SelectDropDownPlugin @shanmathi @james

3.4.1 - feb 14

  • merge wcag autocomplete from @gokul
  • form CR (merge in new validators) @nagavalli
  • update minor deps (resolutions, tests, dev) @james

3.4.0 - feb 3

  • update important deps for testing
  • broke storyshot
  • fixed other tests
  • used @skava/tests
  • fixed verbose logs
  • onSubmit test updated, inlined AlwaysFalse plugin to demo validation onSubmit (fixed test)
  • updated snapshots
  • all tests pass (aside from storyshots, which is in todo)
  • isValid added to store with comment todo...
  • update wording

3.3.0 - dec 30

  • unsure? some merges with deps?

3.0.0-beta.6 - november 28

  • add strategy test for validation on submit (sriaarthi)
  • add setIsValid
  • update strategy

3.0.0-beta.5 - november 25

  • add textarea (shanmathi)

batch 8.1 SKB2B-2051

batch 8 SKB2B-2051

  • 3.0.0-beta.2
  • fix typing typo for forms
  • remove code that did come in handy from readme
  • https://bitbucket.org/skava-admin/mono/pull-requests/42/forms-batch-8
  • validation
    • autocomplete / add better typings to errorMessage
    • alias errorMessage as errorMessageFor
    • rename errorMessageList => errorMessageIndexed
    • alias isValidCity as isValidCountry & isValidProvince to progressively add them, alongside todo comment
    • hook up most of the validators in plugins with error messages
  • inputs - style for our theme & +isDirty
    • ObserverInput
      • Observer input added data-debug
      • renderError greatly improved using isDirty
      • style the error state & focused & isDirty state
      • added an export that styled ObserverInput with a default style, then deduped to default styled used in renderProps
      • default styles changed from example to our theme
      • animate the font-size in out for label
      • smooth in and out the placeholder
    • InputState
      • add isDirty
  • forms/ minor optimize, className support
    • OneFormState optimize forEach
    • added className support for use with styled
  • plugins/
    • TextPlugin
      • comment out defaultProps (left as commented out as it has a comment related to passing in props and how that would work with defaultState)
    • PasswordPlugin
      • fork in vector
      • rewrite PasswordIcon to work properly (was mis-sized and not optimized)
      • fix changing from text to password
    • CreditCardPlugin
      • styled
      • connect validators that provide messages
    • Telephone, Email - validator messages
    • Name&Address: styled, validators
      • wrapper ObserverInput in styled for use in customizing the component
      • remember, you can use styled(PluginHere) before providing them! added story for this
      • connect isValidName validator
      • connect validators for City, Country, Zip, Address
      • remove extra <> fragments
    • TogglePlugin styled
  • tsconfig typescript-styled-plugin
    • for autocompleted styles in styled blocks
  • fixtures - minor remove deprecated
    • remove old deprecated props from fixtures for stories
  • add support for renderLabel using required automatically adding *
  • tweak tooltips
  • add form get predicates
  • !!!!!!! Shipping story > integrating styles for 1 complete form
  • ! add support for isDisabled
  • fix unsafe Province checks
  • include Shipping & Disabled storyshots
  • remove data-debug
  • !!!!! ValidationContext - create & test
    • (blur, submit, change - I think only blur and submit are used)
    • strategies/
    • ValidationContext
    • ValidationBlurStrategy
    • ValidationSubmitStrategy
    • typings
    • !!! tests & story
  • AddressPlugin - update placeholders & lengths
  • storybook config - again fix for tests + browser
  • ! FieldSet - use action for defaultState
    • make defaultState which mutates state function an action in FieldSet
  • ! ObserverInput renderWrap & split
    • complete todo for moving renderWrap inside of the render method for ObserverInput
    • split fromPropsToInputState into deps
    • use ValidationContext
    • add readme for unused isDirty code
  • !!! ObserverForm - breaking on submit args & test
    • BREAKING !!! change typings for arg of onSubmit from serialized to event + state
    • update test for this
    • use ValidationContext
  • OneForm - update typings onPreFill
    • update & reused typings for onPreFill (OnPreFill)

batch 7 SKB2B-2051

  • https://bitbucket.org/skava-admin/mono/pull-requests/41/forms-batch-7
  • tag 3.0.0-beta.1
  • add missing prepublish script in pkg
  • tag 3.0.0-alpha.7
  • validators
    • remove unused
    • add todos to readme
  • accessibility add readme todos
  • fix validator typings to return string SKB2B-2051
  • !!! AddressPlugins
    • move CountryPlugin here, create these with autocompletes & validation
    • still need styles
    • AddressLinePlugin
    • PostalCodePlugin
    • CityPlugin
    • CountryPlugin
  • AddressPlugins
    • add data-qa
    • add ProvincePlugin
    • rename PostalCodePlugin to ZipCodePlugin
    • update all stories
  • RadioGroupPlugin
    • initialize
    • use @skava/ui/dist/components/molecules/ToggleList
    • fixture data only currently
  • plugin validator type fixes
    • NamePlugin, TextPlugin, EmailPlugin, TelephonePlugin
    • fix typings for validator (was using InputState where it was supposed to be Value)
  • NamePlugin autocomplete middle name
  • storybook - fix config for non tests SKB2B-2051
  • plugins: CreditCardPlugin splitup
    • CreditCardExpiryDatePlugin
      • split into
        • CreditCardExpiryDatePlugin
        • deps
        • ExpiryDateState
        • typings
        • index with exports
      • CreditCardExpiryDatePlugin
        • split into
          • CreditCardExpiryDatePlugin
          • deps
          • ExpiryDateState
          • typings
          • index with exports
  • Input render props - fix autoFocus & autoComplete SKB2B-2051
  • plugins: PasswordPlugin splitup, implement SKB2B-2051
    • index to export
    • validation
    • PasswordPlugin
    • ConfirmPasswordPlugin
      • ConfirmPasswordPlugin
        • use PasswordPlugin
      • ConfirmPasswordState
      • deps
      • typings
  • !!!! tests storyshots, alias, coverage SKB2B-2051
    • storyshots
    • alias config for jest
    • jest coverage config
    • test for TogglePlugin
    • deps for linting in POC of dangerfile for code quality
    • snapshots as output of those tests
    • some tsconfigs
  • TogglePlugin
    • use the @skava/ui component
    • make tests pass

batch 6 SKB2B-2051

  • https://bitbucket.org/skava-admin/mono/pull-requests/40/forms-batch-6

  • tag version 3.0.0-alpha.4

  • add input rendering tests adapted from TextBox to ensure error rendering functionality

  • add lifecycle test for onPreFill OneFormState

    • change from using .inputsList = [] => setInputsList
  • change some of the deprecated imports to relative for tests

  • tests

    • preFill tests written & pass
    • fieldset tests enabled & pass
    • context tests
    • add more serialization tests for checking a specific plugin serialization
    • test the form serialization default output
    • comment out likely not applicable tests
    • snapshots from tests
    • todo tests for renderProps
  • FieldSet

    • add required legend prop & StyledLegend
  • CommonState

    • add isDisabled + isVisible for support in hiding/showing forms + disabling editing Serialization:
    • Forms
      • add onSubmit with serialization typings
    • TogglePlugin
      • add serializer
  • OneForm

    • split into files:
    • fromObserverFormPropsToState
    • OneFormState
    • toFormState
    • typings
  • FormView

    • onPrefil < added compat implementation in OneForm (now onPreFill)
    • onInputInit @deprecated
    • onSubmit added typings for callback of only serialized obj
  • ObserverInput

    • add fromPropsToInputState which validates props and throws
  • add typings update for commonState

    • isDisabled, isVisible, propertyName
  • deps (added)

    • "jest-dom": "2.1.1",
    • "snapshot-diff": "0.4.0",
    • "@skava/typings": "^1.3.1",
    • "enzyme": "3.7.0"
  • FormState

    • onChange (example in tests with observe)
    • add identifier (with action)
  • Form render

    • add id prop
  • InputState, StyledError, renderInput props

    • StyledError
      • accessible role
      • add id
    • InputState
      • update identifier on inputState (add input- to the identifier for debug & ensure no overlap) and move it back out of commonstate
    • Input render
      • add aria props for disabled !!! tests
    • setup enzyme adapter in setup
    • enzyme tests adapted for full validation flow on blur, removed deprecated skipped tests as these new ones replace them
    • refs
      • init todos, add ref test

batch 5 SKB2B-2051

  • https://bitbucket.org/skava-admin/mono/pull-requests/39
  • tag version 3.0.0-alpha.3
  • move tests into src/ because of react-scripts-ts :eye-roll:
  • change all deprecated/ aliased imports from src/ into relative imports because https://github.com/wmonk/create-react-app-typescript/issues/203 (though we could use module-alias to solve this, the tests should not error right off the bat for imports of deprecated code)
  • !!!! tests (part 2)
    • use react-testing-library in plugins test to extend functionality and check submit
    • use react-testing-library in plugins test to extend functionality and check validation calls with jest.fn mock wrapping
    • add react-testing-library setup longhand (because of react-scripts-ts)
    • snapshots
    • snapshot test for FieldSet
    • missing React imports
    • update validation tests, removing tests with no test cases, skipping outdated ones
  • fixing for round 2 tests SKB2B-2051
    • validation in non production that context is providing required plugins
    • stronger validation for valid form state (in this case, was missing .inputsList)
    • updating import from SelectDropDown
    • adding onSubmit for button clicking...
    • name element on input for semantic html (thanks Michael)

batch 4 SKB2B-2051

  • https://bitbucket.org/skava-admin/mono/pull-requests/38/forms-batch-4/diff

  • tag version 3.0.0-alpha.2

  • move all src/forms into deprecated/forms

  • move all src/inputs into deprecated/inputs

  • move all src/forms/deps into validators

  • update all import paths

  • remove storybook alias for src/forms & src/inputs

  • remove some unused files

  • improve typings on all validators

  • add exports file (since index can't be used yet)

  • move app from components into app

  • move Incrementer into components (since we are using it, though we should move it)

  • update storybook

  • update lint dependencies

  • add test-react library

batch 3 SKB2B-2051

  • https://bitbucket.org/skava-admin/mono/pull-requests/38/forms-batch-3/diff
  • tag version 3.0.0-alpha.1
  • !!!! CreditCardPlugin
    • plugin, component, typings, serializaiton & validation
    • example for most complex state management in plugins without bloating other classes

    • ExpiryDatePlugin
      • plugin, component, typings, serializaiton & validation
    • ExpiryDateState
    • addExpiryDateToAttributes dep
  • SelectDropDownPlugin
    • wip component, needs finishing & much cleanup & fixing
    • typings
    • renderProps
      • renderErrorMessage
      • renderLabel
      • renderSelectDropDown
    • styled
      • needs finishing, is just using text
    • validate
  • LabelPlugin - init
  • ButtonPlugin
    • init
  • Inputs
    • label & type props: || for compat...
  • stories
    • update todo story using SelectDropDownPlugin & CreditCardPlugin

batch 2.1 SKB2B-2051

  • typings & labelText | label
  • split up fieldset story SKB2B-2051

batch 2

  • https://bitbucket.org/skava-admin/mono/pull-requests/38/forms-batch-2/diff
  • dependencies & lint
    • change from deps to peerDependencies
    • update ts
    • update prettier
    • update react test renderer
    • use @skava/tslint
    • use @skava/eslint-config
  • tests & stories
    • convert TODO files into .skip tests for:
      • adapters
      • fieldset
      • plugins
      • render
      • serialization
      • strategy
      • submit
      • validation
      • remove old tests that were more of comments
    • stories
      • add remaining todos into a forms story
      • create adapter stories for the simplest & most complex use cases
      • update config for importing more story folders
      • rename stories for old forms
  • !!!!!!! adapters
    • typings for old input config
    • /ObserverForm[Adapter] & /ObserverInput[Adapter]
    • initialize a very well documented migration path using console.warn for all @deprecated methods, alongside a transformation path using setters & getters & styled wrappers
    • OneForm
      • add index to export (with aliased names)
    • OneFormState
      • lifted some functions from old state (!!! this is messy, has todos)
      • added fromObserverFormPropsToState with strong assertions that @throw
  • !!! FieldSet
    • initialize
      • readme
      • component
      • styled
      • add typings
    • fieldSetSerializer
    • renderProps
    • used the renderInput from OneForm
    • init FieldSetPlugin
  • !!! plugins
    • PluginsContext update typings
    • add README
    • implement IncrementerPlugin
    • clean TelephonePlugin & TextPlugin
    • add commented usage of the icon in TogglePlugin
    • PasswordPlugin: extended implementation from just comments to a class
  • CommonState
    • move identifier here from input state
  • !! forms & inputs
    • inputs:
      • serialization: made it settable same as Validation
      • tweaked the way props are sent in the component (the order, along with comments)
      • export a type named ObserverInputProps
    • forms:
      • added get and isValid as minimal requirements for functionality in core we want to keep that was not in the original
  • old forms & input
    • added symbol for @deprecated as a property

batch 1

  • init configs

    • #c8ac7328d0675f4f5e7b913aba13096d535d46cc
    • skeleton things + deps from reference-store-rh + ui-component-library
      • pkg json
      • editorconfig
      • pretttierrc
      • deps for storybook
      • init html & manifest & such for running as own site (from rh)
      • stylelint.config
      • tsconfig
      • tslint
  • init tests

    • 57c7fe8a6260cfc50568c14bc6f98fe949daa997
    • add tests with the requirements
      • renderProps
      • data attrs (make sure they pass through)
      • inputsList
      • todos
  • storybook config

    • #d9d9b7b07a297a3864ba8a382c5f89c5f6e920e0
  • old @skava/ui forms 4 compat - SKB2B-2051

    • #9ea65783d2502e2ff53bfd9641f7cead80e94222
    • take all forms
    • take all inputs
    • take all stories
    • clean some up
    • these will be used for backwards compatibility in migrating to new forms and handling supporting new features without breaking existing ones by using adapters & strategies
  • commonstate

    • #0059e8bb915ce812d0f5ed0509b9299a61fd7179
  • todos

    • #f87a4ff95c18f3f59001f247f9f8bee5355319d2
  • !! base typings

    • #0a53148acadf20b8e10efd1d67e0dcf33fc2004e
  • base deps

    • #c8b209c3
  • !!! readme/documentation

  • #44dfd0087e53957b8f78fba453a6e88915f0eba7

  • add links to all related JIRA

  • add learn more links

  • add codesandbox poc

  • !!! first stories for forms 3.0

    • #d9b564d57d84ba60da45e98c7848c018881607cb
  • !!! forms/*

    • #cbed987e2813f3d2f1f2a26a45bb686d9b409a89
    • structured according to the standards

    • FormContext
      • used for providing the form down to anything below it
    • FormState
      • very minimal implementation, big difference from old forms, SRP
    • ObserverForm
      • very minimal implementation, big difference from old forms, SRP
      • focused on renderProps, event handlers only
    • renderProps
      • simple passing of specific props to the styled components
    • styled
      • submit button, form, not any styles
    • typings
      • renderProp props, renderProps
      • composite react for auto-completing and validating all html props in our components
    • index
      • specific exports
  • !!!! inputs/*

    • #e10c02debdaf1efc42549dded2852ae6b86878c6
    • ObserverInput
      • renamed from Input for understandability by recognition in the migration
      • helpful comments for the renderProp props and how they are created in which order
      • support for renderProps
    • InputState
      • all observable properties explicitly used only
      • equiped with a merge
        • for use in static from (factory)
        • and for runtime use when merging
      • comments on the 3 strategies for when we do validation [WIP]
      • serialization
    • styled
      • InputWrap
        • used the typings to coerce to better validation in renderProps (to ensure props are sent to correct doms)
      • Input
        • :valid,:invalid,:hover,:placeholder, all with props support
      • Tooltip
        • hidie & show when visible (as an example)
      • Error
        • show when error, similar to tooltip, diff styles, should use @skava/ui error with wcag for this
    • renderProps
      • defaultRenderInput
        • using styled, specific props, strongly typed, very helpful comments on how things were moved from wrapper and what the props are used for and todos
      • defaultRenderInputWrap
        • using styled, specific props, strongly typed, commented logs comments
      • defaultRenderLabelText
        • minimal label with standard htmlFor, using styled
      • defaultRenderError
        • minimal, using styled
      • defaultRenderAfterInput
        • minimal, using styled tooltip as default
    • typings
      • VERY IMPORTANT COMPLEX TYPINGS HERE IF YOU WANT TO LEARN TS
      • omitting
      • anyifying
      • using never
      • lists of properties we are ignoring for indicating what props are used by wrapper & what are used by input & label
      • comments
      • renderProps
      • html props same as form for inputs & wrapper
      • did not do types for label since it is covered in our usage of the styled-component
  • !!!! plugins/*

    • #0433cdb3905ca51db4318a01f65240a110c7a608

    • PluginsContext

      • note this is very different from how it was done with registerRlugins which only allowed things to be added for the whole library/site and nothing else

      • !!! this is key !!!
      • as seen in the story as an example the plugins at any level can be changed!
        • site level
        • page level
        • form level
        • or even per nested group of inputs (will be using fieldset)
    • CountryPlugin

      • autocomplete, pattern, label
      • still needs validator
    • EmailPlugin

      • autocomplete, pattern, label
      • still needs validator
    • TelephonePlugin

      • autocomplete, pattern, label, validator
    • NamePlugin

      • handles first, middle, and last name
      • autocomplete, pattern, validator
    • TogglePlugin

      • functionality implemented, but styles are bad!
    • TextPlugin

      • is the default input
      • minimal defaults
    • IncrementerPlugin

      • empty, todo
    • PasswordPlugin

      • empty, todo
  • !!!!! OneForm/*

    • #4bc213dd0baf1630482c7c585eccd47ab374bcb3
    • this is where we turn an array of js objects
      • into an array of input states
      • give it to the form state
    • this is where we are consuming the PluginsContext
      • we use it to find the correct plugin for each input
    • THIS IS WHERE WE WILL DO THE ADAPTING BETWEEN OLD FORMS AND NEW FORMS [WIP]
  • ! remaining todos as md list in terms of tests required

    • #45ead55f431888a4e7d3231085cb67ae482cab90