tryton-sao 7.8.7 → 8.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/CHANGELOG +7 -32
  2. package/COPYRIGHT +6 -6
  3. package/Gruntfile.js +4 -4
  4. package/dist/tryton-sao.css +150 -159
  5. package/dist/tryton-sao.js +789 -515
  6. package/dist/tryton-sao.min.css +10525 -0
  7. package/index.html +16 -27
  8. package/locale/bg.json +1 -1
  9. package/locale/bg.po +32 -2
  10. package/locale/ca.json +1 -1
  11. package/locale/ca.po +34 -4
  12. package/locale/cs.json +1 -1
  13. package/locale/cs.po +32 -2
  14. package/locale/de.json +1 -1
  15. package/locale/de.po +35 -5
  16. package/locale/es.json +1 -1
  17. package/locale/es.po +35 -5
  18. package/locale/es_419.json +1 -1
  19. package/locale/es_419.po +36 -3
  20. package/locale/et.json +1 -1
  21. package/locale/et.po +35 -3
  22. package/locale/fa.json +1 -1
  23. package/locale/fa.po +35 -3
  24. package/locale/fi.json +1 -1
  25. package/locale/fi.po +32 -2
  26. package/locale/fr.json +1 -1
  27. package/locale/fr.po +34 -4
  28. package/locale/hu.json +1 -1
  29. package/locale/hu.po +35 -3
  30. package/locale/id.json +1 -1
  31. package/locale/id.po +32 -2
  32. package/locale/it.json +1 -1
  33. package/locale/it.po +35 -3
  34. package/locale/lo.json +1 -1
  35. package/locale/lo.po +36 -4
  36. package/locale/lt.json +1 -1
  37. package/locale/lt.po +34 -2
  38. package/locale/messages.pot +32 -2
  39. package/locale/nl.json +1 -1
  40. package/locale/nl.po +34 -4
  41. package/locale/pl.json +1 -1
  42. package/locale/pl.po +36 -3
  43. package/locale/pt.json +1 -1
  44. package/locale/pt.po +38 -5
  45. package/locale/ro.json +1 -1
  46. package/locale/ro.po +36 -3
  47. package/locale/ru.json +1 -1
  48. package/locale/ru.po +32 -2
  49. package/locale/sl.json +1 -1
  50. package/locale/sl.po +38 -5
  51. package/locale/tr.json +1 -1
  52. package/locale/tr.po +32 -2
  53. package/locale/uk.json +1 -1
  54. package/locale/uk.po +35 -3
  55. package/locale/zh_CN.json +1 -1
  56. package/locale/zh_CN.po +38 -5
  57. package/package.json +13 -5
  58. package/src/bus.js +0 -3
  59. package/src/chat.js +232 -59
  60. package/src/common.js +29 -20
  61. package/src/model.js +7 -8
  62. package/src/notification.js +108 -80
  63. package/src/rpc.js +2 -4
  64. package/src/sao-variables.less +3 -1
  65. package/src/sao.js +80 -40
  66. package/src/sao.less +108 -65
  67. package/src/screen.js +45 -25
  68. package/src/session.js +28 -51
  69. package/src/tab.js +31 -19
  70. package/src/view/form.js +117 -131
  71. package/src/view/graph.js +21 -21
  72. package/src/view/tree.js +85 -50
  73. package/src/window.js +3 -3
  74. package/tests/index.html +4 -4
  75. package/bower.json +0 -29
package/CHANGELOG CHANGED
@@ -1,38 +1,13 @@
1
1
 
2
- Version 7.8.7 - 2026-03-18
2
+ Version 8.0.0 - 2026-04-20
3
3
  --------------------------
4
4
  * Bug fixes (see mercurial logs for details)
