@conduction/nextcloud-vue 0.1.0-beta.1 → 0.1.0-beta.2

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 (54) hide show
  1. package/README.md +226 -0
  2. package/dist/nextcloud-vue.cjs.js +7039 -2409
  3. package/dist/nextcloud-vue.cjs.js.map +1 -1
  4. package/dist/nextcloud-vue.css +237 -52
  5. package/dist/nextcloud-vue.esm.js +7012 -2386
  6. package/dist/nextcloud-vue.esm.js.map +1 -1
  7. package/package.json +2 -4
  8. package/src/components/CnActionsBar/CnActionsBar.vue +225 -0
  9. package/src/components/CnActionsBar/index.js +1 -0
  10. package/src/components/CnCopyDialog/CnCopyDialog.vue +250 -0
  11. package/src/components/CnCopyDialog/index.js +1 -0
  12. package/src/components/CnDataTable/CnDataTable.vue +0 -5
  13. package/src/components/CnDeleteDialog/CnDeleteDialog.vue +170 -0
  14. package/src/components/CnDeleteDialog/index.js +1 -0
  15. package/src/components/CnFormDialog/CnFormDialog.vue +629 -0
  16. package/src/components/CnFormDialog/index.js +1 -0
  17. package/src/components/CnIcon/CnIcon.vue +89 -0
  18. package/src/components/CnIcon/index.js +1 -0
  19. package/src/components/CnIndexPage/CnIndexPage.vue +434 -300
  20. package/src/components/CnIndexSidebar/CnIndexSidebar.vue +484 -0
  21. package/src/components/CnIndexSidebar/index.js +1 -0
  22. package/src/components/CnPageHeader/CnPageHeader.vue +57 -0
  23. package/src/components/CnPageHeader/index.js +1 -0
  24. package/src/components/CnRegisterMapping/CnRegisterMapping.vue +792 -0
  25. package/src/components/CnRegisterMapping/index.js +1 -0
  26. package/src/components/index.js +8 -4
  27. package/src/constants/metadata.js +30 -0
  28. package/src/css/actions-bar.css +48 -0
  29. package/src/css/badge.css +4 -4
  30. package/src/css/card.css +23 -23
  31. package/src/css/detail.css +13 -13
  32. package/src/css/index-page.css +32 -0
  33. package/src/css/index-sidebar.css +187 -0
  34. package/src/css/index.css +4 -0
  35. package/src/css/layout.css +14 -14
  36. package/src/css/page-header.css +33 -0
  37. package/src/css/pagination.css +12 -12
  38. package/src/css/table.css +21 -22
  39. package/src/css/utilities.css +2 -2
  40. package/src/index.js +11 -8
  41. package/src/store/plugins/index.js +1 -0
  42. package/src/store/plugins/registerMapping.js +185 -0
  43. package/src/store/useObjectStore.js +122 -61
  44. package/src/utils/headers.js +7 -1
  45. package/src/utils/index.js +1 -1
  46. package/src/utils/schema.js +133 -1
  47. package/src/components/CnDetailViewLayout/CnDetailViewLayout.vue +0 -88
  48. package/src/components/CnDetailViewLayout/index.js +0 -1
  49. package/src/components/CnEmptyState/CnEmptyState.vue +0 -78
  50. package/src/components/CnEmptyState/index.js +0 -1
  51. package/src/components/CnListViewLayout/CnListViewLayout.vue +0 -80
  52. package/src/components/CnListViewLayout/index.js +0 -1
  53. package/src/components/CnViewModeToggle/CnViewModeToggle.vue +0 -77
  54. package/src/components/CnViewModeToggle/index.js +0 -1
@@ -1,3 +1,16 @@
1
+ /* @conduction/nextcloud-vue — Main CSS entry point */
2
+ @import './table.css';
3
+ @import './card.css';
4
+ @import './pagination.css';
5
+ @import './detail.css';
6
+ @import './badge.css';
7
+ @import './layout.css';
8
+ @import './utilities.css';
9
+ @import './page-header.css';
10
+ @import './actions-bar.css';
11
+ @import './index-page.css';
12
+ @import './index-sidebar.css';
13
+
1
14
 
