Commit Graph

59 Commits

Author SHA1 Message Date
Katharina Bogad
f051f05341 Bump bootbox to 5.5.2, preload view javascript 2021-06-24 15:55:42 +02:00
Katharina Bogad
e744aa8dc7 scoping: refactor components, GrocyProxy. 2021-06-23 20:31:13 +02:00
Katharina Bogad
3b342f90db viewjs: extract functions for DataTable Initialisation
Also revert back to use rollup-plugin-css-porter,
because rollup-postcss has issues and also doesn't work.
2021-06-20 09:17:11 +02:00
Katharina Bogad
eb38ec7f26 gulp: release bundling 2021-06-19 01:16:14 +02:00
Katharina Bogad
8a53054750 gulp: Move viewjs rollup to postcss 2021-06-19 00:10:26 +02:00
Katharina Bogad
378e2d7aad gulp: Add eslint and config 2021-06-18 19:32:22 +02:00
Katharina Bogad
f7bc6a3f6d Modernize Javascript
This *absolute commit monster* does the following things:

- Introduce gulp to build javascript and css files.

  This includes moving node_modules out of the public/ folder.
  Use `gulp --tasks` to get a list of all tasks; however some
  of them are automatically generated.

  Use `gulp live` to watch for changes and automatically recompile
  what's needed.

- Upgrade to yarn2
- Upgrade FullCalendar to 4.4.2

  I know that 5.x is the current version, but two major version upgrades
  are too much right now. Also v5 would break any custom css as they
  renamed a bunch of classes.

- Move Styles to sass

  (Most) global styles are now included in one sass file. This also
  means that we now compile our own bootstrap.

- Javascript is now in strict mode

  Because everything is a module now, `use strict` is now in effect
  for all javascript files. There are probably still some parts left
  where implicit variable declarations were used.

- grocy*.js were split up in modules.

  `window.Grocy` is now an instance of GrocyClass. API-wise nothing
  has changed (albeit some functions were added regarding Undo actions)
  At the Moment, this leaks a whole bunch of functions into window
  (that was easier than tracking those down).

- FindObjectIn... style functions were removed.

  Array.prototype.find and Array.prototype.filter suffice.

- Use babel to preprocess javascript.
- Use rollup to bundle javascript.

  rollup bundles and tree-shakes es6 javascript bundles.
  It also allows to "import" css files and generate css
  files specific to this javascript file. This is used
  in viewjs scripts, for example when importing FullCalendar,
  to generate an associated viewcss file.

- Use postcss to post-process css files.

  postcss uses autoprefixer to handle browser compatiblity.
  Internally this uses the package `browserslist`; and is currently
  configured to the default setting.

- Minify assets when building in production

  `gulp publish` builds all assets in production mode, that is,
  the assets get minified. This includes javascript as well as
  css files.

- css bundling

  concatCss is used to pull @imports of non-sass-files into one
  grocy.css

- animate.css is now in the main bundle

  animate.css was used in so many places that it is now located
  in the main style bundle.
