Commit Graph

240 Commits

Author SHA1 Message Date
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 #126 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 #121 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 #116 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 #94 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 (#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 4a62525949 Add builtin slot to list 2020-02-18 10:32:00 +00:00
Michael Shanks b7d9e05641
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 488299ef06
Fix Layout issue on FF 2020-02-12 21:01:53 +00:00
Martin McKeaveney cca039bdd0
Merge pull request #99 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 (#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 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 (#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 f7bea46f01
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 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
#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 aa4c7fa1c1
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 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 (#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 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
pngwn 240a5b74db Basic implementation of sidebar design. 2020-01-24 14:51:28 +00:00
pngwn 3bae85c503 Implement new pages dropdown design in sidebar 2020-01-24 14:51:28 +00:00
pngwn 8abe5b4df7 Implement basic layout for frontend view. 2020-01-24 14:51:28 +00:00
pngwn e978e38ae9 Implement refreshed design for the top nav. 2020-01-24 14:51:28 +00:00
pngwn fca1b58829 Ensure only props are passed to propControl 2020-01-24 14:51:28 +00:00
Martin McKeaveney 46a9650f62 v0.0.16 2020-01-23 11:38:11 +00:00
Michael Shanks 06abf050b6 introduced 'container' to component definition 2020-01-20 21:57:27 +00:00
Michael Shanks eac855bb71 #48 restructure. Screens in, user components out. _children static concept 2020-01-17 23:06:42 +00:00