2
15
  .cn-cell-renderer--uuid[data-v-186e38ee] {
3
16
  font-family: monospace;
@@ -476,14 +489,6 @@
476
489
  }
477
490
 
478
491
 
479
- .cn-view-mode-toggle[data-v-a3d14b7c] {
480
- display: inline-flex;
481
- gap: 0;
482
- border-radius: var(--border-radius-pill, 20px);
483
- overflow: hidden;
484
- }
485
-
486
-
487
492
  .cn-row-action--destructive[data-v-02a7d254] {
488
493
  color: var(--color-error) !important;
489
494
  }
@@ -707,65 +712,94 @@
707
712
  }
708
713
 
709
714
 
710
- .cn-index-page[data-v-a107d580] {
711
- padding: 20px;
715
+ .cn-delete__confirm[data-v-6d686ac8] {
716
+ padding: 4px 0;
712
717
  }
713
- .cn-index-page__header[data-v-a107d580] {
714
- display: flex;
715
- justify-content: space-between;
716
- align-items: center;
717
- margin-bottom: 16px;
718
- flex-wrap: wrap;
719
- gap: 12px;
718
+
719
+
720
+ .cn-copy__pattern[data-v-f924b308] {
721
+ margin-bottom: 16px;
720
722
  }
721
- .cn-index-page__title-area[data-v-a107d580] {
722
- display: flex;
723
- align-items: baseline;
723
+ .cn-copy__pattern label[data-v-f924b308] {
724
+ display: block;
725
+ font-weight: 600;
726
+ margin-bottom: 4px;
727
+ }
728
+ .cn-copy__preview[data-v-f924b308] {
729
+ margin-top: 12px;
730
+ }
731
+ .cn-copy__preview-row[data-v-f924b308] {
732
+ display: flex;
733
+ align-items: center;
724
734
  gap: 8px;
735
+ padding: 8px 12px;
736
+ background-color: var(--color-background-hover);
737
+ border-radius: var(--border-radius);
725
738
  }
726
- .cn-index-page__title[data-v-a107d580] {
727
- margin: 0;
728
- font-size: 22px;
729
- font-weight: 700;
739
+ .cn-copy__preview-original[data-v-f924b308] {
740
+ color: var(--color-text-maxcontrast);
741
+ overflow: hidden;
742
+ text-overflow: ellipsis;
743
+ white-space: nowrap;
730
744
  }
731
- .cn-index-page__count[data-v-a107d580] {
732
- font-size: 14px;
745
+ .cn-copy__preview-arrow[data-v-f924b308] {
746
+ flex-shrink: 0;
733
747
  color: var(--color-text-maxcontrast);
734
748
  }
735
- .cn-index-page__header-actions[data-v-a107d580] {
736
- display: flex;
737
- align-items: center;
738
- gap: 8px;
749
+ .cn-copy__preview-new[data-v-f924b308] {
750
+ font-weight: 500;
751
+ overflow: hidden;
752
+ text-overflow: ellipsis;
753
+ white-space: nowrap;
739
754
  }
740
- .cn-index-page__body[data-v-a107d580] {
741
- display: flex;
742
- gap: 0;
755
+
756
+
757
+ .cn-form-dialog__form[data-v-f53fc7fa] {
758
+ display: flex;
759
+ flex-direction: column;
760
+ gap: 4px;
743
761
  }
744
- .cn-index-page__body--with-sidebar[data-v-a107d580] {
745
- gap: 0;
762
+ .cn-form-dialog__field[data-v-f53fc7fa] {
763
+ margin-bottom: 8px;
746
764
  }
747
- .cn-index-page__sidebar[data-v-a107d580] {
748
- flex-shrink: 0;
765
+ .cn-form-dialog__textarea-wrapper[data-v-f53fc7fa],
766
+ .cn-form-dialog__select-wrapper[data-v-f53fc7fa] {
767
+ display: flex;
768
+ flex-direction: column;
769
+ gap: 4px;
749
770
  }
750
- .cn-index-page__main[data-v-a107d580] {
751
- flex: 1;
752
- min-width: 0;
771
+ .cn-form-dialog__label[data-v-f53fc7fa] {
772
+ font-weight: 600;
773
+ font-size: 0.9em;
774
+ color: var(--color-main-text);
753
775
  }
754
- .cn-index-page__search[data-v-a107d580] {
755
- margin-bottom: 16px;
776
+ .cn-form-dialog__textarea[data-v-f53fc7fa] {
777
+ width: 100%;
778
+ min-height: 80px;
779
+ padding: 8px;
780
+ border: 2px solid var(--color-border-maxcontrast);
781
+ border-radius: var(--border-radius-large);
782
+ background-color: var(--color-main-background);
783
+ color: var(--color-main-text);
784
+ font-family: inherit;
785
+ font-size: inherit;
786
+ resize: vertical;
756
787
  }
757
- .cn-index-page__loading[data-v-a107d580] {
758
- display: flex;
759
- justify-content: center;
760
- padding: 60px;
788
+ .cn-form-dialog__textarea[data-v-f53fc7fa]:focus {
789
+ border-color: var(--color-primary-element);
790
+ outline: none;
761
791
  }
762
- .cn-index-page__empty[data-v-a107d580] {
763
- padding: 40px 20px;
764
- text-align: center;
792
+ .cn-form-dialog__textarea[data-v-f53fc7fa]:disabled {
793
+ opacity: 0.5;
794
+ cursor: not-allowed;
795
+ }
796
+ .cn-form-dialog__helper[data-v-f53fc7fa] {
797
+ font-size: 0.85em;
798
+ color: var(--color-text-maxcontrast);
799
+ }
800
+ .cn-form-dialog__helper--error[data-v-f53fc7fa] {
801
+ color: var(--color-error);
765
802
  }
766
- .cn-index-page__pagination[data-v-a107d580] {
767
- margin-top: 16px;
768
- }
769
803
 
770
804
 
771
805
  .cn-kpi-grid[data-v-74e15c14] {
@@ -801,3 +835,154 @@
801
835
  grid-template-columns: 1fr;
802
836
  }
803
837
  }
838
+
839
+
840
+ .cn-register-mapping__group[data-v-5bc1de37] {
841
+ margin-bottom: 24px;
842
+ border: 1px solid var(--color-border);
843
+ border-radius: var(--border-radius-large);
844
+ padding: 20px;
845
+ background: var(--color-background-hover);
846
+ }
847
+ .cn-register-mapping__group[data-v-5bc1de37]:last-child {
848
+ margin-bottom: 0;
849
+ }
850
+ .cn-register-mapping__group-header[data-v-5bc1de37] {
851
+ display: flex;
852
+ align-items: center;
853
+ justify-content: space-between;
854
+ margin-bottom: 12px;
855
+ }
856
+ .cn-register-mapping__group-title[data-v-5bc1de37] {
857
+ font-size: 16px;
858
+ font-weight: 600;
859
+ margin: 0;
860
+ color: var(--color-main-text);
861
+ }
862
+ .cn-register-mapping__group-status[data-v-5bc1de37] {
863
+ font-size: 13px;
864
+ color: var(--color-text-maxcontrast);
865
+ }
866
+ .cn-register-mapping__group-description[data-v-5bc1de37] {
867
+ color: var(--color-text-maxcontrast);
868
+ font-size: 13px;
869
+ margin: 0 0 12px 0;
870
+ }
871
+ .cn-register-mapping__label[data-v-5bc1de37] {
872
+ display: block;
873
+ font-weight: 500;
874
+ font-size: 13px;
875
+ color: var(--color-text-maxcontrast);
876
+ margin-bottom: 4px;
877
+ }
878
+ .cn-register-mapping__register-select[data-v-5bc1de37] {
879
+ margin-bottom: 16px;
880
+ max-width: 400px;
881
+ }
882
+ .cn-register-mapping__type-list[data-v-5bc1de37] {
883
+ border: 1px solid var(--color-border);
884
+ border-radius: var(--border-radius);
885
+ overflow: hidden;
886
+ background: var(--color-main-background);
887
+ }
888
+ .cn-register-mapping__type-list-header[data-v-5bc1de37] {
889
+ display: grid;
890
+ grid-template-columns: 1fr 1fr 40px 32px;
891
+ align-items: center;
892
+ padding: 8px 16px;
893
+ font-size: 12px;
894
+ font-weight: 600;
895
+ color: var(--color-text-maxcontrast);
896
+ text-transform: uppercase;
897
+ letter-spacing: 0.5px;
898
+ border-bottom: 1px solid var(--color-border);
899
+ background: var(--color-background-hover);
900
+ }
901
+ .cn-register-mapping__type-row[data-v-5bc1de37] {
902
+ display: grid;
903
+ grid-template-columns: 1fr 1fr 40px 32px;
904
+ align-items: center;
905
+ padding: 10px 16px;
906
+ border-bottom: 1px solid var(--color-border);
907
+ cursor: pointer;
908
+ transition: background-color 0.15s ease;
909
+ }
910
+ .cn-register-mapping__type-row[data-v-5bc1de37]:hover {
911
+ background: var(--color-background-hover);
912
+ }
913
+ .cn-register-mapping__type-row--expanded[data-v-5bc1de37] {
914
+ background: var(--color-background-hover);
915
+ }
916
+ .cn-register-mapping__type-name[data-v-5bc1de37] {
917
+ font-weight: 500;
918
+ color: var(--color-main-text);
919
+ }
920
+ .cn-register-mapping__type-schema[data-v-5bc1de37] {
921
+ color: var(--color-text-maxcontrast);
922
+ font-size: 13px;
923
+ }
924
+ .cn-register-mapping__type-status[data-v-5bc1de37] {
925
+ display: flex;
926
+ justify-content: center;
927
+ }
928
+ .cn-register-mapping__type-chevron[data-v-5bc1de37] {
929
+ display: flex;
930
+ justify-content: center;
931
+ color: var(--color-text-maxcontrast);
932
+ }
933
+ .cn-register-mapping__status-dot[data-v-5bc1de37] {
934
+ display: inline-block;
935
+ width: 10px;
936
+ height: 10px;
937
+ border-radius: 50%;
938
+ }
939
+ .cn-register-mapping__status-dot--configured[data-v-5bc1de37] {
940
+ background-color: var(--color-success);
941
+ }
942
+ .cn-register-mapping__status-dot--unconfigured[data-v-5bc1de37] {
943
+ background-color: var(--color-warning);
944
+ }
945
+ .cn-register-mapping__type-detail[data-v-5bc1de37] {
946
+ padding: 12px 16px 16px;
947
+ border-bottom: 1px solid var(--color-border);
948
+ background: var(--color-main-background);
949
+ }
950
+ .cn-register-mapping__type-description[data-v-5bc1de37] {
951
+ color: var(--color-text-maxcontrast);
952
+ font-size: 13px;
953
+ margin: 0 0 8px 0;
954
+ }
955
+
956
+ /* Slide transition */
957
+ .slide-enter-active[data-v-5bc1de37],
958
+ .slide-leave-active[data-v-5bc1de37] {
959
+ transition: all 0.2s ease;
960
+ max-height: 200px;
961
+ overflow: hidden;
962
+ }
963
+ .slide-enter[data-v-5bc1de37],
964
+ .slide-leave-to[data-v-5bc1de37] {
965
+ max-height: 0;
966
+ padding-top: 0;
967
+ padding-bottom: 0;
968
+ opacity: 0;
969
+ }
970
+
971
+ /* Last row in list should not have bottom border */
972
+ .cn-register-mapping__type-list[data-v-5bc1de37] > :last-child {
973
+ border-bottom: none;
974
+ }
975
+ @media (max-width: 768px) {
976
+ .cn-register-mapping__type-list-header[data-v-5bc1de37] {
977
+ display: none;
978
+ }
979
+ .cn-register-mapping__type-row[data-v-5bc1de37] {
980
+ grid-template-columns: 1fr auto 32px;
981
+ }
982
+ .cn-register-mapping__type-schema[data-v-5bc1de37] {
983
+ display: none;
984
+ }
985
+ .cn-register-mapping__register-select[data-v-5bc1de37] {
986
+ max-width: none;
987
+ }
988
+ }