2021-06-18 12:44:39 +02:00
Bernd Bestel
7478d9bb38
Removed RTL CSS handling (not needed until we have full RTL support) 2020-12-21 19:36:20 +01:00
Bernd Bestel
dadf93a94c
Merge used libraries for Barcode/QR-Code generation 2020-12-20 19:53:28 +01:00
Bernd Bestel
1d16021404
Show barcode as barcode-image on shopping list (closes #1133) 2020-12-20 19:31:12 +01:00
Bernd Bestel
796e35d60b
Removed unneeded dependency 2020-12-19 14:19:26 +01:00
Bernd Bestel
672c4d33bf
Added basic RTL support (reference #984) 2020-12-11 18:06:32 +01:00
Bernd Bestel
d2d09cf928
Removed dragscroll dependency (fixes #1135, references #1115) 2020-11-17 20:50:04 +01:00
4lloyd
76cbf796b6
[WIP] Simplified overviews on mobile (#1115)
* Simplified stock overview on mobile.

* Stock table horizontally scrollable

* Use the new mobile views for all pages (except the shopping list page, use the existing special handling there for now)
And add a clear filter button to all pages

Co-authored-by: Bernd Bestel <bernd@berrnd.de>
2020-11-07 14:53:45 +01:00
fipwmaqzufheoxq92ebc
85a95f1973
Apikeys (#986)
* Add QR-Code for API-Url/Key

* Show only API-Keys for current user

* Allow only admin users to create custom API-Keys

* Use a managed package of qrcode-generator instead of a copy of the JS file

* Reuse existing localization string (API key)

* Center QR-Code in popups

Co-authored-by: Bernd Bestel <bernd@berrnd.de>
2020-09-06 10:00:49 +02:00
Bernd Bestel
e3ff16c66a
Downgrade animate.css, upgrade to v4 needs customizations 2020-08-22 18:25:59 +02:00
Bernd Bestel
cf9bb87f6e
Upgraded to Quagga2 (again) (closes #799, also references #844) 2020-08-19 20:04:17 +02:00
Bernd Bestel
273811fdc1
Updated dependencies 2020-08-18 18:27:58 +02:00
Bernd Bestel
b4a480aa37
Downgrade / use QuggaJS again instead of Quagga2 (fixes #749) 2020-04-17 19:48:11 +02:00
Bernd Bestel
d4fefa846b
Hotfix (will be included in the v2.7.0 release): Downgraded jQuery (fixes #743) 2020-04-16 19:14:26 +02:00
Bernd Bestel
7121e814b0
Updated dependencies 2020-04-16 18:22:38 +02:00
Bernd Bestel
858315ed3f
Added DataTables accent neutralise plugin (closes #654) 2020-04-13 16:27:02 +02:00
Bernd Bestel
45d96cb60f
Use Quagga2 instead of QuaggaJS (closes #579) 2020-04-13 16:08:46 +02:00
Bernd Bestel
d4fa1a64c2
Upgrade Slim Framework to v4 (closes #561) 2020-02-11 17:42:03 +01:00
Bernd Bestel
171d6af5e1
We don't need that switch-button, a native Boostrap button is enough and less disturbing 2020-02-03 21:21:42 +01:00
Bernd Bestel
8d490351d0
Replaced jQuery UI by Animate.css (better, faster, lighter) 2020-01-28 19:27:18 +01:00
Bernd Bestel
05aceb72ae
Squashed commit
- Only refresh contextual number/datetime info/formatting where needed (closes #513)
- Also refresh correlated stock journal entries on undo (closes #471)
- Prefill "New amount" with the current stock amount on the inventory page (closes #434)
- Ensure that the location_id of the stock and stock_log tables is never empty after migration 95 (references #421)
- Load initial values of the /stockedit form server side to improve loading performance (references #421)
- Use more or less the same input ordering as on the purchase page for the /stockedit page (references #421)
- Also display the "Compact view" button on the shopping list page when FEATURE_FLAG_SHOPPINGLIST_MULTIPLE_LISTS is disabled (references #453)
- Ensure that the currently active sidebar menu item is visible
- Optimized sidebar menu item grouping/spacing
- Properly order the API documentation route groups and put the "by-barcode" routes into a separate group
- Updated dependencies
- Pulled translations from Transifex
- Prepared changelog for next release
2020-01-27 19:00:49 +01:00
Bernd Bestel
c7bcb9984a
Implemented "Scan mode" 2020-01-26 15:35:01 +01:00
Bernd Bestel
d4bec3bd10
Added a "keep screen on" option using NoSleep.js (closes #427) 2020-01-05 10:03:02 +01:00
Bernd Bestel
399ebbe14a
Updated dependencies 2019-09-20 14:47:42 +02:00
Bernd Bestel
5e9a7fb7ca
Implemented browser barcode scanning (closes #102) 2019-09-19 12:48:02 +02:00
Bernd Bestel
918f84f568
Lazy load all images to increase page load times (references #275) 2019-09-18 13:59:37 +02:00
Bernd Bestel
74f9470769
Implemented that chores can be assigned to users (closes #253) 2019-09-17 13:13:26 +02:00
Bernd Bestel
5da50d1e1e
Updated dependencies 2019-05-10 20:56:03 +02:00
Bernd Bestel
9b2dba2397
Migrated (hopefully) all translations to PO/Gettext (references #161) 2019-05-01 20:19:18 +02:00
Bernd Bestel
cd0ca4a67c
Prepared next release 2019-03-09 16:42:46 +01:00
Bernd Bestel
643f6272e4
Fixed file name case sensitivity issue with tagmanager jQuery Plugin (references 165) 2019-03-08 22:13:47 +01:00
Bernd Bestel
77b0bc675c Varios small UI changes / improve UI consistency 2019-03-04 17:43:12 +01:00
Bernd Bestel
a3b2d03d68
Fixed datetimepicker only worked once when not selecting a date
References #143
Using a self-patched version of tempusdominus/bootstrap-4 for now, see 2cf725fed9 and tempusdominus/bootstrap-4#34
2019-02-09 14:44:37 +01:00
Bernd Bestel
2f7b78bc40
Update dependencies for next release 2018-11-24 20:18:50 +01:00
Bernd Bestel
5da24d2d4f
Added first version of calendar (closes #42) 2018-11-18 15:39:43 +01:00
Bernd Bestel
f4534a4bfb
Update dependencies for next release 2018-10-27 17:58:05 +02:00
Bernd Bestel
6202e8bda7
Update dependencies for next release 2018-10-06 11:48:47 +02:00
Bernd Bestel
b242a5de52
Finish equipment / instruction manuals feature (references #25) 2018-10-03 16:11:39 +02:00
Bernd Bestel
067a10e1b2
Hotfix (will be included in v1.19.0 release): Fixed a regression bug regarding issue #56 (product-flow-popup did not work anymore) 2018-09-24 16:50:30 +02:00
Bernd Bestel
ddfe33fab6
Update dependencies for next release 2018-09-24 13:57:20 +02:00
Bernd Bestel
f85a67a1ff
Continue working on tasks feature 2018-09-23 09:22:54 +02:00
Bernd Bestel
525f1705d1
Update dependencies for next release 2018-08-04 17:22:15 +02:00
Bernd Bestel
14cc153422 Removed unused dependency 2018-08-03 08:16:33 +02:00
Bernd Bestel
c64eb27ca1
Add something for product price tracking (references #22) 2018-07-26 20:27:38 +02:00