Current state:
New state:
Any ui-components component used exclusively by SUI will be moved to SUI:
site-switcher: https://github.com/ManageIQ/ui-components/pull/433, https://github.com/ManageIQ/manageiq-ui-service/pull/1615Any ui-components component used exclusively by ui-classic will be moved to ui-classic:
common, styles (possibly doesn't need to exist, boilerplate, styles should live with their components)dialog-editor (https://github.com/ManageIQ/ui-components/pull/436 & https://github.com/ManageIQ/manageiq-ui-classic/pull/6954)fonticon-picker (partly https://github.com/ManageIQ/manageiq-ui-classic/pull/6985)gtl (possibly replace by react version (https://github.com/ManageIQ/react-ui-components/pull/151), but likely not relevant for backports)quadicontoolbar - unused (since https://github.com/ManageIQ/manageiq-ui-classic/pull/5997), removed in https://github.com/ManageIQ/ui-components/pull/434, except for 2 components moved to gtl for the paginatortree-selectortree-viewAny react-ui-components used exclusively by ui-classic will be moved to ui-classic:
amazon-security-form-group - unused, removed in https://github.com/ManageIQ/react-ui-components/pull/170dynamic-form - unsued, removed in https://github.com/ManageIQ/react-ui-components/pull/171forms - removed in https://github.com/ManageIQ/react-ui-components/pull/179 (+ ManageIQ/manageiq-providers-nuage#210, ManageIQ/manageiq-providers-redfish#107 & ManageIQ/manageiq-providers-lenovo#299) (pending TODO, forms/PfSelect was already copied for tagging, remove once no react-ui-components uses)global-functions - sprintf and __, useless once everything is movedhelpers - only used by rbac-forms, removed in https://github.com/ManageIQ/react-ui-components/pull/172icon-picker - (unused, but relevant https://github.com/ManageIQ/manageiq-ui-classic/issues/5758 + https://github.com/ManageIQ/manageiq-ui-classic/pull/6985)manageiq-validators - only used by rbac-forms, removed in https://github.com/ManageIQ/react-ui-components/pull/173quadicon (without react gtls, only used in AggregateStatusCard, but gtls will need it)rbac-forms - unused, removed in https://github.com/ManageIQ/react-ui-components/pull/172report-editor - unused, removed in https://github.com/ManageIQ/react-ui-components/pull/174table - unused, removed in https://github.com/ManageIQ/react-ui-components/pull/175tagging - https://github.com/ManageIQ/manageiq-ui-classic/pull/6691, https://github.com/ManageIQ/react-ui-components/pull/168tagging-pf4 - not used at all, removed in https://github.com/ManageIQ/react-ui-components/pull/168textual_summarytoolbartopology - unused, removed in https://github.com/ManageIQ/react-ui-components/pull/176vm-snapshot-form - removed in https://github.com/ManageIQ/react-ui-components/pull/179 + https://github.com/ManageIQ/manageiq-ui-classic/pull/7004)wooden-tree - https://github.com/ManageIQ/manageiq-ui-classic/pull/7417Unfinished react-ui-components work that should be finished at some point:
The rest of ui-components:
dialog-user - used by ui-classic and SUI, with almost-copies of the API talking code in the respective repos - merge with that, release as a separate package (or replace by new ddf-based dialog player, if relevant by then)miq-select - release as part of the @pf/select (our existing fork of bootstrap-select, the jquery part of miq-select) (or possibly as part of bootstrap-select itself, which I'm now also a maintainer of)Documentation:
We should merge the demo & storybook into one place documenting all our components, and add entires for the existing ui-classic ones.
(Currently not sure whether to go with storybook, we don't use the knobs that much, and it comes at the cost of a third separate webpack configuration (in addition to jest).)
Cc @chessbyte , re gitter :point_up: February 26, 2020 2:06 PM :)
(This is also relevant if we want ivanchuk to support node 12 - https://github.com/ManageIQ/manageiq-ui-classic/pull/6008 needs https://github.com/ManageIQ/react-ui-components/pull/141.)
Packages which depend on @manageiq/react-ui-components and are not ui-classic:
[x] topological_inventory-ui - not relevant anymore, became sources ui, which doesn't use it
[x] manageiq-providers-lenovo - ManageIQ/manageiq-providers-lenovo#299
manageiq-providers-nuage - ManageIQ/manageiq-providers-nuage#210manageiq-providers-redfish - ManageIQ/manageiq-providers-redfish#107manageqiq-providers-nsxt - https://github.com/ManageIQ/manageiq-providers-nsxt/issues/6All the providers currently depend on an ancient version (0.9.5 vs 0.11.57),
and all are ui-classic UI plugins.
The UI already has the ManageIQ.component.addReact mechanism for exposing components to plugins, with the = react 'ComponentName', {props} rails helper, so it will consume those components using this mechanism, instead of directly importing older versions.
Cc @romanblanco
TODO(after): check whether patternfly-react 2.39.15 works now (in production) - see https://github.com/ManageIQ/manageiq-ui-classic/pull/6745
Taking fonticon-picker :)
Edit: leaving i to @skateman :)
Gonna replace the angular version of the iconpicker with the react one in UIC if that's okay. It's assigned to me anyway.
Taking vm-snapshot-form because it uses finalForm explicitly and it blocks me from upgrading to DDF2.
Most helpful comment
Gonna replace the angular version of the iconpicker with the react one in UIC if that's okay. It's assigned to me anyway.