djmaze
8b116fa8ba
Cleanup some code
2021-08-12 20:17:37 +02:00
djmaze
5590fd4860
isNonEmptyArray => arrayLength
2021-07-21 21:34:17 +02:00
djmaze
bb15cd1ec3
Resolve Issue #100
2021-07-19 11:57:47 +02:00
djmaze
29fe73d4e7
Cleanup .bind(
2021-04-23 10:47:24 +02:00
djmaze
ce74b2e92f
Cleanup more iError && data.Result
2021-03-18 14:48:21 +01:00
djmaze
11fd6736bb
Set response ErrorCode as iError for easier fetch error handling
2021-03-18 12:33:13 +01:00
djmaze
0b64083543
Array.isArray to isArray
...
Array.isNotEmpty to isNonEmptyArray
2021-03-16 16:49:14 +01:00
djmaze
986b8f056b
prevent creation of _defineProperty() function
2021-03-16 16:08:01 +01:00
djmaze
eff92c3152
Cleanup AppUserStore
...
Simplify KeyState/Focused as Scope enum
2021-03-16 16:06:16 +01:00
djmaze
4a8d516123
Changed: StorageResultType to error result code
2021-03-16 09:46:23 +01:00
djmaze
6a454ec624
Convert user stores to single object instances
...
Removed unused ContactUserStore.exportingCsv and ContactUserStore.exportingVcf
2021-03-10 22:41:35 +01:00
djmaze
e7b1ce7509
Globalize message composer popup window
2021-03-10 11:43:23 +01:00
djmaze
fac36e828b
Cleanup Squire and Knockout with help of Chromium Code Coverage
...
Bugfix: Squire inlineNodeNames the 'I' tag was missing
Improved: Squire style editing
2021-02-23 22:50:48 +01:00
djmaze
540b12ed26
Replace babel command decorators with proper knockout command decorators
2021-02-19 12:09:20 +01:00
djmaze
32c3f1f059
Cleanup links
2021-02-04 11:25:00 +01:00
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