Commit Graph

248 Commits

Author SHA1 Message Date
Michael Shanks d8ce468228 bugfix: could not add template components 2020-02-25 14:26:43 +00:00
Michael Shanks e870576d67 renamed NewComponent > NewScreen 2020-02-25 10:05:43 +00:00
Michael Shanks 5ac25bce6a renamed NewComponent > NewScreen 2020-02-25 10:03:40 +00:00
Michael Shanks 3a98e23ffb bugfix: create new screen exception 2020-02-25 10:01:26 +00:00
Michael Shanks b28f28a167 New Screen - Route Validation 2020-02-25 10:01:07 +00:00
Michael Shanks 4750309fed buxfix: layout issue on NewComponent (screen) 2020-02-25 09:38:50 +00:00
Michael Shanks 3becfc72af Merge branch 'master' of github.com:Budibase/budibase 2020-02-25 09:11:25 +00:00
Martin McKeaveney a8311cc3a3 switch prop on component selection 2020-02-24 23:23:33 +00:00
Michael Shanks 3c8f3f522a backend - child panes scrollable 2020-02-24 21:31:35 +00:00
Michael Shanks d26abe8aad bugfix: select being cut off on windows 2020-02-24 20:49:50 +00:00
Martin McKeaveney 2f45702513
Fix layout bug 2020-02-24 17:35:15 +00:00
Martin McKeaveney cba018d530
Merge pull request from shogunpurple/backend-design
Backend design
2020-02-24 17:06:02 +00:00
Martin McKeaveney 41d0497055 global style abstraction, backend UI updates 2020-02-24 16:41:02 +00:00
Martin McKeaveney 5793413126 style abstraction 2020-02-24 15:00:52 +00:00
Michael Shanks 9bab862b4d typo: UIFunctions attached to page not screen 2020-02-24 14:56:49 +00:00
Michael Shanks 6f234706af bugfix: custom code not getting attached poperly 2020-02-24 14:56:11 +00:00
Michael Shanks 503816bc7e bugfix - css not sent for all screens 2020-02-24 11:05:52 +00:00
Michael Shanks 1a1a9e81e0
Merge pull request from shogunpurple/state-management-v2
State management v2
2020-02-23 22:16:56 +00:00
Michael Shanks 0902febc00 uiFunctions receive state and routeParams 2020-02-21 23:01:16 +00:00
Michael Shanks b2c045c0ca standalone templates 2020-02-21 22:56:18 +00:00
Michael Shanks 20ae671eef standalone templates (templates with no component) 2020-02-21 21:27:44 +00:00
Martin McKeaveney defb31910e lerna version 2020-02-21 18:06:23 +00:00
Martin McKeaveney 395dcd1cc2 finished state management ui for v2 2020-02-21 18:02:02 +00:00
Martin McKeaveney 412aa6739f state management bindings 2020-02-21 15:44:48 +00:00
Michael Shanks c0097f766e bugfix: binding broken in propertycascader 2020-02-21 15:39:56 +00:00
Michael Shanks 4b807d8f09 bindings can now be just a string (store.someValue) 2020-02-21 14:44:48 +00:00
Michael Shanks 7f557c98c1
Merge pull request from pngwn/icons-update
Use remix icons for consistency.
2020-02-21 11:45:38 +00:00
Michael Shanks 8777f7e9f8 Merge branch 'master' of github.com:Budibase/budibase 2020-02-21 11:43:41 +00:00
pngwn fd4f0beb14 Use remix icons for consistency. Styling tweaks. 2020-02-21 11:09:37 +00:00
Michael Shanks 546dd05718 bugfix: generate css on screen change 2020-02-21 09:27:43 +00:00
Martin McKeaveney b46d33ad59
Update store.js 2020-02-20 21:21:16 +00:00
Michael Shanks 7940d12c62 dodgy merge 2020-02-20 17:27:48 +00:00
Michael Shanks f2e6ac0145 merge conflicts from peter/tweaks 2020-02-20 17:11:41 +00:00
Michael Shanks f9f2abac33 reduced padding on comp hierarchy 2020-02-20 17:09:35 +00:00
Michael Shanks 9285b5281c ensure component templates exist when presets do not 2020-02-20 17:09:14 +00:00
Michael Shanks 1df16e880c create props - ensure _styles always exist 2020-02-20 17:08:51 +00:00
Michael Shanks c9191f408f store method for save page or screen (context dependant) 2020-02-20 17:08:17 +00:00
Michael Shanks d31d8c8e7e added height and width as positioning options 2020-02-20 17:07:25 +00:00
Michael Shanks cd829182f9 component templates 2020-02-19 21:38:21 +00:00
Michael Shanks cf719a6d32 bad layout of component actions, on everything but firefox 2020-02-19 14:12:24 +00:00
Michael Shanks d072c356ef bugfix: component libraries loaded incorrectly 2020-02-19 13:58:06 +00:00
Michael Shanks c9143a801f reording and duplication of components 2020-02-19 10:17:31 +00:00
Michael Shanks 6ee72d7301 bug in store - insertCodeMetadata import vanished 2020-02-18 21:22:43 +00:00
Martin McKeaveney e1eada45b8 tidy up 2020-02-18 20:35:43 +00:00
Martin McKeaveney 8b64c64bab removed generators, added simple presets to standard components 2020-02-18 20:35:43 +00:00
Michael Shanks 83953922d7
Merge branch 'master' into 98-builtin-slot 2020-02-18 17:11:46 +00:00
pngwn 2396702c08 Remove more logs 2020-02-18 17:05:08 +00:00
pngwn d3f6074e61 Remove logs 2020-02-18 17:03:36 +00:00
pngwn 315c11d668 Ensure slot renders in current preview. 2020-02-18 17:00:56 +00:00
Michael Shanks 7d9d15c783 Remove component from hierarchy 2020-02-18 16:51:28 +00:00
pngwn 063cb0f41f Add screenslot to current preview. 2020-02-18 15:53:22 +00:00
Michael Shanks 4089b52c53
Client Api - New state binding method ()
* new binding...
- state manager
- one store per screen
- not passing

