gitextract_d43v9j5z/ ├── .dumi/ │ ├── loading.tsx │ ├── theme/ │ │ ├── builtins/ │ │ │ └── TypeSchema/ │ │ │ ├── index.less │ │ │ └── index.tsx │ │ ├── layouts/ │ │ │ └── GlobalLayout/ │ │ │ └── index.tsx │ │ └── slots/ │ │ └── Header/ │ │ ├── GithubLink.tsx │ │ ├── Navigation.tsx │ │ ├── ThemeSwitch.tsx │ │ ├── index.less │ │ └── index.tsx │ └── tmp-production/ │ ├── core/ │ │ ├── EmptyRoute.tsx │ │ ├── defineApp.ts │ │ ├── exportStaticRuntimePlugin.ts │ │ ├── helmet.ts │ │ ├── helmetContext.ts │ │ ├── history.ts │ │ ├── historyIntelli.ts │ │ ├── plugin.ts │ │ ├── pluginConfig.ts │ │ ├── pluginConfigJoi.d.ts │ │ ├── polyfill.ts │ │ ├── route.tsx │ │ └── terminal.ts │ ├── dumi/ │ │ ├── exportStaticRuntimePlugin.ts │ │ ├── exports.ts │ │ ├── locales/ │ │ │ ├── config.ts │ │ │ └── runtime.tsx │ │ ├── meta/ │ │ │ ├── atoms.ts │ │ │ ├── index.ts │ │ │ ├── runtime.ts │ │ │ └── tabs.ts │ │ └── theme/ │ │ ├── ContextWrapper.tsx │ │ ├── builtins/ │ │ │ ├── API.ts │ │ │ ├── Badge.ts │ │ │ ├── Container.ts │ │ │ ├── Previewer.ts │ │ │ ├── SourceCode.ts │ │ │ └── Table.ts │ │ ├── layouts/ │ │ │ └── DocLayout.ts │ │ └── slots/ │ │ ├── ColorSwitch.ts │ │ ├── Content.ts │ │ ├── ContentTabs.ts │ │ ├── Features.ts │ │ ├── Footer.ts │ │ ├── HeadeExtra.ts │ │ ├── Header.ts │ │ ├── Hero.ts │ │ ├── HeroTitle.ts │ │ ├── LangSwitch.ts │ │ ├── Logo.ts │ │ ├── Navbar.ts │ │ ├── NavbarExtra.ts │ │ ├── NotFound.ts │ │ ├── PreviewerActions.ts │ │ ├── PreviewerActionsExtra.ts │ │ ├── RtlSwitch.ts │ │ ├── SearchBar.ts │ │ ├── SearchResult.ts │ │ ├── Sidebar.ts │ │ ├── SocialIcon.ts │ │ └── Toc.ts │ ├── exports.ts │ ├── testBrowser.tsx │ └── umi.ts ├── .dumirc.ts ├── .editorconfig ├── .fatherrc.js ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug-report.md │ │ └── feature_request.md │ └── workflows/ │ ├── ci.yml │ ├── coverage.yml │ ├── deploy.yml │ ├── emoji-helper.yml │ ├── issue-helper.yml │ └── mirror.yml ├── .gitignore ├── .npmrc ├── .prettierignore ├── .prettierrc ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── README.md ├── app.ts ├── docs/ │ ├── data-render/ │ │ ├── data/ │ │ │ └── basic.ts │ │ ├── index.md │ │ └── schema/ │ │ └── basic.ts │ ├── form-render/ │ │ ├── advaced-example.md │ │ ├── advanced-bind.md │ │ ├── advanced-layout.md │ │ ├── advanced-linkage.md │ │ ├── advanced-path.md │ │ ├── advanced-slimrender.md │ │ ├── advanced-validate.md │ │ ├── advanced-widget.md │ │ ├── api-props.md │ │ ├── api-schema.md │ │ ├── changelog.md │ │ ├── demo/ │ │ │ ├── FormRender.jsx │ │ │ ├── bind.tsx │ │ │ ├── defaultChange.tsx │ │ │ ├── dymic.tsx │ │ │ ├── form-slim/ │ │ │ │ ├── basic.tsx │ │ │ │ └── form-list.tsx │ │ │ ├── linkage/ │ │ │ │ └── list.tsx │ │ │ ├── outLabelCol.tsx │ │ │ ├── validateFields.tsx │ │ │ └── widget/ │ │ │ ├── basic.tsx │ │ │ ├── depend-linkage.tsx │ │ │ ├── desc-widget.tsx │ │ │ ├── label-widget.tsx │ │ │ ├── linkage.tsx │ │ │ └── readonly-widget.tsx │ │ ├── disaply-search.md │ │ ├── display-row.md │ │ ├── faq.md │ │ ├── index.md │ │ ├── migrate.md │ │ ├── schema/ │ │ │ ├── baseControl.ts │ │ │ ├── basic.ts │ │ │ ├── cellSpan.ts │ │ │ ├── schema.ts │ │ │ ├── simple.ts │ │ │ └── span.ts │ │ ├── test/ │ │ │ ├── bigJson.tsx │ │ │ ├── bind.tsx │ │ │ ├── dependencies.tsx │ │ │ ├── disaply-column.md │ │ │ ├── removeHidden.tsx │ │ │ └── test.md │ │ └── utils/ │ │ └── index.js │ ├── form-render-mobile/ │ │ ├── api.md │ │ ├── demo/ │ │ │ ├── allWidget.tsx │ │ │ ├── basic.tsx │ │ │ ├── card.tsx │ │ │ ├── collaspa.tsx │ │ │ ├── group.tsx │ │ │ ├── index.tsx │ │ │ └── list.tsx │ │ ├── disaply.md │ │ ├── index.md │ │ └── test/ │ │ ├── index.tsx │ │ └── test.md │ ├── index.en-US.md │ ├── index.zh-CN.md │ ├── playground/ │ │ ├── controller/ │ │ │ ├── index.css │ │ │ └── index.tsx │ │ ├── customized/ │ │ │ └── AsyncSelect.js │ │ ├── example/ │ │ │ └── expression.ts │ │ ├── index.less │ │ ├── index.md │ │ ├── index.tsx │ │ ├── json/ │ │ │ ├── basic.json │ │ │ ├── demo.json │ │ │ ├── dynamic-function.js │ │ │ ├── format.json │ │ │ ├── function.json │ │ │ ├── input.json │ │ │ ├── new-feature.json │ │ │ ├── select.json │ │ │ └── simplest.json │ │ └── serialize.js │ ├── schema-builder/ │ │ ├── api.md │ │ └── index.md │ ├── schema-builder-online/ │ │ └── index.md │ ├── table-render/ │ │ ├── .test/ │ │ │ └── test.md │ │ ├── api.md │ │ ├── basic.md │ │ ├── collapsed.md │ │ ├── custom-table.md │ │ ├── demo/ │ │ │ ├── basic/ │ │ │ │ └── index.tsx │ │ │ ├── display/ │ │ │ │ └── custom-table.tsx │ │ │ └── toolbar/ │ │ │ ├── basic.tsx │ │ │ └── selection-tool.tsx │ │ ├── index.md │ │ ├── migrate.md │ │ ├── noSearch.md │ │ ├── promptly-search.md │ │ ├── static/ │ │ │ ├── request.ts │ │ │ ├── search.ts │ │ │ └── table.tsx │ │ ├── tabs.md │ │ ├── toolbar.md │ │ └── valueType.md │ ├── tools/ │ │ ├── proptypes/ │ │ │ └── index.md │ │ └── vscode/ │ │ └── index.md │ └── xflow/ │ ├── FlowProvider.md │ ├── api.md │ ├── best-practices.md │ ├── custom-node-setting.md │ ├── custom-node-view.md │ ├── data/ │ │ └── basic.ts │ ├── demo/ │ │ ├── basic/ │ │ │ ├── index.tsx │ │ │ └── setting.tsx │ │ ├── best/ │ │ │ ├── basic/ │ │ │ │ ├── TextEllipsis/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── const.tsx │ │ │ │ ├── header.tsx │ │ │ │ ├── index.less │ │ │ │ ├── index.tsx │ │ │ │ ├── setting.tsx │ │ │ │ ├── showSwitchNode.tsx │ │ │ │ └── tools.tsx │ │ │ └── demo2/ │ │ │ ├── CustomSvg.tsx │ │ │ ├── TextEllipsis/ │ │ │ │ ├── index.less │ │ │ │ └── index.tsx │ │ │ ├── const.tsx │ │ │ ├── header.tsx │ │ │ ├── index.less │ │ │ ├── index.tsx │ │ │ ├── setting.tsx │ │ │ ├── showSwitchNode.tsx │ │ │ └── tools.tsx │ │ ├── custom-flow/ │ │ │ ├── advancedLinkageCase/ │ │ │ │ ├── customWidget.tsx │ │ │ │ ├── index.tsx │ │ │ │ └── setting.tsx │ │ │ ├── customWidget.tsx │ │ │ ├── fullCase/ │ │ │ │ ├── components/ │ │ │ │ │ ├── ReadOnlyPanel.tsx │ │ │ │ │ ├── TagWidget.tsx │ │ │ │ │ ├── customWidget.tsx │ │ │ │ │ └── secondTagWidget.tsx │ │ │ │ ├── const.ts │ │ │ │ ├── index.less │ │ │ │ ├── index.tsx │ │ │ │ └── setting.ts │ │ │ ├── index.tsx │ │ │ └── setting.tsx │ │ ├── flow-provider/ │ │ │ ├── edges.ts │ │ │ ├── index.tsx │ │ │ ├── nodes.ts │ │ │ └── setting.tsx │ │ ├── layout/ │ │ │ ├── LR/ │ │ │ │ ├── index.tsx │ │ │ │ └── setting.tsx │ │ │ └── TB/ │ │ │ ├── index.tsx │ │ │ └── setting.tsx │ │ ├── log/ │ │ │ ├── buildIn-log/ │ │ │ │ ├── CustomGroupTittle.tsx │ │ │ │ ├── DetailLogWidget.tsx │ │ │ │ ├── index.tsx │ │ │ │ ├── setting.tsx │ │ │ │ └── utils.tsx │ │ │ ├── custom-log/ │ │ │ │ ├── index.tsx │ │ │ │ ├── setting.tsx │ │ │ │ └── utils.tsx │ │ │ ├── index.tsx │ │ │ ├── runNode/ │ │ │ │ ├── index.tsx │ │ │ │ ├── setting.tsx │ │ │ │ └── utils.tsx │ │ │ ├── setting.tsx │ │ │ └── utils.tsx │ │ ├── nodeSetting/ │ │ │ ├── data.tsx │ │ │ ├── fullDemo/ │ │ │ │ ├── CustomImg.tsx │ │ │ │ ├── CustomSvg.tsx │ │ │ │ ├── index.tsx │ │ │ │ └── settings.ts │ │ │ ├── index.tsx │ │ │ └── setting.tsx │ │ ├── nodeWidget/ │ │ │ ├── index.less │ │ │ ├── index.tsx │ │ │ └── setting.ts │ │ ├── parallelNode/ │ │ │ ├── custome/ │ │ │ │ ├── index.tsx │ │ │ │ └── setting.tsx │ │ │ ├── index.tsx │ │ │ └── setting.tsx │ │ ├── quickStart/ │ │ │ └── index.tsx │ │ └── switchNode/ │ │ ├── customSwitchNode/ │ │ │ ├── index.tsx │ │ │ └── setting.tsx │ │ ├── index.tsx │ │ └── setting.tsx │ ├── index.md │ ├── layout.md │ ├── log.md │ ├── nodeBuildIn.md │ ├── nodeSetting.md │ ├── question.md │ ├── quickStart.md │ ├── schema/ │ │ ├── basic.ts │ │ ├── custom-settings.ts │ │ └── settings.ts │ ├── singlePointDebug.md │ └── updateLog.md ├── lerna.json ├── package.json ├── packages/ │ ├── chart-render/ │ │ ├── .fatherrc.ts │ │ ├── CHANGELOG.md │ │ ├── README.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── components/ │ │ │ │ ├── ChartContainer/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── ChartProvider/ │ │ │ │ │ └── index.tsx │ │ │ │ └── Search/ │ │ │ │ ├── index.less │ │ │ │ └── index.tsx │ │ │ ├── index.ts │ │ │ ├── utils/ │ │ │ │ ├── index.ts │ │ │ │ ├── store.ts │ │ │ │ └── type.ts │ │ │ └── widgets/ │ │ │ ├── Column/ │ │ │ │ └── index.tsx │ │ │ └── Pie/ │ │ │ └── index.tsx │ │ └── tsconfig.json │ ├── data-render/ │ │ ├── .fatherrc.js │ │ ├── CHANGELOG.md │ │ ├── CONTRIBUTING.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── core/ │ │ │ │ ├── index.less │ │ │ │ ├── index.tsx │ │ │ │ └── renderer.tsx │ │ │ ├── index.ts │ │ │ ├── models/ │ │ │ │ ├── context.ts │ │ │ │ ├── expression.ts │ │ │ │ ├── isHidden.ts │ │ │ │ ├── resolver.tsx │ │ │ │ └── store.ts │ │ │ ├── type.ts │ │ │ ├── utils/ │ │ │ │ └── common.ts │ │ │ ├── widgets/ │ │ │ │ ├── FButton/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── FButtonFold/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── FCard/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── FCollapse/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── FDescriptions/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── FEncryption/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── FIconLabel/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── FImage/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── FLabel/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── FPanel/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── FProgress/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── FProgressBar/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── FRadioGroup/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── FRow/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── FSpace/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── FStatistic/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── FSteps/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── FSuckNav/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── FTable/ │ │ │ │ │ ├── detalColumn.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── FTabs/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── FTags/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── FText/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── FTextEllipsis/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── FTimeline/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── FTitle/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── FTooltip/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── components/ │ │ │ │ │ ├── BaseCollapse/ │ │ │ │ │ │ ├── index.less │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── BaseTable/ │ │ │ │ │ │ ├── basic.ts │ │ │ │ │ │ ├── index.less │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── CopyLabel/ │ │ │ │ │ │ ├── index.less │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── Encryption/ │ │ │ │ │ │ ├── index.less │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── IconLabel/ │ │ │ │ │ │ ├── index.less │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── IconView/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── InnerHtml/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── ReactNode/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── RequestTable/ │ │ │ │ │ │ ├── index.less │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── SuckTabs/ │ │ │ │ │ │ ├── index.less │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── TextEllipsis/ │ │ │ │ │ │ ├── index.less │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── TextView/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── index.ts │ │ │ │ └── utils/ │ │ │ │ ├── common.ts │ │ │ │ ├── createIconFont.ts │ │ │ │ └── hooks.ts │ │ │ └── withProvider.tsx │ │ └── tsconfig.json │ ├── form-render/ │ │ ├── .fatherrc.js │ │ ├── CHANGELOG.md │ │ ├── CONTRIBUTING.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── __tests__/ │ │ │ ├── core-utils.spec.ts │ │ │ ├── demo.tsx │ │ │ ├── form-demo.tsx │ │ │ ├── form-fields.spec.tsx │ │ │ ├── form.spec.tsx │ │ │ ├── get-descriptor.spec.ts │ │ │ ├── schema.ts │ │ │ └── utils.spec.ts │ │ ├── package.json │ │ ├── src/ │ │ │ ├── derivative/ │ │ │ │ ├── SearchForm/ │ │ │ │ │ ├── ActionView.tsx │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ └── SlimRender/ │ │ │ │ └── index.tsx │ │ │ ├── form-core/ │ │ │ │ ├── connectForm.tsx │ │ │ │ ├── index.less │ │ │ │ └── index.tsx │ │ │ ├── index.ts │ │ │ ├── locales/ │ │ │ │ ├── en_US.ts │ │ │ │ ├── index.ts │ │ │ │ └── zh_CN.ts │ │ │ ├── models/ │ │ │ │ ├── bindValues.ts │ │ │ │ ├── context.ts │ │ │ │ ├── expression.ts │ │ │ │ ├── fieldShouldUpdate.ts │ │ │ │ ├── filterValuesHidden.ts │ │ │ │ ├── filterValuesUndefined.ts │ │ │ │ ├── flattenSchema.ts │ │ │ │ ├── formCoreUtils.ts │ │ │ │ ├── formDataSkeleton.ts │ │ │ │ ├── layout.ts │ │ │ │ ├── mapping.tsx │ │ │ │ ├── sortProperties.ts │ │ │ │ ├── store.ts │ │ │ │ ├── transformProps.ts │ │ │ │ ├── useForm.ts │ │ │ │ ├── validateMessage.ts │ │ │ │ └── validates.ts │ │ │ ├── render-core/ │ │ │ │ ├── FieldItem/ │ │ │ │ │ ├── field.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── main.tsx │ │ │ │ │ └── module.tsx │ │ │ │ ├── FieldList/ │ │ │ │ │ ├── field.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── main.tsx │ │ │ │ │ └── modules.tsx │ │ │ │ ├── index.less │ │ │ │ └── index.tsx │ │ │ ├── type.ts │ │ │ ├── utils/ │ │ │ │ └── index.ts │ │ │ ├── widgets/ │ │ │ │ ├── ErrorSchema/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── boxCollapse/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── boxLineTitle/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── boxSubInline/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── boxcard/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── components/ │ │ │ │ │ ├── DatePicker/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── FButton/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── HeaderTitle/ │ │ │ │ │ │ ├── index.less │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── PanelView/ │ │ │ │ │ │ ├── index.less │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── TimePicker/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── fields/ │ │ │ │ │ ├── checkbox/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── checkboxes/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── color/ │ │ │ │ │ │ ├── alphahexMap.ts │ │ │ │ │ │ ├── index.less │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── date/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── dateRange/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── html/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── imageInput/ │ │ │ │ │ │ ├── index.less │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── input/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── number/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── percentSlider/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── radio/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── rate/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── select/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── slider/ │ │ │ │ │ │ ├── index.less │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── switch/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── textArea/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── time/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── timeRange/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── treeSelect/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── upload/ │ │ │ │ │ │ ├── index.less │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── urlInput/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── index.ts │ │ │ │ ├── listCard/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── listDrawer/ │ │ │ │ │ ├── drawerForm.tsx │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── listSimple/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── listTab/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── listTable/ │ │ │ │ │ ├── index.less │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── tableCell.tsx │ │ │ │ ├── listVirtual/ │ │ │ │ │ ├── index.less │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── virtualCell.tsx │ │ │ │ ├── utils/ │ │ │ │ │ ├── hooks.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── withFieldWrap.tsx │ │ │ │ └── voidTitle/ │ │ │ │ ├── index.less │ │ │ │ └── index.tsx │ │ │ └── withProvider.tsx │ │ └── tsconfig.json │ ├── form-render-mobile/ │ │ ├── .fatherrc.js │ │ ├── CHANGELOG.md │ │ ├── CONTRIBUTING.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── form-core/ │ │ │ │ ├── connectForm.tsx │ │ │ │ ├── index.less │ │ │ │ └── index.tsx │ │ │ ├── index.tsx │ │ │ ├── locales/ │ │ │ │ ├── en_US.ts │ │ │ │ ├── index.ts │ │ │ │ └── zh_CN.ts │ │ │ ├── models/ │ │ │ │ ├── context.ts │ │ │ │ ├── store.ts │ │ │ │ ├── transformProps.ts │ │ │ │ └── useForm.ts │ │ │ ├── render-core/ │ │ │ │ ├── FieldItem/ │ │ │ │ │ ├── field.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── main.tsx │ │ │ │ │ └── module.tsx │ │ │ │ ├── FieldList/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ └── index.tsx │ │ │ ├── type.ts │ │ │ ├── utils/ │ │ │ │ └── index.ts │ │ │ ├── widgets/ │ │ │ │ ├── Card/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── Cascader/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── Collapse/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── DatePicker/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── Group/ │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── Html/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── Picker/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── Radio/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── index.less │ │ │ │ ├── index.tsx │ │ │ │ └── utils.ts │ │ │ └── withProvider.tsx │ │ └── tsconfig.json │ ├── table-render/ │ │ ├── .fatherrc.ts │ │ ├── CHANGELOG.md │ │ ├── CONTRIBUTION.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── __tests__/ │ │ │ └── utils.spec.ts │ │ ├── package.json │ │ ├── src/ │ │ │ ├── core/ │ │ │ │ ├── ErrorBoundary/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── SearchView/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── TableView/ │ │ │ │ │ ├── copy.tsx │ │ │ │ │ ├── field.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── widgets.tsx │ │ │ │ ├── ToolbarView/ │ │ │ │ │ ├── InteriorTool/ │ │ │ │ │ │ ├── ColumnSetting/ │ │ │ │ │ │ │ ├── index.less │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ ├── item.tsx │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ ├── DensityIcon.tsx │ │ │ │ │ │ ├── FullScreenIcon.tsx │ │ │ │ │ │ ├── ReloadIcon.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── TitleView.tsx │ │ │ │ │ ├── index.less │ │ │ │ │ └── index.tsx │ │ │ │ ├── index.less │ │ │ │ ├── index.tsx │ │ │ │ └── store.ts │ │ │ ├── index.tsx │ │ │ ├── locales/ │ │ │ │ ├── en_US.ts │ │ │ │ ├── index.ts │ │ │ │ └── zh_CN.ts │ │ │ ├── types.ts │ │ │ └── utils/ │ │ │ └── index.ts │ │ ├── tsconfig.json │ │ └── 开发文档.md │ └── x-flow/ │ ├── .fatherrc.js │ ├── CHANGELOG.md │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── package.json │ ├── src/ │ │ ├── XFlow.tsx │ │ ├── components/ │ │ │ ├── CandidateNode/ │ │ │ │ └── index.tsx │ │ │ ├── CustomEdge/ │ │ │ │ ├── index.less │ │ │ │ └── index.tsx │ │ │ ├── CustomNode/ │ │ │ │ ├── index.less │ │ │ │ ├── index.tsx │ │ │ │ └── sourceHandle.tsx │ │ │ ├── FAutoComplete/ │ │ │ │ └── index.tsx │ │ │ ├── FlowProvider/ │ │ │ │ └── index.tsx │ │ │ ├── IconView/ │ │ │ │ └── index.tsx │ │ │ ├── NodeContainer/ │ │ │ │ ├── TitleMenuTooltip.tsx │ │ │ │ ├── index.less │ │ │ │ └── index.tsx │ │ │ ├── NodeEditor/ │ │ │ │ └── index.tsx │ │ │ ├── NodeLogPanel/ │ │ │ │ ├── components/ │ │ │ │ │ ├── CodePanel.tsx │ │ │ │ │ ├── DetailPanel.tsx │ │ │ │ │ ├── StatusPanel.tsx │ │ │ │ │ ├── TrackNodeItem.tsx │ │ │ │ │ └── TrackPanel.tsx │ │ │ │ ├── index.less │ │ │ │ └── index.tsx │ │ │ ├── NodesMenu/ │ │ │ │ ├── index.less │ │ │ │ └── index.tsx │ │ │ ├── NodesPopover/ │ │ │ │ ├── index.less │ │ │ │ └── index.tsx │ │ │ ├── PanelContainer/ │ │ │ │ ├── index.less │ │ │ │ └── index.tsx │ │ │ ├── PanelStatusLogContainer/ │ │ │ │ ├── index.less │ │ │ │ └── index.tsx │ │ │ └── TextEllipsis/ │ │ │ ├── index.less │ │ │ └── index.tsx │ │ ├── hooks/ │ │ │ ├── useEdges.ts │ │ │ ├── useFlow.ts │ │ │ ├── useNodes.ts │ │ │ ├── useStore.ts │ │ │ └── useTemporalStore.ts │ │ ├── index.less │ │ ├── index.ts │ │ ├── models/ │ │ │ ├── context.ts │ │ │ ├── event-emitter.tsx │ │ │ └── store.ts │ │ ├── nodes/ │ │ │ ├── index.less │ │ │ ├── index.tsx │ │ │ ├── node-common/ │ │ │ │ ├── index.less │ │ │ │ └── index.tsx │ │ │ ├── node-end/ │ │ │ │ ├── index.less │ │ │ │ └── index.tsx │ │ │ ├── node-note/ │ │ │ │ ├── index.less │ │ │ │ └── index.tsx │ │ │ ├── node-parallel/ │ │ │ │ ├── ParallelBuildInNodeWidget.tsx │ │ │ │ ├── index.less │ │ │ │ ├── index.tsx │ │ │ │ └── setting/ │ │ │ │ └── index.tsx │ │ │ ├── node-start/ │ │ │ │ ├── index.less │ │ │ │ └── index.tsx │ │ │ └── node-switch/ │ │ │ ├── SwitchBuildInNodeWidget.tsx │ │ │ ├── index.less │ │ │ ├── index.tsx │ │ │ └── setting/ │ │ │ └── index.tsx │ │ ├── operator/ │ │ │ ├── Control/ │ │ │ │ ├── index.less │ │ │ │ └── index.tsx │ │ │ ├── UndoRedo/ │ │ │ │ ├── index.less │ │ │ │ └── index.tsx │ │ │ ├── ZoomInOut/ │ │ │ │ ├── index.less │ │ │ │ ├── index.tsx │ │ │ │ └── shortcuts-name.tsx │ │ │ ├── index.less │ │ │ └── index.tsx │ │ ├── types.ts │ │ ├── utils/ │ │ │ ├── autoLayoutNodes.ts │ │ │ ├── createIconFont.ts │ │ │ ├── flow.ts │ │ │ ├── hooks.ts │ │ │ └── index.ts │ │ └── withProvider.tsx │ └── tsconfig.json ├── scripts/ │ ├── dumi-plugin/ │ │ ├── publicPath.ts │ │ └── redirect.ts │ └── prettier-plugin/ │ └── index.js ├── tools/ │ └── schema-builder/ │ ├── .fatherrc.js │ ├── CHANGELOG.md │ ├── LICENSE │ ├── README.md │ ├── package.json │ ├── src/ │ │ ├── createIframe.ts │ │ ├── index.ts │ │ ├── main.tsx │ │ ├── settings/ │ │ │ ├── index.ts │ │ │ ├── meta/ │ │ │ │ ├── card.ts │ │ │ │ ├── cardList.ts │ │ │ │ ├── checkbox.ts │ │ │ │ ├── checkboxes.ts │ │ │ │ ├── color.ts │ │ │ │ ├── date.ts │ │ │ │ ├── dateRange.ts │ │ │ │ ├── form.ts │ │ │ │ ├── imageInput.ts │ │ │ │ ├── input.ts │ │ │ │ ├── number.ts │ │ │ │ ├── radio.ts │ │ │ │ ├── rate.ts │ │ │ │ ├── select.ts │ │ │ │ ├── slider.ts │ │ │ │ ├── switch.ts │ │ │ │ ├── textarea.ts │ │ │ │ ├── time.ts │ │ │ │ ├── timeRange.ts │ │ │ │ ├── treeSelect.ts │ │ │ │ └── urlInput.ts │ │ │ └── utils.ts │ │ └── type.ts │ └── tsconfig.json ├── tsconfig.jest.json ├── turbo.json ├── typing.d.ts ├── vitest.config.ts └── widgets/ ├── AsyncOptions/ │ ├── .fatherrc.js │ ├── README.md │ ├── package.json │ └── src/ │ └── index.js ├── RichText/ │ ├── .fatherrc.js │ ├── README.md │ ├── package.json │ └── src/ │ └── index.js └── template/ ├── .fatherrc.js ├── README.md ├── package.json └── src/ └── index.js