From 88ee1675a8700ab89c77b2e58bdfc858dca418b2 Mon Sep 17 00:00:00 2001 From: Ashwin Ramaswami Date: Wed, 4 Sep 2019 06:10:58 +0000 Subject: [PATCH 1/7] set up typescript --- .babelrc | 3 +- package-lock.json | 153 +++++++++++++++++++++++++++++++++++++++++ package.json | 1 + webpack.config.dev.js | 5 +- webpack.config.dist.js | 3 + webpack.config.prod.js | 4 +- 6 files changed, 165 insertions(+), 4 deletions(-) diff --git a/.babelrc b/.babelrc index 0d11e9ccbb..94da2334c4 100644 --- a/.babelrc +++ b/.babelrc @@ -1,7 +1,8 @@ { "presets": [ "@babel/preset-react", - "@babel/preset-env" + "@babel/preset-env", + "@babel/preset-typescript" ], "plugins": [ "@babel/plugin-proposal-object-rest-spread", diff --git a/package-lock.json b/package-lock.json index 90756ce414..97bede1d14 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1997,6 +1997,15 @@ "@babel/helper-plugin-utils": "^7.0.0" } }, + "@babel/plugin-syntax-typescript": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.3.3.tgz", + "integrity": "sha512-dGwbSMA1YhVS8+31CnPR7LB4pcbrzcV99wQzby4uAfrkZPYZlQ7ImwdpzLqi6Z6IL02b8IAL379CaMwo0x5Lag==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, "@babel/plugin-transform-arrow-functions": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.2.0.tgz", @@ -2450,6 +2459,134 @@ "@babel/helper-plugin-utils": "^7.0.0" } }, + "@babel/plugin-transform-typescript": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.5.5.tgz", + "integrity": "sha512-pehKf4m640myZu5B2ZviLaiBlxMCjSZ1qTEO459AXKX5GnPueyulJeCqZFs1nz/Ya2dDzXQ1NxZ/kKNWyD4h6w==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.5.5", + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-syntax-typescript": "^7.2.0" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.5.5.tgz", + "integrity": "sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw==", + "dev": true, + "requires": { + "@babel/highlight": "^7.0.0" + } + }, + "@babel/generator": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.5.5.tgz", + "integrity": "sha512-ETI/4vyTSxTzGnU2c49XHv2zhExkv9JHLTwDAFz85kmcwuShvYG2H08FwgIguQf4JC75CBnXAUM5PqeF4fj0nQ==", + "dev": true, + "requires": { + "@babel/types": "^7.5.5", + "jsesc": "^2.5.1", + "lodash": "^4.17.13", + "source-map": "^0.5.0", + "trim-right": "^1.0.1" + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.5.5.tgz", + "integrity": "sha512-ZsxkyYiRA7Bg+ZTRpPvB6AbOFKTFFK4LrvTet8lInm0V468MWCaSYJE+I7v2z2r8KNLtYiV+K5kTCnR7dvyZjg==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-member-expression-to-functions": "^7.5.5", + "@babel/helper-optimise-call-expression": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-replace-supers": "^7.5.5", + "@babel/helper-split-export-declaration": "^7.4.4" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.5.5.tgz", + "integrity": "sha512-5qZ3D1uMclSNqYcXqiHoA0meVdv+xUEex9em2fqMnrk/scphGlGgg66zjMrPJESPwrFJ6sbfFQYUSa0Mz7FabA==", + "dev": true, + "requires": { + "@babel/types": "^7.5.5" + } + }, + "@babel/helper-replace-supers": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.5.5.tgz", + "integrity": "sha512-XvRFWrNnlsow2u7jXDuH4jDDctkxbS7gXssrP4q2nUD606ukXHRvydj346wmNg+zAgpFx4MWf4+usfC93bElJg==", + "dev": true, + "requires": { + "@babel/helper-member-expression-to-functions": "^7.5.5", + "@babel/helper-optimise-call-expression": "^7.0.0", + "@babel/traverse": "^7.5.5", + "@babel/types": "^7.5.5" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz", + "integrity": "sha512-Ro/XkzLf3JFITkW6b+hNxzZ1n5OQ80NvIUdmHspih1XAhtN3vPTuUFT4eQnela+2MaZ5ulH+iyP513KJrxbN7Q==", + "dev": true, + "requires": { + "@babel/types": "^7.4.4" + } + }, + "@babel/parser": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.5.5.tgz", + "integrity": "sha512-E5BN68cqR7dhKan1SfqgPGhQ178bkVKpXTPEXnFJBrEt8/DKRZlybmy+IgYLTeN7tp1R5Ccmbm2rBk17sHYU3g==", + "dev": true + }, + "@babel/traverse": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.5.5.tgz", + "integrity": "sha512-MqB0782whsfffYfSjH4TM+LMjrJnhCNEDMDIjeTpl+ASaUvxcjoiVCo/sM1GhS1pHOXYfWVCYneLjMckuUxDaQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.5.5", + "@babel/generator": "^7.5.5", + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-split-export-declaration": "^7.4.4", + "@babel/parser": "^7.5.5", + "@babel/types": "^7.5.5", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.13" + } + }, + "@babel/types": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.5.5.tgz", + "integrity": "sha512-s63F9nJioLqOlW3UkyMd+BYhXt44YuaFm/VV0VwuteqjYwRrObkU7ra9pY4wAJR3oXi8hJrMcrcJdO/HH33vtw==", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + }, + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, "@babel/plugin-transform-unicode-regex": { "version": "7.4.4", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.4.4.tgz", @@ -2609,6 +2746,16 @@ "@babel/plugin-transform-react-jsx-source": "^7.0.0" } }, + "@babel/preset-typescript": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.3.3.tgz", + "integrity": "sha512-mzMVuIP4lqtn4du2ynEfdO0+RYcslwrZiJHXu4MGaC1ctJiW2fyaeDrtjJGs7R/KebZ1sgowcIoWf4uRpEfKEg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-transform-typescript": "^7.3.2" + } + }, "@babel/register": { "version": "7.4.4", "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.4.4.tgz", @@ -7388,6 +7535,12 @@ } } }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + }, "json-loader": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/json-loader/-/json-loader-0.5.7.tgz", diff --git a/package.json b/package.json index eb4d614bad..ef38b2ac4c 100644 --- a/package.json +++ b/package.json @@ -61,6 +61,7 @@ "@babel/plugin-transform-runtime": "^7.4.4", "@babel/preset-env": "^7.4.5", "@babel/preset-react": "^7.0.0", + "@babel/preset-typescript": "^7.3.3", "@babel/register": "^7.4.4", "atob": "^2.0.3", "babel-eslint": "^10.0.1", diff --git a/webpack.config.dev.js b/webpack.config.dev.js index 853733f93d..ed884ef421 100644 --- a/webpack.config.dev.js +++ b/webpack.config.dev.js @@ -20,10 +20,13 @@ module.exports = { }), new webpack.HotModuleReplacementPlugin(), ], + resolve: { + extensions: [".js", ".jsx", ".ts", ".tsx", ".css"] + }, module: { rules: [ { - test: /\.jsx?$/, + test: /\.(js|jsx|ts|tsx)$/, use: [ "babel-loader", ], diff --git a/webpack.config.dist.js b/webpack.config.dist.js index 37d1f7d218..0a5b171339 100644 --- a/webpack.config.dist.js +++ b/webpack.config.dist.js @@ -40,6 +40,9 @@ module.exports = { umd: 'react-dom', } }, + resolve: { + extensions: [".js", ".jsx", ".ts", ".tsx", ".css"] + }, module: { rules: [ { diff --git a/webpack.config.prod.js b/webpack.config.prod.js index 8a4b3eaafe..7753cbbd4a 100644 --- a/webpack.config.prod.js +++ b/webpack.config.prod.js @@ -24,12 +24,12 @@ module.exports = { }) ], resolve: { - extensions: [".js", ".jsx", ".css"] + extensions: [".js", ".jsx", ".ts", ".tsx", ".css"] }, module: { rules: [ { - test: /\.jsx?$/, + test: /\.(js|jsx|ts|tsx)$/, use: [ "babel-loader", ], From 09f46da969438fe78ac6a638737f994241754f7a Mon Sep 17 00:00:00 2001 From: Ashwin Ramaswami Date: Wed, 4 Sep 2019 06:11:07 +0000 Subject: [PATCH 2/7] Move form file to typescript --- src/components/{Form.js => Form.tsx} | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) rename src/components/{Form.js => Form.tsx} (98%) diff --git a/src/components/Form.js b/src/components/Form.tsx similarity index 98% rename from src/components/Form.js rename to src/components/Form.tsx index cb448d80fd..de7afeab4d 100644 --- a/src/components/Form.js +++ b/src/components/Form.tsx @@ -18,7 +18,12 @@ import { } from "../utils"; import validateFormData, { toErrorList } from "../validate"; -export default class Form extends Component { +interface IFormProps { + [x: string]: any, + formElement: any +} + +export default class Form extends Component { static defaultProps = { uiSchema: {}, noValidate: false, From b2233631a4f28d05e129fc08d69df782bbcca62c Mon Sep 17 00:00:00 2001 From: Ashwin Ramaswami Date: Wed, 4 Sep 2019 06:12:13 +0000 Subject: [PATCH 3/7] fix tests by adding valid extensions to @babel/register config --- babel-register.js | 1 + package.json | 10 +++++----- 2 files changed, 6 insertions(+), 5 deletions(-) create mode 100644 babel-register.js diff --git a/babel-register.js b/babel-register.js new file mode 100644 index 0000000000..6b72a65ee5 --- /dev/null +++ b/babel-register.js @@ -0,0 +1 @@ +require("@babel/register")({ extensions: ['.js', '.jsx', '.ts', '.tsx'] }); \ No newline at end of file diff --git a/package.json b/package.json index ef38b2ac4c..fcbcfd2a99 100644 --- a/package.json +++ b/package.json @@ -16,10 +16,10 @@ "publish-to-npm": "npm run dist && npm publish", "preversion": "npm run build:playground && npm run dist && npm run cs-check && npm run lint", "start": "node devServer.js", - "tdd": "cross-env NODE_ENV=test mocha --require @babel/register --watch --require ./test/setup-jsdom.js test/**/*_test.js", - "test": "cross-env NODE_ENV=test mocha --require @babel/register --require ./test/setup-jsdom.js test/**/*_test.js", - "test-coverage": "cross-env NODE_ENV=test nyc --reporter=lcov mocha --require @babel/register --require ./test/setup-jsdom.js test/**/*_test.js", - "test-debug": "cross-env NODE_ENV=test mocha --require @babel/register --require ./test/setup-jsdom.js --debug-brk --inspect test/Form_test.js" + "tdd": "cross-env NODE_ENV=test mocha --require ./babel-register.js --watch --require ./test/setup-jsdom.js test/**/*_test.js", + "test": "cross-env NODE_ENV=test mocha --require ./babel-register.js --require ./test/setup-jsdom.js test/**/*_test.js", + "test-coverage": "cross-env NODE_ENV=test nyc --reporter=lcov mocha --require ./babel-register.js --require ./test/setup-jsdom.js test/**/*_test.js", + "test-debug": "cross-env NODE_ENV=test mocha --require ./babel-register.js --require ./test/setup-jsdom.js --debug-brk --inspect test/Form_test.js" }, "prettierOptions": "--jsx-bracket-same-line --trailing-comma es5 --semi --tab-width 2", "lint-staged": { @@ -62,7 +62,7 @@ "@babel/preset-env": "^7.4.5", "@babel/preset-react": "^7.0.0", "@babel/preset-typescript": "^7.3.3", - "@babel/register": "^7.4.4", + "./babel-register.js": "^7.4.4", "atob": "^2.0.3", "babel-eslint": "^10.0.1", "babel-loader": "^8.0.6", From 88399f875dbab81dc969aefb92fd5e1cb2ac7164 Mon Sep 17 00:00:00 2001 From: Ashwin Ramaswami Date: Wed, 4 Sep 2019 06:19:45 +0000 Subject: [PATCH 4/7] Fix @babel/register dependency --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index fcbcfd2a99..94da7c82dc 100644 --- a/package.json +++ b/package.json @@ -62,7 +62,7 @@ "@babel/preset-env": "^7.4.5", "@babel/preset-react": "^7.0.0", "@babel/preset-typescript": "^7.3.3", - "./babel-register.js": "^7.4.4", + "@babel/register": "^7.4.4", "atob": "^2.0.3", "babel-eslint": "^10.0.1", "babel-loader": "^8.0.6", From d7133fa1ff30534c208d71b8ca33f707225f2e8a Mon Sep 17 00:00:00 2001 From: Ashwin Ramaswami Date: Wed, 4 Sep 2019 15:36:10 +0000 Subject: [PATCH 5/7] fix extensions for dist build --- webpack.config.dist.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/webpack.config.dist.js b/webpack.config.dist.js index 0a5b171339..8786c7b14e 100644 --- a/webpack.config.dist.js +++ b/webpack.config.dist.js @@ -46,7 +46,7 @@ module.exports = { module: { rules: [ { - test: /\.js$/, + test: /\.(js|jsx|ts|tsx)$/, use: [ "babel-loader", ], From 9de7a444b62131c83b71ce665c36d728df5da2b6 Mon Sep 17 00:00:00 2001 From: Ashwin Ramaswami Date: Wed, 11 Sep 2019 20:55:13 +0000 Subject: [PATCH 6/7] Rename from js -> tsx --- playground/{app.js => app.tsx} | 0 .../samples/{additionalProperties.js => additionalProperties.tsx} | 0 playground/samples/{alternatives.js => alternatives.tsx} | 0 playground/samples/{anyOf.js => anyOf.tsx} | 0 playground/samples/{arrays.js => arrays.tsx} | 0 playground/samples/{custom.js => custom.tsx} | 0 playground/samples/{customArray.js => customArray.tsx} | 0 playground/samples/{customObject.js => customObject.tsx} | 0 playground/samples/{date.js => date.tsx} | 0 playground/samples/{errors.js => errors.tsx} | 0 playground/samples/{files.js => files.tsx} | 0 playground/samples/{index.js => index.tsx} | 0 playground/samples/{large.js => large.tsx} | 0 playground/samples/{nested.js => nested.tsx} | 0 playground/samples/{null.js => null.tsx} | 0 playground/samples/{nullable.js => nullable.tsx} | 0 playground/samples/{numbers.js => numbers.tsx} | 0 playground/samples/{oneOf.js => oneOf.tsx} | 0 playground/samples/{ordering.js => ordering.tsx} | 0 .../samples/{propertyDependencies.js => propertyDependencies.tsx} | 0 playground/samples/{references.js => references.tsx} | 0 .../samples/{schemaDependencies.js => schemaDependencies.tsx} | 0 playground/samples/{simple.js => simple.tsx} | 0 playground/samples/{single.js => single.tsx} | 0 playground/samples/{validation.js => validation.tsx} | 0 playground/samples/{widgets.js => widgets.tsx} | 0 src/components/{AddButton.js => AddButton.tsx} | 0 src/components/{ErrorList.js => ErrorList.tsx} | 0 src/components/{IconButton.js => IconButton.tsx} | 0 src/components/fields/{ArrayField.js => ArrayField.tsx} | 0 src/components/fields/{BooleanField.js => BooleanField.tsx} | 0 .../fields/{DescriptionField.js => DescriptionField.tsx} | 0 .../fields/{MultiSchemaField.js => MultiSchemaField.tsx} | 0 src/components/fields/{NullField.js => NullField.tsx} | 0 src/components/fields/{NumberField.js => NumberField.tsx} | 0 src/components/fields/{ObjectField.js => ObjectField.tsx} | 0 src/components/fields/{SchemaField.js => SchemaField.tsx} | 0 src/components/fields/{StringField.js => StringField.tsx} | 0 src/components/fields/{TitleField.js => TitleField.tsx} | 0 .../fields/{UnsupportedField.js => UnsupportedField.tsx} | 0 src/components/fields/{index.js => index.tsx} | 0 .../widgets/{AltDateTimeWidget.js => AltDateTimeWidget.tsx} | 0 src/components/widgets/{AltDateWidget.js => AltDateWidget.tsx} | 0 src/components/widgets/{BaseInput.js => BaseInput.tsx} | 0 src/components/widgets/{CheckboxWidget.js => CheckboxWidget.tsx} | 0 .../widgets/{CheckboxesWidget.js => CheckboxesWidget.tsx} | 0 src/components/widgets/{ColorWidget.js => ColorWidget.tsx} | 0 src/components/widgets/{DateTimeWidget.js => DateTimeWidget.tsx} | 0 src/components/widgets/{DateWidget.js => DateWidget.tsx} | 0 src/components/widgets/{EmailWidget.js => EmailWidget.tsx} | 0 src/components/widgets/{FileWidget.js => FileWidget.tsx} | 0 src/components/widgets/{HiddenWidget.js => HiddenWidget.tsx} | 0 src/components/widgets/{PasswordWidget.js => PasswordWidget.tsx} | 0 src/components/widgets/{RadioWidget.js => RadioWidget.tsx} | 0 src/components/widgets/{RangeWidget.js => RangeWidget.tsx} | 0 src/components/widgets/{SelectWidget.js => SelectWidget.tsx} | 0 src/components/widgets/{TextWidget.js => TextWidget.tsx} | 0 src/components/widgets/{TextareaWidget.js => TextareaWidget.tsx} | 0 src/components/widgets/{URLWidget.js => URLWidget.tsx} | 0 src/components/widgets/{UpDownWidget.js => UpDownWidget.tsx} | 0 src/components/widgets/{index.js => index.tsx} | 0 src/{index.js => index.tsx} | 0 src/{types.js => types.tsx} | 0 src/{utils.js => utils.tsx} | 0 src/{validate.js => validate.tsx} | 0 src/{withTheme.js => withTheme.tsx} | 0 test/{ArrayFieldTemplate_test.js => ArrayFieldTemplate_test.tsx} | 0 test/{ArrayField_test.js => ArrayField_test.tsx} | 0 test/{BooleanField_test.js => BooleanField_test.tsx} | 0 test/{DescriptionField_test.js => DescriptionField_test.tsx} | 0 test/{FieldTemplate_test.js => FieldTemplate_test.tsx} | 0 test/{FormContext_test.js => FormContext_test.tsx} | 0 test/{Form_test.js => Form_test.tsx} | 0 test/{NullField_test.js => NullField_test.tsx} | 0 test/{NumberField_test.js => NumberField_test.tsx} | 0 .../{ObjectFieldTemplate_test.js => ObjectFieldTemplate_test.tsx} | 0 test/{ObjectField_test.js => ObjectField_test.tsx} | 0 test/{SchemaField_test.js => SchemaField_test.tsx} | 0 test/{StringField_test.js => StringField_test.tsx} | 0 test/{TitleField_test.js => TitleField_test.tsx} | 0 test/{anyOf_test.js => anyOf_test.tsx} | 0 test/{const_test.js => const_test.tsx} | 0 test/{oneOf_test.js => oneOf_test.tsx} | 0 test/{performance_test.js => performance_test.tsx} | 0 test/{setup-jsdom.js => setup-jsdom.tsx} | 0 test/{test_utils.js => test_utils.tsx} | 0 test/{uiSchema_test.js => uiSchema_test.tsx} | 0 test/{utils_test.js => utils_test.tsx} | 0 test/{validate_test.js => validate_test.tsx} | 0 test/{withTheme_test.js => withTheme_test.tsx} | 0 90 files changed, 0 insertions(+), 0 deletions(-) rename playground/{app.js => app.tsx} (100%) rename playground/samples/{additionalProperties.js => additionalProperties.tsx} (100%) rename playground/samples/{alternatives.js => alternatives.tsx} (100%) rename playground/samples/{anyOf.js => anyOf.tsx} (100%) rename playground/samples/{arrays.js => arrays.tsx} (100%) rename playground/samples/{custom.js => custom.tsx} (100%) rename playground/samples/{customArray.js => customArray.tsx} (100%) rename playground/samples/{customObject.js => customObject.tsx} (100%) rename playground/samples/{date.js => date.tsx} (100%) rename playground/samples/{errors.js => errors.tsx} (100%) rename playground/samples/{files.js => files.tsx} (100%) rename playground/samples/{index.js => index.tsx} (100%) rename playground/samples/{large.js => large.tsx} (100%) rename playground/samples/{nested.js => nested.tsx} (100%) rename playground/samples/{null.js => null.tsx} (100%) rename playground/samples/{nullable.js => nullable.tsx} (100%) rename playground/samples/{numbers.js => numbers.tsx} (100%) rename playground/samples/{oneOf.js => oneOf.tsx} (100%) rename playground/samples/{ordering.js => ordering.tsx} (100%) rename playground/samples/{propertyDependencies.js => propertyDependencies.tsx} (100%) rename playground/samples/{references.js => references.tsx} (100%) rename playground/samples/{schemaDependencies.js => schemaDependencies.tsx} (100%) rename playground/samples/{simple.js => simple.tsx} (100%) rename playground/samples/{single.js => single.tsx} (100%) rename playground/samples/{validation.js => validation.tsx} (100%) rename playground/samples/{widgets.js => widgets.tsx} (100%) rename src/components/{AddButton.js => AddButton.tsx} (100%) rename src/components/{ErrorList.js => ErrorList.tsx} (100%) rename src/components/{IconButton.js => IconButton.tsx} (100%) rename src/components/fields/{ArrayField.js => ArrayField.tsx} (100%) rename src/components/fields/{BooleanField.js => BooleanField.tsx} (100%) rename src/components/fields/{DescriptionField.js => DescriptionField.tsx} (100%) rename src/components/fields/{MultiSchemaField.js => MultiSchemaField.tsx} (100%) rename src/components/fields/{NullField.js => NullField.tsx} (100%) rename src/components/fields/{NumberField.js => NumberField.tsx} (100%) rename src/components/fields/{ObjectField.js => ObjectField.tsx} (100%) rename src/components/fields/{SchemaField.js => SchemaField.tsx} (100%) rename src/components/fields/{StringField.js => StringField.tsx} (100%) rename src/components/fields/{TitleField.js => TitleField.tsx} (100%) rename src/components/fields/{UnsupportedField.js => UnsupportedField.tsx} (100%) rename src/components/fields/{index.js => index.tsx} (100%) rename src/components/widgets/{AltDateTimeWidget.js => AltDateTimeWidget.tsx} (100%) rename src/components/widgets/{AltDateWidget.js => AltDateWidget.tsx} (100%) rename src/components/widgets/{BaseInput.js => BaseInput.tsx} (100%) rename src/components/widgets/{CheckboxWidget.js => CheckboxWidget.tsx} (100%) rename src/components/widgets/{CheckboxesWidget.js => CheckboxesWidget.tsx} (100%) rename src/components/widgets/{ColorWidget.js => ColorWidget.tsx} (100%) rename src/components/widgets/{DateTimeWidget.js => DateTimeWidget.tsx} (100%) rename src/components/widgets/{DateWidget.js => DateWidget.tsx} (100%) rename src/components/widgets/{EmailWidget.js => EmailWidget.tsx} (100%) rename src/components/widgets/{FileWidget.js => FileWidget.tsx} (100%) rename src/components/widgets/{HiddenWidget.js => HiddenWidget.tsx} (100%) rename src/components/widgets/{PasswordWidget.js => PasswordWidget.tsx} (100%) rename src/components/widgets/{RadioWidget.js => RadioWidget.tsx} (100%) rename src/components/widgets/{RangeWidget.js => RangeWidget.tsx} (100%) rename src/components/widgets/{SelectWidget.js => SelectWidget.tsx} (100%) rename src/components/widgets/{TextWidget.js => TextWidget.tsx} (100%) rename src/components/widgets/{TextareaWidget.js => TextareaWidget.tsx} (100%) rename src/components/widgets/{URLWidget.js => URLWidget.tsx} (100%) rename src/components/widgets/{UpDownWidget.js => UpDownWidget.tsx} (100%) rename src/components/widgets/{index.js => index.tsx} (100%) rename src/{index.js => index.tsx} (100%) rename src/{types.js => types.tsx} (100%) rename src/{utils.js => utils.tsx} (100%) rename src/{validate.js => validate.tsx} (100%) rename src/{withTheme.js => withTheme.tsx} (100%) rename test/{ArrayFieldTemplate_test.js => ArrayFieldTemplate_test.tsx} (100%) rename test/{ArrayField_test.js => ArrayField_test.tsx} (100%) rename test/{BooleanField_test.js => BooleanField_test.tsx} (100%) rename test/{DescriptionField_test.js => DescriptionField_test.tsx} (100%) rename test/{FieldTemplate_test.js => FieldTemplate_test.tsx} (100%) rename test/{FormContext_test.js => FormContext_test.tsx} (100%) rename test/{Form_test.js => Form_test.tsx} (100%) rename test/{NullField_test.js => NullField_test.tsx} (100%) rename test/{NumberField_test.js => NumberField_test.tsx} (100%) rename test/{ObjectFieldTemplate_test.js => ObjectFieldTemplate_test.tsx} (100%) rename test/{ObjectField_test.js => ObjectField_test.tsx} (100%) rename test/{SchemaField_test.js => SchemaField_test.tsx} (100%) rename test/{StringField_test.js => StringField_test.tsx} (100%) rename test/{TitleField_test.js => TitleField_test.tsx} (100%) rename test/{anyOf_test.js => anyOf_test.tsx} (100%) rename test/{const_test.js => const_test.tsx} (100%) rename test/{oneOf_test.js => oneOf_test.tsx} (100%) rename test/{performance_test.js => performance_test.tsx} (100%) rename test/{setup-jsdom.js => setup-jsdom.tsx} (100%) rename test/{test_utils.js => test_utils.tsx} (100%) rename test/{uiSchema_test.js => uiSchema_test.tsx} (100%) rename test/{utils_test.js => utils_test.tsx} (100%) rename test/{validate_test.js => validate_test.tsx} (100%) rename test/{withTheme_test.js => withTheme_test.tsx} (100%) diff --git a/playground/app.js b/playground/app.tsx similarity index 100% rename from playground/app.js rename to playground/app.tsx diff --git a/playground/samples/additionalProperties.js b/playground/samples/additionalProperties.tsx similarity index 100% rename from playground/samples/additionalProperties.js rename to playground/samples/additionalProperties.tsx diff --git a/playground/samples/alternatives.js b/playground/samples/alternatives.tsx similarity index 100% rename from playground/samples/alternatives.js rename to playground/samples/alternatives.tsx diff --git a/playground/samples/anyOf.js b/playground/samples/anyOf.tsx similarity index 100% rename from playground/samples/anyOf.js rename to playground/samples/anyOf.tsx diff --git a/playground/samples/arrays.js b/playground/samples/arrays.tsx similarity index 100% rename from playground/samples/arrays.js rename to playground/samples/arrays.tsx diff --git a/playground/samples/custom.js b/playground/samples/custom.tsx similarity index 100% rename from playground/samples/custom.js rename to playground/samples/custom.tsx diff --git a/playground/samples/customArray.js b/playground/samples/customArray.tsx similarity index 100% rename from playground/samples/customArray.js rename to playground/samples/customArray.tsx diff --git a/playground/samples/customObject.js b/playground/samples/customObject.tsx similarity index 100% rename from playground/samples/customObject.js rename to playground/samples/customObject.tsx diff --git a/playground/samples/date.js b/playground/samples/date.tsx similarity index 100% rename from playground/samples/date.js rename to playground/samples/date.tsx diff --git a/playground/samples/errors.js b/playground/samples/errors.tsx similarity index 100% rename from playground/samples/errors.js rename to playground/samples/errors.tsx diff --git a/playground/samples/files.js b/playground/samples/files.tsx similarity index 100% rename from playground/samples/files.js rename to playground/samples/files.tsx diff --git a/playground/samples/index.js b/playground/samples/index.tsx similarity index 100% rename from playground/samples/index.js rename to playground/samples/index.tsx diff --git a/playground/samples/large.js b/playground/samples/large.tsx similarity index 100% rename from playground/samples/large.js rename to playground/samples/large.tsx diff --git a/playground/samples/nested.js b/playground/samples/nested.tsx similarity index 100% rename from playground/samples/nested.js rename to playground/samples/nested.tsx diff --git a/playground/samples/null.js b/playground/samples/null.tsx similarity index 100% rename from playground/samples/null.js rename to playground/samples/null.tsx diff --git a/playground/samples/nullable.js b/playground/samples/nullable.tsx similarity index 100% rename from playground/samples/nullable.js rename to playground/samples/nullable.tsx diff --git a/playground/samples/numbers.js b/playground/samples/numbers.tsx similarity index 100% rename from playground/samples/numbers.js rename to playground/samples/numbers.tsx diff --git a/playground/samples/oneOf.js b/playground/samples/oneOf.tsx similarity index 100% rename from playground/samples/oneOf.js rename to playground/samples/oneOf.tsx diff --git a/playground/samples/ordering.js b/playground/samples/ordering.tsx similarity index 100% rename from playground/samples/ordering.js rename to playground/samples/ordering.tsx diff --git a/playground/samples/propertyDependencies.js b/playground/samples/propertyDependencies.tsx similarity index 100% rename from playground/samples/propertyDependencies.js rename to playground/samples/propertyDependencies.tsx diff --git a/playground/samples/references.js b/playground/samples/references.tsx similarity index 100% rename from playground/samples/references.js rename to playground/samples/references.tsx diff --git a/playground/samples/schemaDependencies.js b/playground/samples/schemaDependencies.tsx similarity index 100% rename from playground/samples/schemaDependencies.js rename to playground/samples/schemaDependencies.tsx diff --git a/playground/samples/simple.js b/playground/samples/simple.tsx similarity index 100% rename from playground/samples/simple.js rename to playground/samples/simple.tsx diff --git a/playground/samples/single.js b/playground/samples/single.tsx similarity index 100% rename from playground/samples/single.js rename to playground/samples/single.tsx diff --git a/playground/samples/validation.js b/playground/samples/validation.tsx similarity index 100% rename from playground/samples/validation.js rename to playground/samples/validation.tsx diff --git a/playground/samples/widgets.js b/playground/samples/widgets.tsx similarity index 100% rename from playground/samples/widgets.js rename to playground/samples/widgets.tsx diff --git a/src/components/AddButton.js b/src/components/AddButton.tsx similarity index 100% rename from src/components/AddButton.js rename to src/components/AddButton.tsx diff --git a/src/components/ErrorList.js b/src/components/ErrorList.tsx similarity index 100% rename from src/components/ErrorList.js rename to src/components/ErrorList.tsx diff --git a/src/components/IconButton.js b/src/components/IconButton.tsx similarity index 100% rename from src/components/IconButton.js rename to src/components/IconButton.tsx diff --git a/src/components/fields/ArrayField.js b/src/components/fields/ArrayField.tsx similarity index 100% rename from src/components/fields/ArrayField.js rename to src/components/fields/ArrayField.tsx diff --git a/src/components/fields/BooleanField.js b/src/components/fields/BooleanField.tsx similarity index 100% rename from src/components/fields/BooleanField.js rename to src/components/fields/BooleanField.tsx diff --git a/src/components/fields/DescriptionField.js b/src/components/fields/DescriptionField.tsx similarity index 100% rename from src/components/fields/DescriptionField.js rename to src/components/fields/DescriptionField.tsx diff --git a/src/components/fields/MultiSchemaField.js b/src/components/fields/MultiSchemaField.tsx similarity index 100% rename from src/components/fields/MultiSchemaField.js rename to src/components/fields/MultiSchemaField.tsx diff --git a/src/components/fields/NullField.js b/src/components/fields/NullField.tsx similarity index 100% rename from src/components/fields/NullField.js rename to src/components/fields/NullField.tsx diff --git a/src/components/fields/NumberField.js b/src/components/fields/NumberField.tsx similarity index 100% rename from src/components/fields/NumberField.js rename to src/components/fields/NumberField.tsx diff --git a/src/components/fields/ObjectField.js b/src/components/fields/ObjectField.tsx similarity index 100% rename from src/components/fields/ObjectField.js rename to src/components/fields/ObjectField.tsx diff --git a/src/components/fields/SchemaField.js b/src/components/fields/SchemaField.tsx similarity index 100% rename from src/components/fields/SchemaField.js rename to src/components/fields/SchemaField.tsx diff --git a/src/components/fields/StringField.js b/src/components/fields/StringField.tsx similarity index 100% rename from src/components/fields/StringField.js rename to src/components/fields/StringField.tsx diff --git a/src/components/fields/TitleField.js b/src/components/fields/TitleField.tsx similarity index 100% rename from src/components/fields/TitleField.js rename to src/components/fields/TitleField.tsx diff --git a/src/components/fields/UnsupportedField.js b/src/components/fields/UnsupportedField.tsx similarity index 100% rename from src/components/fields/UnsupportedField.js rename to src/components/fields/UnsupportedField.tsx diff --git a/src/components/fields/index.js b/src/components/fields/index.tsx similarity index 100% rename from src/components/fields/index.js rename to src/components/fields/index.tsx diff --git a/src/components/widgets/AltDateTimeWidget.js b/src/components/widgets/AltDateTimeWidget.tsx similarity index 100% rename from src/components/widgets/AltDateTimeWidget.js rename to src/components/widgets/AltDateTimeWidget.tsx diff --git a/src/components/widgets/AltDateWidget.js b/src/components/widgets/AltDateWidget.tsx similarity index 100% rename from src/components/widgets/AltDateWidget.js rename to src/components/widgets/AltDateWidget.tsx diff --git a/src/components/widgets/BaseInput.js b/src/components/widgets/BaseInput.tsx similarity index 100% rename from src/components/widgets/BaseInput.js rename to src/components/widgets/BaseInput.tsx diff --git a/src/components/widgets/CheckboxWidget.js b/src/components/widgets/CheckboxWidget.tsx similarity index 100% rename from src/components/widgets/CheckboxWidget.js rename to src/components/widgets/CheckboxWidget.tsx diff --git a/src/components/widgets/CheckboxesWidget.js b/src/components/widgets/CheckboxesWidget.tsx similarity index 100% rename from src/components/widgets/CheckboxesWidget.js rename to src/components/widgets/CheckboxesWidget.tsx diff --git a/src/components/widgets/ColorWidget.js b/src/components/widgets/ColorWidget.tsx similarity index 100% rename from src/components/widgets/ColorWidget.js rename to src/components/widgets/ColorWidget.tsx diff --git a/src/components/widgets/DateTimeWidget.js b/src/components/widgets/DateTimeWidget.tsx similarity index 100% rename from src/components/widgets/DateTimeWidget.js rename to src/components/widgets/DateTimeWidget.tsx diff --git a/src/components/widgets/DateWidget.js b/src/components/widgets/DateWidget.tsx similarity index 100% rename from src/components/widgets/DateWidget.js rename to src/components/widgets/DateWidget.tsx diff --git a/src/components/widgets/EmailWidget.js b/src/components/widgets/EmailWidget.tsx similarity index 100% rename from src/components/widgets/EmailWidget.js rename to src/components/widgets/EmailWidget.tsx diff --git a/src/components/widgets/FileWidget.js b/src/components/widgets/FileWidget.tsx similarity index 100% rename from src/components/widgets/FileWidget.js rename to src/components/widgets/FileWidget.tsx diff --git a/src/components/widgets/HiddenWidget.js b/src/components/widgets/HiddenWidget.tsx similarity index 100% rename from src/components/widgets/HiddenWidget.js rename to src/components/widgets/HiddenWidget.tsx diff --git a/src/components/widgets/PasswordWidget.js b/src/components/widgets/PasswordWidget.tsx similarity index 100% rename from src/components/widgets/PasswordWidget.js rename to src/components/widgets/PasswordWidget.tsx diff --git a/src/components/widgets/RadioWidget.js b/src/components/widgets/RadioWidget.tsx similarity index 100% rename from src/components/widgets/RadioWidget.js rename to src/components/widgets/RadioWidget.tsx diff --git a/src/components/widgets/RangeWidget.js b/src/components/widgets/RangeWidget.tsx similarity index 100% rename from src/components/widgets/RangeWidget.js rename to src/components/widgets/RangeWidget.tsx diff --git a/src/components/widgets/SelectWidget.js b/src/components/widgets/SelectWidget.tsx similarity index 100% rename from src/components/widgets/SelectWidget.js rename to src/components/widgets/SelectWidget.tsx diff --git a/src/components/widgets/TextWidget.js b/src/components/widgets/TextWidget.tsx similarity index 100% rename from src/components/widgets/TextWidget.js rename to src/components/widgets/TextWidget.tsx diff --git a/src/components/widgets/TextareaWidget.js b/src/components/widgets/TextareaWidget.tsx similarity index 100% rename from src/components/widgets/TextareaWidget.js rename to src/components/widgets/TextareaWidget.tsx diff --git a/src/components/widgets/URLWidget.js b/src/components/widgets/URLWidget.tsx similarity index 100% rename from src/components/widgets/URLWidget.js rename to src/components/widgets/URLWidget.tsx diff --git a/src/components/widgets/UpDownWidget.js b/src/components/widgets/UpDownWidget.tsx similarity index 100% rename from src/components/widgets/UpDownWidget.js rename to src/components/widgets/UpDownWidget.tsx diff --git a/src/components/widgets/index.js b/src/components/widgets/index.tsx similarity index 100% rename from src/components/widgets/index.js rename to src/components/widgets/index.tsx diff --git a/src/index.js b/src/index.tsx similarity index 100% rename from src/index.js rename to src/index.tsx diff --git a/src/types.js b/src/types.tsx similarity index 100% rename from src/types.js rename to src/types.tsx diff --git a/src/utils.js b/src/utils.tsx similarity index 100% rename from src/utils.js rename to src/utils.tsx diff --git a/src/validate.js b/src/validate.tsx similarity index 100% rename from src/validate.js rename to src/validate.tsx diff --git a/src/withTheme.js b/src/withTheme.tsx similarity index 100% rename from src/withTheme.js rename to src/withTheme.tsx diff --git a/test/ArrayFieldTemplate_test.js b/test/ArrayFieldTemplate_test.tsx similarity index 100% rename from test/ArrayFieldTemplate_test.js rename to test/ArrayFieldTemplate_test.tsx diff --git a/test/ArrayField_test.js b/test/ArrayField_test.tsx similarity index 100% rename from test/ArrayField_test.js rename to test/ArrayField_test.tsx diff --git a/test/BooleanField_test.js b/test/BooleanField_test.tsx similarity index 100% rename from test/BooleanField_test.js rename to test/BooleanField_test.tsx diff --git a/test/DescriptionField_test.js b/test/DescriptionField_test.tsx similarity index 100% rename from test/DescriptionField_test.js rename to test/DescriptionField_test.tsx diff --git a/test/FieldTemplate_test.js b/test/FieldTemplate_test.tsx similarity index 100% rename from test/FieldTemplate_test.js rename to test/FieldTemplate_test.tsx diff --git a/test/FormContext_test.js b/test/FormContext_test.tsx similarity index 100% rename from test/FormContext_test.js rename to test/FormContext_test.tsx diff --git a/test/Form_test.js b/test/Form_test.tsx similarity index 100% rename from test/Form_test.js rename to test/Form_test.tsx diff --git a/test/NullField_test.js b/test/NullField_test.tsx similarity index 100% rename from test/NullField_test.js rename to test/NullField_test.tsx diff --git a/test/NumberField_test.js b/test/NumberField_test.tsx similarity index 100% rename from test/NumberField_test.js rename to test/NumberField_test.tsx diff --git a/test/ObjectFieldTemplate_test.js b/test/ObjectFieldTemplate_test.tsx similarity index 100% rename from test/ObjectFieldTemplate_test.js rename to test/ObjectFieldTemplate_test.tsx diff --git a/test/ObjectField_test.js b/test/ObjectField_test.tsx similarity index 100% rename from test/ObjectField_test.js rename to test/ObjectField_test.tsx diff --git a/test/SchemaField_test.js b/test/SchemaField_test.tsx similarity index 100% rename from test/SchemaField_test.js rename to test/SchemaField_test.tsx diff --git a/test/StringField_test.js b/test/StringField_test.tsx similarity index 100% rename from test/StringField_test.js rename to test/StringField_test.tsx diff --git a/test/TitleField_test.js b/test/TitleField_test.tsx similarity index 100% rename from test/TitleField_test.js rename to test/TitleField_test.tsx diff --git a/test/anyOf_test.js b/test/anyOf_test.tsx similarity index 100% rename from test/anyOf_test.js rename to test/anyOf_test.tsx diff --git a/test/const_test.js b/test/const_test.tsx similarity index 100% rename from test/const_test.js rename to test/const_test.tsx diff --git a/test/oneOf_test.js b/test/oneOf_test.tsx similarity index 100% rename from test/oneOf_test.js rename to test/oneOf_test.tsx diff --git a/test/performance_test.js b/test/performance_test.tsx similarity index 100% rename from test/performance_test.js rename to test/performance_test.tsx diff --git a/test/setup-jsdom.js b/test/setup-jsdom.tsx similarity index 100% rename from test/setup-jsdom.js rename to test/setup-jsdom.tsx diff --git a/test/test_utils.js b/test/test_utils.tsx similarity index 100% rename from test/test_utils.js rename to test/test_utils.tsx diff --git a/test/uiSchema_test.js b/test/uiSchema_test.tsx similarity index 100% rename from test/uiSchema_test.js rename to test/uiSchema_test.tsx diff --git a/test/utils_test.js b/test/utils_test.tsx similarity index 100% rename from test/utils_test.js rename to test/utils_test.tsx diff --git a/test/validate_test.js b/test/validate_test.tsx similarity index 100% rename from test/validate_test.js rename to test/validate_test.tsx diff --git a/test/withTheme_test.js b/test/withTheme_test.tsx similarity index 100% rename from test/withTheme_test.js rename to test/withTheme_test.tsx From 586f0833a29a79cc15a4426782e7ad898d844d13 Mon Sep 17 00:00:00 2001 From: Ashwin Ramaswami Date: Sun, 29 Sep 2019 16:13:20 +0000 Subject: [PATCH 7/7] fix docs --- docs/advanced-customization.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/advanced-customization.md b/docs/advanced-customization.md index 0390c7458c..13f190df6f 100644 --- a/docs/advanced-customization.md +++ b/docs/advanced-customization.md @@ -108,7 +108,7 @@ render(( ), document.getElementById("app")); ``` -Please see [customArray.js](https://github.com/mozilla-services/react-jsonschema-form/blob/master/playground/samples/customArray.js) for a better example. +Please see [customArray.tsx](https://github.com/mozilla-services/react-jsonschema-form/blob/master/playground/samples/customArray.tsx) for a better example. The following props are passed to each `ArrayFieldTemplate`: @@ -182,7 +182,7 @@ render(( ), document.getElementById("app")); ``` -Please see [customObject.js](https://github.com/mozilla-services/react-jsonschema-form/blob/master/playground/samples/customObject.js) for a better example. +Please see [customObject.tsx](https://github.com/mozilla-services/react-jsonschema-form/blob/master/playground/samples/customObject.tsx) for a better example. The following props are passed to each `ObjectFieldTemplate`: