@memori.ai/memori-react 8.4.2 → 8.5.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 (131) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.css +0 -4
  3. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.d.ts +1 -0
  4. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.js +3 -3
  5. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.js.map +1 -1
  6. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyButtonWithDropdown.js +110 -8
  7. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyButtonWithDropdown.js.map +1 -1
  8. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyMenuItem.js +3 -0
  9. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyMenuItem.js.map +1 -1
  10. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/hooks/useCopyArtifact.js +42 -38
  11. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/hooks/useCopyArtifact.js.map +1 -1
  12. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/styles.css +1 -2
  13. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/types.d.ts +2 -1
  14. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.css +428 -15
  15. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.d.ts +1 -0
  16. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js +47 -8
  17. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js.map +1 -1
  18. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/components/TabSwitch.css +150 -0
  19. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/components/TabSwitch.d.ts +9 -0
  20. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/components/TabSwitch.js +35 -0
  21. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/components/TabSwitch.js.map +1 -0
  22. package/dist/components/MemoriArtifactSystem/components/ArtifactHandler/ArtifactHandler.css +2 -0
  23. package/dist/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.css +1 -1
  24. package/dist/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.d.ts +2 -1
  25. package/dist/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.js +15 -26
  26. package/dist/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.js.map +1 -1
  27. package/dist/components/MemoriArtifactSystem/context/ArtifactContext.js +1 -5
  28. package/dist/components/MemoriArtifactSystem/context/ArtifactContext.js.map +1 -1
  29. package/dist/components/icons/Close.d.ts +2 -1
  30. package/dist/components/icons/Close.js +1 -1
  31. package/dist/components/icons/Close.js.map +1 -1
  32. package/dist/components/icons/MenuVertical.d.ts +7 -0
  33. package/dist/components/icons/MenuVertical.js +6 -0
  34. package/dist/components/icons/MenuVertical.js.map +1 -0
  35. package/dist/components/layouts/Chat.js +1 -1
  36. package/dist/components/layouts/Chat.js.map +1 -1
  37. package/dist/components/layouts/FullPage.js +1 -1
  38. package/dist/components/layouts/FullPage.js.map +1 -1
  39. package/dist/components/layouts/ZoomedFullBody.js +1 -1
  40. package/dist/components/layouts/ZoomedFullBody.js.map +1 -1
  41. package/dist/components/layouts/chat.css +67 -80
  42. package/dist/components/ui/Drawer.d.ts +1 -0
  43. package/dist/components/ui/Drawer.js +2 -2
  44. package/dist/components/ui/Drawer.js.map +1 -1
  45. package/dist/locales/de.json +37 -1
  46. package/dist/locales/en.json +37 -1
  47. package/dist/locales/es.json +37 -1
  48. package/dist/locales/fr.json +37 -1
  49. package/dist/locales/it.json +37 -1
  50. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.css +0 -4
  51. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.d.ts +1 -0
  52. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.js +3 -3
  53. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.js.map +1 -1
  54. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyButtonWithDropdown.js +110 -8
  55. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyButtonWithDropdown.js.map +1 -1
  56. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyMenuItem.js +3 -0
  57. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyMenuItem.js.map +1 -1
  58. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/hooks/useCopyArtifact.js +42 -38
  59. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/hooks/useCopyArtifact.js.map +1 -1
  60. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/styles.css +1 -2
  61. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/types.d.ts +2 -1
  62. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.css +428 -15
  63. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.d.ts +1 -0
  64. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js +48 -9
  65. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js.map +1 -1
  66. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/components/TabSwitch.css +150 -0
  67. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/components/TabSwitch.d.ts +9 -0
  68. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/components/TabSwitch.js +32 -0
  69. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/components/TabSwitch.js.map +1 -0
  70. package/esm/components/MemoriArtifactSystem/components/ArtifactHandler/ArtifactHandler.css +2 -0
  71. package/esm/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.css +1 -1
  72. package/esm/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.d.ts +2 -1
  73. package/esm/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.js +16 -27
  74. package/esm/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.js.map +1 -1
  75. package/esm/components/MemoriArtifactSystem/context/ArtifactContext.js +1 -5
  76. package/esm/components/MemoriArtifactSystem/context/ArtifactContext.js.map +1 -1
  77. package/esm/components/icons/Close.d.ts +2 -1
  78. package/esm/components/icons/Close.js +1 -1
  79. package/esm/components/icons/Close.js.map +1 -1
  80. package/esm/components/icons/MenuVertical.d.ts +7 -0
  81. package/esm/components/icons/MenuVertical.js +4 -0
  82. package/esm/components/icons/MenuVertical.js.map +1 -0
  83. package/esm/components/layouts/Chat.js +1 -1
  84. package/esm/components/layouts/Chat.js.map +1 -1
  85. package/esm/components/layouts/FullPage.js +1 -1
  86. package/esm/components/layouts/FullPage.js.map +1 -1
  87. package/esm/components/layouts/ZoomedFullBody.js +1 -1
  88. package/esm/components/layouts/ZoomedFullBody.js.map +1 -1
  89. package/esm/components/layouts/chat.css +67 -80
  90. package/esm/components/ui/Drawer.d.ts +1 -0
  91. package/esm/components/ui/Drawer.js +2 -2
  92. package/esm/components/ui/Drawer.js.map +1 -1
  93. package/esm/locales/de.json +37 -1
  94. package/esm/locales/en.json +37 -1
  95. package/esm/locales/es.json +37 -1
  96. package/esm/locales/fr.json +37 -1
  97. package/esm/locales/it.json +37 -1
  98. package/package.json +1 -1
  99. package/src/components/FilePreview/__snapshots__/FilePreview.test.tsx.snap +9 -0
  100. package/src/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.css +0 -4
  101. package/src/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.tsx +7 -5
  102. package/src/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyButtonWithDropdown.tsx +148 -12
  103. package/src/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyMenuItem.tsx +3 -0
  104. package/src/components/MemoriArtifactSystem/components/ArtifactActions/hooks/useCopyArtifact.ts +54 -47
  105. package/src/components/MemoriArtifactSystem/components/ArtifactActions/styles.css +1 -2
  106. package/src/components/MemoriArtifactSystem/components/ArtifactActions/types.ts +2 -1
  107. package/src/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.css +428 -15
  108. package/src/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.tsx +240 -42
  109. package/src/components/MemoriArtifactSystem/components/ArtifactDrawer/components/TabSwitch.css +150 -0
  110. package/src/components/MemoriArtifactSystem/components/ArtifactDrawer/components/TabSwitch.tsx +79 -0
  111. package/src/components/MemoriArtifactSystem/components/ArtifactHandler/ArtifactHandler.css +2 -0
  112. package/src/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.css +1 -1
  113. package/src/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.tsx +2 -41
  114. package/src/components/MemoriArtifactSystem/context/ArtifactContext.tsx +1 -5
  115. package/src/components/icons/Close.tsx +8 -1
  116. package/src/components/icons/MenuVertical.tsx +29 -0
  117. package/src/components/layouts/Chat.tsx +3 -1
  118. package/src/components/layouts/FullPage.tsx +7 -2
  119. package/src/components/layouts/ZoomedFullBody.tsx +8 -3
  120. package/src/components/layouts/__snapshots__/Chat.test.tsx.snap +1 -1
  121. package/src/components/layouts/__snapshots__/FullPage.test.tsx.snap +112 -104
  122. package/src/components/layouts/__snapshots__/HiddenChat.test.tsx.snap +3 -0
  123. package/src/components/layouts/__snapshots__/ZoomedFullBody.test.tsx.snap +56 -52
  124. package/src/components/layouts/chat.css +67 -80
  125. package/src/components/ui/Drawer.tsx +3 -1
  126. package/src/components/ui/__snapshots__/Alert.test.tsx.snap +3 -0
  127. package/src/locales/de.json +37 -1
  128. package/src/locales/en.json +37 -1
  129. package/src/locales/es.json +37 -1
  130. package/src/locales/fr.json +37 -1
  131. package/src/locales/it.json +38 -1
