Ingo Schommer
ce8ac58ddb
Fix React DOM warnings about <form> attrs
...
"class" is a reserved word in JS, hence React uses "className".
"encType" has to be camel cased correctly, see https://facebook.github.io/react/docs/tags-and-attributes.html#html-attributes
Also marked less attrs on <form> as required
2016-04-11 09:16:32 +12:00
Ingo Schommer
2f801f9319
Pass all field attributes via <FormBuilder>
...
Also make them immutable via deep-freeze
2016-04-07 23:32:32 +12:00
Ingo Schommer
0fe330621c
Only list existing <FormBuilder> data types
2016-04-07 23:32:32 +12:00
Ingo Schommer
3835291cdf
More accurate variable naming
...
schema.schema is awkward
2016-04-07 23:32:31 +12:00
Ingo Schommer
ab874a0c8d
Correct state handling in <FormBuilder> component
2016-04-07 23:32:31 +12:00
Ingo Schommer
34d40bed5f
Add ESLint support
...
See https://github.com/silverstripe/silverstripe-framework/pull/5108
2016-04-06 10:43:33 +12:00
Ingo Schommer
0675f85d32
Use /index suffix for JS import statements
...
Otherwise browserify or gulp-sourcemaps doesn't include these
in the *.map file, which makes debugging impossible
2016-04-06 08:49:47 +12:00
Ingo Schommer
2a5c92e491
Generic state management for React GridField
...
Renaming state operations from 'campaign' to 'record'.
Implemented API endpoint retrieval of GridField data.
Added more mock data into CampaignAdmin (rather than hardcoding in client),
to be replaced by CampaignAdmin API endpoint querying the real datamodel.
Using more native isomorphic-fetch instead of jQuery.ajax
to minimise dependencies and get into a more forward-thinking API.
Also catching errors in ReactJS API backend:
Emulate jQuery.ajax() behaviour. Might change at a later point
if we have a general purpose backend with a promise-based catch()
implementation.
2016-04-06 08:41:07 +12:00
Ingo Schommer
47dd7b48af
Relative ES6 module paths
...
http://stackoverflow.com/questions/20158401/how-do-i-manage-relative-path-aliasing-in-multiple-grunt-browserify-bundles/23608416#23608416
https://github.com/substack/node-browserify/issues/767
http://stackoverflow.com/questions/28078780/relative-paths-in-package-json
https://github.com/npm/npm/issues/1558
http://stackoverflow.com/questions/31624567/webstorm-es6-named-import-getting-cannot-resolve-symbol-error/31631415
http://stackoverflow.com/questions/20158401/how-do-i-manage-relative-path-aliasing-in-multiple-grunt-browserify-bundles/23608416#23608416
https://github.com/vigetlabs/gulp-starter/issues/17#issuecomment-44292681
2016-04-06 08:36:38 +12:00
Ingo Schommer
c70590e50c
Consolidated grid-field component
...
Every top-level folder in /components should be a standalone component.
This isn't the case for the grid-field-* ones, so they belong into the same folder.
See https://github.com/Automattic/wp-calypso/blob/master/docs/components.md
merge styles
2016-04-06 08:36:37 +12:00
Ingo Schommer
b4e6d498c9
Simplified form schema structure and mocks
...
Keyed by URL instead of anonymous object maps which need to be iterated on
Removed the 'schema.forms' namespace, unnecessary since all 'schema' items should be forms
2016-04-06 08:35:53 +12:00
Paul Clarke
0ca090a391
Add generic React components
...
Includes moving some components from AssetAdmin
2016-04-06 08:35:50 +12:00