5
-
6
-
7
- Version 7.8.6 - 2026-03-02
8
- --------------------------
9
- * Bug fixes (see mercurial logs for details)
10
-
11
-
12
- Version 7.8.5 - 2026-02-18
13
- --------------------------
14
- * Bug fixes (see mercurial logs for details)
15
-
16
-
17
- Version 7.8.4 - 2026-02-01
18
- --------------------------
19
- * Bug fixes (see mercurial logs for details)
20
-
21
-
22
- Version 7.8.3 - 2026-01-15
23
- --------------------------
24
- * Bug fixes (see mercurial logs for details)
25
-
26
-
27
- Version 7.8.2 - 2026-01-02
28
- --------------------------
29
- * Bug fixes (see mercurial logs for details)
30
-
31
-
32
- Version 7.8.1 - 2025-12-20
33
- --------------------------
34
- * Bug fixes (see mercurial logs for details)
35
-
5
+ * Use relative path for server requests
6
+ * Use cookie to store session
7
+ * Move the logout entry and add a help entry to the notification menu
8
+ * Add visual hint on widget of modified field
9
+ * Remove bower dependency
10
+ * Allow tabs to be reordered
36
11
 
37
12
  Version 7.8.0 - 2025-12-15
38
13
  --------------------------
package/COPYRIGHT CHANGED
@@ -1,10 +1,10 @@
1
- Copyright (C) 2012-2025 Nicolas Évrard.
2
- Copyright (C) 2012-2026 Cédric Krier.
3
- Copyright (C) 2012-2014 Bertrand Chenal.
4
- Copyright (C) 2012-2026 B2CK SPRL.
5
- Copyright (C) 2019 Jitbit.
1
+ Copyright (C) 2012-2026 Nicolas Évrard <nicolas.evrard@b2ck.com>
2
+ Copyright (C) 2012-2026 Cédric Krier <cedric.krier@b2ck.com>
3
+ Copyright (C) 2012-2014 Bertrand Chenal <bertrand.chenal@b2ck.com>
4
+ Copyright (C) 2012-2026 B2CK SRL
5
+ Copyright (C) 2019 Jitbit
6
6
  Copyright (C) 2013 Thomas Park
7
- Copyright (C) 2020-2021 Maxime Richez
7
+ Copyright (C) 2020-2021 Maxime Richez <maxime.richez@saluc.com>
8
8
  Copyright (C) 2020-2021 SALUC SA
9
9
 
10
10
  This program is free software: you can redistribute it and/or modify
package/Gruntfile.js CHANGED
@@ -30,10 +30,10 @@ module.exports = function(grunt) {
30
30
  ];
31
31
  var less_paths = [
32
32
  'src',
33
- 'bower_components',
34
- 'bower_components/bootstrap',
35
- 'bower_components/bootstrap/less',
36
- 'bower_components/bootstrap-rtl-ondemand/less',
33
+ 'node_modules',
34
+ 'node_modules/bootstrap',
35
+ 'node_modules/bootstrap/less',
36
+ 'node_modules/bootstrap-rtl-ondemand/less',
37
37
  ];
38
38
 
39
39
  // Project configuration.
@@ -258,8 +258,8 @@ th {
258
258
  }
259
259
  @font-face {
260
260
  font-family: "Glyphicons Halflings";
261
- src: url("../bower_components/bootstrap/fonts/glyphicons-halflings-regular.eot");
262
- src: url("../bower_components/bootstrap/fonts/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"), url("../bower_components/bootstrap/fonts/glyphicons-halflings-regular.woff2") format("woff2"), url("../bower_components/bootstrap/fonts/glyphicons-halflings-regular.woff") format("woff"), url("../bower_components/bootstrap/fonts/glyphicons-halflings-regular.ttf") format("truetype"), url("../bower_components/bootstrap/fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg");
261
+ src: url("../node_modules/bootstrap/fonts/glyphicons-halflings-regular.eot");
262
+ src: url("../node_modules/bootstrap/fonts/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"), url("../node_modules/bootstrap/fonts/glyphicons-halflings-regular.woff2") format("woff2"), url("../node_modules/bootstrap/fonts/glyphicons-halflings-regular.woff") format("woff"), url("../node_modules/bootstrap/fonts/glyphicons-halflings-regular.ttf") format("truetype"), url("../node_modules/bootstrap/fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg");
263
263
  }
