react-pdf-highlighter-plus 1.0.4 → 1.0.6

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.
@@ -1,1221 +0,0 @@
1
- /* src/style/PdfHighlighter.css */
2
- .PdfHighlighter {
3
- position: absolute;
4
- overflow: auto;
5
- width: 100%;
6
- height: 100%;
7
- background-color: #333;
8
- }
9
- .PdfHighlighter::-webkit-scrollbar {
10
- width: 10px;
11
- height: 10px;
12
- }
13
- .PdfHighlighter::-webkit-scrollbar-thumb {
14
- background-color: #9f9f9f;
15
- border-radius: 5px;
16
- }
17
- .PdfHighlighter::-webkit-scrollbar-thumb:hover {
18
- background-color: #d1d1d1;
19
- }
20
- .PdfHighlighter::-webkit-scrollbar-track {
21
- background-color: #2c2c2c;
22
- border-radius: 5px;
23
- }
24
- .PdfHighlighter::-webkit-scrollbar-track-piece {
25
- background-color: #2c2c2c;
26
- }
27
- .PdfHighlighter__tip-container {
28
- z-index: 6;
29
- position: absolute;
30
- }
31
- .PdfHighlighter--disable-selection {
32
- -webkit-user-select: none;
33
- -moz-user-select: none;
34
- user-select: none;
35
- pointer-events: none;
36
- }
37
- .PdfHighlighter--freetext-mode {
38
- cursor: crosshair;
39
- }
40
- .PdfHighlighter--freetext-mode .pdfViewer,
41
- .PdfHighlighter--freetext-mode .textLayer {
42
- cursor: crosshair;
43
- }
44
- .PdfHighlighter--image-mode {
45
- cursor: crosshair;
46
- }
47
- .PdfHighlighter--image-mode .pdfViewer,
48
- .PdfHighlighter--image-mode .textLayer {
49
- cursor: crosshair;
50
- }
51
- .PdfHighlighter--drawing-mode {
52
- cursor: crosshair;
53
- }
54
- .PdfHighlighter--drawing-mode .pdfViewer,
55
- .PdfHighlighter--drawing-mode .textLayer {
56
- cursor: crosshair;
57
- }
58
- .PdfHighlighter--area-mode {
59
- cursor: crosshair;
60
- }
61
- .PdfHighlighter--area-mode .pdfViewer,
62
- .PdfHighlighter--area-mode .textLayer {
63
- cursor: crosshair;
64
- }
65
-
66
- /* src/style/pdf_viewer.css */
67
- .textLayer {
68
- z-index: 2;
69
- opacity: 1;
70
- mix-blend-mode: multiply;
71
- display: flex;
72
- }
73
- .annotationLayer {
74
- position: absolute;
75
- top: 0;
76
- z-index: 3;
77
- }
78
- html body .textLayer > div:not(.PdfHighlighter__highlight-layer):not(.TextHighlight):not(.TextHighlight-icon) {
79
- opacity: 1;
80
- mix-blend-mode: multiply;
81
- }
82
- .textLayer ::-moz-selection {
83
- mix-blend-mode: multiply;
84
- }
85
- .textLayer ::selection {
86
- mix-blend-mode: multiply;
87
- }
88
- @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
89
- .textLayer {
90
- opacity: 0.5;
91
- }
92
- }
93
- @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
94
- .textLayer {
95
- opacity: 0.5;
96
- }
97
- }
98
- @supports (-ms-ime-align:auto) {
99
- .textLayer {
100
- opacity: 0.5;
101
- }
102
- }
103
-
104
- /* src/style/DrawingCanvas.css */
105
- .DrawingCanvas {
106
- position: absolute;
107
- top: 0;
108
- left: 0;
109
- z-index: 5;
110
- cursor: crosshair;
111
- touch-action: none;
112
- }
113
- .DrawingCanvas__controls {
114
- position: fixed;
115
- bottom: 20px;
116
- left: 50%;
117
- transform: translateX(-50%);
118
- display: flex;
119
- gap: 10px;
120
- padding: 10px 20px;
121
- background-color: rgba(43, 46, 51, 0.95);
122
- border-radius: 8px;
123
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
124
- z-index: 10;
125
- }
126
- .DrawingCanvas__controls button {
127
- padding: 8px 16px;
128
- border: none;
129
- border-radius: 4px;
130
- cursor: pointer;
131
- font-size: 14px;
132
- transition: background-color 0.2s, transform 0.1s;
133
- }
134
- .DrawingCanvas__controls button:hover {
135
- transform: scale(1.02);
136
- }
137
- .DrawingCanvas__doneButton {
138
- background-color: #4CAF50;
139
- color: white;
140
- }
141
- .DrawingCanvas__doneButton:hover {
142
- background-color: #45a049;
143
- }
144
- .DrawingCanvas__cancelButton {
145
- background-color: #f44336;
146
- color: white;
147
- }
148
- .DrawingCanvas__cancelButton:hover {
149
- background-color: #da190b;
150
- }
151
- .DrawingCanvas__clearButton {
152
- background-color: #ff9800;
153
- color: white;
154
- }
155
- .DrawingCanvas__clearButton:hover {
156
- background-color: #e68a00;
157
- }
158
-
159
- /* src/style/MouseSelection.css */
160
- .MouseSelection {
161
- position: absolute;
162
- border: 1px dashed #333;
163
- background: rgba(153, 193, 218, 255);
164
- mix-blend-mode: multiply;
165
- }
166
- @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
167
- .MouseSelection {
168
- opacity: 0.5;
169
- }
170
- }
171
- @supports (-ms-ime-align:auto) {
172
- .MouseSelection {
173
- opacity: 0.5;
174
- }
175
- }
176
-
177
- /* src/style/ShapeCanvas.css */
178
- .ShapeCanvas {
179
- position: fixed;
180
- top: 0;
181
- left: 0;
182
- width: 100%;
183
- height: 100%;
184
- cursor: crosshair;
185
- z-index: 1000;
186
- background: rgba(0, 0, 0, 0.1);
187
- }
188
- .ShapeCanvas__controls {
189
- position: fixed;
190
- bottom: 20px;
191
- left: 50%;
192
- transform: translateX(-50%);
193
- display: flex;
194
- flex-direction: column;
195
- align-items: center;
196
- gap: 12px;
197
- z-index: 1002;
198
- }
199
- .ShapeCanvas__hint {
200
- background: rgba(0, 0, 0, 0.8);
201
- color: white;
202
- padding: 8px 16px;
203
- border-radius: 6px;
204
- font-size: 14px;
205
- white-space: nowrap;
206
- }
207
- .ShapeCanvas__cancelButton {
208
- padding: 8px 20px;
209
- background: #f44336;
210
- color: white;
211
- border: none;
212
- border-radius: 4px;
213
- cursor: pointer;
214
- font-size: 14px;
215
- font-weight: 500;
216
- transition: background 0.2s;
217
- }
218
- .ShapeCanvas__cancelButton:hover {
219
- background: #d32f2f;
220
- }
221
-
222
- /* src/style/TextHighlight.css */
223
- .TextHighlight {
224
- position: absolute;
225
- }
226
- .TextHighlight__parts {
227
- opacity: 1;
228
- }
229
- .TextHighlight__part {
230
- cursor: pointer;
231
- position: absolute;
232
- background: rgba(255, 226, 143, 1);
233
- transition: background 0.3s;
234
- }
235
- .TextHighlight--scrolledTo .TextHighlight__part {
236
- background: #ff4141;
237
- }
238
- .TextHighlight__toolbar-wrapper {
239
- z-index: 10;
240
- }
241
- .TextHighlight__toolbar {
242
- display: flex;
243
- align-items: center;
244
- gap: 4px;
245
- padding: 2px 4px;
246
- background: rgba(0, 0, 0, 0.7);
247
- border-radius: 4px;
248
- opacity: 0;
249
- pointer-events: none;
250
- transition: opacity 0.2s ease;
251
- }
252
- .TextHighlight__toolbar--visible {
253
- opacity: 1;
254
- pointer-events: auto;
255
- }
256
- .TextHighlight__style-button,
257
- .TextHighlight__delete-button {
258
- display: flex;
259
- align-items: center;
260
- justify-content: center;
261
- width: 20px;
262
- height: 20px;
263
- border: none;
264
- background: transparent;
265
- cursor: pointer;
266
- color: white;
267
- border-radius: 3px;
268
- padding: 0;
269
- transition: background 0.2s;
270
- }
271
- .TextHighlight__style-button:hover {
272
- background: rgba(255, 255, 255, 0.2);
273
- }
274
- .TextHighlight__delete-button:hover {
275
- background: rgba(255, 100, 100, 0.6);
276
- }
277
- .TextHighlight__style-panel {
278
- margin-top: 4px;
279
- background: rgba(0, 0, 0, 0.9);
280
- border-radius: 6px;
281
- padding: 8px;
282
- min-width: 180px;
283
- box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
284
- }
285
- .TextHighlight__style-row {
286
- display: flex;
287
- align-items: center;
288
- justify-content: space-between;
289
- margin-bottom: 8px;
290
- }
291
- .TextHighlight__style-row:last-child {
292
- margin-bottom: 0;
293
- }
294
- .TextHighlight__style-row label {
295
- color: #ccc;
296
- font-size: 11px;
297
- text-transform: uppercase;
298
- letter-spacing: 0.5px;
299
- margin-right: 8px;
300
- }
301
- .TextHighlight__style-buttons {
302
- display: flex;
303
- gap: 4px;
304
- }
305
- .TextHighlight__style-type-button {
306
- display: flex;
307
- align-items: center;
308
- justify-content: center;
309
- width: 28px;
310
- height: 28px;
311
- padding: 0;
312
- background: transparent;
313
- border: 1px solid #666;
314
- border-radius: 4px;
315
- cursor: pointer;
316
- color: #f5f5f5;
317
- transition: all 0.2s;
318
- }
319
- .TextHighlight__style-type-button:hover {
320
- border-color: #b958ff;
321
- }
322
- .TextHighlight__style-type-button.active {
323
- color: #b958ff;
324
- border-color: #b958ff;
325
- background: rgba(185, 88, 255, 0.2);
326
- }
327
- .TextHighlight__color-options {
328
- display: flex;
329
- align-items: center;
330
- gap: 6px;
331
- }
332
- .TextHighlight__color-presets {
333
- display: flex;
334
- gap: 4px;
335
- }
336
- .TextHighlight__color-preset {
337
- width: 18px;
338
- height: 18px;
339
- border: 2px solid transparent;
340
- border-radius: 50%;
341
- cursor: pointer;
342
- transition: transform 0.2s, border-color 0.2s;
343
- padding: 0;
344
- }
345
- .TextHighlight__color-preset:hover {
346
- transform: scale(1.15);
347
- }
348
- .TextHighlight__color-preset.active {
349
- border-color: #b958ff;
350
- }
351
- .TextHighlight__color-options input[type=color] {
352
- width: 24px;
353
- height: 24px;
354
- padding: 0;
355
- border: none;
356
- border-radius: 4px;
357
- cursor: pointer;
358
- background: transparent;
359
- }
360
- .TextHighlight__color-options input[type=color]::-webkit-color-swatch-wrapper {
361
- padding: 0;
362
- }
363
- .TextHighlight__color-options input[type=color]::-webkit-color-swatch {
364
- border: 1px solid #666;
365
- border-radius: 4px;
366
- }
367
- .TextHighlight__part--underline {
368
- background: transparent !important;
369
- border-bottom: 2px solid currentColor;
370
- }
371
- .TextHighlight__part.TextHighlight__part--strikethrough {
372
- background: transparent !important;
373
- overflow: visible;
374
- }
375
- .TextHighlight__part.TextHighlight__part--strikethrough::after {
376
- content: "";
377
- position: absolute;
378
- left: 0;
379
- right: 0;
380
- top: 50%;
381
- height: 2px;
382
- background-color: currentColor;
383
- transform: translateY(-50%);
384
- pointer-events: none;
385
- z-index: 1;
386
- }
387
-
388
- /* src/style/AreaHighlight.css */
389
- .AreaHighlight {
390
- position: absolute;
391
- }
392
- .AreaHighlight__part {
393
- cursor: pointer;
394
- position: absolute;
395
- background: rgba(255, 226, 143, 1);
396
- transition: background 0.3s;
397
- }
398
- .AreaHighlight--scrolledTo .AreaHighlight__part {
399
- background: #ff4141;
400
- }
401
- .AreaHighlight__toolbar-wrapper {
402
- z-index: 10;
403
- }
404
- .AreaHighlight__toolbar {
405
- display: flex;
406
- align-items: center;
407
- gap: 4px;
408
- padding: 2px 4px;
409
- background: rgba(0, 0, 0, 0.7);
410
- border-radius: 4px;
411
- opacity: 0;
412
- pointer-events: none;
413
- transition: opacity 0.2s ease;
414
- }
415
- .AreaHighlight__toolbar--visible {
416
- opacity: 1;
417
- pointer-events: auto;
418
- }
419
- .AreaHighlight__style-button,
420
- .AreaHighlight__delete-button {
421
- display: flex;
422
- align-items: center;
423
- justify-content: center;
424
- width: 20px;
425
- height: 20px;
426
- border: none;
427
- background: transparent;
428
- cursor: pointer;
429
- color: white;
430
- border-radius: 3px;
431
- padding: 0;
432
- transition: background 0.2s;
433
- }
434
- .AreaHighlight__style-button:hover {
435
- background: rgba(255, 255, 255, 0.2);
436
- }
437
- .AreaHighlight__delete-button:hover {
438
- background: rgba(255, 100, 100, 0.6);
439
- }
440
- .AreaHighlight__style-panel {
441
- margin-top: 4px;
442
- background: rgba(0, 0, 0, 0.9);
443
- border-radius: 6px;
444
- padding: 8px;
445
- min-width: 160px;
446
- box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
447
- }
448
- .AreaHighlight__style-row {
449
- display: flex;
450
- align-items: center;
451
- justify-content: space-between;
452
- }
453
- .AreaHighlight__style-row label {
454
- color: #ccc;
455
- font-size: 11px;
456
- text-transform: uppercase;
457
- letter-spacing: 0.5px;
458
- margin-right: 8px;
459
- }
460
- .AreaHighlight__color-options {
461
- display: flex;
462
- align-items: center;
463
- gap: 6px;
464
- }
465
- .AreaHighlight__color-presets {
466
- display: flex;
467
- gap: 4px;
468
- }
469
- .AreaHighlight__color-preset {
470
- width: 18px;
471
- height: 18px;
472
- border: 2px solid transparent;
473
- border-radius: 50%;
474
- cursor: pointer;
475
- transition: transform 0.2s, border-color 0.2s;
476
- padding: 0;
477
- }
478
- .AreaHighlight__color-preset:hover {
479
- transform: scale(1.15);
480
- }
481
- .AreaHighlight__color-preset.active {
482
- border-color: #b958ff;
483
- }
484
- .AreaHighlight__color-options input[type=color] {
485
- width: 24px;
486
- height: 24px;
487
- padding: 0;
488
- border: none;
489
- border-radius: 4px;
490
- cursor: pointer;
491
- background: transparent;
492
- }
493
- .AreaHighlight__color-options input[type=color]::-webkit-color-swatch-wrapper {
494
- padding: 0;
495
- }
496
- .AreaHighlight__color-options input[type=color]::-webkit-color-swatch {
497
- border: 1px solid #666;
498
- border-radius: 4px;
499
- }
500
-
501
- /* src/style/FreetextHighlight.css */
502
- .FreetextHighlight {
503
- position: absolute;
504
- }
505
- .FreetextHighlight__container {
506
- display: flex;
507
- flex-direction: column;
508
- width: 100%;
509
- height: 100%;
510
- border-radius: 4px;
511
- box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.2);
512
- overflow: visible;
513
- transition: box-shadow 0.2s ease;
514
- }
515
- .FreetextHighlight__container:hover {
516
- box-shadow: 2px 2px 12px rgba(0, 0, 0, 0.3);
517
- }
518
- .FreetextHighlight__toolbar {
519
- display: flex;
520
- align-items: center;
521
- gap: 4px;
522
- padding: 2px 4px;
523
- background: rgba(0, 0, 0, 0.6);
524
- border-radius: 4px;
525
- position: absolute;
526
- top: 4px;
527
- left: 4px;
528
- z-index: 10;
529
- opacity: 0;
530
- transition: opacity 0.2s ease;
531
- }
532
- .FreetextHighlight__container:hover .FreetextHighlight__toolbar {
533
- opacity: 1;
534
- }
535
- .FreetextHighlight__drag-handle {
536
- display: flex;
537
- align-items: center;
538
- justify-content: center;
539
- width: 20px;
540
- height: 20px;
541
- cursor: grab;
542
- -webkit-user-select: none;
543
- -moz-user-select: none;
544
- user-select: none;
545
- color: white;
546
- border-radius: 3px;
547
- transition: background 0.2s;
548
- }
549
- .FreetextHighlight__drag-handle:hover {
550
- background: rgba(255, 255, 255, 0.2);
551
- }
552
- .FreetextHighlight__drag-handle:active {
553
- cursor: grabbing;
554
- }
555
- .FreetextHighlight__edit-button {
556
- display: flex;
557
- align-items: center;
558
- justify-content: center;
559
- width: 20px;
560
- height: 20px;
561
- border: none;
562
- background: transparent;
563
- cursor: pointer;
564
- color: white;
565
- border-radius: 3px;
566
- padding: 0;
567
- transition: background 0.2s;
568
- }
569
- .FreetextHighlight__edit-button:hover {
570
- background: rgba(255, 255, 255, 0.2);
571
- }
572
- .FreetextHighlight__content {
573
- flex: 1;
574
- padding: 8px;
575
- overflow: hidden;
576
- position: relative;
577
- z-index: 1;
578
- }
579
- .FreetextHighlight__text {
580
- width: 100%;
581
- height: 100%;
582
- cursor: text;
583
- overflow: auto;
584
- word-wrap: break-word;
585
- white-space: pre-wrap;
586
- }
587
- .FreetextHighlight__input {
588
- width: 100%;
589
- height: 100%;
590
- border: none;
591
- background: transparent;
592
- font: inherit;
593
- color: inherit;
594
- resize: none;
595
- outline: none;
596
- padding: 0;
597
- margin: 0;
598
- }
599
- .FreetextHighlight--scrolledTo .FreetextHighlight__container {
600
- box-shadow: 0 0 0 3px #ff4141, 2px 2px 8px rgba(0, 0, 0, 0.2);
601
- }
602
- .FreetextHighlight--editing .FreetextHighlight__container {
603
- box-shadow: 0 0 0 2px #4a90d9, 2px 2px 8px rgba(0, 0, 0, 0.2);
604
- }
605
- .FreetextHighlight__style-button {
606
- display: flex;
607
- align-items: center;
608
- justify-content: center;
609
- width: 20px;
610
- height: 20px;
611
- border: none;
612
- background: transparent;
613
- cursor: pointer;
614
- color: white;
615
- border-radius: 3px;
616
- padding: 0;
617
- transition: background 0.2s;
618
- }
619
- .FreetextHighlight__style-button:hover {
620
- background: rgba(255, 255, 255, 0.2);
621
- }
622
- .FreetextHighlight__style-panel {
623
- position: absolute;
624
- top: 100%;
625
- left: 0;
626
- right: 0;
627
- background: white;
628
- border: 1px solid rgba(0, 0, 0, 0.15);
629
- border-radius: 4px;
630
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
631
- padding: 8px;
632
- z-index: 9999;
633
- margin-top: 2px;
634
- }
635
- .FreetextHighlight__style-row {
636
- display: flex;
637
- flex-direction: column;
638
- align-items: flex-start;
639
- gap: 4px;
640
- margin-bottom: 8px;
641
- }
642
- .FreetextHighlight__style-row:last-child {
643
- margin-bottom: 0;
644
- }
645
- .FreetextHighlight__style-row label {
646
- font-size: 11px;
647
- color: #555;
648
- white-space: nowrap;
649
- }
650
- .FreetextHighlight__style-row input[type=color] {
651
- width: 28px;
652
- height: 24px;
653
- border: 1px solid rgba(0, 0, 0, 0.15);
654
- border-radius: 3px;
655
- padding: 0;
656
- cursor: pointer;
657
- }
658
- .FreetextHighlight__style-row select {
659
- padding: 4px 6px;
660
- font-size: 11px;
661
- border: 1px solid rgba(0, 0, 0, 0.15);
662
- border-radius: 3px;
663
- background: white;
664
- cursor: pointer;
665
- min-width: 80px;
666
- }
667
- .FreetextHighlight__color-options {
668
- display: flex;
669
- align-items: center;
670
- gap: 6px;
671
- flex-wrap: wrap;
672
- width: 100%;
673
- }
674
- .FreetextHighlight__color-presets {
675
- display: flex;
676
- gap: 4px;
677
- flex-wrap: wrap;
678
- }
679
- .FreetextHighlight__color-preset {
680
- width: 20px;
681
- height: 20px;
682
- border: 2px solid rgba(0, 0, 0, 0.15);
683
- border-radius: 3px;
684
- cursor: pointer;
685
- padding: 0;
686
- transition: transform 0.15s, border-color 0.15s;
687
- }
688
- .FreetextHighlight__color-preset:hover {
689
- transform: scale(1.15);
690
- border-color: rgba(0, 0, 0, 0.3);
691
- }
692
- .FreetextHighlight__color-preset.active {
693
- border-color: #333;
694
- box-shadow: 0 0 0 1px white, 0 0 0 2px #333;
695
- }
696
- .FreetextHighlight__color-preset--transparent {
697
- background:
698
- linear-gradient(
699
- 45deg,
700
- #ccc 25%,
701
- transparent 25%),
702
- linear-gradient(
703
- -45deg,
704
- #ccc 25%,
705
- transparent 25%),
706
- linear-gradient(
707
- 45deg,
708
- transparent 75%,
709
- #ccc 75%),
710
- linear-gradient(
711
- -45deg,
712
- transparent 75%,
713
- #ccc 75%);
714
- background-size: 8px 8px;
715
- background-position:
716
- 0 0,
717
- 0 4px,
718
- 4px -4px,
719
- -4px 0px;
720
- background-color: white;
721
- }
722
- .FreetextHighlight__delete-button {
723
- display: flex;
724
- align-items: center;
725
- justify-content: center;
726
- width: 20px;
727
- height: 20px;
728
- border: none;
729
- background: transparent;
730
- cursor: pointer;
731
- color: white;
732
- border-radius: 3px;
733
- padding: 0;
734
- transition: background 0.2s;
735
- }
736
- .FreetextHighlight__delete-button:hover {
737
- background: rgba(255, 100, 100, 0.6);
738
- }
739
-
740
- /* src/style/ImageHighlight.css */
741
- .ImageHighlight {
742
- position: absolute;
743
- }
744
- .ImageHighlight__container {
745
- width: 100%;
746
- height: 100%;
747
- display: flex;
748
- flex-direction: column;
749
- border-radius: 4px;
750
- overflow: visible;
751
- transition: box-shadow 0.2s ease;
752
- }
753
- .ImageHighlight__container:hover {
754
- box-shadow: 2px 2px 12px rgba(0, 0, 0, 0.3);
755
- }
756
- .ImageHighlight__toolbar {
757
- display: flex;
758
- align-items: center;
759
- gap: 4px;
760
- padding: 2px 4px;
761
- background: rgba(0, 0, 0, 0.6);
762
- border-radius: 4px;
763
- position: absolute;
764
- top: 4px;
765
- left: 4px;
766
- z-index: 10;
767
- opacity: 0;
768
- transition: opacity 0.2s ease;
769
- }
770
- .ImageHighlight__container:hover .ImageHighlight__toolbar {
771
- opacity: 1;
772
- }
773
- .ImageHighlight__drag-handle {
774
- display: flex;
775
- align-items: center;
776
- justify-content: center;
777
- width: 20px;
778
- height: 20px;
779
- cursor: grab;
780
- color: white;
781
- border-radius: 3px;
782
- transition: background 0.2s;
783
- }
784
- .ImageHighlight__drag-handle:hover {
785
- background: rgba(255, 255, 255, 0.2);
786
- }
787
- .ImageHighlight__drag-handle:active {
788
- cursor: grabbing;
789
- }
790
- .ImageHighlight__content {
791
- flex: 1;
792
- display: flex;
793
- align-items: center;
794
- justify-content: center;
795
- background: white;
796
- overflow: hidden;
797
- border-radius: 4px;
798
- }
799
- .ImageHighlight__image {
800
- width: 100%;
801
- height: 100%;
802
- -o-object-fit: fill;
803
- object-fit: fill;
804
- pointer-events: none;
805
- -webkit-user-select: none;
806
- -moz-user-select: none;
807
- user-select: none;
808
- }
809
- .ImageHighlight--scrolledTo .ImageHighlight__container {
810
- box-shadow: 0 0 0 3px #ff4141, 2px 2px 8px rgba(0, 0, 0, 0.2);
811
- }
812
- .ImageHighlight__delete-button {
813
- display: flex;
814
- align-items: center;
815
- justify-content: center;
816
- width: 20px;
817
- height: 20px;
818
- border: none;
819
- background: transparent;
820
- cursor: pointer;
821
- color: white;
822
- border-radius: 3px;
823
- padding: 0;
824
- transition: background 0.2s;
825
- }
826
- .ImageHighlight__delete-button:hover {
827
- background: rgba(255, 100, 100, 0.6);
828
- }
829
-
830
- /* src/style/SignaturePad.css */
831
- .SignaturePad__overlay {
832
- position: fixed;
833
- top: 0;
834
- left: 0;
835
- right: 0;
836
- bottom: 0;
837
- background: rgba(0, 0, 0, 0.5);
838
- display: flex;
839
- align-items: center;
840
- justify-content: center;
841
- z-index: 10000;
842
- }
843
- .SignaturePad__modal {
844
- background: white;
845
- border-radius: 8px;
846
- padding: 16px;
847
- box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
848
- }
849
- .SignaturePad__title {
850
- margin: 0 0 12px 0;
851
- font-size: 16px;
852
- font-weight: 600;
853
- color: #333;
854
- }
855
- .SignaturePad__canvas {
856
- display: block;
857
- border: 1px solid #ccc;
858
- border-radius: 4px;
859
- cursor: crosshair;
860
- touch-action: none;
861
- background: white;
862
- }
863
- .SignaturePad__buttons {
864
- display: flex;
865
- gap: 8px;
866
- margin-top: 12px;
867
- justify-content: flex-end;
868
- }
869
- .SignaturePad__button {
870
- padding: 8px 16px;
871
- font-size: 14px;
872
- border-radius: 4px;
873
- cursor: pointer;
874
- transition: background-color 0.2s, border-color 0.2s;
875
- }
876
- .SignaturePad__button--clear {
877
- background: white;
878
- border: 1px solid #ccc;
879
- color: #666;
880
- }
881
- .SignaturePad__button--clear:hover {
882
- background: #f5f5f5;
883
- border-color: #999;
884
- }
885
- .SignaturePad__button--cancel {
886
- background: white;
887
- border: 1px solid #ccc;
888
- color: #666;
889
- }
890
- .SignaturePad__button--cancel:hover {
891
- background: #f5f5f5;
892
- border-color: #999;
893
- }
894
- .SignaturePad__button--done {
895
- background: #2196f3;
896
- border: 1px solid #2196f3;
897
- color: white;
898
- }
899
- .SignaturePad__button--done:hover {
900
- background: #1976d2;
901
- border-color: #1976d2;
902
- }
903
-
904
- /* src/style/DrawingHighlight.css */
905
- .DrawingHighlight {
906
- position: absolute;
907
- }
908
- .DrawingHighlight__container {
909
- width: 100%;
910
- height: 100%;
911
- display: flex;
912
- flex-direction: column;
913
- border-radius: 4px;
914
- overflow: visible;
915
- transition: box-shadow 0.2s ease;
916
- }
917
- .DrawingHighlight__container:hover {
918
- box-shadow: 2px 2px 12px rgba(0, 0, 0, 0.3);
919
- }
920
- .DrawingHighlight__toolbar {
921
- display: flex;
922
- align-items: center;
923
- gap: 4px;
924
- padding: 2px 4px;
925
- background: rgba(0, 0, 0, 0.6);
926
- border-radius: 4px;
927
- position: absolute;
928
- top: 4px;
929
- left: 4px;
930
- z-index: 10;
931
- opacity: 0;
932
- transition: opacity 0.2s ease;
933
- }
934
- .DrawingHighlight__container:hover .DrawingHighlight__toolbar {
935
- opacity: 1;
936
- }
937
- .DrawingHighlight__drag-handle {
938
- display: flex;
939
- align-items: center;
940
- justify-content: center;
941
- width: 20px;
942
- height: 20px;
943
- cursor: grab;
944
- color: white;
945
- border-radius: 3px;
946
- transition: background 0.2s;
947
- }
948
- .DrawingHighlight__drag-handle:hover {
949
- background: rgba(255, 255, 255, 0.2);
950
- }
951
- .DrawingHighlight__drag-handle:active {
952
- cursor: grabbing;
953
- }
954
- .DrawingHighlight__content {
955
- flex: 1;
956
- display: flex;
957
- align-items: center;
958
- justify-content: center;
959
- overflow: hidden;
960
- border-radius: 4px;
961
- background: transparent;
962
- }
963
- .DrawingHighlight__image {
964
- max-width: 100%;
965
- max-height: 100%;
966
- -o-object-fit: contain;
967
- object-fit: contain;
968
- pointer-events: none;
969
- -webkit-user-select: none;
970
- -moz-user-select: none;
971
- user-select: none;
972
- }
973
- .DrawingHighlight--scrolledTo .DrawingHighlight__container {
974
- box-shadow: 0 0 0 3px #ff4141, 2px 2px 8px rgba(0, 0, 0, 0.2);
975
- }
976
- .DrawingHighlight__style-button {
977
- display: flex;
978
- align-items: center;
979
- justify-content: center;
980
- width: 20px;
981
- height: 20px;
982
- padding: 0;
983
- background: transparent;
984
- border: none;
985
- cursor: pointer;
986
- color: white;
987
- border-radius: 3px;
988
- transition: background 0.2s;
989
- }
990
- .DrawingHighlight__style-button:hover {
991
- background: rgba(255, 255, 255, 0.2);
992
- }
993
- .DrawingHighlight__style-controls {
994
- position: absolute;
995
- top: 28px;
996
- left: 4px;
997
- background: rgba(0, 0, 0, 0.85);
998
- border-radius: 6px;
999
- padding: 8px;
1000
- z-index: 20;
1001
- display: flex;
1002
- flex-direction: column;
1003
- gap: 8px;
1004
- min-width: 120px;
1005
- box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
1006
- }
1007
- .DrawingHighlight__color-picker {
1008
- display: flex;
1009
- gap: 4px;
1010
- flex-wrap: wrap;
1011
- }
1012
- .DrawingHighlight__color-button {
1013
- width: 20px;
1014
- height: 20px;
1015
- border: 2px solid transparent;
1016
- border-radius: 50%;
1017
- cursor: pointer;
1018
- transition: transform 0.2s, border-color 0.2s;
1019
- padding: 0;
1020
- }
1021
- .DrawingHighlight__color-button:hover {
1022
- transform: scale(1.15);
1023
- }
1024
- .DrawingHighlight__color-button.active {
1025
- border-color: #b958ff;
1026
- }
1027
- .DrawingHighlight__width-picker {
1028
- display: flex;
1029
- gap: 4px;
1030
- }
1031
- .DrawingHighlight__width-button {
1032
- background: transparent;
1033
- color: #f5f5f5;
1034
- border: 1px solid #666;
1035
- border-radius: 4px;
1036
- cursor: pointer;
1037
- font-size: 10px;
1038
- padding: 2px 6px;
1039
- transition:
1040
- color 0.2s,
1041
- border-color 0.2s,
1042
- background-color 0.2s;
1043
- }
1044
- .DrawingHighlight__width-button:hover {
1045
- border-color: #b958ff;
1046
- }
1047
- .DrawingHighlight__width-button.active {
1048
- color: #b958ff;
1049
- border-color: #b958ff;
1050
- background-color: rgba(185, 88, 255, 0.2);
1051
- }
1052
- .DrawingHighlight__delete-button {
1053
- display: flex;
1054
- align-items: center;
1055
- justify-content: center;
1056
- width: 20px;
1057
- height: 20px;
1058
- border: none;
1059
- background: transparent;
1060
- cursor: pointer;
1061
- color: white;
1062
- border-radius: 3px;
1063
- padding: 0;
1064
- transition: background 0.2s;
1065
- }
1066
- .DrawingHighlight__delete-button:hover {
1067
- background: rgba(255, 100, 100, 0.6);
1068
- }
1069
-
1070
- /* src/style/ShapeHighlight.css */
1071
- .ShapeHighlight {
1072
- position: absolute;
1073
- }
1074
- .ShapeHighlight__rnd {
1075
- cursor: move;
1076
- }
1077
- .ShapeHighlight__container {
1078
- width: 100%;
1079
- height: 100%;
1080
- position: relative;
1081
- }
1082
- .ShapeHighlight__svg {
1083
- width: 100%;
1084
- height: 100%;
1085
- display: block;
1086
- }
1087
- .ShapeHighlight--scrolledTo .ShapeHighlight__svg rect,
1088
- .ShapeHighlight--scrolledTo .ShapeHighlight__svg ellipse,
1089
- .ShapeHighlight--scrolledTo .ShapeHighlight__svg line {
1090
- stroke: #ff4141 !important;
1091
- }
1092
- .ShapeHighlight--scrolledTo .ShapeHighlight__svg polygon {
1093
- fill: #ff4141 !important;
1094
- }
1095
- .ShapeHighlight__toolbar-wrapper {
1096
- z-index: 10;
1097
- }
1098
- .ShapeHighlight__toolbar {
1099
- display: flex;
1100
- align-items: center;
1101
- gap: 4px;
1102
- padding: 2px 4px;
1103
- background: rgba(0, 0, 0, 0.7);
1104
- border-radius: 4px;
1105
- opacity: 0;
1106
- pointer-events: none;
1107
- transition: opacity 0.2s ease;
1108
- }
1109
- .ShapeHighlight__toolbar--visible {
1110
- opacity: 1;
1111
- pointer-events: auto;
1112
- }
1113
- .ShapeHighlight__style-button,
1114
- .ShapeHighlight__delete-button {
1115
- display: flex;
1116
- align-items: center;
1117
- justify-content: center;
1118
- width: 20px;
1119
- height: 20px;
1120
- border: none;
1121
- background: transparent;
1122
- cursor: pointer;
1123
- color: white;
1124
- border-radius: 3px;
1125
- padding: 0;
1126
- transition: background 0.2s;
1127
- }
1128
- .ShapeHighlight__style-button:hover {
1129
- background: rgba(255, 255, 255, 0.2);
1130
- }
1131
- .ShapeHighlight__delete-button:hover {
1132
- background: rgba(255, 100, 100, 0.6);
1133
- }
1134
- .ShapeHighlight__style-panel {
1135
- margin-top: 4px;
1136
- background: rgba(0, 0, 0, 0.9);
1137
- border-radius: 6px;
1138
- padding: 8px;
1139
- min-width: 180px;
1140
- box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
1141
- }
1142
- .ShapeHighlight__style-row {
1143
- display: flex;
1144
- align-items: center;
1145
- justify-content: space-between;
1146
- margin-bottom: 8px;
1147
- }
1148
- .ShapeHighlight__style-row:last-child {
1149
- margin-bottom: 0;
1150
- }
1151
- .ShapeHighlight__style-row label {
1152
- color: #ccc;
1153
- font-size: 11px;
1154
- text-transform: uppercase;
1155
- letter-spacing: 0.5px;
1156
- margin-right: 8px;
1157
- }
1158
- .ShapeHighlight__color-options {
1159
- display: flex;
1160
- align-items: center;
1161
- gap: 6px;
1162
- }
1163
- .ShapeHighlight__color-presets {
1164
- display: flex;
1165
- gap: 4px;
1166
- }
1167
- .ShapeHighlight__color-preset {
1168
- width: 18px;
1169
- height: 18px;
1170
- border: 2px solid transparent;
1171
- border-radius: 50%;
1172
- cursor: pointer;
1173
- transition: transform 0.2s, border-color 0.2s;
1174
- padding: 0;
1175
- }
1176
- .ShapeHighlight__color-preset:hover {
1177
- transform: scale(1.15);
1178
- }
1179
- .ShapeHighlight__color-preset.active {
1180
- border-color: #b958ff;
1181
- }
1182
- .ShapeHighlight__color-options input[type=color] {
1183
- width: 24px;
1184
- height: 24px;
1185
- padding: 0;
1186
- border: none;
1187
- border-radius: 4px;
1188
- cursor: pointer;
1189
- background: transparent;
1190
- }
1191
- .ShapeHighlight__color-options input[type=color]::-webkit-color-swatch-wrapper {
1192
- padding: 0;
1193
- }
1194
- .ShapeHighlight__color-options input[type=color]::-webkit-color-swatch {
1195
- border: 1px solid #666;
1196
- border-radius: 4px;
1197
- }
1198
- .ShapeHighlight__width-options {
1199
- display: flex;
1200
- gap: 4px;
1201
- }
1202
- .ShapeHighlight__width-button {
1203
- padding: 4px 8px;
1204
- background: transparent;
1205
- border: 1px solid #666;
1206
- border-radius: 4px;
1207
- cursor: pointer;
1208
- color: #ccc;
1209
- font-size: 11px;
1210
- transition: all 0.2s;
1211
- }
1212
- .ShapeHighlight__width-button:hover {
1213
- border-color: #b958ff;
1214
- color: white;
1215
- }
1216
- .ShapeHighlight__width-button.active {
1217
- background: rgba(185, 88, 255, 0.2);
1218
- border-color: #b958ff;
1219
- color: #b958ff;
1220
- }
1221
- /*# sourceMappingURL=index.css.map */