@conduction/nextcloud-vue 2.148.0 → 2.149.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 (101) hide show
  1. package/dist/esm/components/CnAuditTrailCard/CnAuditTrailCard.vue.js +1 -1
  2. package/dist/esm/components/CnAuditTrailCard/CnAuditTrailCard.vue2.js +24 -7
  3. package/dist/esm/components/CnAuditTrailCard/CnAuditTrailCard.vue2.js.map +1 -1
  4. package/dist/esm/components/CnAuditTrailCard/CnAuditTrailCard.vue3.js.map +1 -1
  5. package/dist/esm/components/CnAuditTrailWidget/CnAuditTrailWidget.vue.js +1 -1
  6. package/dist/esm/components/CnAuditTrailWidget/CnAuditTrailWidget.vue2.js +12 -1
  7. package/dist/esm/components/CnAuditTrailWidget/CnAuditTrailWidget.vue2.js.map +1 -1
  8. package/dist/esm/components/CnAuditTrailWidget/CnAuditTrailWidget.vue3.js +2 -1
  9. package/dist/esm/components/CnAuditTrailWidget/CnAuditTrailWidget.vue3.js.map +1 -1
  10. package/dist/esm/components/CnChecklistRunWidget/CnChecklistRunWidget.vue.js +1 -1
  11. package/dist/esm/components/CnChecklistRunWidget/CnChecklistRunWidget.vue2.js +23 -1
  12. package/dist/esm/components/CnChecklistRunWidget/CnChecklistRunWidget.vue2.js.map +1 -1
  13. package/dist/esm/components/CnChecklistRunWidget/CnChecklistRunWidget.vue3.js +1 -1
  14. package/dist/esm/components/CnChecklistRunWidget/CnChecklistRunWidget.vue3.js.map +1 -1
  15. package/dist/esm/components/CnDataTable/CnDataTable.vue2.js +34 -1
  16. package/dist/esm/components/CnDataTable/CnDataTable.vue2.js.map +1 -1
  17. package/dist/esm/components/CnDataTable/CnDataTable.vue3.js.map +1 -1
  18. package/dist/esm/components/CnDetailWidgetHost/CnDetailWidgetHeaderItems.vue.js +1 -1
  19. package/dist/esm/components/CnDetailWidgetHost/CnDetailWidgetHeaderItems.vue2.js.map +1 -1
  20. package/dist/esm/components/CnDetailWidgetHost/CnDetailWidgetHeaderItems.vue3.js.map +1 -1
  21. package/dist/esm/components/CnDeviceFramesWidget/CnDeviceFramesWidget.vue.js +1 -1
  22. package/dist/esm/components/CnDeviceFramesWidget/CnDeviceFramesWidget.vue2.js.map +1 -1
  23. package/dist/esm/components/CnDeviceFramesWidget/CnDeviceFramesWidget.vue3.js.map +1 -1
  24. package/dist/esm/components/CnDuplicateWarning/CnDuplicateWarning.vue.js +1 -1
  25. package/dist/esm/components/CnDuplicateWarning/CnDuplicateWarning.vue2.js +64 -8
  26. package/dist/esm/components/CnDuplicateWarning/CnDuplicateWarning.vue2.js.map +1 -1
  27. package/dist/esm/components/CnDuplicateWarning/CnDuplicateWarning.vue3.js +14 -4
  28. package/dist/esm/components/CnDuplicateWarning/CnDuplicateWarning.vue3.js.map +1 -1
  29. package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue.js +1 -1
  30. package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue2.js +26 -3
  31. package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue2.js.map +1 -1
  32. package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue3.js +10 -2
  33. package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue3.js.map +1 -1
  34. package/dist/esm/components/CnFieldListWidget/CnFieldListWidget.vue.js +1 -1
  35. package/dist/esm/components/CnFieldListWidget/CnFieldListWidget.vue2.js +84 -1
  36. package/dist/esm/components/CnFieldListWidget/CnFieldListWidget.vue2.js.map +1 -1
  37. package/dist/esm/components/CnFieldListWidget/CnFieldListWidget.vue3.js +61 -33
  38. package/dist/esm/components/CnFieldListWidget/CnFieldListWidget.vue3.js.map +1 -1
  39. package/dist/esm/components/CnFlowRunsWidget/CnFlowRunsWidget.vue.js +1 -1
  40. package/dist/esm/components/CnFlowRunsWidget/CnFlowRunsWidget.vue2.js +49 -2
  41. package/dist/esm/components/CnFlowRunsWidget/CnFlowRunsWidget.vue2.js.map +1 -1
  42. package/dist/esm/components/CnFlowRunsWidget/CnFlowRunsWidget.vue3.js +90 -59
  43. package/dist/esm/components/CnFlowRunsWidget/CnFlowRunsWidget.vue3.js.map +1 -1
  44. package/dist/esm/components/CnFollowingWidgetHost/CnFollowingWidgetHost.vue2.js +3 -1
  45. package/dist/esm/components/CnFollowingWidgetHost/CnFollowingWidgetHost.vue2.js.map +1 -1
  46. package/dist/esm/components/CnFollowingWidgetHost/CnFollowingWidgetHost.vue3.js.map +1 -1
  47. package/dist/esm/components/CnNotesCard/CnNotesCard.vue.js +1 -1
  48. package/dist/esm/components/CnNotesCard/CnNotesCard.vue2.js +10 -0
  49. package/dist/esm/components/CnNotesCard/CnNotesCard.vue2.js.map +1 -1
  50. package/dist/esm/components/CnNotesCard/CnNotesCard.vue3.js.map +1 -1
  51. package/dist/esm/components/CnObjectCard/CnObjectCard.vue.js +1 -1
  52. package/dist/esm/components/CnObjectCard/CnObjectCard.vue2.js +11 -0
  53. package/dist/esm/components/CnObjectCard/CnObjectCard.vue2.js.map +1 -1
  54. package/dist/esm/components/CnObjectCard/CnObjectCard.vue3.js +28 -21
  55. package/dist/esm/components/CnObjectCard/CnObjectCard.vue3.js.map +1 -1
  56. package/dist/esm/components/CnObjectListWidget/CnObjectListWidget.vue.js +1 -1
  57. package/dist/esm/components/CnObjectListWidget/CnObjectListWidget.vue2.js +1 -1
  58. package/dist/esm/components/CnObjectListWidget/CnObjectListWidget.vue2.js.map +1 -1
  59. package/dist/esm/components/CnObjectListWidget/CnObjectListWidget.vue3.js.map +1 -1
  60. package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue.js +1 -1
  61. package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue2.js +3 -15
  62. package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue2.js.map +1 -1
  63. package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue3.js +123 -115
  64. package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue3.js.map +1 -1
  65. package/dist/esm/components/CnRegisterMapping/CnRegisterMapping.vue.js +1 -1
  66. package/dist/esm/components/CnRegisterMapping/CnRegisterMapping.vue2.js +4 -0
  67. package/dist/esm/components/CnRegisterMapping/CnRegisterMapping.vue2.js.map +1 -1
  68. package/dist/esm/components/CnRegisterMapping/CnRegisterMapping.vue3.js.map +1 -1
  69. package/dist/esm/l10n/en.json.js +2 -1
  70. package/dist/esm/l10n/en.json.js.map +1 -1
  71. package/dist/esm/l10n/nl.json.js +2 -1
  72. package/dist/esm/l10n/nl.json.js.map +1 -1
  73. package/dist/esm/library-style.js +1 -1
  74. package/dist/esm/nextcloud-vue.css +677 -444
  75. package/dist/nextcloud-vue.cjs.js +1336 -942
  76. package/dist/nextcloud-vue.cjs.js.map +2 -2
  77. package/dist/nextcloud-vue.css +677 -444
  78. package/l10n/en.json +2 -1
  79. package/l10n/nl.json +2 -1
  80. package/package.json +1 -1
  81. package/src/components/CnAuditTrailCard/CnAuditTrailCard.vue +24 -7
  82. package/src/components/CnAuditTrailWidget/CnAuditTrailWidget.vue +13 -1
  83. package/src/components/CnChecklistRunWidget/CnChecklistRunWidget.vue +29 -2
  84. package/src/components/CnDataTable/CnDataTable.vue +34 -1
  85. package/src/components/CnDetailWidgetHost/CnDetailWidgetHeaderItems.vue +6 -1
  86. package/src/components/CnDeviceFramesWidget/CnDeviceFramesWidget.vue +1 -0
  87. package/src/components/CnDuplicateWarning/CnDuplicateWarning.vue +74 -10
  88. package/src/components/CnFactsWidget/CnFactsWidget.vue +35 -3
  89. package/src/components/CnFieldListWidget/CnFieldListWidget.vue +131 -3
  90. package/src/components/CnFlowRunsWidget/CnFlowRunsWidget.vue +103 -5
  91. package/src/components/CnFollowingWidgetHost/CnFollowingWidgetHost.vue +3 -1
  92. package/src/components/CnNotesCard/CnNotesCard.vue +10 -0
  93. package/src/components/CnObjectCard/CnObjectCard.vue +16 -0
  94. package/src/components/CnObjectListWidget/CnObjectListWidget.vue +1 -1
  95. package/src/components/CnRecordListWidget/CnRecordListWidget.vue +19 -19
  96. package/src/components/CnRegisterMapping/CnRegisterMapping.vue +4 -0
  97. package/src/css/dialog.css +17 -0
  98. package/src/css/look-board-detail.css +52 -3
  99. package/src/css/look-board-index.css +37 -1
  100. package/src/css/look-board.css +45 -5
  101. package/src/css/table.css +5 -2