* client lib binding - tests passing

* binding fully working again post stateManager

* bugfix with button component

* Control flow ("code") now working, tests passing

* Events List now reading from component definition

* fix to button.svelte - missing props._children
2020-02-18 12:29:38 +00:00
pngwn 4a62525949 Add builtin slot to list 2020-02-18 10:32:00 +00:00
Michael Shanks b7d9e05641
Work on Components API & bugfixes ()
* typo - screens not being sent to page save

* removed children arg from hydrateChildren (n/a)

* initialiseChildren does not rerender unless forced

* removed derivatives of initialiseChildren

* renamed initialiseChildren > attachChildren

* standard-components - refactoring

div now container
H1, h2... etc now Heading with type
Select now takes option as _children

* loads of bug fixing

* safe props creation
anytime props are loaded,
we make sure they conform to the components props definition
2020-02-14 11:51:45 +00:00
Martin McKeaveney 488299ef06
Fix Layout issue on FF 2020-02-12 21:01:53 +00:00
Martin McKeaveney cca039bdd0
Merge pull request from shogunpurple/state-bindings
State bindings
2020-02-12 15:50:30 +00:00
Martin McKeaveney 1c7550e211 moving test from server 2020-02-12 15:47:35 +00:00
Martin McKeaveney fe142faf3a move state origin build from server to client 2020-02-12 15:10:31 +00:00
Michael Shanks c3fa212b31
Lots of poking around to get apps to run, plux fixing tests ()
ixing broken tests on client
typo in buildPage.js
fixing some server tests
local datastore uses fs-extra remove, not rmdir
client - loadBudibase - no longer destructuring arg
updated publishdev script for client (reads apps)
prettier fix
some little bug fixes
bugfix - set screens to empty array when falsy
typo in template page.json
replaced "Shard Factor" for "Estimated Count"
2020-02-12 12:45:24 +00:00
Martin McKeaveney 5729f46ae6 final tidy up 2020-02-12 10:12:54 +00:00
Martin McKeaveney 67db93bb39 close dropdown on component change 2020-02-12 10:12:54 +00:00
Martin McKeaveney 175002d178 unit tests 2020-02-12 10:12:54 +00:00
Martin McKeaveney f34a4707a9 fix rotation on state arrow 2020-02-12 10:12:54 +00:00
Martin McKeaveney 0b3f75aaff merging with master 2020-02-12 10:12:54 +00:00
Martin McKeaveney 8be69162f7 auto update state origins when attaching click handlers 2020-02-12 10:12:54 +00:00
Martin McKeaveney 893cd3b57d state binding complete 2020-02-12 10:12:54 +00:00
Martin McKeaveney b2dd9cc12f better state bindings for defaults 2020-02-11 14:19:06 +00:00
Martin McKeaveney ee9df6c29a state binding v1 2020-02-11 14:19:06 +00:00
Michael Shanks da7339035f
Builder saves backend and front end seperately ()
* refactoring server for screens & page layout restructure

