@mideind/netskrafl-react 2.0.0 → 2.1.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.
- package/dist/cjs/css/netskrafl.css +131 -3
- package/dist/cjs/index.js +502 -142
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/css/netskrafl.css +131 -3
- package/dist/esm/index.js +502 -142
- package/dist/esm/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -3206,22 +3206,27 @@ div.netskrafl-racktile {
|
|
|
3206
3206
|
0% {
|
|
3207
3207
|
color: white;
|
|
3208
3208
|
background-color: var(--cancel-button);
|
|
3209
|
+
border-color: var(--cancel-button);
|
|
3209
3210
|
}
|
|
3210
3211
|
45% {
|
|
3211
3212
|
color: white;
|
|
3212
3213
|
background-color: var(--cancel-button);
|
|
3214
|
+
border-color: var(--cancel-button);
|
|
3213
3215
|
}
|
|
3214
3216
|
50% {
|
|
3215
3217
|
color: black;
|
|
3216
3218
|
background-color: white;
|
|
3219
|
+
border-color: white;
|
|
3217
3220
|
}
|
|
3218
3221
|
95% {
|
|
3219
3222
|
color: black;
|
|
3220
3223
|
background-color: white;
|
|
3224
|
+
border-color: white;
|
|
3221
3225
|
}
|
|
3222
3226
|
100% {
|
|
3223
3227
|
color: white;
|
|
3224
3228
|
background-color: var(--cancel-button);
|
|
3229
|
+
border-color: var(--cancel-button);
|
|
3225
3230
|
}
|
|
3226
3231
|
}
|
|
3227
3232
|
|
|
@@ -3229,22 +3234,27 @@ div.netskrafl-racktile {
|
|
|
3229
3234
|
0% {
|
|
3230
3235
|
color: white;
|
|
3231
3236
|
background-color: var(--cancel-button);
|
|
3237
|
+
border-color: var(--cancel-button);
|
|
3232
3238
|
}
|
|
3233
3239
|
45% {
|
|
3234
3240
|
color: white;
|
|
3235
3241
|
background-color: var(--cancel-button);
|
|
3242
|
+
border-color: var(--cancel-button);
|
|
3236
3243
|
}
|
|
3237
3244
|
50% {
|
|
3238
3245
|
color: black;
|
|
3239
3246
|
background-color: white;
|
|
3247
|
+
border-color: white;
|
|
3240
3248
|
}
|
|
3241
3249
|
95% {
|
|
3242
3250
|
color: black;
|
|
3243
3251
|
background-color: white;
|
|
3252
|
+
border-color: white;
|
|
3244
3253
|
}
|
|
3245
3254
|
100% {
|
|
3246
3255
|
color: white;
|
|
3247
3256
|
background-color: var(--cancel-button);
|
|
3257
|
+
border-color: var(--cancel-button);
|
|
3248
3258
|
}
|
|
3249
3259
|
}
|
|
3250
3260
|
|
|
@@ -3252,22 +3262,27 @@ div.netskrafl-racktile {
|
|
|
3252
3262
|
0% {
|
|
3253
3263
|
color: white;
|
|
3254
3264
|
background-color: var(--cancel-button);
|
|
3265
|
+
border-color: var(--cancel-button);
|
|
3255
3266
|
}
|
|
3256
3267
|
45% {
|
|
3257
3268
|
color: white;
|
|
3258
3269
|
background-color: var(--cancel-button);
|
|
3270
|
+
border-color: var(--cancel-button);
|
|
3259
3271
|
}
|
|
3260
3272
|
50% {
|
|
3261
3273
|
color: var(--blank-tile);
|
|
3262
3274
|
background-color: white;
|
|
3275
|
+
border-color: white;
|
|
3263
3276
|
}
|
|
3264
3277
|
95% {
|
|
3265
3278
|
color: var(--blank-tile);
|
|
3266
3279
|
background-color: white;
|
|
3280
|
+
border-color: white;
|
|
3267
3281
|
}
|
|
3268
3282
|
100% {
|
|
3269
3283
|
color: white;
|
|
3270
3284
|
background-color: var(--cancel-button);
|
|
3285
|
+
border-color: var(--cancel-button);
|
|
3271
3286
|
}
|
|
3272
3287
|
}
|
|
3273
3288
|
|
|
@@ -3275,22 +3290,65 @@ div.netskrafl-racktile {
|
|
|
3275
3290
|
0% {
|
|
3276
3291
|
color: white;
|
|
3277
3292
|
background-color: var(--cancel-button);
|
|
3293
|
+
border-color: var(--cancel-button);
|
|
3278
3294
|
}
|
|
3279
3295
|
45% {
|
|
3280
3296
|
color: white;
|
|
3281
3297
|
background-color: var(--cancel-button);
|
|
3298
|
+
border-color: var(--cancel-button);
|
|
3282
3299
|
}
|
|
3283
3300
|
50% {
|
|
3284
3301
|
color: var(--blank-tile);
|
|
3285
3302
|
background-color: white;
|
|
3303
|
+
border-color: white;
|
|
3286
3304
|
}
|
|
3287
3305
|
95% {
|
|
3288
3306
|
color: var(--blank-tile);
|
|
3289
3307
|
background-color: white;
|
|
3308
|
+
border-color: white;
|
|
3290
3309
|
}
|
|
3291
3310
|
100% {
|
|
3292
3311
|
color: white;
|
|
3293
3312
|
background-color: var(--cancel-button);
|
|
3313
|
+
border-color: var(--cancel-button);
|
|
3314
|
+
}
|
|
3315
|
+
}
|
|
3316
|
+
|
|
3317
|
+
/* Text-only animation for tiles (background handled by parent td) */
|
|
3318
|
+
|
|
3319
|
+
@keyframes selBlinkText {
|
|
3320
|
+
0% {
|
|
3321
|
+
color: white;
|
|
3322
|
+
}
|
|
3323
|
+
45% {
|
|
3324
|
+
color: white;
|
|
3325
|
+
}
|
|
3326
|
+
50% {
|
|
3327
|
+
color: black;
|
|
3328
|
+
}
|
|
3329
|
+
95% {
|
|
3330
|
+
color: black;
|
|
3331
|
+
}
|
|
3332
|
+
100% {
|
|
3333
|
+
color: white;
|
|
3334
|
+
}
|
|
3335
|
+
}
|
|
3336
|
+
|
|
3337
|
+
@keyframes selBlankText {
|
|
3338
|
+
0% {
|
|
3339
|
+
color: white;
|
|
3340
|
+
}
|
|
3341
|
+
45% {
|
|
3342
|
+
color: white;
|
|
3343
|
+
}
|
|
3344
|
+
50% {
|
|
3345
|
+
color: var(--blank-tile);
|
|
3346
|
+
}
|
|
3347
|
+
95% {
|
|
3348
|
+
color: var(--blank-tile);
|
|
3349
|
+
}
|
|
3350
|
+
100% {
|
|
3351
|
+
color: white;
|
|
3294
3352
|
}
|
|
3295
3353
|
}
|
|
3296
3354
|
|
|
@@ -3367,19 +3425,83 @@ div.netskrafl-racktile {
|
|
|
3367
3425
|
}
|
|
3368
3426
|
|
|
3369
3427
|
.netskrafl-container div.sel {
|
|
3428
|
+
background-color: transparent;
|
|
3429
|
+
color: inherit;
|
|
3430
|
+
}
|
|
3431
|
+
|
|
3432
|
+
div.netskrafl-blanktile.sel {
|
|
3433
|
+
background-color: transparent;
|
|
3434
|
+
color: inherit;
|
|
3435
|
+
}
|
|
3436
|
+
|
|
3437
|
+
/* Make the parent td also blink when it contains a selected tile */
|
|
3438
|
+
|
|
3439
|
+
.netskrafl-container div.rack td:has(> div.sel),
|
|
3440
|
+
.netskrafl-container div.board td:has(> div.sel),
|
|
3441
|
+
.netskrafl-container table.board td:has(> div.sel) {
|
|
3370
3442
|
animation: selBlink 1.2s infinite;
|
|
3371
3443
|
-webkit-animation: selBlink 1.2s infinite;
|
|
3372
3444
|
}
|
|
3373
3445
|
|
|
3374
|
-
|
|
3375
|
-
|
|
3376
|
-
|
|
3446
|
+
/* Make the parent td match the background of an exchange-selected tile */
|
|
3447
|
+
|
|
3448
|
+
div.rack td:has(> div.netskrafl-xchgsel) {
|
|
3449
|
+
background-color: var(--human-color);
|
|
3450
|
+
border-color: var(--human-color);
|
|
3377
3451
|
}
|
|
3378
3452
|
|
|
3379
3453
|
.netskrafl-container td.sel {
|
|
3380
3454
|
outline: var(--cancel-button) solid 3px;
|
|
3381
3455
|
}
|
|
3382
3456
|
|
|
3457
|
+
/* Container focus styling - remove default outline */
|
|
3458
|
+
|
|
3459
|
+
.netskrafl-container:focus {
|
|
3460
|
+
outline: none;
|
|
3461
|
+
}
|
|
3462
|
+
|
|
3463
|
+
/* Keyboard tile placement target indicator */
|
|
3464
|
+
|
|
3465
|
+
.netskrafl-container td.keyboard-target {
|
|
3466
|
+
position: relative;
|
|
3467
|
+
background-color: rgba(102, 178, 102, 0.4); /* Light green highlight */
|
|
3468
|
+
}
|
|
3469
|
+
|
|
3470
|
+
.netskrafl-container td.keyboard-target::after {
|
|
3471
|
+
font-family: "Glyphicons Regular";
|
|
3472
|
+
content: "\E212"; /* right-arrow */
|
|
3473
|
+
position: absolute;
|
|
3474
|
+
top: calc(50% + 1px);
|
|
3475
|
+
left: 50%;
|
|
3476
|
+
transform: translate(-50%, -50%);
|
|
3477
|
+
font-size: 15px;
|
|
3478
|
+
color: var(--cancel-button);
|
|
3479
|
+
opacity: 0.8;
|
|
3480
|
+
animation: pulse 1.5s infinite;
|
|
3481
|
+
}
|
|
3482
|
+
|
|
3483
|
+
.netskrafl-container td.keyboard-target.vertical::after {
|
|
3484
|
+
content: "\E213"; /* down-arrow */
|
|
3485
|
+
}
|
|
3486
|
+
|
|
3487
|
+
@keyframes pulse {
|
|
3488
|
+
0% {
|
|
3489
|
+
opacity: 0.4;
|
|
3490
|
+
}
|
|
3491
|
+
25% {
|
|
3492
|
+
opacity: 0.8;
|
|
3493
|
+
}
|
|
3494
|
+
50% {
|
|
3495
|
+
opacity: 1;
|
|
3496
|
+
}
|
|
3497
|
+
75% {
|
|
3498
|
+
opacity: 0.8;
|
|
3499
|
+
}
|
|
3500
|
+
100% {
|
|
3501
|
+
opacity: 0.4;
|
|
3502
|
+
}
|
|
3503
|
+
}
|
|
3504
|
+
|
|
3383
3505
|
.netskrafl-container div.xchg {
|
|
3384
3506
|
cursor: pointer;
|
|
3385
3507
|
}
|
|
@@ -7585,6 +7707,12 @@ div.netskrafl-container input[type="checkbox"] {
|
|
|
7585
7707
|
overflow-y: hidden;
|
|
7586
7708
|
}
|
|
7587
7709
|
|
|
7710
|
+
/* Container focus styling - remove default outline */
|
|
7711
|
+
|
|
7712
|
+
.netskrafl-container:focus {
|
|
7713
|
+
outline: none;
|
|
7714
|
+
}
|
|
7715
|
+
|
|
7588
7716
|
.netskrafl-container div.gatadagsins-main {
|
|
7589
7717
|
display: flex;
|
|
7590
7718
|
position: relative;
|