@@ -751,6 +751,14 @@
751
751
  padding: calc(12px - var(--cn-board-first-line-leading)) var(--cn-board-card-inline-padding) 20px;
752
752
  }
753
753
 
754
+ /* A card that opens on a record-list table starts 12px under its title: the
755
+ table's head row sets its own padding and line height, so no first line
756
+ carries the half-leading the rule above takes off (r31 DqZaaktype
757
+ "Berichten aan de aanvrager" sat 2.2px high). */
758
+ .cn-look-board .cn-detail-page .cn-widget-wrapper__content:has(> .cn-record-list > .cn-record-list__table:first-child):not(.cn-look-nextcloud *) {
759
+ padding-top: 12px;
760
+ }
761
+
754
762
  /* A history card with stacked rows (DqTaak "Historie") opens on the first
755
763
  row's hairline 6px under the title, the row's own 12px padding above its
756
764
  text, as drawn: 19px from the title to the first action.
@@ -841,6 +849,15 @@
841
849
  font-weight: 500;
842
850
  }
843
851
 
852
+ /* The files table's checkbox column is the board's 42px (12px either side
853
+ of the 18px box): DqZaakDocumenten and DqDocumentenBeheer both draw it so.
854
+ The component's 36px pushed the file icon and name 6px left (r31: name 96
855
+ vs 100; probed with the rule: icon 54 as drawn, name 102).
856
+ @spec openspec/changes/board-files-select-column-42/specs/board-files-select-column-42/spec.md#requirement-the-files-tables-checkbox-column-is-42px */
857
+ .cn-look-board .cn-files-browser__col-select:not(.cn-look-nextcloud *) {
858
+ width: 42px;
859
+ }
860
+
844
861
  /* A labelled select in a page card is the board's field, as in a board
845
862
  dialog (dialog.css): its label above the control at 14px/600 on the normal
846
863
  line (the theme's label weight token set to 600 here), the control 40px,
@@ -1584,10 +1601,10 @@
1584
1601
 
1585
1602
  /* The buttons above the groups are the card's 34px controls ("Bekijken als
1586
1603
  flow", "Taak toevoegen"), not the page's 40px ones. */
