Skip to content

Releases: ais-one/cookbook

v0.1.9

17 Feb 08:45
19b5d03
Compare
Choose a tag to compare

Version 0.1.9

  • hotfix: place back user
  • hotfix: if table slot found (you are using a custom list), load data... because you are not using the default "" component where pagination set when the component is created causing a load to happen
  • improvement: permissions are now in data() instead of computed
  • chore: update example-firebase, change custom filters and forms to use slots
  • chore: write documentation on how to change to custom filters and forms

v0.1.8

16 Feb 14:27
418e755
Compare
Choose a tag to compare

Version 0.1.8

  • chore: linter and prettier package updates (you MAY need to edit your code to avoid linting errors)
  • improvement[MINOR BREAKING CHANGE - for paged results]: add totalRecords property to return object of find() function so the following is returned { records, pagination, totalRecords }. totalRecords is the total possible records returned from a search, before paging limits are applied. We do not use "pagination.totalItems" any more as it has no effect, and we do not mutate pagination (there is no need to mutate explicitly).
  • improvement: reduce store usage (it was not necessary and added complexity)
    • remove from vuex: records, totalRecs, crudOps, defaultRec, pagination, filterData
    • save pagination and filterData into vuex when getRecordsHelper() is triggered or on initial store creating, retrieve on mounted,
  • improvement: use doPage field to indicate if not using paging or page size, page size increments
  • improvement: add table-toolbar & form-toolbar scoped slots, add reference to vue-crud-x in the slots (vcx), so that you can access its properties and methods
  • improvement: move VueCrudX.vue source file to location for common components where all example projects can access
  • improvement: now works on NUXT: (SPA, SSR and generated!!!), includes social login using github (Need to setup OAuth2, client id & secret, and callback URL)
  • improvement: move Loading/BusyOverlay to a common components folder (the same folder as VueCrudX.vue)
  • chore: version updates for Vuetify & VueJS, and other npm packages
  • chore: added firestore rules and index files in example-firebase
  • work in progress: add testing (deferred, to use dredd.io from apiary?)

v0.1.7

03 Feb 08:14
fde666f
Compare
Choose a tag to compare