@@ -20,6 +20,8 @@
20
20
  /* Override drawer width for ArtifactDrawer */
21
21
  .memori-artifact-panel-drawer {
22
22
  --memori-drawer--width-lg: 46%;
23
+ /* Ensure drawer doesn't block left side chat interaction */
24
+ pointer-events: none;
23
25
  }
24
26
 
25
27
  /* Main Drawer Container (Mobile Only) */
@@ -31,6 +33,7 @@
31
33
 
32
34
  .memori-artifact-panel-drawer > div > div > div {
33
35
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
36
+ pointer-events: auto;
34
37
  }
35
38
  /* Web Split Panel Container */
36
39
  .memori-artifact-panel {
@@ -154,7 +157,7 @@
154
157
  .memori-artifact-panel--close-icon {
155
158
  width: 18px;
156
159
  height: 18px;
157
- fill: #000 !important;
160
+ color: #000 !important;
158
161
  }
159
162
 
160
163
  /* Web Split Panel Content */
@@ -346,19 +349,263 @@
346
349
  margin-right: 0.5rem;
347
350
  }
348
351
 
349
- .memori-artifact-drawer--close {
350
- position: absolute;
351
- z-index: 10;
352
- top: 1.5rem;
353
- right: 1.5rem;
354
- margin-left: 0.5rem;
355
- }
356
352
 
