Commit Graph

248 Commits

Author SHA1 Message Date
Michael Shanks 455803030d bugfix: could not add template components 2020-02-25 14:26:43 +00:00
Michael Shanks e8a003f82e renamed NewComponent > NewScreen 2020-02-25 10:05:43 +00:00
Michael Shanks f11853a790 renamed NewComponent > NewScreen 2020-02-25 10:03:40 +00:00
Michael Shanks 22560c475e bugfix: create new screen exception 2020-02-25 10:01:26 +00:00
Michael Shanks f4eaf4d896 New Screen - Route Validation 2020-02-25 10:01:07 +00:00
Michael Shanks 1e27a2dabf buxfix: layout issue on NewComponent (screen) 2020-02-25 09:38:50 +00:00
Michael Shanks 0762ab1522 Merge branch 'master' of github.com:Budibase/budibase 2020-02-25 09:11:25 +00:00
Martin McKeaveney a7998f0a6d switch prop on component selection 2020-02-24 23:23:33 +00:00
Michael Shanks 43522aad22 backend - child panes scrollable 2020-02-24 21:31:35 +00:00
Michael Shanks dafef90c3d bugfix: select being cut off on windows 2020-02-24 20:49:50 +00:00
Martin McKeaveney 94fb7d0663 Fix layout bug 2020-02-24 17:35:15 +00:00
Martin McKeaveney e88d3e821a Merge pull request #126 from shogunpurple/backend-design
Backend design
2020-02-24 17:06:02 +00:00
Martin McKeaveney e518da0a62 global style abstraction, backend UI updates 2020-02-24 16:41:02 +00:00
Martin McKeaveney f5becf920b style abstraction 2020-02-24 15:00:52 +00:00
Michael Shanks be60091916 typo: UIFunctions attached to page not screen 2020-02-24 14:56:49 +00:00
Michael Shanks d1a48ec3a6 bugfix: custom code not getting attached poperly 2020-02-24 14:56:11 +00:00
Michael Shanks 264eb6da5a bugfix - css not sent for all screens 2020-02-24 11:05:52 +00:00
Michael Shanks ccc55ae8b5 Merge pull request #121 from shogunpurple/state-management-v2
State management v2
2020-02-23 22:16:56 +00:00
Michael Shanks bd5adc45cb uiFunctions receive state and routeParams 2020-02-21 23:01:16 +00:00
Michael Shanks 38656f5ceb standalone templates 2020-02-21 22:56:18 +00:00
Michael Shanks 1398a00212 standalone templates (templates with no component) 2020-02-21 21:27:44 +00:00
Martin McKeaveney 91c2e187c6 lerna version 2020-02-21 18:06:23 +00:00
Martin McKeaveney 55d43fad80 finished state management ui for v2 2020-02-21 18:02:02 +00:00
Martin McKeaveney b7a5735a05 state management bindings 2020-02-21 15:44:48 +00:00
Michael Shanks 5b1bbad6c6 bugfix: binding broken in propertycascader 2020-02-21 15:39:56 +00:00
Michael Shanks ab0db65048 bindings can now be just a string (store.someValue) 2020-02-21 14:44:48 +00:00
Michael Shanks 098a851cdb Merge pull request #116 from pngwn/icons-update
Use remix icons for consistency.
2020-02-21 11:45:38 +00:00
Michael Shanks 383a639aba Merge branch 'master' of github.com:Budibase/budibase 2020-02-21 11:43:41 +00:00
pngwn f29de61dde Use remix icons for consistency. Styling tweaks. 2020-02-21 11:09:37 +00:00
Michael Shanks 548c8bb305 bugfix: generate css on screen change 2020-02-21 09:27:43 +00:00
Martin McKeaveney f0ed967c87 Update store.js 2020-02-20 21:21:16 +00:00
Michael Shanks 1bb0a9a14b dodgy merge 2020-02-20 17:27:48 +00:00
Michael Shanks 42b3893c21 merge conflicts from peter/tweaks 2020-02-20 17:11:41 +00:00
Michael Shanks 187a9213ae reduced padding on comp hierarchy 2020-02-20 17:09:35 +00:00
Michael Shanks 6b4e6076c3 ensure component templates exist when presets do not 2020-02-20 17:09:14 +00:00
Michael Shanks 5f7511e3fd create props - ensure _styles always exist 2020-02-20 17:08:51 +00:00
Michael Shanks 21461645cc store method for save page or screen (context dependant) 2020-02-20 17:08:17 +00:00
Michael Shanks 1d2f079914 added height and width as positioning options 2020-02-20 17:07:25 +00:00
Michael Shanks 99c8814533 component templates 2020-02-19 21:38:21 +00:00
Michael Shanks 1559b08ce2 bad layout of component actions, on everything but firefox 2020-02-19 14:12:24 +00:00
Michael Shanks 5d0f9b788c bugfix: component libraries loaded incorrectly 2020-02-19 13:58:06 +00:00
Michael Shanks d9ceee49a1 reording and duplication of components 2020-02-19 10:17:31 +00:00
Michael Shanks e0c67a9ac5 bug in store - insertCodeMetadata import vanished 2020-02-18 21:22:43 +00:00
Martin McKeaveney 1390fba035 tidy up 2020-02-18 20:35:43 +00:00
Martin McKeaveney 3a406bc0da removed generators, added simple presets to standard components 2020-02-18 20:35:43 +00:00
Michael Shanks c033db0e2d Merge branch 'master' into 98-builtin-slot 2020-02-18 17:11:46 +00:00
pngwn 625ebdc36e Remove more logs 2020-02-18 17:05:08 +00:00
pngwn fe7a7c7010 Remove logs 2020-02-18 17:03:36 +00:00
pngwn a29dc4561e Ensure slot renders in current preview. 2020-02-18 17:00:56 +00:00
Michael Shanks 32b1f9cd89 #94 Remove component from hierarchy 2020-02-18 16:51:28 +00:00
pngwn 3c51f731ef Add screenslot to current preview. 2020-02-18 15:53:22 +00:00
Michael Shanks 56c25fee90 Client Api - New state binding method (#105)
* 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 6db4394562 Add builtin slot to list 2020-02-18 10:32:00 +00:00
Michael Shanks c9961feee5 Work on Components API & bugfixes (#102)
* 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 411d31eccf Fix Layout issue on FF 2020-02-12 21:01:53 +00:00
Martin McKeaveney 4f42a68a9e Merge pull request #99 from shogunpurple/state-bindings
State bindings
2020-02-12 15:50:30 +00:00
Martin McKeaveney 78b04ea58e moving test from server 2020-02-12 15:47:35 +00:00
Martin McKeaveney 695781c149 move state origin build from server to client 2020-02-12 15:10:31 +00:00
Michael Shanks 11c114a664 Lots of poking around to get apps to run, plux fixing tests (#92)
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 5ab7162088 final tidy up 2020-02-12 10:12:54 +00:00
Martin McKeaveney 52d79236e8 close dropdown on component change 2020-02-12 10:12:54 +00:00
Martin McKeaveney f12c6452e4 unit tests 2020-02-12 10:12:54 +00:00
Martin McKeaveney 5795a78cd5 fix rotation on state arrow 2020-02-12 10:12:54 +00:00
Martin McKeaveney e410748bed merging with master 2020-02-12 10:12:54 +00:00
Martin McKeaveney c976a133c0 auto update state origins when attaching click handlers 2020-02-12 10:12:54 +00:00
Martin McKeaveney 7a39e16e32 state binding complete 2020-02-12 10:12:54 +00:00
Martin McKeaveney 4fbdde2f5e better state bindings for defaults 2020-02-11 14:19:06 +00:00
Martin McKeaveney 936bce711e state binding v1 2020-02-11 14:19:06 +00:00
Michael Shanks 34b957f331 Builder saves backend and front end seperately (#88)
* 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 8a80d8801a Page Layout & Screen restructure (#87)
* 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 927502eb38 include svelte files in prettier 2020-02-03 09:50:30 +00:00
Martin McKeaveney 0808178dfa running prettier over codebase, removing merge files 2020-02-03 09:24:25 +00:00
Michael Shanks 88d67a5726 few wee bug fixes 2020-01-31 23:29:49 +00:00
Michael Shanks 7ae29a6030 #24 - Control Flow (#79)
* 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 5aa44a88a4 48 builder frontend 2 (#76)
* 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 23c4cdd724 tidy up 2020-01-31 09:49:26 +00:00
Martin McKeaveney 8d656596c7 final touches for design 2020-01-31 09:45:02 +00:00
Martin McKeaveney 96c61a5a7d styling updates 2020-01-30 21:00:19 +00:00
Martin McKeaveney a724247f08 draft handler 2020-01-30 20:01:18 +00:00
Martin McKeaveney 61cc39fc96 state management like designs 2020-01-30 16:22:19 +00:00
Martin McKeaveney c064f08d55 started implementing state management designs 2020-01-29 22:59:10 +00:00
Martin McKeaveney f0e07cdfca basic architecture complete 2020-01-29 21:04:48 +00:00
Martin McKeaveney e54fd6a0d9 merge 2020-01-28 22:39:16 +00:00
pngwn 6aa6c4d433 48 builder frontend 2 (#70)
* 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 62a9a3ee45 merge 2020-01-27 12:16:03 +00:00
pngwn 0490441d09 Remove unused validateProps module and tests 2020-01-24 16:39:25 +00:00
Martin McKeaveney 9ebe7bec5c build process improvements and gitignore 2020-01-24 16:31:53 +00:00
pngwn aaae1fd1ef Remove leftovers. 2020-01-24 15:34:44 +00:00
pngwn 4e4fe5a445 Ensure screen is correctly set when selecting a child component. 2020-01-24 15:34:02 +00:00
pngwn 7c1ae9f750 Modify component preview to match new component library loader API. 2020-01-24 15:20:20 +00:00
pngwn 044edb1aca 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 d78f8013b5 Implement updating of individual component props 2020-01-24 14:51:29 +00:00
pngwn 05a32f25f0 Initial implementation of props editor. 2020-01-24 14:51:29 +00:00
pngwn 3594f07346 Refactor inputs into components for simpler value bindings. 2020-01-24 14:51:29 +00:00
pngwn 4e6e6e2c98 Tweak component pane icons. 2020-01-24 14:51:29 +00:00
pngwn bfeb8200b3 Implement layout UI. 2020-01-24 14:51:29 +00:00
pngwn 80ac08e481 Tweaks to component snippet editor. 2020-01-24 14:51:29 +00:00
pngwn 55b6d01dbf Implement code editor panel. 2020-01-24 14:51:28 +00:00
pngwn 6ed94eb0a8 Update gitignored files. 2020-01-24 14:51:28 +00:00
pngwn 9fdcac7c41 Begin implementation of components panel. 2020-01-24 14:51:28 +00:00