Commit graph

108 commits

Author SHA1 Message Date
djmaze
b26586f2ba Cleanup Crossroads & Hasher and dropped Signals 2021-02-04 12:54:03 +01:00
djmaze
7ccc44616d Small code cleanups and fix translations 2021-01-27 00:26:31 +01:00
djmaze
b31bf3d7f5 Improved js minification 2021-01-26 11:46:30 +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
1535dd00f1 cleanup webpack export references 2021-01-22 16:32:08 +01:00
djmaze
b6f0b634fb Cleanup calls to Knockout observableArray
Improved Knockout observableArray
2021-01-22 12:23:20 +01:00
djmaze
cc04e42444 Bugfix: revivePropertiesFromJson always set observables 2020-11-04 23:57:37 +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
20b1e08c9b v2.0.0-rc3 2020-10-28 17:12:33 +01:00
djmaze
3eb6ab1ef7 Improved knockout observables management to prevent memory leaks 2020-10-26 12:54:03 +01:00
djmaze
b165a1de4f Added addComputables() to *Model 2020-10-25 14:14:14 +01:00
djmaze
d7a4639d6b Prevent memory leaks in *Model 2020-10-25 11:46:58 +01:00
djmaze
76c4f62186 Improved reviveFromJson() for *Model 2020-10-23 15:15:54 +02:00
djmaze
188a40b196 Basic JSON object properties revival now handled by AbstractModel
This will be better for future use of JSON.stringify() and JSON.parse()
For now the difference between the PHP JSON being PascalCase and the JS object properties being camelCase is handled by AbstractModel
2020-10-20 17:39: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
ddc866735c Drop unused sModelName 2020-10-18 19:19:45 +02:00
djmaze
cb2048f163 cleanup some code 2020-10-02 12:40:33 +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
3757324e32 Cleanup hash routing 2020-09-23 14:44:46 +02:00
djmaze
7ac8143f34 Cleanup knockout commands and replaced EventKeyCode with native KeyboardEvent.key 2020-09-17 17:47:35 +02:00
djmaze
28fb9a4cbd Move hideLoading into AbstractApp 2020-09-16 23:19:34 +02:00
djmaze
467f615713 Move Knoin routOff, routOn, routReload & setHash to rl.route.* 2020-09-16 20:35:29 +02:00
djmaze
03a40f3249 Remove unused AbstractBoot 2020-09-16 20:01:47 +02:00
djmaze
e1f1a3aa12 Embed boot.min.js and boot.min.css into index.html for fast response 2020-09-06 11:13:43 +02:00
djmaze
f2d194947d Merge Objects prototype extensions 2020-09-04 17:07:35 +02:00
djmaze
097fb4896d Bugfix: invalid settingsGet in dev/Stores/Admin/App.js
Cleanup login/logout location reloading
2020-09-04 14:36:24 +02:00
djmaze
b837013cfb Replaced dev/Common/ClientStorageDriver/* with webstorage polyfill
Cleanup some other code
2020-09-03 12:51:15 +02:00
djmaze
0e8bf13d5d Bugfix: the new endShowHide failed in Edge and mobile browsers
Cleanup bootstrap less files
2020-09-02 21:30:23 +02:00
djmaze
7135cc38fe Remove bootstrap Modal feature for improved transition effects (in future might use <dialog>) 2020-09-02 17:06:35 +02:00
djmaze
088945b636 v1.14.0-djmaze5 2020-08-31 16:33:40 +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
b0942a7ff7 Move popupVisibility to knoin 2020-08-23 21:51:26 +02:00
djmaze
3374a2d2d3 Put createCommandLegacy code in createCommand 2020-08-22 09:35:24 +02:00
djmaze
b8043cdc98 Remove unused bMobileDevice import 2020-08-22 01:09:50 +02:00
djmaze
d88855ebd9 Remove addHook/runHook system as it is never used 2020-08-22 01:04:15 +02:00
djmaze
996723a486 Removed: KnockoutJS 'hasFocus:' because HTML5 has autofocus=""
Knoin.js now searches for [autofocus] and handles it
2020-08-22 01:03:03 +02:00
djmaze
97a73c6639 Replace timeOutAction() with debounce
Replace delegateRun()
Revert my throttle/debounce setTimeout() to Function.prototype[throttle/debounce]
2020-08-18 20:24:17 +02:00
djmaze
9f1ea1a0fd Bugfix boostrap alerts.less was accidentally removed
Bugfix Date.fromNow('past'/'future') reversed
Replace Events[pub/sub]('interval.*') with setInterval()
Events[pub/sub] to native
Cleanup knockout extensions
Replaced momentToNode with proper HTML5 <time>
Cleanup Momentor
2020-08-14 20:35:39 +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
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
43c92a82e6 Underscore.js _.delay() to native setTimeout() 2020-07-22 20:28:25 +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
af136f46c4 _.bind(function, object) to function.bind(object) 2020-07-20 15:47:33 +02:00
djmaze
0b0747b8dc Upgraded some old JavaScript to ECMAScript 1.6
Removed some jQuery references
Added JavaScript Globals.$htmlCL for frequently used window.document.documentElement.classList
2020-07-15 14:25:51 +02:00