* Disable API calls, UI placeholders.

* buildPropsHierarchy is gone & screen has url

* Recent changes.

* router

* router

* updated git-ignore to reinclude server/utilities/builder

* modified cli - budi new create new file structure

* Fix uuid import.

* prettier fixes

* prettier fixes

* prettier fixes

* page/screen restructure.. broken tests

* all tests passing at last

* screen routing tests

* Working screen editor and preview.

* Render page previews to the screen.

* Key input lists to ensure new array references when updating styles.

* Ensure the iframe html and body fills the container.

* Save screens via the API.

* Get all save APIs almost working.

* Write pages.json to disk.

* Use correct API endpoint for saving styles.

* Differentiate between saving properties of screens and pages.

* Add required fields to default pages layouts.

* Add _css default property to newly created screens.

* Add default code property.

* page layout / screens - app output

* backend and fronend save seperately

Co-authored-by: pngwn <pnda007@gmail.com>
2020-02-10 21:35:51 +00:00
Michael Shanks f7bea46f01
Page Layout & Screen restructure ()
* refactoring server for screens & page layout restructure

* Disable API calls, UI placeholders.

* buildPropsHierarchy is gone & screen has url

* Recent changes.

* router

* router

* updated git-ignore to reinclude server/utilities/builder

* modified cli - budi new create new file structure

* Fix uuid import.

* prettier fixes

* prettier fixes

* prettier fixes

* page/screen restructure.. broken tests

* all tests passing at last

* screen routing tests

* Working screen editor and preview.

* Render page previews to the screen.

* Key input lists to ensure new array references when updating styles.

* Ensure the iframe html and body fills the container.

* Save screens via the API.

* Get all save APIs almost working.

* Write pages.json to disk.

* Use correct API endpoint for saving styles.

* Differentiate between saving properties of screens and pages.

* Add required fields to default pages layouts.

* Add _css default property to newly created screens.

* Add default code property.

* page layout / screens - app output

Co-authored-by: pngwn <pnda007@gmail.com>
2020-02-10 15:51:09 +00:00
Martin McKeaveney 34d56e960f include svelte files in prettier 2020-02-03 09:50:30 +00:00
Martin McKeaveney 94eb93b186 running prettier over codebase, removing merge files 2020-02-03 09:24:25 +00:00
Michael Shanks 65b800b1d0 few wee bug fixes 2020-01-31 23:29:49 +00:00
Michael Shanks c7cbe6ca8b
- Control Flow ()
* removed binding references to array type

* refactored initialiseChildren into seperate file

* render function, with code blocks - tested simple cases

