Commit Graph

81 Commits

Author SHA1 Message Date
djmaze
ad8fd8879b This version uses Rollup instead of WebPack.
Due to that the code is smaller and has changes to prevent Circular Dependencies
2021-01-25 22:00:13 +01:00
djmaze
f3bfa0e8c1 Cleanup and split Enums 2021-01-24 22:58:06 +01:00
djmaze
864da66b5f Replace viewDecorator and popupDecorator with proper AbstractView classes 2021-01-24 10:25:23 +01:00
djmaze
b6f0b634fb Cleanup calls to Knockout observableArray
Improved Knockout observableArray
2021-01-22 12:23:20 +01:00
djmaze
d0bcb5483a Changes for https://github.com/the-djmaze/snappymail/issues/30
And remove some memory cleanup due to issues with the Contacts view
2020-10-30 11:49:05 +01:00
djmaze
8d7e25fc7c Bugfix: subscribables should be created after computables 2020-10-26 14:44:34 +01:00
djmaze
3eb6ab1ef7 Improved knockout observables management to prevent memory leaks 2020-10-26 12:54:03 +01:00
djmaze
d7a4639d6b Prevent memory leaks in *Model 2020-10-25 11:46:58 +01:00
djmaze
3a315bc543 Bugfix: Contacts management failed
It had a strange array type structure and buggy
2020-10-20 15:37:06 +02:00
djmaze
2470f1add6 ContactProperty and FilterCondition use reviveFromJson 2020-10-20 10:27:00 +02:00
djmaze
9844c1882c Split RainLoop/Actions.php and use JsonSerializable 2020-10-19 22:09:25 +02:00
djmaze
15e07a73e9 merge all Model JSON @Object parsers into a reviveFromJson() 2020-10-18 19:46:47 +02:00
djmaze
1d6a636433 Split Common/Utils.js
Because admin app doesn't need most of them
2020-10-14 19:16:37 +02:00
djmaze
cb9e393fbc Pagenator should be Paginator 2020-10-12 15:11:25 +02:00
djmaze
c3a2da65df Revamp array filtering
Replaced fakeMd5 with new Jua.randomId
Cleanup more code
2020-10-02 23:54:15 +02:00
djmaze
0a95e2c6dc Cleanup constants 2020-09-30 14:07:03 +02:00
djmaze
efcefbaf78 Cleanup CSS and drop bMobileDevice detection.
Touch devices can be any size and can use (bluetooth/usb-c mouse/keyboard) these days.
It's all about pixels and currently if the mode is mobile/no-mobile (this can be improved later).
2020-09-30 12:31:34 +02:00
djmaze
c7054ff56c Resolve https://github.com/the-djmaze/snappymail/issues/14
There this works
2020-09-26 10:20:24 +02:00
m hagoort
5e7f531c7f Revamp shortcuts handler (not tested yet) 2020-09-26 00:02:29 +02:00
djmaze
b66e68a3b1 Merge some parts of initByJson and initUpdateByMessageJson
Cleanup messageListChecked handling
2020-09-20 11:29:31 +02:00
djmaze
467f615713 Move Knoin routOff, routOn, routReload & setHash to rl.route.* 2020-09-16 20:35:29 +02:00
djmaze
b904eca98e Cleanup __APP__/getApp code 2020-09-15 09:29:25 +02:00
djmaze
29cf711a6a Converted *Ajax into *Fetch (because we use the Fetch API, not jQuery.ajax) 2020-09-14 19:40:56 +02:00
djmaze
f2d194947d Merge Objects prototype extensions 2020-09-04 17:07:35 +02:00
djmaze
aeb5275648 Improved boot.js with existing global window.rl
Put dev/Storage/Settings.js in boots.js global rl.settings
2020-09-04 12:05:17 +02:00
djmaze
1802dda136 Removed jQuery dependencies from Jua.js 2020-09-01 16:57:14 +02:00
djmaze
69fcc240e9 More jQuery to native (including bootstrap.js) 2020-08-30 10:30:50 +02:00
djmaze
bdb36ec128 Use less jQuery, more native 2020-08-27 15:45:47 +02:00
djmaze
b185402ae7 Bugfix: Contacts.js trim() missing
Bugfix: ClearCookie failed
2020-08-22 01:05:43 +02:00
djmaze
7a21694396 Drop windowResize/windowResizeCallback in favor of ResizeObservable 2020-08-19 12:34:05 +02:00
djmaze
6541a1de7c Remove Common/Enums Magics.* 2020-08-13 22:58:41 +02:00
djmaze
e7180a86ce Made eslint using 'browser' environment and added globals, because RainLoop is used in browsers.
This also allowed to remove all webpack 'externals' overhead.
2020-08-12 00:25:36 +02:00
djmaze
e1b274fcb4 Bugfix: scrollTop/scrollLeft never worked because .b-content has overflow:auto not the sub-div .content 2020-08-06 16:14:50 +02:00
djmaze
ea48f5060b isArray to native Array.isArray
isUnd(*) to native undefined === *
isFunc to native typeof * === 'function'
isObject to native typeof * === 'object'
microtime() to native Date().getTime();
noop to native ()=>{}
noopFalse to native ()=>false
noopTrue to native ()=>true
boolToAjax to native *?'1':'0'
Underscore.js to native
2020-07-29 21:49:41 +02:00
djmaze
2ba34532c2 JavaScript string compare '' is always a ToBoolean
See https://www.ecma-international.org/ecma-262/5.1/#sec-9.2
2020-07-28 17:20:14 +02:00
djmaze
82bed1ed80 Cleanup array.length checks and for() to forEach() 2020-07-28 12:35:41 +02:00
djmaze
dca0ff02ed Use jQuery.slim
Underscore.js _.uniq(_.compact( to native Array.filter((value, index, self) => !!value && self.indexOf(value) == index)
Underscore.js _.compact to native Array.filter(value => !!value)
Underscore.js _.uniq to native Array.filter((value, index, self) => self.indexOf(value) == index)
Underscore.js _.values to native Object.values
Underscore.js _.flatten to native Array.flat
Underscore.js _.union to native Array.concat + unique filter
Underscore.js _.reduce to native Array.reduce
Underscore.js _.escape replaced with advanced htmlspecialchars()
Underscore.js _.memoize replaced
Now Underscore.js is a slim custom version (only _.debounce, _.defer & _.throttle)
2020-07-23 16:06:16 +02:00
djmaze
43c92a82e6 Underscore.js _.delay() to native setTimeout() 2020-07-22 20:28:25 +02:00
djmaze
a82575a830 Underscore.js _.map() to native Array.map() (optional with Object.entries/values) 2020-07-22 20:09:31 +02:00
djmaze
a5d41edb24 Underscore.js _.each() to native Array.forEach() (optional with Object.entries/values) 2020-07-22 14:49:18 +02:00
djmaze
9c0072d626 Underscore.js _.find() to native Array.find() 2020-07-22 10:43:19 +02:00
djmaze
eb15c6e45f Changes _.filter(array) to native array.filter() 2020-07-20 21:29:44 +02:00
djmaze
af136f46c4 _.bind(function, object) to function.bind(object) 2020-07-20 15:47:33 +02:00
djmaze
db2d95d684 JavaScript inArray()/indexOf() to .includes() 2020-07-20 14:33:33 +02:00
RainLoop Team
40dc22a317 Remove knockout-transformations dependency 2019-07-04 22:58:15 +03:00
RainLoop Team
8a0be3212d prettier --write 2019-07-04 22:19:24 +03:00
RainLoop Team
450528ff00 Add prettier 2019-07-04 22:09:27 +03:00
RainLoop Team
791f0ff6ad Small fixes and improvements 2018-07-10 00:05:02 +03:00
RainLoop Team
a72b95a868 Fix compose focus/cursor 2017-07-06 02:56:11 +03:00
RainLoop Team
8da988fef2 Synchronize localizations from Transifex
Update package.json dependencies
Fix eslint errors
webpack 2 -> webpack 3
2017-06-24 22:26:27 +03:00