1587
- /* The buttons sit 14px under the subtitle and 14px above the groups, the
1588
- card's gap (the content's own 12px top padding plus 2px). */
1604
+ /* The buttons sit 14px above the groups, the card's gap; above them the
1605
+ content's own top padding is the space under the subtitle. */
1589
1606
  .cn-look-board .cn-grouped-cards__actions.cn-grouped-cards__actions:not(.cn-look-nextcloud *) {
1590
- margin-block: 2px 14px;
1607
+ margin-block: 0 14px;
1591
1608
  }
1592
1609
 
1593
1610
  .cn-look-board .cn-grouped-cards__actions:not(.cn-look-nextcloud *) .button-vue {
@@ -2379,3 +2396,35 @@
2379
2396
  .cn-look-board .cn-timeline-manage__draft-label:not(.cn-look-nextcloud *) {
2380
2397
  line-height: 1.2;
2381
2398
  }
2399
+
2400
+ /* A facts card's link with an icon (Werkinstructie) sets the icon beside its
2401
+ text, 10px apart, the text on the normal line starting 10px under the
2402
+ title, as the Dq boards draw it. The anchor was a block, so the icon stood
2403
+ on its own line above the text (r31).
2404
+ @spec openspec/changes/board-facts-link-icon-beside-text/specs/facts-widget/spec.md */
2405
+ .cn-look-board .cn-facts-widget .cn-facts-widget__link:has(> .material-design-icon):not(.cn-look-nextcloud *) {
2406
+ display: flex;
2407
+ align-items: center;
2408
+ gap: 10px;
2409
+ margin-top: var(--cn-board-first-line-leading);
2410
+ line-height: normal;
2411
+ }
2412
+
2413
+ /* A table in a detail page card names each row in the link colour at 14px,
2414
+ as DqZaakGerelateerd draws "Deelzaken" and "Objecten" (r31: 15px in the
2415
+ body ink). The row opens the record, so its name reads as the link.
2416
+ @spec openspec/changes/board-detail-table-title-cells/specs/board-tables/spec.md */
2417
+ .cn-look-board .cn-detail-page .cn-object-list-widget td.cn-table-col--title:not(.cn-look-nextcloud *),
2418
+ .cn-look-board .cn-detail-page .cn-object-list-widget td.cn-table-col--title .cn-cell-renderer:not(.cn-look-nextcloud *) {
2419
+ font-size: 14px;
2420
+ line-height: 1.2;
2421
+ color: var(--color-primary-element);
2422
+ }
2423
+
2424
+ /* A data card keeps its 14px under a subtitle too (DqZaakBetrokkenen
2425
+ "Zetels"): the subtitle rule's 12px won over the data card's 14px, so the
2426
+ labels sat 2.2px high (r31).
2427
+ @spec openspec/changes/board-data-card-under-subtitle/specs/board-card/spec.md */
2428
+ .cn-look-board .cn-detail-page .cn-widget-wrapper:not(.cn-detail-page__side *):has(> .cn-widget-wrapper__header .cn-widget-wrapper__subtitle) > .cn-widget-wrapper__content:has(> .cn-object-data-widget__grid-wrap) {
2429
+ padding-top: 14px;
2430
+ }
@@ -1079,8 +1079,9 @@
1079
1079
  @spec openspec/changes/board-avatar-chip/specs/data-table/spec.md#requirement-a-board-avatar-cell-draws-the-initials-chip */
1080
1080
  .cn-look-board .cn-table-container--board .cn-data-table .cn-cell-renderer__avatar-initials--neutral {
1081
1081
  background: var(--color-background-dark);
1082
- color: var(--color-main-text);
1082
+ color: var(--cn-board-text-soft);
1083
1083
  font-size: 13px;
1084
+ line-height: normal;
1084
1085
  }
1085
1086
 
1086
1087
  .cn-look-board .cn-table-container--board .cn-data-table .cn-cell-renderer__avatar:has(.cn-cell-renderer__avatar-initials--neutral) {
@@ -1703,9 +1704,19 @@
1703
1704
  --app-sidebar-width: 360px;
1704
1705
  }
1705
1706
 
1707
+ /* The subtitle 2px under the title at a normal line height, and the tab's
1708
+ content 20px in from the panel edge (the tab's 10px and 10px here), as
1709
+ DqFilterBeheren draws the side panel.
1710
+ @spec openspec/changes/board-side-panel-rhythm/specs/board-side-panel-rhythm/spec.md */
1706
1711
  .cn-look-board:has(.cn-index-page) > .app-sidebar .app-sidebar-header__subname {
1712
+ margin-top: 2px;
1707
1713
  color: var(--color-text-maxcontrast);
1708
1714
  font-size: 14px;
1715
+ line-height: normal;
1716
+ }
1717
+
1718
+ .cn-look-board:has(.cn-index-page) > .app-sidebar .cn-index-sidebar__section {
1719
+ padding: 10px;
1709
1720
  }
1710
1721
 
1711
1722
  .cn-look-board:has(.cn-index-page) > .app-sidebar .app-sidebar__close {
@@ -1924,9 +1935,33 @@
1924
1935
  @spec openspec/changes/board-index-sidebar-title-inset/specs/board-index-sidebar-title-inset/spec.md#requirement-the-index-side-panel-title-is-inset-as-the-board-draws-it */
1925
1936
  .cn-look-board .cn-index-sidebar-panel .app-sidebar-header.app-sidebar-header .app-sidebar-header__info .app-sidebar-header__desc.app-sidebar-header__desc {
1926
1937
  padding-block-start: 15px;
1938
+ padding-block-end: 0;
1927
1939
  padding-inline-start: 20px;
1928
1940
  }
1929
1941
 
1942
+ /* The line under the title is a paragraph the theme sets with `!important`
1943
+ (15px, its own leading): 14px muted at its normal leading, 2px under the
1944
+ title, so the tab row starts 14px under it and the first field 20px under
1945
+ the tabs (DqZakenSorteren, DqFilterBeheren: title 20, line 46, tabs 77,
1946
+ search field 137).
1947
+ @spec openspec/changes/board-side-panel-header-rhythm/specs/board-side-panel-header-rhythm/spec.md#requirement-the-side-panel-header-and-first-field-sit-as-the-boards-draw-them */
1948
+ .cn-look-board .cn-index-sidebar-panel .app-sidebar-header__subname {
1949
+ --nldesign-component-paragraph-font-size: 14px;
1950
+ --nldesign-component-paragraph-line-height: normal;
1951
+ --nldesign-component-paragraph-color: var(--color-text-maxcontrast);
1952
+ font-size: 14px !important;
1953
+ line-height: normal !important;
1954
+ margin-block-start: -3px !important;
1955
+ }
1956
+
1957
+ .cn-look-board .cn-index-sidebar-panel .cn-index-sidebar__tab-content > .cn-index-sidebar__section:first-child {
1958
+ padding-top: 8px;
1959
+ }
1960
+
1961
+ .cn-look-board .cn-index-sidebar-panel .cn-index-sidebar__tab-content > .cn-index-sidebar__section:first-child > .input-field {
1962
+ margin-top: 0;
1963
+ }
1964
+
1930
1965
  .cn-look-board .cn-index-sidebar-panel .app-sidebar-tabs__nav[role="tablist"] {
1931
1966
  justify-content: flex-start;
1932
1967
  gap: 4px;
@@ -2119,6 +2154,7 @@
2119
2154
  .cn-look-board .cn-saved-views-panel:not(.cn-look-nextcloud *) .cn-saved-views-panel__name-text {
2120
2155
  font-size: 14px;
2121
2156
  font-weight: 600;
2157
+ line-height: normal;
2122
2158
  }
2123
2159
 
2124
2160
  /* A view's count: a grey pill at the end of its row (DqFilterBeheren). */
@@ -942,14 +942,15 @@ body:has(.cn-look-board):not(:has(.cn-look-nextcloud)) .v-popper__popper.action-
942
942
  }
943
943
 
944
944
  /* A saved view's manage menu (DqFilterBeheren, DqFilterInMenu "Beheer
945
- <view>"): 264px wide, rows of at least 40px, 6px 10px in, 8px rounded,
945
+ <view>"): 278px wide outside (the board's 264px of content, 6px in and a
946
+ 1px line), rows of at least 40px, 6px 10px in, 8px rounded,
946
947
  the icon 12px before a 14px label at 600 with its explanation under it in
947
948
  12px muted text at 400; the separator in the soft line, and Delete in the
948
949
  error red. Its rows carry the panel's `cn-saved-views-` test ids.
949
950
  @spec openspec/changes/board-saved-view-manage-menu/specs/board-saved-view-manage-menu/spec.md#requirement-a-saved-views-manage-menu-is-the-boards-menu */
950
951
  body:has(.cn-look-board):not(:has(.cn-look-nextcloud)) .v-popper__popper.action-item__popper:has(li[data-testid^="cn-saved-views-"]) .v-popper__wrapper .v-popper__inner {
951
952
  box-sizing: border-box;
952
- width: 264px;
953
+ width: 278px;
953
954
  max-width: calc(100vw - 32px);
954
955
  }
955
956
 
@@ -1520,8 +1521,8 @@ body:has(.cn-look-board):not(:has(.cn-look-nextcloud)) .v-popper__popper.action-
1520
1521
  text-align: start;
1521
1522
  }
1522
1523
 
1523
- /* Body rows are 42px as on the boards (10px, a 21px line, 10px, the rule).
1524
- A row header (dossiq's prerequisites) reads as a strong cell, not as a
1524
+ /* Body cells read 14px at 1.2, as the boards' settings tables do; a row's
1525
+ height comes from its content (a pill or a 34px button). A row header (dossiq's prerequisites) reads as a strong cell, not as a
1525
1526
  head: the theme paints every th, so its tokens are handed the cell's. */
1526
1527
  .cn-look-board .settings-section table:not(.cn-data-table):not(.cn-look-nextcloud *) td,
1527
1528
  .cn-look-board .settings-section table:not(.cn-data-table):not(.cn-look-nextcloud *) tbody th {
@@ -1529,7 +1530,7 @@ body:has(.cn-look-board):not(:has(.cn-look-nextcloud)) .v-popper__popper.action-
1529
1530
  border-bottom: 1px solid var(--color-background-dark);
1530
1531
  color: var(--color-main-text);
1531
1532
  font-size: 14px;
1532
- line-height: 1.5;
1533
+ line-height: 1.2;
1533
1534
  vertical-align: middle;
1534
1535
  }
1535
1536
 
@@ -1660,6 +1661,38 @@ body:has(.cn-look-board):not(:has(.cn-look-nextcloud)) .v-popper__popper.action-
1660
1661
  min-width: 0;
1661
1662
  }
