@mtes-mct/monitor-ui 1.1.1 → 1.3.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/CHANGELOG.md CHANGED
@@ -1,3 +1,23 @@
1
+ # [1.2.0](https://github.com/MTES-MCT/monitor-ui/compare/v1.1.1...v1.2.0) (2022-11-24)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * **build:** fix dist npm exports path ([#17](https://github.com/MTES-MCT/monitor-ui/issues/17)) ([aad4c07](https://github.com/MTES-MCT/monitor-ui/commit/aad4c07b160ec38fcad68fbfcb8055c971c0f5ed))
7
+
8
+
9
+ ### Features
10
+
11
+ * **formiks:** add FormikDatePicker ([#16](https://github.com/MTES-MCT/monitor-ui/issues/16)) ([a4db006](https://github.com/MTES-MCT/monitor-ui/commit/a4db006c1f72a39fd7ea8dc2722399783c44826b))
12
+ * **formiks:** add FormikDateRangePicker ([#15](https://github.com/MTES-MCT/monitor-ui/issues/15)) ([e40e53d](https://github.com/MTES-MCT/monitor-ui/commit/e40e53d7c15e54244bde801fd42d57c9e7033947))
13
+
14
+ ## [1.1.1](https://github.com/MTES-MCT/monitor-ui/compare/v1.1.0...v1.1.1) (2022-11-24)
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * **semantic-release:** publish to NPM ([#12](https://github.com/MTES-MCT/monitor-ui/issues/12)) ([2c42952](https://github.com/MTES-MCT/monitor-ui/commit/2c42952dcc8bbc3983aee55f784e0ca082760d0f))
20
+
1
21
  # [1.1.0](https://github.com/MTES-MCT/monitor-ui/compare/v1.0.0...v1.1.0) (2022-11-24)
2
22
 
3
23
 
package/README.md CHANGED
@@ -2,9 +2,22 @@
2
2
 
3
3
  [![License][img-license]][lnk-license]
4
4
  [![CI Status][img-github]][lnk-github]
5
- <!-- [![NPM Version][img-npm]][lnk-npm] -->
5
+ [![NPM Version][img-npm]][lnk-npm]
6
6
 
7
- > Common React UI components and styles for Monitorfish and Monitorenv..
7
+ > Common React components, hooks, utilities and CSS stylesheets
8
+ > for [Monitorfish][lnk-github-monitorfish] and [Monitorenv][lnk-github-monitorenv].
9
+
10
+ ## Usage
11
+
12
+ ```sh
13
+ npm i -E @mtes-mct/monitor-ui
14
+ ```
15
+
16
+ or
17
+
18
+ ```sh
19
+ yarn add -E @mtes-mct/monitor-ui
20
+ ```
8
21
 
9
22
  ## Documentation
10
23
 
@@ -18,8 +31,10 @@ Please read the [contributing document](CONTRIBUTING.md) for setup and contribut
18
31
 
19
32
  [img-github]: https://img.shields.io/github/workflow/status/MTES-MCT/monitor-ui/Check/main?style=flat-square
20
33
  [img-license]: https://img.shields.io/github/license/MTES-MCT/monitor-ui?style=flat-square
21
- [img-npm]: https://img.shields.io/npm/v/@MTES-MCT/monitor-ui?style=flat-square
34
+ [img-npm]: https://img.shields.io/npm/v/@mtes-mct/monitor-ui?style=flat-square
22
35
  [lnk-github]: https://github.com/MTES-MCT/monitor-ui/actions?query=branch%3Amain++
36
+ [lnk-github-monitorenv]: https://github.com/MTES-MCT/monitorenv
37
+ [lnk-github-monitorfish]: https://github.com/MTES-MCT/monitorfish
23
38
  [lnk-license]: https://github.com/MTES-MCT/monitor-ui/blob/main/LICENSE
24
- [lnk-npm]: https://www.npmjs.com/package/@MTES-MCT/monitor-ui
39
+ [lnk-npm]: https://www.npmjs.com/package/@mtes-mct/monitor-ui
25
40
  [lnk-storybook]: https://mtes-mct.github.io/monitor-ui/
@@ -0,0 +1,708 @@
1
+ /* variables */
2
+ :root {
3
+ /* colors */
4
+ --gunMetal: #282f3e;
5
+ --charcoal: #3b4559;
6
+ --slateGray: #707785;
7
+ --lightGray: #cccfd6;
8
+ --gainsboro: #e5e5eb;
9
+ --cultured: #f7f7fa;
10
+ --white: #ffffff;
11
+
12
+ --steel-blue: #5e87ad;
13
+ --steel-blue-25: #d6e1ea;
14
+ --blue-jeans: #42a7ff;
15
+ --blue-jeans-25: #cfe9ff;
16
+
17
+ --mediumSeaGreen: #29b361;
18
+ --golden-poppy: #fac11a;
19
+ --maximum-red: #e1000f;
20
+
21
+ --cadet-grey: #8e9a9f;
22
+ --grullo: #b89b8c;
23
+ --copper-red: #cf6a4e;
24
+ --chinese-red: #a13112;
25
+
26
+ --powder-blue: #9ed7d9;
27
+ --wheat: #edd6a4;
28
+ --opal: #a5bcc0;
29
+
30
+ /* text */
31
+ --rs-text-primary: var(--gunMetal);
32
+
33
+ /* btn vars */
34
+ --rs-btn-primary-text: var(--white);
35
+ --rs-btn-primary-bg: var(--charcoal);
36
+ --rs-btn-primary-hover-bg: var(--steel-blue);
37
+ --rs-btn-link-text: var(--charcoal);
38
+ --rs-btn-ghost-text: var(--charcoal);
39
+ --rs-btn-ghost-border: var(--charcoal);
40
+ --rs-btn-ghost-hover-border: var(--steel-blue);
41
+ --rs-btn-ghost-hover-text: var(--steel-blue);
42
+
43
+ --rs-iconbtn-primary-addon: var(--charcoal);
44
+ --rs-iconbtn-primary-activated-addon: var(--steel-blue);
45
+
46
+ --rs-btn-primary-active-bg: var(--steel-blue);
47
+ --rs-iconbtn-primary-pressed-addon: var(--steel-blue);
48
+
49
+ /* Checkbox vars */
50
+ --rs-checkbox-disabled-bg: var(--white);
51
+
52
+ /* input vars */
53
+ --rs-input-bg: var(--gainsboro);
54
+
55
+ --rs-menuitem-active-text: var(--steel-blue);
56
+
57
+ /* tags */
58
+ --rs-tag-bg: var(--gainsboro);
59
+ }
60
+
61
+ /*
62
+ Default font size should be 16px instead of 13px as stated in Rsuite CSS,
63
+ so we need to apply this fix in order to have consistent 16px-based rems
64
+ while overriding both Rsuite CSS and mini.css.
65
+ */
66
+ html {
67
+ font-size: 16px;
68
+ }
69
+
70
+ /*
71
+ We reduce the default font-size to 13px for the app.
72
+ */
73
+ html * {
74
+ font-size: 0.8125rem;
75
+ }
76
+
77
+ label {
78
+ color: var(--slateGray);
79
+ font-size: 13px;
80
+ line-height: 18px;
81
+ }
82
+
83
+ .rs-input {
84
+ border-radius: 0;
85
+ color: var(--gunMetal);
86
+ padding-left: 5px;
87
+ }
88
+
89
+ .rs-input.ghost {
90
+ background-color: var(--white);
91
+ }
92
+
93
+ /* rs input textarea */
94
+ textarea {
95
+ padding: 5px;
96
+ }
97
+
98
+ .rs-input-group,
99
+ .rs-input-group:not(.rs-input-group-inside) .rs-auto-complete:first-child .rs-input,
100
+ .rs-input-group:not(.rs-input-group-inside) .rs-form-control-wrapper:first-child > .rs-input,
101
+ .rs-input-group:not(.rs-input-group-inside) .rs-picker-date:first-child .rs-picker-toggle,
102
+ .rs-input-group:not(.rs-input-group-inside) > :first-child,
103
+ .rs-input-group:not(.rs-input-group-inside) .rs-auto-complete:last-child .rs-input,
104
+ .rs-input-group:not(.rs-input-group-inside) .rs-form-control-wrapper:last-child > .rs-input,
105
+ .rs-input-group:not(.rs-input-group-inside) .rs-picker-date:last-child .rs-picker-toggle,
106
+ .rs-input-group:not(.rs-input-group-inside) > :last-child {
107
+ border-radius: 0;
108
+ }
109
+
110
+ .rs-input-group-addon.primary {
111
+ background-color: var(--rs-btn-primary-bg);
112
+ }
113
+
114
+ .rs-input-group.rs-input-group-inside .rs-input-group-addon {
115
+ padding: 8px 13px 8px 11px;
116
+ }
117
+
118
+ /* button */
119
+ .rs-ripple-pond {
120
+ height: 30px;
121
+ }
122
+
123
+ .rs-btn {
124
+ line-height: 18px;
125
+ padding-top: 6px;
126
+ padding-bottom: 6px;
127
+ border-radius: 0;
128
+ }
129
+
130
+ .rs-btn-sm {
131
+ padding-top: 2px;
132
+ padding-bottom: 2px;
133
+ }
134
+
135
+ .rs-btn-icon-with-text.rs-btn.rs-btn-icon-placement-left {
136
+ padding-top: 6px;
137
+ padding-bottom: 6px;
138
+ }
139
+
140
+ .rs-btn-icon-with-text.rs-btn-sm.rs-btn-icon-placement-left {
141
+ padding-top: 2px;
142
+ padding-bottom: 2px;
143
+ padding-left: 26px;
144
+ }
145
+
146
+ .rs-btn-icon.rs-btn {
147
+ padding: 7px;
148
+ }
149
+
150
+ .rs-btn-icon.rs-btn-sm {
151
+ padding: 2px;
152
+ }
153
+
154
+ .rs-btn-icon-with-text.rs-btn {
155
+ line-height: 18px;
156
+ }
157
+
158
+ .rs-btn-icon-with-text.rs-btn > .rs-icon {
159
+ width: 30px;
160
+ height: 30px;
161
+ padding: 8px;
162
+ }
163
+
164
+ .rs-btn-icon-with-text.rs-btn-sm > .rs-icon {
165
+ width: 24px;
166
+ height: 24px;
167
+ }
168
+
169
+ /* checkbox */
170
+ .rs-checkbox-wrapper {
171
+ top: 8px !important;
172
+ }
173
+
174
+ .rs-checkbox-checker {
175
+ padding-bottom: 0;
176
+ padding-left: 36px;
177
+ min-height: 0px;
178
+ }
179
+
180
+ .rs-checkbox label {
181
+ font-weight: 500;
182
+ }
183
+
184
+ .rs-checkbox-checker > label {
185
+ font-size: 13px;
186
+ color: var(--gunMetal);
187
+ }
188
+
189
+ .rs-checkbox-wrapper .rs-checkbox-inner::before {
190
+ border: 2px solid var(--lightGray);
191
+ background: var(--gainsboro) 0% 0% no-repeat padding-box;
192
+ border-radius: 0px;
193
+ }
194
+
195
+ .rs-checkbox-wrapper .rs-checkbox-inner::after {
196
+ border-color: var(--lightGray);
197
+ border-width: 0 0 2px;
198
+ -webkit-transform: rotate(0deg) scale(1);
199
+ transform: rotate(0deg) scale(1);
200
+ width: 8px;
201
+ margin-top: -1px;
202
+ margin-left: 5px;
203
+ }
204
+
205
+ .rs-checkbox-indeterminate .rs-checkbox-wrapper .rs-checkbox-inner::before {
206
+ background-color: var(--charcoal);
207
+ border-color: var(--charcoal);
208
+ }
209
+
210
+ .rs-checkbox-indeterminate .rs-checkbox-wrapper .rs-checkbox-inner::after {
211
+ border-color: var(--white);
212
+ border-width: 0 0 2px;
213
+ -webkit-transform: rotate(0deg) scale(1);
214
+ transform: rotate(0deg) scale(1);
215
+ width: 8px;
216
+ margin-top: 0px;
217
+ margin-left: 6px;
218
+ }
219
+
220
+ .rs-checkbox-disabled:not(.rs-checkbox-checked):not(.rs-checkbox-indeterminate)
221
+ .rs-checkbox-wrapper
222
+ .rs-checkbox-inner:before {
223
+ border-color: var(--lightGray);
224
+ }
225
+
226
+ .rs-checkbox-checked .rs-checkbox-wrapper .rs-checkbox-inner::before {
227
+ border-color: var(--charcoal);
228
+ background-color: var(--charcoal);
229
+ }
230
+
231
+ label:hover .rs-checkbox-wrapper .rs-checkbox-inner:before {
232
+ border-color: var(--steel-blue);
233
+ background: var(--steel-blue-25) 0% 0% no-repeat padding-box;
234
+ }
235
+
236
+ .rs-checkbox-checked label:hover .rs-checkbox-wrapper .rs-checkbox-inner:before {
237
+ border-color: var(--steel-blue);
238
+ background: var(--steel-blue) 0% 0% no-repeat padding-box;
239
+ }
240
+
241
+ .rs-checkbox-checked .rs-checkbox-wrapper .rs-checkbox-inner::after {
242
+ border: solid var(--white);
243
+ border-width: 0 2px 2px 0;
244
+ margin-top: 3px !important;
245
+ margin-left: 6px !important;
246
+ }
247
+
248
+ .checkbox-hidden > div > label > .rs-checkbox-wrapper {
249
+ opacity: 0 !important;
250
+ margin-left: -40px;
251
+ position: inherit;
252
+ }
253
+
254
+ /* radio */
255
+
256
+ .rs-radio-group {
257
+ border-radius: 2px;
258
+ }
259
+
260
+ .rs-radio-wrapper::before,
261
+ .rs-radio-wrapper .rs-radio-inner::before,
262
+ .rs-radio-wrapper {
263
+ width: 13px;
264
+ height: 13px;
265
+ }
266
+
267
+ .rs-radio-wrapper .rs-radio-inner::before {
268
+ background: var(--gainsboro);
269
+ border-width: 2.5px;
270
+ }
271
+
272
+ .rs-radio-checked .rs-radio-wrapper .rs-radio-inner::before {
273
+ background: var(--gainsboro);
274
+ border-color: var(--charcoal);
275
+ }
276
+
277
+ /* center of radio button when checked */
278
+ .rs-radio-wrapper .rs-radio-inner::after {
279
+ background: var(--charcoal);
280
+ width: 8px;
281
+ height: 8px;
282
+ margin-top: 5px;
283
+ margin-left: 5px;
284
+ }
285
+
286
+ .rs-radio.rs-radio-disabled .rs-radio-wrapper .rs-radio-inner::after {
287
+ background: var(--lightGray);
288
+ }
289
+
290
+ .rs-radio.rs-radio-disabled .rs-radio-inner:before {
291
+ background: var(--white);
292
+ border-color: var(--lightGray);
293
+ }
294
+
295
+ .rs-radio-checker > label {
296
+ color: var(--charcoal);
297
+ font-weight: 500;
298
+ line-height: 17px;
299
+ }
300
+
301
+ /* form */
302
+ .rs-form:not(.rs-form-inline) .rs-form-group:not(:last-child) {
303
+ margin-bottom: 32px;
304
+ }
305
+
306
+ /* dropdown */
307
+
308
+ .rs-dropdown-menu {
309
+ border-radius: 0;
310
+ padding: 0;
311
+ }
312
+
313
+ .rs-dropdown-item {
314
+ padding-top: 0px;
315
+ padding-bottom: 0px;
316
+ line-height: 38px;
317
+ }
318
+
319
+ .rs-dropdown-item-with-icon > svg {
320
+ vertical-align: text-bottom;
321
+ }
322
+
323
+ .rs-dropdown-item:not(:last-child) {
324
+ border-bottom: 1px solid var(--lightGray);
325
+ }
326
+
327
+ /* Tags */
328
+
329
+ .rs-tag-default {
330
+ font-weight: 500;
331
+ }
332
+
333
+ .rs-tag-closable.rs-tag-md {
334
+ padding-right: 32px;
335
+ }
336
+
337
+ .rs-tag-md {
338
+ font-size: 13px;
339
+ line-height: 18px;
340
+ border-radius: 0px;
341
+ padding-top: 1px;
342
+ padding-bottom: 3px;
343
+ }
344
+
345
+ /* TagPicker */
346
+ .rs-picker-tag .rs-tag {
347
+ max-width: calc(100% - 30px) !important;
348
+ background-color: var(--white);
349
+ }
350
+
351
+ .rs-tag-md .rs-tag-icon-close {
352
+ padding: 6px 6px;
353
+ }
354
+
355
+ .rs-tag-icon-close.rs-btn-close {
356
+ border-left: 1px solid var(--lightGray);
357
+ }
358
+
359
+ .rs-picker-tag .rs-picker-toggle.rs-btn-sm ~ .rs-picker-tag-wrapper .rs-tag {
360
+ margin-top: 3px;
361
+ }
362
+
363
+ /* */
364
+ .rs-modal-lg {
365
+ width: 1300px;
366
+ }
367
+
368
+ .rs-slider-mark {
369
+ font-size: 13px;
370
+ color: var(--slateGray);
371
+ }
372
+
373
+ .rs-slider {
374
+ position: absolute;
375
+ width: 341px;
376
+ margin-top: -19px;
377
+ }
378
+
379
+ .rs-slider-bar {
380
+ height: 0;
381
+ }
382
+
383
+ .rs-slider-progress-bar {
384
+ height: 2px;
385
+ background: none;
386
+ }
387
+
388
+ .rs-slider-graduator > ul > li::before {
389
+ visibility: hidden;
390
+ }
391
+
392
+ .rs-slider-graduator > ul > li:last-child::after,
393
+ .rs-slider-graduator > ul > li::before {
394
+ top: -3px;
395
+ border: none;
396
+ }
397
+
398
+ .rs-slider-handle::before {
399
+ background: var(--lightGray);
400
+ border: unset;
401
+ top: -6px;
402
+ margin-left: -5px;
403
+ width: 16px;
404
+ height: 16px;
405
+ }
406
+
407
+ .rs-slider-graduator {
408
+ margin-left: -5px;
409
+ margin-top: -10px;
410
+ }
411
+
412
+ .rs-slider-graduated > div:nth-child(2)::before {
413
+ background: #9095a2;
414
+ z-index: 99;
415
+ }
416
+
417
+ .rs-slider-graduated > div:nth-child(2) {
418
+ z-index: 9999;
419
+ }
420
+
421
+ .rs-slider-graduated > div:nth-child(3)::before {
422
+ background: var(--charcoal);
423
+ z-index: 99;
424
+ }
425
+
426
+ .rs-picker-menu {
427
+ border-radius: 2px;
428
+ z-index: 9999 !important;
429
+ }
430
+
431
+ .rs-picker-default:not(.rs-picker-disabled) .rs-btn:hover,
432
+ .rs-picker-default:not(.rs-picker-disabled) .rs-picker-toggle:hover,
433
+ .rs-picker-default:not(.rs-picker-disabled) .rs-btn.active,
434
+ .rs-picker-default:not(.rs-picker-disabled) .rs-picker-toggle.active {
435
+ border-color: var(--slateGray) !important;
436
+ }
437
+
438
+ .rs-table:not(.rs-table-column-resizing) .rs-table-cell-header .rs-table-cell:hover ~ .rs-table-column-resize-spanner,
439
+ .rs-table:not(.rs-table-column-resizing) .rs-table-column-resize-spanner:hover {
440
+ background-color: var(--slateGray);
441
+ }
442
+
443
+ .rs-table-column-resize-spanner::before {
444
+ border-color: transparent var(--slateGray) transparent transparent;
445
+ }
446
+
447
+ .rs-calendar-table-cell-is-today .rs-calendar-table-cell-content {
448
+ border: 1px solid var(--slateGray) !important;
449
+ }
450
+
451
+ .rs-picker-toggle.rs-btn-sm {
452
+ border-radius: 2px !important;
453
+ }
454
+
455
+ .rs-calendar,
456
+ .rs-calendar-header,
457
+ .rs-calendar-table-cell-content {
458
+ box-sizing: border-box !important;
459
+ }
460
+
461
+ .rs-calendar-table-cell-content {
462
+ border-radius: 2px !important;
463
+ }
464
+
465
+ .rs-calendar-table-cell-selected .rs-calendar-table-cell-content {
466
+ color: #f0f0f0;
467
+ border-color: var(--charcoal);
468
+ background-color: var(--charcoal);
469
+ }
470
+
471
+ .rs-calendar-table-cell-in-range::before {
472
+ background-color: #e0e0e0;
473
+ }
474
+
475
+ .rs-picker-toolbar-right-btn-ok {
476
+ padding: 5px 10px;
477
+ font-size: 13px;
478
+ line-height: 1.42857143;
479
+ border-radius: 2px;
480
+ color: #fff;
481
+ background-color: var(--charcoal);
482
+ }
483
+
484
+ .rs-picker-toolbar-right-btn-ok.rs-picker-toolbar-btn-disabled,
485
+ .rs-picker-toolbar-right-btn-ok.rs-picker-toolbar-btn-disabled:hover,
486
+ .rs-picker-toolbar-right-btn-ok.rs-picker-toolbar-btn-disabled:hover:active {
487
+ background-color: var(--charcoal);
488
+ }
489
+
490
+ .rs-picker-toolbar-right-btn-ok:not(.rs-btn-disabled):hover {
491
+ background-color: var(--charcoal);
492
+ }
493
+
494
+ .rs-modal-body {
495
+ padding: 20px 25px 0 25px !important;
496
+ }
497
+
498
+ .rs-table-body-info {
499
+ font-size: 13px;
500
+ color: var(--slateGray);
501
+ }
502
+
503
+ .rs-modal-full .rs-modal-dialog {
504
+ width: 100%;
505
+ margin-left: 0;
506
+ }
507
+
508
+ .rs-modal-content {
509
+ padding: 0;
510
+ border-radius: 2px;
511
+ }
512
+
513
+ .rs-modal-body {
514
+ padding: 20px 25px 20px 25px;
515
+ margin-top: 0;
516
+ max-height: 800px !important;
517
+ min-height: 210px !important;
518
+ }
519
+
520
+ .rs-modal-header {
521
+ border-top-left-radius: 2px;
522
+ border-top-right-radius: 2px;
523
+ padding: 5px 14px 8px 14px;
524
+ background: var(--charcoal);
525
+ }
526
+
527
+ .rs-modal-header .rs-modal-title {
528
+ color: #f0f0f0;
529
+ font-size: 22px;
530
+ font-weight: normal;
531
+ }
532
+
533
+ .rs-table-cell-header,
534
+ .rs-table-cell[role='columnheader'],
535
+ .rs-table-cell-header:focus,
536
+ .rs-table-cell[role='columnheader']:focus,
537
+ .rs-table-cell-header:hover,
538
+ .rs-table-cell[role='columnheader']:hover {
539
+ background: var(--gainsboro);
540
+ color: white;
541
+ }
542
+
543
+ .ghost .rs-picker-toggle.rs-btn.rs-btn-default {
544
+ background-color: var(--white) !important;
545
+ }
546
+
547
+ .rs-table-hover .rs-table-row-header:hover .rs-table-cell-group,
548
+ .rs-table-hover .rs-table-row-header:hover .rs-table-cell {
549
+ background: var(--gainsboro);
550
+ }
551
+
552
+ .rs-table-cell[role='columnheader'] > .rs-table-cell-content {
553
+ color: var(--slateGray);
554
+ }
555
+
556
+ .rs-table-cell {
557
+ border: 1px solid #e0e0e0;
558
+ }
559
+
560
+ .rs-table-cell-content {
561
+ font-size: 13px;
562
+ font-weight: 500;
563
+ color: var(--gunMetal);
564
+ text-align: left;
565
+ }
566
+
567
+ .rs-table-cell-content > input {
568
+ border: none;
569
+ width: inherit;
570
+ background: none;
571
+ padding-left: 15px;
572
+ font-size: 13px;
573
+ font-weight: normal;
574
+ color: var(--gunMetal);
575
+ }
576
+
577
+ .rs-table-scrollbar-handle,
578
+ .rs-table-scrollbar-handle:hover,
579
+ .rs-table-scrollbar-handle:focus {
580
+ position: absolute;
581
+ background-color: #575757;
582
+ border-radius: 4px;
583
+ }
584
+
585
+ .rs-table-cell-content > .rs-checkbox {
586
+ margin-top: -10px;
587
+ margin-left: -10px;
588
+ }
589
+
590
+ .rs-modal-header-close {
591
+ background: unset;
592
+ right: 10px !important;
593
+ top: 6px !important;
594
+ font-size: 15px !important;
595
+ color: var(--gainsboro) !important;
596
+ }
597
+
598
+ /* .rs-picker-default .rs-btn,
599
+ .rs-picker-input .rs-btn,
600
+ .rs-picker-default .rs-picker-toggle,
601
+ .rs-picker-input .rs-picker-toggle {
602
+ background: unset !important;
603
+ } */
604
+
605
+ .rs-picker-tag-wrapper {
606
+ padding-bottom: 0;
607
+ }
608
+
609
+ .rs-picker-input {
610
+ vertical-align: top;
611
+ border-radius: 2px;
612
+ }
613
+
614
+ .rs-picker-toggle {
615
+ border-radius: 2px;
616
+ }
617
+
618
+ .rs-picker-toggle-placeholder {
619
+ font-size: 11px;
620
+ color: var(--slateGray) !important;
621
+ }
622
+
623
+ .rs-picker-has-value .rs-btn .rs-picker-toggle-value,
624
+ .rs-picker-has-value .rs-picker-toggle .rs-picker-toggle-value {
625
+ color: var(--gunMetal);
626
+ font-size: 13px;
627
+ font-weight: normal;
628
+ }
629
+
630
+ .rs-picker-select-menu-item.rs-picker-select-menu-item-active,
631
+ .rs-picker-select-menu-item.rs-picker-select-menu-item-active:hover,
632
+ .rs-picker-select-menu-item:not(.rs-picker-select-menu-item-disabled):hover,
633
+ .rs-picker-select-menu-item.rs-picker-select-menu-item-focus,
634
+ .rs-picker-select-menu-item {
635
+ color: var(--slateGray);
636
+ font-size: 13px;
637
+ font-weight: normal;
638
+ width: inherit;
639
+ }
640
+
641
+ .grouped .rs-picker-select-menu-item {
642
+ padding-left: 0px;
643
+ }
644
+
645
+ .rs-picker-select-menu-items.rs-picker-select-menu-group.rs-picker-select-menu-group-title {
646
+ font-size: 13px;
647
+ color: var(--slateGray);
648
+ }
649
+
650
+ .rs-picker-toggle-clean,
651
+ .rs-picker-toggle-caret {
652
+ color: var(--slateGray);
653
+ }
654
+
655
+ .rs-picker-toggle-clean:hover {
656
+ padding: 4px 0px !important;
657
+ }
658
+
659
+ .rs-picker-check-menu-group[role='listitem'] {
660
+ height: 48px !important;
661
+ }
662
+
663
+ .rs-picker-check-menu-items .rs-picker-check-menu-group:not(:first-child) {
664
+ padding-top: 0px !important;
665
+ }
666
+
667
+ .rs-picker-check-menu.rs-picker-check-menu-items {
668
+ max-height: 200px !important;
669
+ }
670
+
671
+ .rs-table-cell-header .rs-table-cell-content {
672
+ padding: 10px 7px;
673
+ }
674
+
675
+ .rs-table-cell-header-icon-sort {
676
+ color: var(--slateGray);
677
+ line-height: 1.66666667;
678
+ position: absolute;
679
+ right: 9px;
680
+ top: 10px;
681
+ }
682
+
683
+ .rs-table-cell-header-icon-sort-asc::after {
684
+ color: var(--slateGray);
685
+ }
686
+
687
+ .rs-table-cell-header-icon-sort-desc::after {
688
+ color: var(--slateGray);
689
+ }
690
+
691
+ .rs-table-hover .rs-table-row:not(.rs-table-row-header):hover,
692
+ .rs-table-hover .rs-table-row:hover .rs-table-cell-group,
693
+ .rs-table-hover .rs-table-row:hover .rs-table-cell {
694
+ /* blueYonder 25 */
695
+ background: #D4DDE7 !important;
696
+ }
697
+
698
+ .rs-table-cell,
699
+ .rs-table-cell-group,
700
+ .rs-table-row {
701
+ -webkit-transition: background-color 0.1s linear !important;
702
+ transition: background-color 0.1s linear !important;
703
+ }
704
+
705
+ .rs-table-row-expanded {
706
+ height: 100px !important;
707
+ background: white !important;
708
+ }
@@ -0,0 +1,5 @@
1
+ import type { DatePickerProps } from '../fields/DatePicker';
2
+ export declare type FormikDatePickerProps = Omit<DatePickerProps, 'onChange'> & {
3
+ name: string;
4
+ };
5
+ export declare function FormikDatePicker({ name, ...originalProps }: FormikDatePickerProps): JSX.Element;
@@ -0,0 +1,5 @@
1
+ import type { DateRangePickerProps } from '../fields/DateRangePicker';
2
+ export declare type FormikDateRangePickerProps = Omit<DateRangePickerProps, 'onChange'> & {
3
+ name: string;
4
+ };
5
+ export declare function FormikDateRangePicker({ name, ...originalProps }: FormikDateRangePickerProps): JSX.Element;
package/index.d.ts CHANGED
@@ -3,6 +3,8 @@ export { THEME } from './theme';
3
3
  export { DateRangePicker } from './fields/DateRangePicker';
4
4
  export { DatePicker } from './fields/DatePicker';
5
5
  export { Select } from './fields/Select';
6
+ export { FormikDatePicker } from './formiks/FormikDatePicker';
7
+ export { FormikDateRangePicker } from './formiks/FormikDateRangePicker';
6
8
  export { FormikEffect } from './formiks/FormikEffect';
7
9
  export { FormikSelect } from './formiks/FormikSelect';
8
10
  export { ThemeProvider } from './ThemeProvider';
@@ -10,5 +12,7 @@ export type { PartialTheme, Theme } from './theme';
10
12
  export type { DateRangePickerProps } from './fields/DateRangePicker';
11
13
  export type { DatePickerProps } from './fields/DatePicker';
12
14
  export type { SelectProps } from './fields/Select';
15
+ export type { FormikDatePickerProps } from './formiks/FormikDatePicker';
16
+ export type { FormikDateRangePickerProps } from './formiks/FormikDateRangePicker';
13
17
  export type { FormikEffectProps } from './formiks/FormikEffect';
14
18
  export type { FormikSelectProps } from './formiks/FormikSelect';
package/package.json CHANGED
@@ -1,13 +1,12 @@
1
1
  {
2
2
  "name": "@mtes-mct/monitor-ui",
3
3
  "description": "Common React UI components and styles for Monitorfish and Monitorenv.",
4
- "version": "1.1.1",
4
+ "version": "1.3.0",
5
5
  "license": "AGPL-3.0",
6
6
  "engines": {
7
7
  "node": "18",
8
8
  "npm": "8"
9
9
  },
10
- "browser": "./src/index.ts",
11
10
  "dependencies": {
12
11
  "@babel/runtime": "7.19.4",
13
12
  "date-fns": "2.29.3",
@@ -37,7 +36,7 @@
37
36
  "bugs": {
38
37
  "url": "https://github.com/MTES-MCT/monitor-ui/issues"
39
38
  },
40
- "exports": "./index.js",
39
+ "exports": "./src/index.js",
41
40
  "homepage": "https://mtes-mct.github.io/monitor-ui/",
42
41
  "publishConfig": {
43
42
  "access": "public",
@@ -0,0 +1,17 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { useField } from 'formik';
3
+ import { useEffect } from 'react';
4
+ import { DatePicker } from '../fields/DatePicker/index.js';
5
+
6
+ function FormikDatePicker({ name, ...originalProps }) {
7
+ const [, , helpers] = useField(name);
8
+ const { setValue } = helpers;
9
+ // We don't include `setValues` in `useEffect()` dependencies
10
+ // both because it is useless and it will trigger infinite hook calls
11
+ // eslint-disable-next-line react-hooks/exhaustive-deps
12
+ useEffect(() => () => setValue(undefined), []);
13
+ return jsx(DatePicker, { onChange: setValue, ...originalProps });
14
+ }
15
+
16
+ export { FormikDatePicker };
17
+ //# sourceMappingURL=FormikDatePicker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormikDatePicker.js","sources":["../../../src/formiks/FormikDatePicker.tsx"],"sourcesContent":["import { useField } from 'formik'\nimport { useEffect } from 'react'\n\nimport { DatePicker } from '../fields/DatePicker'\n\nimport type { DatePickerProps } from '../fields/DatePicker'\n\nexport type FormikDatePickerProps = Omit<DatePickerProps, 'onChange'> & {\n name: string\n}\nexport function FormikDatePicker({ name, ...originalProps }: FormikDatePickerProps) {\n const [, , helpers] = useField(name)\n const { setValue } = helpers\n\n // We don't include `setValues` in `useEffect()` dependencies\n // both because it is useless and it will trigger infinite hook calls\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(() => () => setValue(undefined), [])\n\n return <DatePicker onChange={setValue} {...originalProps} />\n}\n"],"names":["_jsx"],"mappings":";;;;;AAUM,SAAU,gBAAgB,CAAC,EAAE,IAAI,EAAE,GAAG,aAAa,EAAyB,EAAA;IAChF,MAAM,KAAK,OAAO,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;AACpC,IAAA,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAA;;;;AAK5B,IAAA,SAAS,CAAC,MAAM,MAAM,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,CAAA;IAE9C,OAAOA,GAAA,CAAC,UAAU,EAAC,EAAA,QAAQ,EAAE,QAAQ,EAAA,GAAM,aAAa,EAAA,CAAI,CAAA;AAC9D;;;;"}
@@ -0,0 +1,17 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { useField } from 'formik';
3
+ import { useEffect } from 'react';
4
+ import { DateRangePicker } from '../fields/DateRangePicker/index.js';
5
+
6
+ function FormikDateRangePicker({ name, ...originalProps }) {
7
+ const [, , helpers] = useField(name);
8
+ const { setValue } = helpers;
9
+ // We don't include `setValues` in `useEffect()` dependencies
10
+ // both because it is useless and it will trigger infinite hook calls
11
+ // eslint-disable-next-line react-hooks/exhaustive-deps
12
+ useEffect(() => () => setValue(undefined), []);
13
+ return jsx(DateRangePicker, { onChange: setValue, ...originalProps });
14
+ }
15
+
16
+ export { FormikDateRangePicker };
17
+ //# sourceMappingURL=FormikDateRangePicker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormikDateRangePicker.js","sources":["../../../src/formiks/FormikDateRangePicker.tsx"],"sourcesContent":["import { useField } from 'formik'\nimport { useEffect } from 'react'\n\nimport { DateRangePicker } from '../fields/DateRangePicker'\n\nimport type { DateRangePickerProps } from '../fields/DateRangePicker'\n\nexport type FormikDateRangePickerProps = Omit<DateRangePickerProps, 'onChange'> & {\n name: string\n}\nexport function FormikDateRangePicker({ name, ...originalProps }: FormikDateRangePickerProps) {\n const [, , helpers] = useField(name)\n const { setValue } = helpers\n\n // We don't include `setValues` in `useEffect()` dependencies\n // both because it is useless and it will trigger infinite hook calls\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(() => () => setValue(undefined), [])\n\n return <DateRangePicker onChange={setValue} {...originalProps} />\n}\n"],"names":["_jsx"],"mappings":";;;;;AAUM,SAAU,qBAAqB,CAAC,EAAE,IAAI,EAAE,GAAG,aAAa,EAA8B,EAAA;IAC1F,MAAM,KAAK,OAAO,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;AACpC,IAAA,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAA;;;;AAK5B,IAAA,SAAS,CAAC,MAAM,MAAM,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,CAAA;IAE9C,OAAOA,GAAA,CAAC,eAAe,EAAC,EAAA,QAAQ,EAAE,QAAQ,EAAA,GAAM,aAAa,EAAA,CAAI,CAAA;AACnE;;;;"}
package/src/index.js CHANGED
@@ -4,6 +4,8 @@ export { THEME } from './theme.js';
4
4
  export { DateRangePicker } from './fields/DateRangePicker/index.js';
5
5
  export { DatePicker } from './fields/DatePicker/index.js';
6
6
  export { Select } from './fields/Select.js';
7
+ export { FormikDatePicker } from './formiks/FormikDatePicker.js';
8
+ export { FormikDateRangePicker } from './formiks/FormikDateRangePicker.js';
7
9
  export { FormikEffect } from './formiks/FormikEffect.js';
8
10
  export { FormikSelect } from './formiks/FormikSelect.js';
9
11
  export { ThemeProvider } from './ThemeProvider.js';
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}