264
264
  .glyphicon {
265
265
  position: relative;
@@ -5890,14 +5890,14 @@ button.list-group-item-danger.active:focus {
5890
5890
  font-size: 21px;
5891
5891
  font-weight: bold;
5892
5892
  line-height: 1;
5893
- color: #000;
5893
+ color: inherit;
5894
5894
  text-shadow: 0 1px 0 #fff;
5895
5895
  filter: alpha(opacity=20);
5896
5896
  opacity: 0.2;
5897
5897
  }
5898
5898
  .close:hover,
5899
5899
  .close:focus {
5900
- color: #000;
5900
+ color: inherit;
5901
5901
  text-decoration: none;
5902
5902
  cursor: pointer;
5903
5903
  filter: alpha(opacity=50);
@@ -6851,73 +6851,59 @@ html[dir="rtl"] {
6851
6851
  text-align: left;
6852
6852
  }
6853
6853
  [dir="rtl"] .col-xs-1,
6854
- [dir="rtl"] [dir="rtl"] .col-sm-1,
6855
- [dir="rtl"] [dir="rtl"] .col-md-1,
6856
- [dir="rtl"] [dir="rtl"] .col-lg-1,
6857
- [dir="rtl"] [dir="rtl"] [dir="rtl"] .col-xs-2,
6858
- [dir="rtl"] [dir="rtl"] .col-sm-2,
6859
- [dir="rtl"] [dir="rtl"] .col-md-2,
6860
- [dir="rtl"] [dir="rtl"] .col-lg-2,
6861
- [dir="rtl"] [dir="rtl"] [dir="rtl"] .col-xs-3,
6862
- [dir="rtl"] [dir="rtl"] .col-sm-3,
6863
- [dir="rtl"] [dir="rtl"] .col-md-3,
6864
- [dir="rtl"] [dir="rtl"] .col-lg-3,
6865
- [dir="rtl"] [dir="rtl"] [dir="rtl"] .col-xs-4,
6866
- [dir="rtl"] [dir="rtl"] .col-sm-4,
6867
- [dir="rtl"] [dir="rtl"] .col-md-4,
6868
- [dir="rtl"] [dir="rtl"] .col-lg-4,
6869
- [dir="rtl"] [dir="rtl"] [dir="rtl"] .col-xs-5,
6870
- [dir="rtl"] [dir="rtl"] .col-sm-5,
6871
- [dir="rtl"] [dir="rtl"] .col-md-5,
6872
- [dir="rtl"] [dir="rtl"] .col-lg-5,
6873
- [dir="rtl"] [dir="rtl"] [dir="rtl"] .col-xs-6,
6874
- [dir="rtl"] [dir="rtl"] .col-sm-6,
6875
- [dir="rtl"] [dir="rtl"] .col-md-6,
6876
- [dir="rtl"] [dir="rtl"] .col-lg-6,
6877
- [dir="rtl"] [dir="rtl"] [dir="rtl"] .col-xs-7,
6878
- [dir="rtl"] [dir="rtl"] .col-sm-7,
6879
- [dir="rtl"] [dir="rtl"] .col-md-7,
6880
- [dir="rtl"] [dir="rtl"] .col-lg-7,
6881
- [dir="rtl"] [dir="rtl"] [dir="rtl"] .col-xs-8,
6882
- [dir="rtl"] [dir="rtl"] .col-sm-8,
6883
- [dir="rtl"] [dir="rtl"] .col-md-8,
6884
- [dir="rtl"] [dir="rtl"] .col-lg-8,
6885
- [dir="rtl"] [dir="rtl"] [dir="rtl"] .col-xs-9,
6886
- [dir="rtl"] [dir="rtl"] .col-sm-9,
6887
- [dir="rtl"] [dir="rtl"] .col-md-9,
6888
- [dir="rtl"] [dir="rtl"] .col-lg-9,
6889
- [dir="rtl"] [dir="rtl"] [dir="rtl"] .col-xs-10,
6890
- [dir="rtl"] [dir="rtl"] .col-sm-10,
6891
- [dir="rtl"] [dir="rtl"] .col-md-10,
6892
- [dir="rtl"] [dir="rtl"] .col-lg-10,
6893
- [dir="rtl"] [dir="rtl"] [dir="rtl"] .col-xs-11,
6894
- [dir="rtl"] [dir="rtl"] .col-sm-11,
6895
- [dir="rtl"] [dir="rtl"] .col-md-11,
6896
- [dir="rtl"] [dir="rtl"] .col-lg-11,
6897
- [dir="rtl"] [dir="rtl"] [dir="rtl"] .col-xs-12,
6898
- [dir="rtl"] [dir="rtl"] .col-sm-12,
6899
- [dir="rtl"] [dir="rtl"] .col-md-12,
6900
- [dir="rtl"] [dir="rtl"] .col-lg-12 {
6854
+ [dir="rtl"] .col-sm-1,
6855
+ [dir="rtl"] .col-md-1,
6856
+ [dir="rtl"] .col-lg-1,
6857
+ [dir="rtl"] .col-xs-2,
6858
+ [dir="rtl"] .col-sm-2,
6859
+ [dir="rtl"] .col-md-2,
6860
+ [dir="rtl"] .col-lg-2,
6861
+ [dir="rtl"] .col-xs-3,
6862
+ [dir="rtl"] .col-sm-3,
6863
+ [dir="rtl"] .col-md-3,
6864
+ [dir="rtl"] .col-lg-3,
6865
+ [dir="rtl"] .col-xs-4,
6866
+ [dir="rtl"] .col-sm-4,
6867
+ [dir="rtl"] .col-md-4,
6868
+ [dir="rtl"] .col-lg-4,
6869
+ [dir="rtl"] .col-xs-5,
6870
+ [dir="rtl"] .col-sm-5,
6871
+ [dir="rtl"] .col-md-5,
6872
+ [dir="rtl"] .col-lg-5,
6873
+ [dir="rtl"] .col-xs-6,
6874
+ [dir="rtl"] .col-sm-6,
6875
+ [dir="rtl"] .col-md-6,
6876
+ [dir="rtl"] .col-lg-6,
6877
+ [dir="rtl"] .col-xs-7,
6878
+ [dir="rtl"] .col-sm-7,
6879
+ [dir="rtl"] .col-md-7,
6880
+ [dir="rtl"] .col-lg-7,
6881
+ [dir="rtl"] .col-xs-8,
6882
+ [dir="rtl"] .col-sm-8,
6883
+ [dir="rtl"] .col-md-8,
6884
+ [dir="rtl"] .col-lg-8,
6885
+ [dir="rtl"] .col-xs-9,
6886
+ [dir="rtl"] .col-sm-9,
6887
+ [dir="rtl"] .col-md-9,
6888
+ [dir="rtl"] .col-lg-9,
6889
+ [dir="rtl"] .col-xs-10,
6890
+ [dir="rtl"] .col-sm-10,
6891
+ [dir="rtl"] .col-md-10,
6892
+ [dir="rtl"] .col-lg-10,
6893
+ [dir="rtl"] .col-xs-11,
6894
+ [dir="rtl"] .col-sm-11,
6895
+ [dir="rtl"] .col-md-11,
6896
+ [dir="rtl"] .col-lg-11,
6897
+ [dir="rtl"] .col-xs-12,
6898
+ [dir="rtl"] .col-sm-12,
6899
+ [dir="rtl"] .col-md-12,
6900
+ [dir="rtl"] .col-lg-12 {
6901
6901
  position: relative;
6902
6902
  min-height: 1px;
6903
6903
  padding-left: 15px;
6904
6904
  padding-right: 15px;
6905
6905
  }
6906
6906
  [dir="rtl"] .col-xs-1,
6907
- [dir="rtl"] [dir="rtl"] .col-xs-2,
6908
- [dir="rtl"] [dir="rtl"] .col-xs-3,
6909
- [dir="rtl"] [dir="rtl"] .col-xs-4,
6910
- [dir="rtl"] [dir="rtl"] .col-xs-5,
6911
- [dir="rtl"] [dir="rtl"] .col-xs-6,
6912
- [dir="rtl"] [dir="rtl"] .col-xs-7,
6913
- [dir="rtl"] [dir="rtl"] .col-xs-8,
6914
- [dir="rtl"] [dir="rtl"] .col-xs-9,
6915
- [dir="rtl"] [dir="rtl"] .col-xs-10,
6916
- [dir="rtl"] [dir="rtl"] .col-xs-11,
6917
- [dir="rtl"] [dir="rtl"] .col-xs-12 {
6918
- float: right;
6919
- }
6920
- [dir="rtl"] .col-xs-1,
6921
6907
  [dir="rtl"] .col-xs-2,
6922
6908
  [dir="rtl"] .col-xs-3,
6923
6909
  [dir="rtl"] .col-xs-4,
@@ -7124,20 +7110,6 @@ html[dir="rtl"] {
7124
7110
  margin-left: 0;
7125
7111
  }
7126
7112
  @media (min-width: 768px) {
7127
- [dir="rtl"] .col-sm-1,
7128
- [dir="rtl"] [dir="rtl"] .col-sm-2,
7129
- [dir="rtl"] [dir="rtl"] .col-sm-3,
7130
- [dir="rtl"] [dir="rtl"] .col-sm-4,
7131
- [dir="rtl"] [dir="rtl"] .col-sm-5,
7132
- [dir="rtl"] [dir="rtl"] .col-sm-6,
7133
- [dir="rtl"] [dir="rtl"] .col-sm-7,
7134
- [dir="rtl"] [dir="rtl"] .col-sm-8,
7135
- [dir="rtl"] [dir="rtl"] .col-sm-9,
7136
- [dir="rtl"] [dir="rtl"] .col-sm-10,
7137
- [dir="rtl"] [dir="rtl"] .col-sm-11,
7138
- [dir="rtl"] [dir="rtl"] .col-sm-12 {
7139
- float: right;
7140
- }
7141
7113
  [dir="rtl"] .col-sm-1,
7142
7114
  [dir="rtl"] .col-sm-2,
7143
7115
  [dir="rtl"] .col-sm-3,
@@ -7346,20 +7318,6 @@ html[dir="rtl"] {
7346
7318
  }
7347
7319
  }
7348
7320
  @media (min-width: 992px) {
7349
- [dir="rtl"] .col-md-1,
7350
- [dir="rtl"] [dir="rtl"] .col-md-2,
7351
- [dir="rtl"] [dir="rtl"] .col-md-3,
7352
- [dir="rtl"] [dir="rtl"] .col-md-4,
7353
- [dir="rtl"] [dir="rtl"] .col-md-5,
7354
- [dir="rtl"] [dir="rtl"] .col-md-6,
7355
- [dir="rtl"] [dir="rtl"] .col-md-7,
7356
- [dir="rtl"] [dir="rtl"] .col-md-8,
7357
- [dir="rtl"] [dir="rtl"] .col-md-9,
7358
- [dir="rtl"] [dir="rtl"] .col-md-10,
7359
- [dir="rtl"] [dir="rtl"] .col-md-11,
7360
- [dir="rtl"] [dir="rtl"] .col-md-12 {
7361
- float: right;
7362
- }
7363
7321
  [dir="rtl"] .col-md-1,
7364
7322
  [dir="rtl"] .col-md-2,
7365
7323
  [dir="rtl"] .col-md-3,
@@ -7568,20 +7526,6 @@ html[dir="rtl"] {
7568
7526
  }
7569
7527
  }
7570
7528
  @media (min-width: 1200px) {
7571
- [dir="rtl"] .col-lg-1,
7572
- [dir="rtl"] [dir="rtl"] .col-lg-2,
7573
- [dir="rtl"] [dir="rtl"] .col-lg-3,
7574
- [dir="rtl"] [dir="rtl"] .col-lg-4,
7575
- [dir="rtl"] [dir="rtl"] .col-lg-5,
7576
- [dir="rtl"] [dir="rtl"] .col-lg-6,
7577
- [dir="rtl"] [dir="rtl"] .col-lg-7,
7578
- [dir="rtl"] [dir="rtl"] .col-lg-8,
7579
- [dir="rtl"] [dir="rtl"] .col-lg-9,
7580
- [dir="rtl"] [dir="rtl"] .col-lg-10,
7581
- [dir="rtl"] [dir="rtl"] .col-lg-11,
7582
- [dir="rtl"] [dir="rtl"] .col-lg-12 {
7583
- float: right;
7584
- }
7585
7529
  [dir="rtl"] .col-lg-1,
7586
7530
  [dir="rtl"] .col-lg-2,
7587
7531
  [dir="rtl"] .col-lg-3,
@@ -9216,20 +9160,6 @@ html[theme="default"] .carousel-caption h6 {
9216
9160
  right: 0px;
9217
9161
  top: -5px;
9218
9162
  }
9219
- .navbar-inverse .close {
9220
- color: #6dd1d4;
9221
- }
9222
- .navbar-inverse .close:hover,
9223
- .navbar-inverse .close:focus {
9224
- color: #fff;
9225
- background-color: transparent;
9226
- }
9227
- .navbar-inverse .active .close,
9228
- .navbar-inverse .active .close:hover,
9229
- .navbar-inverse .active .close:focus {
9230
- color: #fff;
9231
- background-color: #1a585b;
9232
- }
9233
9163
  .navbar .icon {
9234
9164
  display: inline-block;
9235
9165
  height: 1.42857143em;
@@ -9273,6 +9203,7 @@ html[theme="default"] .carousel-caption h6 {
9273
9203
  .dropdown-completion .dropdown-action .action a {
9274
9204
  clear: both;
9275
9205
  display: block;
9206
+ padding: 3px 0px;
9276
9207
  }
9277
9208
  #tablist {
9278
9209
  display: flex;
@@ -9341,7 +9272,7 @@ html[theme="default"] .carousel-caption h6 {
9341
9272
  max-width: 170px;
9342
9273
  }
9343
9274
  }
9344
- @media screen and (max-width: 767px) {
9275
+ @media screen and (max-width: 991px) {
9345
9276
  #menu,
9346
9277
  #tabs {
9347
9278
  padding-left: 0;
@@ -9385,7 +9316,7 @@ html[theme="default"] .carousel-caption h6 {
9385
9316
  }
9386
9317
  @media (max-width: 991px) {
9387
9318
  #menu {
9388
- width: 100%;
9319
+ width: 100% !important;
9389
9320
  }
9390
9321
  }
9391
9322
  [dir="rtl"] #menu {
@@ -9597,6 +9528,33 @@ html[theme="default"] .carousel-caption h6 {
9597
9528
  padding-left: 5px;
9598
9529
  padding-right: 5px;
9599
9530
  }
9531
+ .chat .btn-toolbar {
9532
+ display: flex;
9533
+ }
9534
+ .chat .btn-toolbar .input-group {
9535
+ flex: 1;
9536
+ }
9537
+ .chat .btn-toolbar .input-group .img-circle {
9538
+ height: 2em;
9539
+ margin-inline-end: 1ex;
9540
+ }
9541
+ .chat .btn-toolbar ul.dropdown-menu {
9542
+ width: 20em;
9543
+ }
9544
+ .chat .btn-toolbar ul.dropdown-menu div {
9545
+ display: flex;
9546
+ margin: 1ex;
9547
+ gap: 5px;
9548
+ }
9549
+ .chat .btn-toolbar ul.dropdown-menu div img {
9550
+ align-self: center;
9551
+ width: 32px;
9552
+ height: 32px;
9553
+ }
9554
+ .chat .btn-toolbar ul.dropdown-menu div span {
9555
+ flex: 1;
9556
+ align-self: center;
9557
+ }
9600
9558
  .chat .chat-messages-outer {
9601
9559
  display: flex;
9602
9560
  flex-direction: column;
@@ -9611,6 +9569,14 @@ html[theme="default"] .carousel-caption h6 {
9611
9569
  .chat .chat-message {
9612
9570
  margin-top: 5px;
9613
9571
  }
9572
+ .chat .chat-message.system-message {
9573
+ align-items: center;
9574
+ color: #777777;
9575
+ display: flex;
9576
+ font-size: small;
9577
+ justify-content: center;
9578
+ padding: 0 2ex;
9579
+ }
9614
9580
  .chat .chat-content {
9615
9581
  white-space: pre-wrap;
9616
9582
  word-wrap: break-word;
@@ -9971,10 +9937,6 @@ img.icon {
9971
9937
  .treeview > table.tree {
9972
9938
  width: 100%;
9973
9939
  table-layout: fixed;
9974
- border: 1px solid transparent;
9975
- }
9976
- .treeview > table.tree.table-bordered {
9977
- border-color: #ddd;
9978
9940
  }
9979
9941
  .treeview > table.tree col.selection-state,
9980
9942
  .treeview > table.tree col.favorite,
@@ -10005,26 +9967,35 @@ img.icon {
10005
9967
  padding: 5px;
10006
9968
  text-align: center;
10007
9969
  }
10008
- .treeview > table.tree > thead > tr > th > label {
10009
- display: inline-block;
9970
+ .treeview > table.tree > thead > tr > th.sortable {
9971
+ cursor: pointer;
9972
+ }
9973
+ .treeview > table.tree > thead > tr > th > div {
9974
+ display: flex;
9975
+ overflow: hidden;
9976
+ }
9977
+ .treeview > table.tree > thead > tr > th > div > label {
9978
+ margin: 0;
10010
9979
  overflow: hidden;
10011
9980
  text-overflow: ellipsis;
10012
9981
  white-space: nowrap;
10013
- margin: 0;
10014
- }
10015
- .treeview > table.tree > thead > tr > th > label.sortable {
10016
- cursor: pointer;
9982
+ width: 100%;
10017
9983
  }
10018
9984
  .treeview > table.tree > thead > tr > th > div.resizer {
10019
- z-index: 1;
9985
+ background-color: #ddd;
9986
+ cursor: ew-resize;
9987
+ height: 100%;
9988
+ inset-inline-end: -5px;
9989
+ opacity: 0;
9990
+ padding: 0 4px;
10020
9991
  position: absolute;
10021
9992
  top: 0;
10022
- inset-inline-end: -5px;
9993
+ transition: opacity 0.2s;
10023
9994
  width: 2px;
10024
- height: 100%;
10025
- cursor: ew-resize;
10026
- padding: 0 4px;
10027
- background-color: transparent;
9995
+ z-index: 1;
9996
+ }
9997
+ .treeview > table.tree > thead > tr > th > div.resizer:hover {
9998
+ opacity: 1;
10028
9999
  }
10029
10000
  .treeview > table.tree > thead > tr > th.tree-menu {
10030
10001
  cursor: pointer;
@@ -10057,14 +10028,19 @@ img.icon {
10057
10028
  position: sticky;
10058
10029
  top: 0;
10059
10030
  z-index: 100;
10031
+ box-shadow: inset 0 1px 0 #ddd, inset 0 -1px 0 #ddd;
10060
10032
  }
10061
10033
  .treeview > table.tree > thead > tr:first-child th {
10062
- border: 1px solid transparent;
10063
10034
  border-bottom: 2px solid #ddd;
10064
10035
  }
10065
10036
  .treeview > table.tree > thead > tr:first-child:hover th {
10066
- border: 1px solid #ddd;
10067
- border-bottom-width: 2px;
10037
+ box-shadow: inset 1px 0 0 #ddd, inset -1px 0 0 #ddd;
10038
+ }
10039
+ .treeview > table.tree.table-bordered > thead > tr:first-child th {
10040
+ box-shadow: inset 0.5px 0 0 #ddd, inset -0.5px 0 0 #ddd;
10041
+ }
10042
+ .treeview > table.tree.resizing td:not(:last-child) {
10043
+ border-right: 2px dashed #ddd;
10068
10044
  }
10069
10045
  .treeview > table.tree > tfoot > tr {
10070
10046
  background-color: #fff;
@@ -10231,21 +10207,6 @@ img.icon {
10231
10207
  padding-top: 0;
10232
10208
  padding-bottom: 0;
10233
10209
  }
10234
- .treeview > table.table-bordered {
10235
- border: 1px solid #ddd;
10236
- }
10237
- .treeview > table.table-bordered > thead > tr:first-child > th,
10238
- .treeview > table.table-bordered > tbody > tr:first-child > th,
10239
- .treeview > table.table-bordered > tfoot > tr:first-child > th,
10240
- .treeview > table.table-bordered > thead > tr:first-child > td,
10241
- .treeview > table.table-bordered > tbody > tr:first-child > td,
10242
- .treeview > table.table-bordered > tfoot > tr:first-child > td {
10243
- border: 1px solid #ddd;
10244
- }
10245
- .treeview > table.table-bordered > thead > tr:first-child > th,
10246
- .treeview > table.table-bordered > thead > tr:first-child > td {
10247
- border-bottom-width: 2px;
10248
- }
10249
10210
  .form,
10250
10211
  .board {
10251
10212
  width: 100%;
@@ -10260,13 +10221,43 @@ img.icon {
10260
10221
  display: grid;
10261
10222
  width: 100%;
10262
10223
  height: 100%;
10263
- column-gap: 5px;
10264
- row-gap: 5px;
10224
+ column-gap: 0;
10225
+ row-gap: 0;
10226
+ margin-left: -5px;
10227
+ }
10228
+ .form .form-container > *,
10229
+ .board .form-container > *,
10230
+ .form .form-hcontainer > *,
10231
+ .board .form-hcontainer > *,
10232
+ .form .form-vcontainer > *,
10233
+ .board .form-vcontainer > * {
10234
+ padding-left: 5px;
10235
+ }
10236
+ .form .form-container > * + *,
10237
+ .board .form-container > * + *,
10238
+ .form .form-hcontainer > * + *,
10239
+ .board .form-hcontainer > * + *,
10240
+ .form .form-vcontainer > * + *,
10241
+ .board .form-vcontainer > * + * {
10242
+ margin-top: 5px;
10243
+ margin-left: 5px;
10244
+ }
10245
+ .form .form-hcontainer > * + *,
10246
+ .board .form-hcontainer > * + * {
10247
+ margin-top: 0;
10248
+ }
10249
+ .form .form-vcontainer > * + *,
10250
+ .board .form-vcontainer > * + * {
10251
+ margin-left: 0;
10265
10252
  }
10266
10253
  .form .form-item,
10267
10254
  .board .form-item {
10268
10255
  display: flex;
10269
10256
  }
10257
+ .form .form-item.empty,
10258
+ .board .form-item.empty {
10259
+ display: none;
10260
+ }
10270
10261
  .form .form-item > .btn,
10271
10262
  .board .form-item > .btn {
10272
10263
  margin: 5px 0;