357
353
  .memori-artifact-drawer-fullscreen {
358
354
  display: flex;
359
355
  margin-left: 0.5rem;
360
356
  }
361
357
 
358
+ /* New Header Actions Layout */
359
+ .memori-artifact-drawer-header-actions {
360
+ display: flex;
361
+ align-items: center;
362
+ justify-content: space-between;
363
+ padding: 1rem 1.5rem;
364
+ border-bottom: 1px solid var(--artifact-drawer-border);
365
+ background: var(--artifact-drawer-bg);
366
+ gap: 1rem;
367
+ }
368
+
369
+ /* View Mode Toggle */
370
+ .memori-artifact-view-toggle {
371
+ display: flex;
372
+ overflow: hidden;
373
+ align-items: center;
374
+ border: 1px solid var(--artifact-drawer-border);
375
+ border-radius: 8px;
376
+ background: var(--artifact-drawer-bg);
377
+ }
378
+
379
+ .memori-artifact-toggle-button {
380
+ display: flex;
381
+ min-width: 40px;
382
+ height: 36px;
383
+ align-items: center;
384
+ justify-content: center;
385
+ padding: 8px 12px;
386
+ border: none;
387
+ background: transparent;
388
+ color: var(--artifact-drawer-text-muted);
389
+ cursor: pointer;
390
+ transition: all 0.2s ease;
391
+ }
392
+
393
+ .memori-artifact-toggle-button:hover {
394
+ background: rgba(0, 123, 255, 0.1);
395
+ color: var(--artifact-drawer-accent);
396
+ }
397
+
398
+ .memori-artifact-toggle-button--active {
399
+ border: 1px solid var(--artifact-drawer-border);
400
+ background: var(--artifact-drawer-bg);
401
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
402
+ color: var(--artifact-drawer-text);
403
+ }
404
+
405
+ .memori-artifact-toggle-icon {
406
+ width: 16px;
407
+ height: 16px;
408
+ fill: currentColor;
409
+ }
410
+
411
+ /* Refresh Button */
412
+ .memori-artifact-refresh-button {
413
+ display: flex;
414
+ width: 36px;
415
+ height: 36px;
416
+ align-items: center;
417
+ justify-content: center;
418
+ border: 1px solid var(--artifact-drawer-border);
419
+ border-radius: 6px;
420
+ background: var(--artifact-drawer-bg);
421
+ color: var(--artifact-drawer-text-muted);
422
+ transition: all 0.2s ease;
423
+ }
424
+
425
+ .memori-artifact-refresh-button:hover {
426
+ border-color: var(--artifact-drawer-accent);
427
+ background: rgba(0, 123, 255, 0.05);
428
+ color: var(--artifact-drawer-accent);
429
+ }
430
+
431
+ /* Copy Group */
432
+ .memori-artifact-copy-group {
433
+ display: flex;
434
+ overflow: hidden;
435
+ align-items: center;
436
+ border: 1px solid var(--artifact-drawer-border);
437
+ border-radius: 6px;
438
+ background: var(--artifact-drawer-bg);
439
+ }
440
+
441
+ .memori-artifact-copy-button {
442
+ display: flex;
443
+ align-items: center;
444
+ padding: 8px 16px;
445
+ border: none;
446
+ border-right: 1px solid var(--artifact-drawer-border);
447
+ background: transparent;
448
+ color: var(--artifact-drawer-text);
449
+ cursor: pointer;
450
+ font-size: 14px;
451
+ font-weight: 500;
452
+ transition: all 0.2s ease;
453
+ }
454
+
455
+ .memori-artifact-copy-button:hover {
456
+ background: rgba(0, 123, 255, 0.05);
457
+ color: var(--artifact-drawer-accent);
458
+ }
459
+
460
+ .memori-artifact-copy-button--success {
461
+ background: #f0fdf4;
462
+ color: #15803d;
463
+ }
464
+
465
+ .memori-artifact-copy-button--error {
466
+ background: #fef2f2;
467
+ color: #dc2626;
468
+ }
469
+
470
+ .memori-artifact-copy-button--loading {
471
+ cursor: wait;
472
+ }
473
+
474
+ .memori-artifact-copy-text {
475
+ font-size: 14px;
476
+ font-weight: 500;
477
+ }
478
+
479
+ .memori-artifact-copy-dropdown-wrapper {
480
+ position: relative;
481
+ }
482
+
483
+ .memori-artifact-copy-dropdown-trigger {
484
+ display: flex;
485
+ }
486
+
487
+ .memori-artifact-copy-dropdown-button {
488
+ display: flex;
489
+ width: 36px;
490
+ height: 36px;
491
+ align-items: center;
492
+ justify-content: center;
493
+ padding: 8px 12px;
494
+ border: none;
495
+ background: transparent;
496
+ color: var(--artifact-drawer-text-muted);
497
+ cursor: pointer;
498
+ transition: all 0.2s ease;
499
+ }
500
+
501
+ .memori-artifact-copy-dropdown-button:hover {
502
+ background: rgba(0, 123, 255, 0.05);
503
+ color: var(--artifact-drawer-accent);
504
+ }
505
+
506
+ .memori-artifact-copy-chevron {
507
+ width: 12px;
508
+ height: 12px;
509
+ fill: currentColor;
510
+ }
511
+
512
+ .memori-artifact-copy-dropdown {
513
+ position: absolute;
514
+ z-index: 1000;
515
+ top: 100%;
516
+ right: 0;
517
+ min-width: 200px;
518
+ border: 1px solid var(--artifact-drawer-border);
519
+ border-radius: 6px;
520
+ margin-top: 4px;
521
+ background: var(--artifact-drawer-bg);
522
+ box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
523
+ }
524
+
525
+ .memori-artifact-copy-dropdown-list {
526
+ padding: 4px 0;
527
+ }
528
+
529
+ .memori-artifact-copy-dropdown-item {
530
+ display: flex;
531
+ width: 100%;
532
+ align-items: center;
533
+ padding: 8px 16px;
534
+ border: none;
535
+ background: transparent;
536
+ color: var(--artifact-drawer-text);
537
+ cursor: pointer;
538
+ font-size: 14px;
539
+ text-align: left;
540
+ transition: all 0.2s ease;
541
+ }
542
+
543
+ .memori-artifact-copy-dropdown-item:hover,
544
+ .memori-artifact-copy-dropdown-item--active {
545
+ background: rgba(0, 123, 255, 0.05);
546
+ color: var(--artifact-drawer-accent);
547
+ }
548
+
549
+ .memori-artifact-copy-dropdown-text {
550
+ margin-left: 8px;
551
+ font-size: 14px;
552
+ font-weight: 500;
553
+ }
554
+
555
+ /* Share Button */
556
+ .memori-artifact-share-button {
557
+ display: flex;
558
+ align-items: center;
559
+ padding: 8px 16px;
560
+ border: 1px solid var(--artifact-drawer-border);
561
+ border-radius: 6px;
562
+ background: var(--artifact-drawer-bg);
563
+ color: var(--artifact-drawer-text);
564
+ cursor: pointer;
565
+ font-size: 14px;
566
+ font-weight: 500;
567
+ gap: 8px;
568
+ transition: all 0.2s ease;
569
+ }
570
+
571
+ .memori-artifact-share-button:hover {
572
+ border-color: var(--artifact-drawer-accent);
573
+ background: var(--artifact-drawer-accent);
574
+ color: white;
575
+ }
576
+
577
+ .memori-artifact-share-text {
578
+ font-size: 14px;
579
+ font-weight: 500;
580
+ }
581
+
582
+ /* Close Button */
583
+ .memori-artifact-close-button {
584
+ display: flex;
585
+ width: 36px;
586
+ height: 36px;
587
+ align-items: center;
588
+ justify-content: center;
589
+ border: 1px solid var(--artifact-drawer-border);
590
+ border-radius: 6px;
591
+ background: var(--artifact-drawer-bg);
592
+ color: var(--artifact-drawer-text-muted);
593
+ cursor: pointer;
594
+ transition: all 0.2s ease;
595
+ }
596
+
597
+ .memori-artifact-close-button:hover {
598
+ border-color: #ef4444;
599
+ background: #fef2f2;
600
+ color: #ef4444;
601
+ }
602
+
603
+ /* Mobile Actions */
604
+ .memori-artifact-mobile-actions {
605
+ display: none;
606
+ }
607
+
608
+ /* Legacy container for backward compatibility */
362
609
  .memori-artifact-drawer-container-actions{
363
610
  display: flex;
364
611
  flex-flow: row;
@@ -409,6 +656,18 @@
409
656
  content: '';
410
657
  }
