@mideind/netskrafl-react 3.2.2 → 3.2.4

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.
@@ -808,6 +808,10 @@ div.netskrafl-container.legacy-colors div.at-top-left div.tilecount {
808
808
  background-color: #babab2;
809
809
  }
810
810
 
811
+ div.netskrafl-container.legacy-colors div.at-top-left div.tilecount.trans {
812
+ background-color: transparent;
813
+ }
814
+
811
815
  /* Challenge dialog header */
812
816
 
813
817
  div.netskrafl-container.legacy-colors div.chall-hdr h2 {
@@ -2321,18 +2325,6 @@ div.netskrafl-tile.dragging div.letterscore {
2321
2325
  }
2322
2326
  }
2323
2327
 
2324
- @-webkit-keyframes expand {
2325
- 0% {
2326
- transform: scale(1);
2327
- }
2328
- 40% {
2329
- transform: scale(1.05);
2330
- }
2331
- 100% {
2332
- transform: scale(1);
2333
- }
2334
- }
2335
-
2336
2328
  @keyframes slidein {
2337
2329
  0% {
2338
2330
  transform: scale(0);
@@ -2342,15 +2334,6 @@ div.netskrafl-tile.dragging div.letterscore {
2342
2334
  }
2343
2335
  }
2344
2336
 
2345
- @-webkit-keyframes slidein {
2346
- 0% {
2347
- transform: scale(0);
2348
- }
2349
- 100% {
2350
- transform: scale(1);
2351
- }
2352
- }
2353
-
2354
2337
  .netskrafl-container div.login-btn-large {
2355
2338
  text-align: center;
2356
2339
  font-size: 19px;
@@ -2507,7 +2490,6 @@ div.netskrafl-tile.dragging div.letterscore {
2507
2490
  .netskrafl-container div.right-tab.chat-alert > span.glyphicon {
2508
2491
  color: var(--cancel-button);
2509
2492
  animation: redBlink 1s infinite;
2510
- -webkit-animation: redBlink 1s infinite;
2511
2493
  }
2512
2494
 
2513
2495
  .netskrafl-container div.right-area {
@@ -2892,21 +2874,6 @@ div.netskrafl-tile.dragging div.letterscore {
2892
2874
  }
2893
2875
  }
2894
2876
 
2895
- @-webkit-keyframes colorPulseMobile {
2896
- 0% {
2897
- transform: scale(1);
2898
- }
2899
- 40% {
2900
- transform: scale(1.3);
2901
- }
2902
- 60% {
2903
- transform: scale(1.3);
2904
- }
2905
- 100% {
2906
- transform: scale(1);
2907
- }
2908
- }
2909
-
2910
2877
  .netskrafl-container span.score-mobile {
2911
2878
  display: inline-block;
2912
2879
  font-weight: 400;
@@ -2916,7 +2883,6 @@ div.netskrafl-tile.dragging div.letterscore {
2916
2883
 
2917
2884
  .netskrafl-container div.submitmove#move-mobile.word-great span.score-mobile {
2918
2885
  animation: colorPulseMobile 1.5s infinite;
2919
- -webkit-animation: colorPulseMobile 1.5s infinite;
2920
2886
  }
2921
2887
 
2922
2888
  .netskrafl-container div.submitmove#move-mobile span.glyphicon {
@@ -3754,128 +3720,6 @@ div.netskrafl-racktile {
3754
3720
  }
3755
3721
  }
3756
3722
 
3757
- @-webkit-keyframes selBlink {
3758
- 0% {
3759
- color: white;
3760
- background-color: var(--cancel-button);
3761
- border-color: var(--cancel-button);
3762
- }
3763
- 45% {
3764
- color: white;
3765
- background-color: var(--cancel-button);
3766
- border-color: var(--cancel-button);
3767
- }
3768
- 50% {
3769
- color: black;
3770
- background-color: white;
3771
- border-color: white;
3772
- }
3773
- 95% {
3774
- color: black;
3775
- background-color: white;
3776
- border-color: white;
3777
- }
3778
- 100% {
3779
- color: white;
3780
- background-color: var(--cancel-button);
3781
- border-color: var(--cancel-button);
3782
- }
3783
- }
3784
-
3785
- @keyframes selBlank {
3786
- 0% {
3787
- color: white;
3788
- background-color: var(--cancel-button);
3789
- border-color: var(--cancel-button);
3790
- }
3791
- 45% {
3792
- color: white;
3793
- background-color: var(--cancel-button);
3794
- border-color: var(--cancel-button);
3795
- }
3796
- 50% {
3797
- color: var(--blank-tile);
3798
- background-color: white;
3799
- border-color: white;
3800
- }
3801
- 95% {
3802
- color: var(--blank-tile);
3803
- background-color: white;
3804
- border-color: white;
3805
- }
3806
- 100% {
3807
- color: white;
3808
- background-color: var(--cancel-button);
3809
- border-color: var(--cancel-button);
3810
- }
3811
- }
3812
-
3813
- @-webkit-keyframes selBlank {
3814
- 0% {
3815
- color: white;
3816
- background-color: var(--cancel-button);
3817
- border-color: var(--cancel-button);
3818
- }
3819
- 45% {
3820
- color: white;
3821
- background-color: var(--cancel-button);
3822
- border-color: var(--cancel-button);
3823
- }
3824
- 50% {
3825
- color: var(--blank-tile);
3826
- background-color: white;
3827
- border-color: white;
3828
- }
3829
- 95% {
3830
- color: var(--blank-tile);
3831
- background-color: white;
3832
- border-color: white;
3833
- }
3834
- 100% {
3835
- color: white;
3836
- background-color: var(--cancel-button);
3837
- border-color: var(--cancel-button);
3838
- }
3839
- }
3840
-
3841
- /* Text-only animation for tiles (background handled by parent td) */
3842
-
3843
- @keyframes selBlinkText {
3844
- 0% {
3845
- color: white;
3846
- }
3847
- 45% {
3848
- color: white;
3849
- }
3850
- 50% {
3851
- color: black;
3852
- }
3853
- 95% {
3854
- color: black;
3855
- }
3856
- 100% {
3857
- color: white;
3858
- }
3859
- }
3860
-
3861
- @keyframes selBlankText {
3862
- 0% {
3863
- color: white;
3864
- }
3865
- 45% {
3866
- color: white;
3867
- }
3868
- 50% {
3869
- color: var(--blank-tile);
3870
- }
3871
- 95% {
3872
- color: var(--blank-tile);
3873
- }
3874
- 100% {
3875
- color: white;
3876
- }
3877
- }
3878
-
3879
3723
  @keyframes redBlink {
3880
3724
  0% {
3881
3725
  opacity: 1;
@@ -3894,24 +3738,6 @@ div.netskrafl-racktile {
3894
3738
  }
3895
3739
  }
3896
3740
 
3897
- @-webkit-keyframes redBlink {
3898
- 0% {
3899
- opacity: 1;
3900
- }
3901
- 30% {
3902
- opacity: 1;
3903
- }
3904
- 50% {
3905
- opacity: 0;
3906
- }
3907
- 70% {
3908
- opacity: 1;
3909
- }
3910
- 100% {
3911
- opacity: 1;
3912
- }
3913
- }
3914
-
3915
3741
  @keyframes opacityBlink {
3916
3742
  0% {
3917
3743
  opacity: 1;
@@ -3930,24 +3756,6 @@ div.netskrafl-racktile {
3930
3756
  }
3931
3757
  }
3932
3758
 
3933
- @-webkit-keyframes opacityBlink {
3934
- 0% {
3935
- opacity: 1;
3936
- }
3937
- 25% {
3938
- opacity: 1;
3939
- }
3940
- 75% {
3941
- opacity: 1;
3942
- }
3943
- 80% {
3944
- opacity: 0.1;
3945
- }
3946
- 100% {
3947
- opacity: 0.1;
3948
- }
3949
- }
3950
-
3951
3759
  .netskrafl-container div.sel {
3952
3760
  background-color: transparent;
3953
3761
  color: inherit;
@@ -3964,7 +3772,6 @@ div.netskrafl-blanktile.sel {
3964
3772
  .netskrafl-container div.board td:has(> div.sel),
3965
3773
  .netskrafl-container table.board td:has(> div.sel) {
3966
3774
  animation: selBlink 1.2s infinite;
3967
- -webkit-animation: selBlink 1.2s infinite;
3968
3775
  }
3969
3776
 
3970
3777
  /* Make the parent td match the background of an exchange-selected tile */
@@ -4052,15 +3859,6 @@ div.netskrafl-xchgsel {
4052
3859
  }
4053
3860
  }
4054
3861
 
4055
- @-webkit-keyframes fresh-appear {
4056
- 0% {
4057
- opacity: 0;
4058
- }
4059
- 100% {
4060
- opacity: 1;
4061
- }
4062
- }
4063
-
4064
3862
  div.netskrafl-freshtile {
4065
3863
  color: white;
4066
3864
  background-color: var(--autoplayer-color);
@@ -4069,10 +3867,6 @@ div.netskrafl-freshtile {
4069
3867
  animation-duration: 100ms;
4070
3868
  animation-delay: 0s;
4071
3869
  animation-fill-mode: forwards;
4072
- -webkit-animation-name: fresh-appear;
4073
- -webkit-animation-duration: 100ms;
4074
- -webkit-animation-delay: 0s;
4075
- -webkit-animation-fill-mode: forwards;
4076
3870
  }
4077
3871
 
4078
3872
  .netskrafl-container div.highlight0 {
@@ -4662,26 +4456,8 @@ div.highlight1.netskrafl-blanktile {
4662
4456
  }
4663
4457
  }
4664
4458
 
4665
- @-webkit-keyframes colorPulse {
4666
- 0% {
4667
- color: var(--ok-button);
4668
- }
4669
- 40% {
4670
- color: var(--cancel-button);
4671
- transform: scale(1.05);
4672
- }
4673
- 60% {
4674
- color: var(--cancel-button);
4675
- transform: scale(1.05);
4676
- }
4677
- 100% {
4678
- color: var(--ok-button);
4679
- }
4680
- }
4681
-
4682
4459
  .netskrafl-container div.score.word-great {
4683
4460
  animation: colorPulse 1.5s infinite;
4684
- -webkit-animation: colorPulse 1.5s infinite;
4685
4461
  border-color: var(--ok-button);
4686
4462
  }
4687
4463
 
@@ -5971,12 +5747,10 @@ div.highlight1.netskrafl-blanktile {
5971
5747
 
5972
5748
  .netskrafl-container .blink {
5973
5749
  animation: opacityBlink 1s infinite;
5974
- -webkit-animation: opacityBlink 1s infinite;
5975
5750
  }
5976
5751
 
5977
5752
  .netskrafl-container .opp-ready {
5978
5753
  animation: opacityBlink 1s infinite;
5979
- -webkit-animation: opacityBlink 1s infinite;
5980
5754
  }
5981
5755
 
5982
5756
  .netskrafl-container a.opp-ready:link,
@@ -7081,6 +6855,12 @@ div.netskrafl-container input[type="checkbox"] {
7081
6855
  padding: 0;
7082
6856
  margin: 0;
7083
6857
  }
6858
+ div.blank-rack div.netskrafl-tile {
6859
+ /* Blank dialog tiles have the letter as a direct text child
6860
+ (no .tileletter wrapper), so restore visible font metrics */
6861
+ font-size: 24px;
6862
+ line-height: 32px;
6863
+ }
7084
6864
  div.rack div.netskrafl-tile .tileletter {
7085
6865
  font-size: 24px;
7086
6866
  line-height: 32px;
@@ -8276,6 +8056,50 @@ div.netskrafl-container input[type="checkbox"] {
8276
8056
  }
8277
8057
  }
8278
8058
 
8059
+ /* Disable blinking/flashing animations for users who prefer reduced motion */
8060
+
8061
+ @media (prefers-reduced-motion: reduce) {
8062
+ .netskrafl-container .blinking {
8063
+ animation: none;
8064
+ }
8065
+ .netskrafl-container table.board td.center:empty::before {
8066
+ animation: none;
8067
+ }
8068
+ .netskrafl-container td.keyboard-target::after {
8069
+ animation: none;
8070
+ opacity: 0.8;
8071
+ }
8072
+ .netskrafl-container div.rack td:has(> div.sel),
8073
+ .netskrafl-container div.board td:has(> div.sel),
8074
+ .netskrafl-container table.board td:has(> div.sel) {
8075
+ animation: none;
8076
+ background-color: var(--cancel-button);
8077
+ border-color: var(--cancel-button);
8078
+ color: white;
8079
+ }
8080
+ .netskrafl-container .blink {
8081
+ animation: none;
8082
+ }
8083
+ .netskrafl-container .opp-ready {
8084
+ animation: none;
8085
+ }
8086
+ .netskrafl-container div.right-tab.chat-alert > span.glyphicon {
8087
+ animation: none;
8088
+ }
8089
+ .netskrafl-container div.opp-turn.flashing {
8090
+ animation: none;
8091
+ }
8092
+ .netskrafl-container div.score.word-great {
8093
+ animation: none;
8094
+ }
8095
+ .netskrafl-container div.submitmove#move-mobile.word-great span.score-mobile {
8096
+ animation: none;
8097
+ }
8098
+ .netskrafl-container div.animated-netskrafl-logo {
8099
+ animation: none;
8100
+ }
8101
+ }
8102
+
8279
8103
  /* ================= GÁTA DAGSINS STYLES =============== */
8280
8104
 
8281
8105
  /* Mobile styles for Gáta Dagsins */
@@ -10259,3 +10083,11 @@ div.gatadagsins-board-area.celebrate div.netskrafl-tile.netskrafl-racktile {
10259
10083
  flex: 1;
10260
10084
  }
10261
10085
  }
10086
+
10087
+ /* Disable blinking/flashing animations for users who prefer reduced motion */
10088
+
10089
+ @media (prefers-reduced-motion: reduce) {
10090
+ .netskrafl-container .thermometer-current-score.this-player .thermometer-current-circle {
10091
+ animation: none;
10092
+ }
10093
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mideind/netskrafl-react",
3
- "version": "3.2.2",
3
+ "version": "3.2.4",
4
4
  "description": "React UI for Netskrafl",
5
5
  "repository": {
6
6
  "type": "git",