1662
1663
 
1664
+ /* A settings card's first line sits where the boards draw it: an
1665
+ "Uitleg tonen" link, a switch or a note adds no height beyond its text, so
1666
+ the first text is 16px under the subtitle (DqBeheerinstellingen
1667
+ "Zaak-e-mail" and "AI-ondersteunde verwerking", DqBeheerGeavanceerd "KCC"
1668
+ and "Storeregister": 7px and 29px lower live). The controls keep their full
1669
+ hit area; the negative margin only takes it out of the line.
1670
+ @spec openspec/changes/board-settings-first-line/specs/settings-board-look/spec.md */
1671
+ .cn-look-board .cn-settings-fields__hints-toggle:not(.cn-look-nextcloud *) {
1672
+ margin-block: -8px;
1673
+ }
1674
+
1675
+ .cn-look-board .cn-settings-field--switch:not(.cn-look-nextcloud *) > .checkbox-radio-switch {
1676
+ margin-block: -8px;
1677
+ }
1678
+
1679
+ .cn-look-board .cn-settings-field--status:not(.cn-look-nextcloud *) > .notecard {
1680
+ margin: 0;
1681
+ }
1682
+
1683
+ /* A card's longer explanation reads as the boards' second paragraph: 14px
1684
+ muted at 1.5, the fields 14px under it (DqBeheerGeavanceerd "Urgentie in de
1685
+ werkvoorraad": 15px and 30px live). The theme sizes every paragraph through
1686
+ its tokens. */
1687
+ .cn-look-board .cn-settings-section__description-text:not(.cn-look-nextcloud *) {
1688
+ --nldesign-component-paragraph-font-size: 14px;
1689
+ --nldesign-component-paragraph-line-height: 1.5;
1690
+ --nldesign-component-paragraph-color: var(--color-text-maxcontrast);
1691
+ margin: 0;
1692
+ font-size: 14px;
1693
+ line-height: 1.5;
1694
+ }
1695
+
1663
1696
  @container (max-width: 400px) {
1664
1697
  .cn-look-board .settings-section:not(.cn-look-nextcloud *) > .cn-settings-section__actions,
1665
1698
  .cn-look-board .settings-section:not(.cn-look-nextcloud *):has(> .settings-section__desc) > .cn-settings-section__actions {
@@ -2614,6 +2647,12 @@ body:has(.cn-look-board):not(:has(.cn-look-nextcloud)) .v-popper__popper.action-
2614
2647
  font-weight: 500;
2615
2648
  }
2616
2649
 
2650
+ /* A compact card keeps its 15px/700 title on a dashboard page too (DqInspectie). */
2651
+ .cn-look-board .cn-dashboard-page:not(.cn-look-nextcloud *) .cn-record-list--compact .cn-record-list__card .cn-record-list__title {
2652
+ font-weight: 700;
2653
+ line-height: 1.2;
2654
+ }
2655
+
2617
2656
  .cn-look-board .cn-dashboard-page:not(.cn-look-nextcloud *) .cn-record-list--compact .cn-record-list__main {
2618
2657
  gap: 2px;
2619
2658
  }
@@ -3472,4 +3511,5 @@ html :where(.cn-look-board) :is(h2, h3, h5, h6):where(.cn-inner-heading) {
3472
3511
  .cn-look-board .cn-saved-view-share__mode:not(.cn-look-nextcloud *) {
3473
3512
  border-radius: 8px;
3474
3513
  background: var(--cn-board-sunken-ground);
3514
+ line-height: normal;
3475
3515
  }
package/src/css/table.css CHANGED
@@ -616,10 +616,13 @@
616
616
  cursor: grab;
617
617
  }
618
618
 
619
- /* The handle before a reorderable row's name: a muted 16px grip 10px before it. */
619
+ /* The handle before a reorderable row's name: a muted 16px grip 10px before
620
+ it. It floats, so a name that wraps in a narrow cell wraps beside the grip
621
+ instead of dropping under it. */
620
622
  .cn-table-row__handle {
621
623
  display: inline-flex;
622
- vertical-align: middle;
624
+ float: inline-start;
625
+ margin-block-start: 1px;
623
626
  margin-inline-end: 10px;
624
627
  color: var(--color-text-maxcontrast);
625
628
  cursor: grab;