Remove PropTypes runtime validation from UI components - #492
Conversation
There was a problem hiding this comment.
Pull request overview
Removes prop-types runtime validation from the AWX React UI codebase as part of the React 19 upgrade preparation, eliminating PropTypes imports/usages and associated types-module shapes that were only used for PropTypes.
Changes:
- Removed all
prop-typesimports and allComponent.propTypes = …blocks across the UI. - Removed PropTypes-only shape imports from the shared
typesmodule at call sites (while intentionally retainingtypes.js/prop-typesdependency for a follow-up). - Deleted several previously-nonfunctional validation blocks that were assigned to typos like
.prototype/.propType.
Reviewed changes
Copilot reviewed 214 out of 214 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| awx/ui/src/screens/WorkflowApproval/WorkflowApprovalList/WorkflowApprovalListItem.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/WorkflowApproval/WorkflowApprovalList/WorkflowApprovalListDenyButton.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/WorkflowApproval/WorkflowApprovalList/WorkflowApprovalListApproveButton.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/User/UserTeams/UserTeamListItem.js | Remove PropTypes import and dead .prototype validation block |
| awx/ui/src/screens/User/UserList/UserListItem.js | Remove PropTypes import and dead .prototype validation block |
| awx/ui/src/screens/User/shared/UserForm.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/TopologyView/Header.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerToolbar.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerNode.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerLink.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerGraph.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Visualizer.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/UnsavedChangesModal.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/WorkflowJobTemplatesList.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/SystemJobTemplatesList.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/ProjectsList.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/JobTemplatesList.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/InventorySourcesList.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeNextButton.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkModal.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Template/Survey/SurveyQuestionForm.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Template/shared/WorkflowJobTemplateForm.js | Remove PropTypes/types imports and propTypes block |
| awx/ui/src/screens/Template/shared/PlaybookSelect.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Template/shared/JobTemplateForm.js | Remove PropTypes/types imports and propTypes block |
| awx/ui/src/screens/Template/JobTemplateEdit/JobTemplateEdit.js | Remove types import and propTypes block |
| awx/ui/src/screens/Team/TeamList/TeamListItem.js | Remove PropTypes/types import and inline propTypes assignment |
| awx/ui/src/screens/Team/TeamEdit/TeamEdit.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Team/shared/TeamForm.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/SubscriptionUsage/ChartComponents/UsageChart.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Setting/shared/SharedFields.js | Remove PropTypes import and field component propTypes blocks |
| awx/ui/src/screens/Setting/shared/RevertFormActionGroup.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Setting/shared/RevertButton.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Project/shared/ProjectSyncButton.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Project/shared/ProjectForm.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Project/ProjectList/ProjectListItem.js | Remove PropTypes/types import and inline propTypes assignment |
| awx/ui/src/screens/Project/ProjectDetail/ProjectDetail.js | Remove types import and propTypes block |
| awx/ui/src/screens/Organization/shared/OrganizationForm.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Organization/OrganizationTeams/OrganizationTeamListItem.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Organization/OrganizationTeams/OrganizationTeamList.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Organization/OrganizationList/OrganizationListItem.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/screens/Organization/OrganizationExecEnvList/OrganizationExecEnvListItem.js | Remove PropTypes/types import and dead .prototype validation block |
| awx/ui/src/screens/Organization/OrganizationEdit/OrganizationEdit.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/NotificationTemplate/shared/TypeInputsSubForm.js | Remove PropTypes/types import and multiple propTypes blocks/assignments |
| awx/ui/src/screens/NotificationTemplate/shared/NotificationTemplateForm.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/NotificationTemplate/NotificationTemplateEdit/NotificationTemplateEdit.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Job/WorkflowOutput/WorkflowOutputToolbar.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Job/WorkflowOutput/WorkflowOutputNode.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Job/WorkflowOutput/WorkflowOutputLink.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Job/WorkflowOutput/WorkflowOutput.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Job/JobOutput/shared/OutputToolbar.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Job/JobOutput/HostEventModal.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Job/JobDetail/JobDetail.js | Remove types import and propTypes block |
| awx/ui/src/screens/Inventory/SmartInventoryEdit/SmartInventoryEdit.js | Remove types import and propTypes block |
| awx/ui/src/screens/Inventory/SmartInventoryDetail/SmartInventoryDetail.js | Remove types import and propTypes block |
| awx/ui/src/screens/Inventory/shared/SmartInventoryForm.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/screens/Inventory/shared/InventorySourceSyncButton.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Inventory/shared/InventorySourceForm.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Inventory/shared/InventoryGroupsDeleteModal.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/screens/Inventory/shared/InventoryForm.js | Remove PropTypes import and dead .propType validation block |
| awx/ui/src/screens/Inventory/shared/FederatedInventoryForm.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Inventory/shared/ConstructedInventoryForm.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Inventory/InventoryRelatedGroups/InventoryRelatedGroupListItem.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/screens/Inventory/InventoryList/InventoryListItem.js | Remove PropTypes/types import and inline propTypes assignment |
| awx/ui/src/screens/Inventory/InventoryHosts/InventoryHostItem.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupItem.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/screens/Inventory/InventoryHostFacts/InventoryHostFacts.js | Remove types import and propTypes block |
| awx/ui/src/screens/Inventory/InventoryHostEdit/InventoryHostEdit.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Inventory/InventoryHostDetail/InventoryHostDetail.js | Remove types import and propTypes block |
| awx/ui/src/screens/Inventory/InventoryGroups/InventoryGroupItem.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostListItem.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/screens/Inventory/InventoryEdit/InventoryEdit.js | Remove PropTypes import and dead .propType validation block |
| awx/ui/src/screens/Inventory/InventoryDetail/InventoryDetail.js | Remove types import and propTypes block |
| awx/ui/src/screens/Inventory/FederatedInventoryEdit/FederatedInventoryEdit.js | Remove types import and propTypes block |
| awx/ui/src/screens/Inventory/FederatedInventoryDetail/FederatedInventoryDetail.js | Remove types import and propTypes block |
| awx/ui/src/screens/Inventory/ConstructedInventoryDetail/ConstructedInventorySyncButton.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Inventory/ConstructedInventoryDetail/ConstructedInventoryDetail.js | Remove types import and propTypes block |
| awx/ui/src/screens/Inventory/AdvancedInventoryHosts/AdvancedInventoryHosts.js | Remove types import and propTypes block |
| awx/ui/src/screens/Inventory/AdvancedInventoryHosts/AdvancedInventoryHostListItem.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/screens/Inventory/AdvancedInventoryHosts/AdvancedInventoryHostList.js | Remove types import and propTypes block |
| awx/ui/src/screens/Inventory/AdvancedInventoryHostDetail/AdvancedInventoryHostDetail.js | Remove types import and propTypes block |
| awx/ui/src/screens/Instances/InstanceList/InstanceListItem.js | Remove PropTypes/types import and dead .prototype validation block |
| awx/ui/src/screens/InstanceGroup/shared/InstanceGroupForm.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/InstanceGroup/shared/ContainerGroupForm.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/InstanceGroup/Instances/InstanceListItem.js | Remove PropTypes/types import and dead .prototype validation block |
| awx/ui/src/screens/InstanceGroup/InstanceGroupList/InstanceGroupListItem.js | Remove PropTypes/types import and dead .prototype validation block |
| awx/ui/src/screens/HostMetrics/HostMetricsListItem.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/screens/HostMetrics/HostMetricsDeleteButton.js | Remove PropTypes import and propTypes block (and PropTypes-only shape) |
| awx/ui/src/screens/Host/HostList/SmartInventoryButton.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Host/HostList/HostListItem.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/screens/Host/HostGroups/HostGroupItem.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/screens/Host/HostFacts/HostFacts.js | Remove types import and propTypes block |
| awx/ui/src/screens/Host/HostEdit/HostEdit.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Host/HostDetail/HostDetail.js | Remove types import and propTypes block |
| awx/ui/src/screens/ExecutionEnvironment/shared/ExecutionEnvironmentForm.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentList/ExecutionEnvironmentListItem.js | Remove PropTypes/types import and dead .prototype validation block |
| awx/ui/src/screens/Dashboard/shared/LineChart.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/CredentialType/shared/CredentialTypeForm.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/CredentialType/CredentialTypeList/CredentialTypeListItem.js | Remove PropTypes/types import and dead .prototype validation block |
| awx/ui/src/screens/Credential/shared/TypeInputsSubForm.js | Remove types import and propTypes block |
| awx/ui/src/screens/Credential/shared/ExternalTestModal.js | Remove PropTypes import and dead .propType validation block |
| awx/ui/src/screens/Credential/shared/CredentialPlugins/CredentialPluginTestAlert.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Credential/shared/CredentialPlugins/CredentialPluginSelected.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/screens/Credential/shared/CredentialPlugins/CredentialPluginPrompt/CredentialPluginPrompt.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Credential/shared/CredentialPlugins/CredentialPluginField.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Credential/shared/CredentialFormFields/CredentialField.js | Remove PropTypes/types import and propTypes blocks |
| awx/ui/src/screens/Credential/shared/CredentialFormFields/BecomeMethodField.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Credential/shared/CredentialForm.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Credential/CredentialList/CredentialListItem.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/screens/Credential/CredentialEdit/CredentialEdit.js | Remove types import and propTypes block |
| awx/ui/src/screens/Credential/CredentialDetail/CredentialDetail.js | Remove types import and propTypes block |
| awx/ui/src/screens/Application/shared/ApplicationForm.js | Remove PropTypes import and propTypes block |
| awx/ui/src/screens/Application/ApplicationTokens/ApplicationTokenListItem.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/screens/Application/ApplicationsList/ApplicationListItem.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/screens/ActivityStream/ActivityStreamListItem.js | Remove PropTypes import and inline propTypes assignment |
| awx/ui/src/hooks/useToast.js | Remove PropTypes/types import and Toast.propTypes block |
| awx/ui/src/components/Workflow/WorkflowTools.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/Workflow/WorkflowStartNode.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/Workflow/WorkflowNodeTypeLetter.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/Workflow/WorkflowNodeHelp.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/Workflow/WorkflowLinkHelp.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/Workflow/WorkflowActionTooltipItem.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/Workflow/WorkflowActionTooltip.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/StatusLabel/StatusLabel.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/StatusIcon/StatusIcon.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/Sparkline/Sparkline.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/Sort/Sort.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/SelectedList/SelectedList.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/SelectedList/DraggableSelectedList.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/SelectableCard/SelectableCard.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/Search/Search.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/Search/LookupTypeInput.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/Search/AdvancedSearch.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/ScreenHeader/ScreenHeader.js | Remove PropTypes import and propTypes blocks |
| awx/ui/src/components/Schedule/shared/ScheduleForm.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/Schedule/shared/FrequencySelect.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/Schedule/ScheduleOccurrences/ScheduleOccurrences.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/Schedule/ScheduleList/ScheduleListItem.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/Schedule/ScheduleList/ScheduleList.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/Schedule/ScheduleEdit/ScheduleEdit.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/Schedule/ScheduleDetail/ScheduleDetail.js | Remove types import and propTypes block |
| awx/ui/src/components/Schedule/ScheduleAdd/ScheduleAdd.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/RoutedTabs/RoutedTabs.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/ResourceAccessList/ResourceAccessListItem.js | Remove PropTypes/types import and inline propTypes assignment |
| awx/ui/src/components/ResourceAccessList/DeleteRoleConfirmationModal.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/PromptDetail/PromptDetail.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/Popover/Popover.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/PaginatedTable/ToolbarSyncSourceButton.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/PaginatedTable/ToolbarDeleteButton.js | Remove PropTypes import and propTypes block (and PropTypes-only validators) |
| awx/ui/src/components/PaginatedTable/ToolbarAddButton.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/PaginatedTable/PaginatedTable.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/OptionsList/OptionsList.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/NotificationList/NotificationListItem.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/NotificationList/NotificationList.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/MultiSelect/TagMultiSelect.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/MultiButtonToggle/MultiButtonToggle.js | Remove PropTypes import and PropTypes-only custom validator/propTypes |
| awx/ui/src/components/Lookup/ProjectLookup.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/Lookup/PeersLookup.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/Lookup/OrganizationLookup.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/Lookup/MultiCredentialsLookup.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/Lookup/Lookup.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/Lookup/InventoryLookup.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/Lookup/InstanceGroupsLookup.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/Lookup/HostFilterLookup.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/Lookup/ExecutionEnvironmentLookup.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/Lookup/CredentialLookup.js | Remove PropTypes/types import and propTypes block (and PropTypes-only validator) |
| awx/ui/src/components/Lookup/ApplicationLookup.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/ListHeader/ListHeader.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/LaunchPrompt/steps/SurveyStep.js | Remove types import and propTypes block |
| awx/ui/src/components/LaunchButton/LaunchButton.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/LabelSelect/LabelSelect.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/JobList/JobListCancelButton.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/InstanceGroupLabels/InstanceGroupLabels.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/HostForm/HostForm.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/FormField/PasswordInput.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/FormField/PasswordField.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/FormField/FormField.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/FormField/CheckboxField.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/FormField/ArrayTextField.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/FormActionGroup/FormActionGroup.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/FieldWithPrompt/FieldWithPrompt.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/ExpandCollapse/ExpandCollapse.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/ExecutionEnvironmentDetail/ExecutionEnvironmentDetail.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/ErrorDetail/ErrorDetail.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/DisassociateButton/DisassociateButton.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/DetailList/UserDateDetail.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/DetailList/DetailBadge.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/DetailList/Detail.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/DetailList/DeletedDetail.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/DetailList/CodeDetail.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/DeleteButton/DeleteButton.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/DataListToolbar/DataListToolbar.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/CredentialChip/CredentialChip.js | Remove types import and propTypes block |
| awx/ui/src/components/CopyButton/CopyButton.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/ContentError/ContentError.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/CodeEditor/VariablesField.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/CodeEditor/VariablesDetail.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/CodeEditor/CodeEditorField.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/CodeEditor/CodeEditor.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/ChipGroup/ChipGroup.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/CheckboxListItem/CheckboxListItem.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/AppContainer/PageHeaderToolbar.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/AppContainer/NavExpandableGroup.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/AnsibleSelect/AnsibleSelect.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/AdHocCommands/AdHocDetailsStep.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/AdHocCommands/AdHocCredentialStep.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/AdHocCommands/AdHocCommandsWizard.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/AdHocCommands/AdHocCommands.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/AddRole/SelectRoleStep.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/AddRole/SelectResourceStep.js | Remove PropTypes/types import and propTypes block |
| awx/ui/src/components/AddRole/CheckboxCard.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/AddRole/AddResourceRole.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/AddDropDownButton/AddDropDownButton.js | Remove PropTypes import and propTypes block |
| awx/ui/src/components/About/About.js | Remove PropTypes import and propTypes block |
React removed the built-in PropTypes integration in React 19, so this strips the
runtime validation from the UI ahead of that upgrade.
- Remove every `import PropTypes from 'prop-types'` / named prop-types import and
all `Component.propTypes = {...}` blocks across 214 files.
- Remove now-orphaned shape imports from the shared `types` module and the
prop-types-only local validators/shapes (CredentialLookup's `idOrKind`,
ToolbarDeleteButton's `requiredField` / `ItemToDelete`, etc.).
- Drop several long-dead validation blocks that were mistakenly assigned to
`.prototype` / `.propType` (typos) and so never actually ran.
- Delete `src/types.js`: every consumer imported its shapes only for PropTypes,
so it is now unused. Drop the `prop-types` dependency from package.json (it
remains available transitively via PatternFly / react-router) and remove its
license mirror.
No behavioural change: PropTypes only emit dev-mode console warnings. The
`defaultProps` -> default-parameter conversion already merged separately, so no
default values are affected here.
bb681d5 to
a3f1412
Compare
|
Rebased onto current main (it conflicted with #491 across the same files). Regenerated the removal on top of the merged defaultProps change. Since #491 dropped the last non PropTypes use of the shared types shapes, types.js is now fully unused, so this also deletes it and drops the prop-types dependency (still present transitively) plus its license. Lint clean, 552 suites green, production build clean, test_licenses green. Mergeable now. |
SUMMARY
Removes PropTypes runtime validation from the React UI ahead of the React 19 upgrade (React 19 drops the built-in PropTypes integration).
Across 214 files:
import PropTypes from 'prop-types'/ named prop-types import and allComponent.propTypes = {...}blocks.typesmodule, plus prop-types-only local validators/shapes (e.g.CredentialLookup'sidOrKind,ToolbarDeleteButton'srequiredField/ItemToDelete)..prototype/.propType(typos) that therefore never ran.Also fully retires the dependency (the merge of the
defaultProps→ default-params change removed the last non-PropTypes consumer of thetypesshapes):src/types.js— every consumer imported its shapes only for PropTypes, so it is now unused.prop-typesfrompackage.jsondependencies(it stays available transitively via PatternFly / react-ace / react-router-dom) and removes itslicenses/uimirror.No behavioural change — PropTypes only emit dev-mode console warnings; nothing renders or branches on them.
defaultPropswere already converted to default parameters in a separate, merged change, so no default values are affected here.ISSUE TYPE
COMPONENT NAME
ADDITIONAL INFORMATION
npm --prefix awx/ui run lintclean;npm --prefix awx/ui run test— 552 suites / 2908 tests pass (3 documented skips);npm --prefix awx/ui run build(production) compiles clean;test_licenses.pygreen (removed the orphanedprop-typeslicense).main.