411
658
 
659
+ .memori-button--more-options{
660
+ padding: 8px 16px;
661
+ border: 1px solid #e1e5e9;
662
+ border-radius: 6px;
663
+ border-top-color: rgb(225, 229, 233);
664
+ border-right-color: rgb(225, 229, 233);
665
+ border-bottom-color: rgb(225, 229, 233);
666
+ border-left-color: rgb(225, 229, 233);
667
+ border-bottom-right-radius: 6px;
668
+ border-top-right-radius: 6px;
669
+ }
670
+
412
671
  .memori-artifact-drawer--sidebar {
413
672
  width: 300px;
414
673
  flex-shrink: 0;
@@ -439,6 +698,14 @@
439
698
  font-family: var(--memori-font-family, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif);
440
699
  }
441
700
 
701
+ .memori-artifact-drawer--close {
702
+ display: flex;
703
+ align-items: center;
704
+ justify-content: center;
705
+ border-radius: 6px;
706
+ /* background: var(--artifact-drawer-bg); */
707
+ margin-left: auto;
708
+ }
442
709
 
443
710
  @media (max-width: 1024px) {
444
711
  .memori-artifact-panel-drawer > div > div > div {
@@ -461,6 +728,19 @@
461
728
  display: none !important;
462
729
  }
463
730
 
731
+ /* Mobile header actions */
732
+ .memori-artifact-drawer-header-actions {
733
+ display: none;
734
+ }
735
+
736
+ .memori-artifact-mobile-actions {
737
+ position: absolute;
738
+ z-index: 1001;
739
+ top: 1rem;
740
+ right: 1rem;
741
+ display: block;
742
+ }
743
+
464
744
  /* Mobile drawer styles */
465
745
  .memori-artifact-drawer--panel-mobile {
466
746
  position: fixed !important;
@@ -518,13 +798,6 @@
518
798
  transform: none;
519
799
  }
520
800
 
521
- .memori-artifact-drawer--close {
522
- position: absolute !important;
523
- top: 1.5rem !important;
524
- right: 1.5rem !important;
525
- margin: 0 !important;
526
- }
527
-
528
801
  .memori-artifact-drawer--content {
529
802
  overflow: hidden;
530
803
  min-height: 0;
@@ -621,6 +894,146 @@
621
894
  background-color: rgba(0, 0, 0, 0.5) !important;
622
895
  }
623
896
 
897
+ /* Top Right Header Section */
898
+ .memori-artifact-drawer-top-right {
899
+ z-index: 1001;
900
+ display: flex;
901
+ align-items: center;
902
+ gap: 0.5rem;
903
+ }
904
+
905
+ /* Mobile Actions Dropdown */
906
+ .memori-mobile-actions-menu {
907
+ position: relative;
908
+ display: inline-block;
909
+ margin-left: auto;
910
+ }
911
+
912
+ .memori-mobile-actions-trigger {
913
+ display: inline-block;
914
+ }
915
+
916
+ .memori-mobile-dropdown {
917
+ position: absolute;
918
+ z-index: 1000;
919
+ top: 100%;
920
+ right: 0;
921
+ min-width: 200px;
922
+ border: 1px solid var(--artifact-drawer-border);
923
+ border-radius: var(--artifact-drawer-radius);
924
+ margin-top: 0.5rem;
925
+ backdrop-filter: blur(10px);
926
+ background: var(--artifact-drawer-bg);
927
+ box-shadow: var(--artifact-drawer-shadow);
928
+ }
929
+
930
+ /* Mobile-specific dropdown positioning */
931
+ @media (max-width: 768px) {
932
+
933
+ .memori-artifact-drawer--close{
934
+ margin-left: 0;
935
+ }
936
+
937
+ .memori-artifact-panel--header{
938
+ margin-bottom: 0.5rem;
939
+ }
940
+
941
+ .memori-mobile-dropdown {
942
+ right: 0;
943
+ left: auto;
944
+ min-width: 180px;
945
+ max-width: calc(100vw - 2rem);
946
+ }
947
+
948
+ .memori-mobile-dropdown-list {
949
+ padding: 0.25rem;
950
+ gap: 0.125rem;
951
+ }
952
+
953
+ .memori-mobile-dropdown .memori-artifact-action-btn {
954
+ min-height: 44px; /* Ensure touch-friendly size */
955
+ padding: 0.625rem 0.75rem;
956
+ font-size: 0.875rem;
957
+ }
958
+
959
+ .memori-mobile-dropdown .memori-artifact-action-text {
960
+ color: var(--artifact-drawer-text);
961
+ font-size: 0.8125rem;
962
+ font-weight: 600;
963
+ }
964
+
965
+ .memori-mobile-dropdown .memori-artifact-action-icon {
966
+ width: 16px;
967
+ height: 16px;
968
+ flex-shrink: 0;
969
+ }
970
+ }
971
+
972
+ .memori-mobile-dropdown-list {
973
+ display: flex;
974
+ flex-direction: column;
975
+ padding: 0.5rem;
976
+ gap: 0.25rem;
977
+ }
978
+
979
+ .memori-mobile-dropdown .memori-artifact-action-btn {
980
+ display: flex;
981
+ width: 100%;
982
+ align-items: center;
983
+ justify-content: flex-start;
984
+ padding: 0.75rem 1rem;
985
+ border: 1px solid transparent;
986
+ border-radius: var(--artifact-drawer-radius);
987
+ background: transparent;
988
+ color: var(--artifact-drawer-text);
989
+ text-align: left;
990
+ transition: all 0.2s ease;
991
+ }
992
+
993
+ .memori-mobile-dropdown .memori-artifact-action-btn:hover {
994
+ border-color: var(--memori-primary);
995
+ background: var(--memori-button-hover-bg, rgba(0, 123, 255, 0.1));
996
+ color: var(--memori-primary);
997
+ }
998
+
999
+ .memori-mobile-dropdown .memori-artifact-action-text {
1000
+ overflow: visible;
1001
+ margin-left: 0.5rem;
1002
+ color: inherit;
1003
+ font-size: 0.875rem;
1004
+ font-weight: 500;
1005
+ white-space: nowrap;
1006
+ }
1007
+
1008
+ /* Mobile Dropdown Animations */
1009
+ .memori-mobile-dropdown-enter {
1010
+ transition: all 0.2s ease-out;
1011
+ }
1012
+
1013
+ .memori-mobile-dropdown-enter-from {
1014
+ opacity: 0;
1015
+ transform: translateY(-10px) scale(0.95);
1016
+ }
1017
+
1018
+ .memori-mobile-dropdown-enter-to {
1019
+ opacity: 1;
1020
+ transform: translateY(0) scale(1);
1021
+ }
1022
+
1023
+ .memori-mobile-dropdown-leave {
1024
+ transition: all 0.15s ease-in;
1025
+ }
1026
+
1027
+ .memori-mobile-dropdown-leave-from {
1028
+ opacity: 1;
1029
+ transform: translateY(0) scale(1);
1030
+ }
1031
+
1032
+ .memori-mobile-dropdown-leave-to {
1033
+ opacity: 0;
1034
+ transform: translateY(-10px) scale(0.95);
1035
+ }
1036
+
624
1037
  /* Focus and Accessibility */
625
1038
  .memori-artifact-drawer--panel:focus {
626
1039
  outline: none;