Commit Graph

363 Commits

Author SHA1 Message Date
Andrew Kingston 499ad2e35d Add initial work on component SDK 2020-11-11 12:25:50 +00:00
mike12345567 2467043f35 Improving consistency of how appId is retrieved and making sure it is valid when being used. 2020-11-09 14:38:29 +00:00
mike12345567 f2e1f1f4e9 The API that the components library would use was not always consistent with the API client library would use and this would sometimes break things. 2020-11-09 09:42:35 +00:00
Andrew Kingston 253568fd2d Merge pull request #817 from Budibase/apex-charts
Apex charts
2020-11-09 08:48:44 +00:00
mike12345567 5f0912e6ff Linting. 2020-11-06 21:32:03 +00:00
mike12345567 ce12325b8c Fixing issues with auth not being able to find appId in pathname, using the currentapp cookie if pathname not populated. 2020-11-06 21:13:21 +00:00
Andrew Kingston 7aa8d7870d Fix crash when saving rows 2020-11-04 13:17:24 +00:00
Michael Drury 016e09eb81 Fixing issue with appId being checked when undefined. 2020-11-03 16:23:28 +00:00
Michael Drury 684df38561 Fixing issue that was breaking linting. 2020-11-03 15:35:27 +00:00
Michael Drury 4f28bd9430 Updating server test cases with the header for appId. 2020-11-03 15:00:39 +00:00
Michael Drury 19bcecf9f3 Linting and fixing client test case, have to mock getAppId as the location will never be set during testing. 2020-11-03 14:30:20 +00:00
Michael Drury ac73b5c4aa Further work towards the re-implementation of auth, changing how the appId is determined, now it mainly will use a header, and a cookie which will be written to store the current status of appId. 2020-11-03 13:45:49 +00:00
mike12345567 a1fd261af6 Some more re-work, more testing needed to auth stuff. 2020-11-02 20:14:10 +00:00
Michael Shanks a9d9e14e22 auth - standard-components not loading, windows 2020-10-18 21:45:46 +01:00
Michael Shanks 1a8c2907ca fixes home route matching everything 2020-10-16 23:36:42 +01:00
Michael Shanks 7ab1e9c6fb Merge remote-tracking branch 'origin/master' into mike-fixes 2020-10-16 21:39:51 +01:00
Andrew Kingston 19bfa87859 Fix link 2020-10-16 16:00:26 +01:00
Michael Shanks ab23d02f4b client - sanitize urls, so we can match routes with nasty chars 2020-10-16 15:44:39 +01:00
Andrew Kingston 0c61fe60a2 Fix crashing whenever hitting an API error from client app 2020-10-16 09:37:19 +01:00
Andrew Kingston bb2a650eee Merge branch 'master' of github.com:Budibase/budibase into autoscreen-templates 2020-10-16 09:17:54 +01:00
Andrew Kingston 92a6bd1a6d Fix popstate client routing events 2020-10-16 09:16:25 +01:00
Andrew Kingston 89bba530be Merge branch 'master' of github.com:Budibase/budibase into autoscreen-templates 2020-10-16 08:39:06 +01:00
Andrew Kingston 536e1f2ab3 Add new Delete Row action which can be used in client apps 2020-10-16 08:37:13 +01:00
Michael Shanks cf1df37e71 Merge remote-tracking branch 'origin/master' into mike-fixes 2020-10-15 23:21:12 +01:00
Martin McKeaveney 5565bd2124 replacing pathname 2020-10-15 14:46:24 +01:00
Martin McKeaveney f163027ca8 more auth bugfixes 2020-10-15 14:26:33 +01:00
Michael Shanks 8f0be4c44c Merge remote-tracking branch 'origin/master' into mike-fixes 2020-10-15 09:18:04 +01:00
Michael Shanks 9ee36ef2c0 app screen routing - routes are no case insensitive 2020-10-14 20:54:07 +01:00
Andrew Kingston db8e0b03c4 Add support for client app ID routing when serving on a LAN ip address 2020-10-14 20:33:09 +01:00
mike12345567 5e9d32824c Merge branch 'feat/linked-records-data-source' of github.com:Budibase/budibase into endpoint-renaming 2020-10-13 09:58:08 +01:00
mike12345567 cfd4d9d34d Merge branch 'master' of github.com:Budibase/budibase into endpoint-renaming 2020-10-12 13:34:32 +01:00
Andrew Kingston 0ac8a33210 Merge branch 'master' of github.com:Budibase/budibase into feat/linked-records-data-source 2020-10-12 11:26:04 +01:00
Andrew Kingston 339bb8b76c Fix images and lots of other string escaping not working 2020-10-12 10:49:21 +01:00
mike12345567 5d49d529e3 Changing record -> row in this update, completing the update of renaming in the builder, this release needs further testing. 2020-10-09 19:10:28 +01:00
mike12345567 fdaa69ee7f Renaming Model -> Table across the entire system, this is an unstable update and has not been tested fully yet. 2020-10-09 18:49:23 +01:00
Michael Shanks 2e76e1f0f4 Save Record Action 2020-10-08 22:06:44 +01:00
Michael Shanks dd31e19400 fix: Navigate To & Other Actions broken 2020-10-02 14:52:45 +01:00
Andrew Kingston fe97579d36 Merge in master 2020-09-14 13:55:40 +01:00
Michael Shanks cacd735961 fix: override client context store on create 2020-09-14 12:46:49 +01:00
Michael Shanks 7fe7c9b286 fix: re-exposing store in component api, as form depends on it 2020-09-14 12:32:10 +01:00
Andrew Kingston d166d8072b Merge in master 2020-09-14 10:16:09 +01:00
Michael Shanks 0735eaa523 stop coercing values on the server - do on client instead 2020-09-11 21:24:52 +01:00
Michael Shanks d951edad61 some comments 2020-09-11 09:53:02 +01:00
Michael Shanks d3225cb51f events hooked up and working 2020-09-10 21:11:05 +01:00
Andrew Kingston 98ffd6f971 Remove client workflow execution 2020-09-10 11:27:31 +01:00
Michael Shanks f988d2d9c7 event panel rework backup 2020-09-01 10:12:01 +01:00
Michael Shanks 3c69e48200 some styling changes from code review 2020-08-27 10:00:36 +01:00
Michael Shanks 7861c8ede8 bindings... allowing unescaped urls, but not html tags 2020-08-11 14:12:05 +01:00
Michael Shanks a82c0dd44e client lib - new binding 2020-08-06 21:12:35 +01:00
Martin McKeaveney 1a33ab2e18 merge 2020-07-07 21:32:32 +01:00
Michael Shanks 9208a43cf1 Form component now supports edit recprd 2020-07-07 20:16:03 +01:00
Martin McKeaveney 27975057c7 budibase complete deployment 2020-07-07 17:51:41 +01:00
Michael Shanks 94509a814d some comments 2020-07-07 10:51:25 +01:00
Michael Shanks 9424cbb615 routing breaks when we click same link twice #422 2020-07-07 10:48:24 +01:00
Martin McKeaveney f7d65deb5e extra index template for production 2020-07-06 19:43:40 +01:00
Michael Shanks 51054786c2 fix: list supports multiple children (without container) 2020-07-06 14:21:55 +01:00
Martin McKeaveney 5ecc8d4a54 deployment E2E 2020-07-02 23:22:20 +01:00
Michael Shanks ce99054f91 Added recordDetail component 2020-07-01 13:19:14 +01:00
Michael Shanks 69f57a211c fix: interpolation on property binding 2020-06-30 09:48:48 +01:00
Michael Shanks eb2b6ec56f removed x-user-agent 2020-06-19 16:59:46 +01:00
Michael Shanks bd927564b2 client - should recognise new cookie format 2020-06-19 07:04:55 +01:00
Michael Shanks bf14aa5ccb instanceid removal 2020-06-18 16:59:31 +01:00
Michael Shanks ea3a8fd81a client: fixing broken tests 2020-06-14 20:30:23 +01:00
Michael Shanks 5b59a110a6 lint fix 2020-06-12 21:11:39 +01:00
Michael Shanks 19d132c6c2 removal of appRoot - appId comes in cookie 2020-06-12 20:42:55 +01:00
Michael Shanks 6aba0e4ee2 Merge branch 'master' into new-list-spike2 2020-06-04 11:57:05 +01:00
Michael Shanks 2bedbd5df6 bugfix: screenRouter hijacks link clicks and routes when applicable 2020-06-03 22:52:33 +01:00
Michael Shanks 3471afe587 bugfix: data components hitting correct url again 2020-06-03 22:12:09 +01:00
Martin McKeaveney 18ad679d21 lint 2020-06-03 20:44:35 +01:00
Martin McKeaveney 2cd309bfdc fix some other auth bugs 2020-06-03 20:35:30 +01:00
Michael Shanks f6b98d987f spike - list that accepts children 2020-06-02 23:26:06 +01:00
Martin McKeaveney 3a983cea8a tidy up, styling 2020-06-02 11:08:53 +01:00
Martin McKeaveney 401b6689bc Record selector 2020-06-01 22:55:44 +01:00
Martin McKeaveney a9e77836cb tests 2020-06-01 22:25:44 +01:00
Martin McKeaveney a6602ba1fc lint + format 2020-06-01 21:31:55 +01:00
Martin McKeaveney b372f6b03d tidy up 2020-06-01 21:26:32 +01:00
Martin McKeaveney 176906e766 server side workflows 2020-06-01 16:22:13 +01:00
Martin McKeaveney cb496d1819 workflow DAO tests 2020-06-01 11:52:15 +01:00
Martin McKeaveney 15ba1a5a12 move workflow to array data structure 2020-06-01 10:41:28 +01:00
Martin McKeaveney 5c1aa00fd0 server side event emitter 2020-05-31 17:12:52 +01:00
Martin McKeaveney 9a898a8d74 orchestrator refactor, user creation block 2020-05-30 13:41:46 +01:00
Martin McKeaveney 36da2576bc separate workflow components from routify routes 2020-05-30 00:40:33 +01:00
Martin McKeaveney c7b8220a62 significant client lib refactor 2020-05-30 00:14:41 +01:00
Martin McKeaveney b4b90fcaeb styling, bug fixes, client library state updates 2020-05-29 16:06:23 +01:00
Martin McKeaveney e648dc80e8 refactor client library 2020-05-29 14:06:36 +01:00
Martin McKeaveney 7a3b368399 make alerts live, more hooks, app notifications 2020-05-28 23:32:03 +01:00
Martin McKeaveney 6f0a84dd38 adding workflow blocks, parameter parsing, templating 2020-05-28 20:20:03 +01:00
Martin McKeaveney ad637348c9 workflow UI, orhestrator for executing workflows 2020-05-27 21:51:32 +01:00
Martin McKeaveney 6829f9ab06 Merge branch 'master' of github.com:Budibase/budibase into workflow-v1 2020-05-27 10:13:42 +01:00
Martin McKeaveney e9fab13750 workflow orchestrator 2020-05-26 21:34:01 +01:00
Conor_Mack deab1adc31 Completed CSS Selector Styling 2020-05-25 15:23:56 +01:00
Martin McKeaveney e659e69e86 workflow UI with DnD 2020-05-21 21:40:16 +01:00
Conor_Mack 983a1c3718 Testing Complete - Resolve Post Issue 2020-05-18 16:32:00 +01:00
Martin McKeaveney 3c9af5336e formatting 2020-05-18 11:01:17 +01:00
Martin McKeaveney 2ebe5580d5 fixing tests 2020-05-07 22:25:27 +01:00
Martin McKeaveney db69673a9d data components 2020-05-07 22:15:09 +01:00
Martin McKeaveney 16ec3719ea client lib tests 2020-05-07 13:33:25 +01:00
Martin McKeaveney 0ec47971d0 formatting + fixing builder tests 2020-05-07 10:53:34 +01:00
Martin McKeaveney b6b50182e2 dev setup complete 2020-05-06 12:17:15 +01:00
Martin McKeaveney ddb1880b98 development setup, adding data components 2020-05-06 10:33:30 +01:00
Martin McKeaveney af9c1adb35 apps being served correctly 2020-05-04 17:13:57 +01:00
Martin McKeaveney 5b4bce8b8f component library modules and definitions refactor - moved to backend. More routing and middleware reorganisation 2020-05-02 15:29:10 +01:00
Martin McKeaveney 3564fec064 access levels, actions and triggers removed. Restructuring and refactoring 2020-04-29 20:29:56 +01:00
Martin McKeaveney 65de002c57 show screenslot if there's no screens 2020-04-06 17:06:04 +01:00
Martin McKeaveney f82a954666 formatting 2020-03-27 16:58:32 +00:00
Martin McKeaveney fa95ba2d79 moving code from main store to backend file 2020-03-16 18:54:48 +00:00
Michael Shanks 39075b5032 _bb client api, relative url checks for root path,+ handles absolutes 2020-02-27 21:14:41 +00:00
Michael Shanks 4f2f2b9015 dont try to attachChildren if theres not htmlElement supplied 2020-02-26 15:57:48 +00:00
Michael Shanks 1e4659db19 bugfix: route params not populated correctly 2020-02-25 22:27:02 +00:00
Martin McKeaveney 3fd7f376e3 all eslint errors fixed 2020-02-25 16:23:45 +00:00
Martin McKeaveney 1912150149 fix tests 2020-02-25 15:46:04 +00:00
Martin McKeaveney 7ae40de558 eslint tidy up 2020-02-25 15:46:04 +00:00
Michael Shanks cb79302b1a added _bb.get/setContext to clientApi - for MD components 2020-02-24 16:41:03 +00:00
Michael Shanks 829eea4189 bugfix: await event handlers 2020-02-24 16:04:13 +00:00
Michael Shanks f68ac7577e router not properly matching parameterized route 2020-02-24 14:57:34 +00:00
Michael Shanks 35d5ae9ed8 random bug - client setState 2020-02-24 14:57:05 +00:00
Michael Shanks 1657beb8fc bugfix - client - approotPath not passed correctly 2020-02-24 11:15:08 +00:00
Michael Shanks 9835e71a2e prettier - auto 2020-02-23 22:18:05 +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 d7de2f1b0e pass in routeParams to uiFunctions 2020-02-21 23:01:41 +00:00
Martin McKeaveney 55d43fad80 finished state management ui for v2 2020-02-21 18:02:02 +00:00
Michael Shanks ec7cc028c5 some more routing fixes - css now loaded at runtime 2020-02-21 16:52:29 +00:00
Martin McKeaveney b7a5735a05 state management bindings 2020-02-21 15:44:48 +00:00
Michael Shanks b4eb26b2f1 fix rooting to be able to handle appRootPath 2020-02-21 15:20:00 +00:00
Michael Shanks ab0db65048 bindings can now be just a string (store.someValue) 2020-02-21 14:44:48 +00:00
Michael Shanks c033db0e2d Merge branch 'master' into 98-builtin-slot 2020-02-18 17:11:46 +00:00
pngwn 133339483e Ensure fallback is alway selected when no route matches. 2020-02-18 16:38:35 +00:00
pngwn 3c51f731ef Add screenslot to current preview. 2020-02-18 15:53:22 +00:00
Michael Shanks a58a061df0 router swallows excpetions on pushState
(not supported in iframes, used by builder)
2020-02-18 13:10:57 +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
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
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
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 0808178dfa running prettier over codebase, removing merge files 2020-02-03 09:24:25 +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
Michael Shanks be9443561d Control flow - Client library foundations (#72)
* 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
2020-01-29 23:01:14 +00:00
Michael Shanks 6cb523478d Client Lib > Ability to inject code around initialise children (#68)
* 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
2020-01-28 14:14:53 +00:00
Michael Shanks 994aed6f5d added DOM tests for client library 2020-01-24 13:18:31 +00:00
Michael Shanks 4e09043e3a #48 restructure. Screens in, user components out. _children static concept 2020-01-17 23:06:42 +00:00
Michael Shanks 43265fb255 fixes for getting started... 2019-11-09 08:14:10 +00:00
Michael Shanks 540fb4c3d6 basic cru app possible 2019-10-19 07:24:20 +01:00
Michael Shanks 92dcf4b2b8 backup before an f-up 2019-10-18 17:32:03 +01:00
Michael Shanks 6f83fd19a3 bootstra components - backup before comonen control flow 2019-10-16 05:38:45 +01:00
Michael Shanks f787633fc7 bootstrap components started... 2019-10-14 08:32:20 +01:00
Michael Shanks 0e9a885aa1 generators seem to be working... 2019-10-10 06:18:02 +01:00
Michael Shanks 2f028b1f1e generators.. 2019-10-07 06:03:41 +01:00
Michael Shanks 1529277b11 lots of bugfixes and component changes 2019-10-03 06:12:13 +01:00
Michael Shanks 3ebe483d94 context binding 2019-10-01 05:57:45 +01:00
Michael Shanks 207b73ba97 some bugfixes - ready to start building! 2019-09-29 06:40:06 +01:00
Michael Shanks cb6fe94584 Event bindings with context, array binding, Table component... 2019-09-27 17:03:31 +01:00
Michael Shanks e0d1ea5651 nav component and bug fixes 2019-09-26 05:40:58 +01:00
Michael Shanks 1a8a9cd490 More event handlers & bug fix 2019-09-24 06:11:02 +01:00
Michael Shanks bfda230aae state event handlers - API 2019-09-23 06:08:06 +01:00
Michael Shanks 9953989de6 state binding working 2019-09-22 05:02:33 +01:00
Michael Shanks be2fe07395 Events and state binding 2019-09-20 08:01:35 +01:00
Michael Shanks 70ddecfab0 data binding and stndard componets work 2019-09-19 04:35:40 +01:00
Michael Shanks dda4517cb0 Budibase is alive! sort of 2019-09-12 06:10:50 +01:00
michael shanks 44e85ef573 bug fixing 2019-09-09 21:02:23 +01:00
michael shanks 5ee72b1d87 build app... probably not orking yet.. 2019-09-07 06:50:35 +01:00
michael shanks e383c03435 working on client lib 2019-09-06 13:04:23 +01:00
michael shanks 3f87806899 server - first passing tests 2019-06-14 10:05:46 +01:00