Version 0.1.7

  • note: example folder is now renamed as example-firebase
  • improvement: add form-open event - with data loaded when form opens
  • improvement: add scoped-slots for filter & edit form [IMPORTANT] please use this from now for customizing the CRUD, please see the following files for reference:
    • example-firebase/src/pages/MultiCrud/Example.vue
    • example-rest/src/pages/Book.vue
    • example-rest/src/pages/Page.vue
  • improvement: remove summary component (use scoped-slot instead)
  • improvement: code refactor in progress (make it easier to use)
  • done: (example-rest) - Vanilla VueJS connecting to REST backend)
    • improvement: Websocket (can use https://www.websocket.org/echo.html & ngrok to test)
    • improvement: use RxJS in example-rest/src/pages/Book.vue for debounce and fetch handling
    • improvement: add transaction in DB query
  • chore: update npm packages ([email protected])
  • chore: update & improve documentation

v0.1.6

25 Jan 07:04
5658bcd
Compare
Choose a tag to compare

Version 0.1.6

  • chore: update npm packages ([email protected])
  • fix: (issue 44) metadata from firestore
  • work in progress: RESTful++ Backend For Testing
    • Priority Items
      • Done - Use ObjectionJS + SQLite for example, Mongo will have basic example with reconnect, and a simple find
      • Done - Login & OTP, Key-Value Store for user token storage on server (can replace with redis)
      • Done - Sample relational database implementation with (1-1, 1-m, m-n use cases) migrations, seeders, swagger documentation - Done
      • Done - Implementation of RESTful routes
    • Non-essential items
      • WIP - Websocket (use https://www.websocket.org/echo.html & ngrok to test)
      • TBD - Multiple File upload example (to local folder)
      • TBD - Single File upload example (to firestore)
      • TBD - Graphql
      • TBD - Logging
      • TBD- Security Improvements
      • TBD - Social Logins
  • work in progress: Frontend REST example
    • TBD - Nuxt (SPA first then transition to SSR)
    • TBD - Vanilla VueJS
  • chore: implement testing

v0.1.5

14 Jan 09:58
9583951
Compare
Choose a tag to compare

Version 0.1.5

  • chore: upgraded to vuetify 1.4.1
  • improvement: you can now customize table content, see @/pages/MultiCrud/Example.vue, Toggle Table button shows how it works
  • work in progress: REST API Example (merge Nuxt & REST example, use Nuxt SPA - decision still in progress)
    • Seperated backend code, so it can be used as an example backend various frontend projects
    • Important: deciding whether to use MongoDB or SQLite
    • Login - Done
    • Show table - In progress
    • Show nested table (one to many) - In progress
    • Show table (many to many) - In progress

v0.1.4

04 Dec 01:58
85a44fc
Compare
Choose a tag to compare

Version 0.1.4

  • NO BREAKING CHANGES
  • chore: upgraded to vuetify 1.3.11
  • improvement: hide vue-i18n warning messages - @/lang.js
  • improvement: you can return your own object for CRUD operations (see readme). return of hard-coded numbers will be DEPRECATED
  • improvement: you can customize toolbar buttons and optionally have text below toolbar button (space limited though) - see @/pages/Crud/party.js & @/pages/Crud/party-inline.js
  • improvement: create, update & delete events also emit the crudOps result (property named 'res'). if the operation did not return anything, res is undefined
  • improvement: [SOMEWHAT - NEEDS MORE TESTING] - fixed header vuetifyjs/vuetify#1547
  • improvement: allow user to hide filter button on toolbar (crudTable.showFilterButton = false)
  • work in progress: REST API Example
    • Login - Done
    • Show table - In progress
    • Show nested table (one to many) - In progress
    • Show table (many to many) - In progress

v0.1.3

18 Nov 02:39
840985e
Compare
Choose a tag to compare

Version 0.1.3

  • chore: upgraded to vuetify 1.3.8
  • improvement: add v-btn-toggle, grouped input [Alpha Version - Specification May Change]
  • improvement: [NON BREAKING CHANGE] please use 'field' instead of 'type' for Form & Filter inputs, 'type' will be deprecated
  • improvement: pass in 'this._self' as props to and so that your custom forms or filters can access the parent vue-crud-x component
  • bug fix: confirmation dialog logic for update and create was wrong
  • bug fix: CRUD update permissions in saveRow
  • improvement: export csv now does not require id to be first column - @/assts/util.js
  • work in progress: REST API Example
    • Login - Done
    • Show table - In progress
    • Show nested table (one to many) - In progress
    • Show table (many to many) - In progress

v0.1.2

06 Nov 16:34
c4bc07b
Compare
Choose a tag to compare

Version 0.1.2

  • bug fix: missing pleaseSave key in '@/lang', user needs to save changes or cancel them (by refreshing) before they can add inline record
  • bug fix: many inline save row issues (due to handling of realtime firebase snaphot updates, CRUD unaffected)
  • improvement: only save row if the row has been edited
  • improvement: add loaded event (when submitFilter() is called)
  • improvement: detect if i18n (multi-lang dependency) is present during mounted() of vue-crud-x and handle if not present
  • improvement: add time picker '@/TimePicker', improve date picker '@/DatePicker' (customize date format, prepend-icon now optional)
  • improvement: add realtime firebase in example project (Select "Real Time" on menu)
  • chore: clean up folder organization in example project
  • chore: improve documentation
  • work in progress: REST API Example
    • Login - Done
    • Show table - In progress
    • Show nested table (one to many) - In progress
    • Show table (many to many) - In progress

v0.1.1

04 Nov 23:50
7d93948
Compare
Choose a tag to compare

Version 0.1.1 (No Breaking Changes)

  • Removed wrongly installed dependencies in package.json
  • upgraded to vuetify 1.3.5
  • Add summary component (optional)
  • html in table cell & header cell
  • improve save row function by allowing background color to indicate change has been done on a cell in the row
  • fix CSV export function - use " (double quote) for field delimiter and escape "(double quote) using 2 "s
  • add JSON export (@/assets/util)
  • add secondary firebase app for auth user creation (@/firebase)
  • add editing object so as to indicate which rows user has edited inline and at what time (@/VueCrudX)
    (https://stackoverflow.com/questions/37517208/firebase-kicks-out-current-user/38013551#38013551)
  • [Work In Progress] REST API Example
    • Login - Done
    • Show table - In progress
    • Show nested table (one to many) - In progress
    • Show table (many to many) - In progress

v0.1.0

15 Oct 00:41
63e699b
Compare
Choose a tag to compare

Version 0.1.0

  • first minor version change!
  • fixed bug in can() function which shows button even though flag is false
  • improved configurability & look-and-feel customization (spacing, color, alignment, etc.) of vue-crud-x
    • see party-inline.js crudTable property for full details (some properties and props have been removed)
    • crudTable.attrs shows the customizations for the various parts of the component
    • the attrs are not limited to what is in the party-inline.js file (details of this are explained in party-inline.js)
    • [BREAKING CHANGE] Action Column, now indicated in headers array instead of actionColumn flag, see party-inline.j]
  • improve usability
    • make all buttons accessible, put them at top bar (done)
    • make top bar sticky - fixed (done - will need to revisit in Vuetify 2.0)
  • upgrade to vuetify 1.2.9 and updated outdated packages
  • [WORK IN PROGRESS] REST API example (with authorization & with configuration management)
    • jwt, google authenticator 2FA
    • knex, objectionjs, sqlite, keyv
    • update VueCrudX component in Nuxt example