* few mores tests for control flow

* md components - getting TestApp to work

* new render wrapper - bug fix

* client: providing access to component root elements

* code editor working

* code editor improvements
2020-01-31 23:11:50 +00:00
pngwn aa4c7fa1c1
48 builder frontend 2 ()
* Implement collapsing component hierarchy.

* Save screen when adding new components.

* Allow creation of nested child components.

* Rename updateComponentProps to setComponentProps

* Compile layout and position properties to css strings.

* Correct ordering errors.

* Compile the css for an entire screen.

* Add unique id for each component.

* Ignore _id props.

* Update client to add correct class names to component elements.

* Add grid-template fields to layout styling panel.

* Inject css into iframe. Minor tweaks.

* Fix unset margins.

* Update failing tests.
2020-01-31 16:01:58 +00:00
Martin McKeaveney 912a6e4f1b tidy up 2020-01-31 09:49:26 +00:00
Martin McKeaveney cd1714b1a0 final touches for design 2020-01-31 09:45:02 +00:00
Martin McKeaveney 5325e0d0a9 styling updates 2020-01-30 21:00:19 +00:00
Martin McKeaveney 7baa9d443d draft handler 2020-01-30 20:01:18 +00:00
Martin McKeaveney 977a609230 state management like designs 2020-01-30 16:22:19 +00:00
Martin McKeaveney eed1f1d30f started implementing state management designs 2020-01-29 22:59:10 +00:00
Martin McKeaveney a88db662bf basic architecture complete 2020-01-29 21:04:48 +00:00
Martin McKeaveney ea88880417 merge 2020-01-28 22:39:16 +00:00
pngwn 7e16e23803 48 builder frontend 2 ()
* Implement collapsing component hierarchy.

* Save screen when adding new components.

* Allow creation of nested child components.

* Fix level-based indentation of hierarchy.

* Rename updateComponentProps to setComponentProps

* Save layout information to the disk.

* Cleanup: switch to autosubscriptions to prevent memory leaks, remove unused imports.

* Remove unused css.

* Fix incorrect subscription.
2020-01-28 21:17:04 +00:00
Martin McKeaveney 17e22b4da7 merge 2020-01-27 12:16:03 +00:00
pngwn c2d99e173b Remove unused validateProps module and tests 2020-01-24 16:39:25 +00:00
Martin McKeaveney 231a1ab3e3 build process improvements and gitignore 2020-01-24 16:31:53 +00:00
pngwn 1a77b0ae00 Remove leftovers. 2020-01-24 15:34:44 +00:00
pngwn a5d1b7a651 Ensure screen is correctly set when selecting a child component. 2020-01-24 15:34:02 +00:00
pngwn 1a4aa7ddf1 Modify component preview to match new component library loader API. 2020-01-24 15:20:20 +00:00
pngwn 86c42a44ab Remove validation, use references rather than clones where possible, prioritise side-panel working with components for now. 2020-01-24 14:51:29 +00:00
pngwn 2a4cfa278b Implement updating of individual component props 2020-01-24 14:51:29 +00:00
pngwn cc155c121c Initial implementation of props editor. 2020-01-24 14:51:29 +00:00
pngwn 1007dfaeb1 Refactor inputs into components for simpler value bindings. 2020-01-24 14:51:29 +00:00
pngwn b9c5522850 Tweak component pane icons. 2020-01-24 14:51:29 +00:00
pngwn 298788ea53 Implement layout UI. 2020-01-24 14:51:29 +00:00
pngwn dba1bfce35 Tweaks to component snippet editor. 2020-01-24 14:51:29 +00:00
pngwn cce542d0c9 Implement code editor panel. 2020-01-24 14:51:28 +00:00
pngwn 165a42a6f4 Update gitignored files. 2020-01-24 14:51:28 +00:00
pngwn d760fe59ea Begin implementation of components panel. 2020-01-24 14:51:28 +00:00