@conduction/nextcloud-vue 2.144.0 → 2.146.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/dist/esm/components/CnActionDialog/CnActionDialog.vue.js +1 -1
- package/dist/esm/components/CnActionDialog/CnActionDialog.vue2.js.map +1 -1
- package/dist/esm/components/CnActionDialog/CnActionDialog.vue3.js +1 -0
- package/dist/esm/components/CnActionDialog/CnActionDialog.vue3.js.map +1 -1
- package/dist/esm/components/CnAiCompanion/CnAiChatPanel.vue2.js.map +1 -1
- package/dist/esm/components/CnAiCompanion/CnAiChatPanel.vue3.js.map +1 -1
- package/dist/esm/components/CnAuditTrailCard/CnAuditTrailCard.vue.js +1 -1
- package/dist/esm/components/CnAuditTrailCard/CnAuditTrailCard.vue2.js +55 -2
- package/dist/esm/components/CnAuditTrailCard/CnAuditTrailCard.vue2.js.map +1 -1
- package/dist/esm/components/CnAuditTrailCard/CnAuditTrailCard.vue3.js.map +1 -1
- package/dist/esm/components/CnAuditTrailWidget/CnAuditTrailWidget.vue.js +1 -1
- package/dist/esm/components/CnAuditTrailWidget/CnAuditTrailWidget.vue2.js +16 -0
- package/dist/esm/components/CnAuditTrailWidget/CnAuditTrailWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnAuditTrailWidget/CnAuditTrailWidget.vue3.js +3 -1
- package/dist/esm/components/CnAuditTrailWidget/CnAuditTrailWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnChecklistRunWidget/CnChecklistRunWidget.vue.js +1 -1
- package/dist/esm/components/CnChecklistRunWidget/CnChecklistRunWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnChecklistRunWidget/CnChecklistRunWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnDataTable/CnDataTable.vue2.js +12 -2
- package/dist/esm/components/CnDataTable/CnDataTable.vue2.js.map +1 -1
- package/dist/esm/components/CnDataTable/CnDataTable.vue3.js +42 -30
- package/dist/esm/components/CnDataTable/CnDataTable.vue3.js.map +1 -1
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue2.js +22 -0
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue2.js.map +1 -1
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue3.js +2 -1
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue3.js.map +1 -1
- package/dist/esm/components/CnDetailWidgetHost/CnDetailWidgetHeaderItems.vue.js +1 -1
- package/dist/esm/components/CnDetailWidgetHost/CnDetailWidgetHeaderItems.vue2.js +1 -1
- package/dist/esm/components/CnDetailWidgetHost/CnDetailWidgetHeaderItems.vue2.js.map +1 -1
- package/dist/esm/components/CnDetailWidgetHost/CnDetailWidgetHeaderItems.vue3.js +3 -3
- package/dist/esm/components/CnDetailWidgetHost/CnDetailWidgetHeaderItems.vue3.js.map +1 -1
- package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue.js +1 -1
- package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue2.js +46 -8
- package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue3.js +3 -3
- package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnFieldListWidget/CnFieldListWidget.vue.js +1 -1
- package/dist/esm/components/CnFieldListWidget/CnFieldListWidget.vue2.js +2 -2
- package/dist/esm/components/CnFieldListWidget/CnFieldListWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnFieldListWidget/CnFieldListWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js +6 -3
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js.map +1 -1
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue3.js.map +1 -1
- package/dist/esm/components/CnMailTab/CnMailTab.vue.js +1 -1
- package/dist/esm/components/CnMailTab/CnMailTab.vue2.js.map +1 -1
- package/dist/esm/components/CnMailTab/CnMailTab.vue3.js +2 -2
- package/dist/esm/components/CnMailTab/CnMailTab.vue3.js.map +1 -1
- package/dist/esm/components/CnNotesCard/CnNotesCard.vue.js +1 -1
- package/dist/esm/components/CnNotesCard/CnNotesCard.vue2.js.map +1 -1
- package/dist/esm/components/CnNotesCard/CnNotesCard.vue3.js +1 -0
- package/dist/esm/components/CnNotesCard/CnNotesCard.vue3.js.map +1 -1
- package/dist/esm/components/CnNotificationMatrix/CnNotificationMatrix.vue.js +1 -1
- package/dist/esm/components/CnNotificationMatrix/CnNotificationMatrix.vue2.js +21 -2
- package/dist/esm/components/CnNotificationMatrix/CnNotificationMatrix.vue2.js.map +1 -1
- package/dist/esm/components/CnNotificationMatrix/CnNotificationMatrix.vue3.js.map +1 -1
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue.js +1 -1
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue2.js +73 -12
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue3.js +165 -126
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnRetentionWidget/CnRetentionWidget.vue.js +1 -1
- package/dist/esm/components/CnRetentionWidget/CnRetentionWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnRetentionWidget/CnRetentionWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnSettingsField/CnSettingsField.vue.js +1 -1
- package/dist/esm/components/CnSettingsField/CnSettingsField.vue2.js +14 -0
- package/dist/esm/components/CnSettingsField/CnSettingsField.vue2.js.map +1 -1
- package/dist/esm/components/CnSettingsField/CnSettingsField.vue3.js +2 -1
- package/dist/esm/components/CnSettingsField/CnSettingsField.vue3.js.map +1 -1
- package/dist/esm/components/CnTabsWidget/CnTabsWidget.vue.js +1 -1
- package/dist/esm/components/CnTabsWidget/CnTabsWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnTabsWidget/CnTabsWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnWidgetObjectTable/CnWidgetObjectTable.vue.js +1 -1
- package/dist/esm/components/CnWidgetObjectTable/CnWidgetObjectTable.vue2.js +13 -8
- package/dist/esm/components/CnWidgetObjectTable/CnWidgetObjectTable.vue2.js.map +1 -1
- package/dist/esm/components/CnWidgetObjectTable/CnWidgetObjectTable.vue3.js.map +1 -1
- package/dist/esm/components/CnWorkspaceFilterWidget/CnWorkspaceFilterWidget.vue.js +1 -1
- package/dist/esm/components/CnWorkspaceFilterWidget/CnWorkspaceFilterWidget.vue2.js +10 -2
- package/dist/esm/components/CnWorkspaceFilterWidget/CnWorkspaceFilterWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnWorkspaceFilterWidget/CnWorkspaceFilterWidget.vue3.js.map +1 -1
- package/dist/esm/composables/indexSources.js +35 -9
- package/dist/esm/composables/indexSources.js.map +1 -1
- package/dist/esm/l10n/nl.json.js +2 -0
- package/dist/esm/l10n/nl.json.js.map +1 -1
- package/dist/esm/library-style.js +1 -1
- package/dist/esm/nextcloud-vue.css +1204 -467
- package/dist/esm/utils/builtInFormatters.js +18 -1
- package/dist/esm/utils/builtInFormatters.js.map +1 -1
- package/dist/esm/utils/detailObjectContext.js +7 -2
- package/dist/esm/utils/detailObjectContext.js.map +1 -1
- package/dist/esm/utils/localHeaderRows.js +95 -0
- package/dist/esm/utils/localHeaderRows.js.map +1 -0
- package/dist/esm/utils/validateManifestV2.compiled.js +2 -2
- package/dist/esm/utils/validateManifestV2.compiled.js.map +1 -1
- package/dist/esm/utils/visibleWhen.js +6 -0
- package/dist/esm/utils/visibleWhen.js.map +1 -1
- package/dist/nextcloud-vue.cjs.js +686 -239
- package/dist/nextcloud-vue.cjs.js.map +2 -2
- package/dist/nextcloud-vue.css +1204 -467
- package/l10n/nl.json +2 -0
- package/package.json +1 -1
- package/src/components/CnActionDialog/CnActionDialog.vue +8 -1
- package/src/components/CnAiCompanion/CnAiChatPanel.vue +3 -0
- package/src/components/CnAuditTrailCard/CnAuditTrailCard.vue +55 -2
- package/src/components/CnAuditTrailWidget/CnAuditTrailWidget.vue +18 -0
- package/src/components/CnChecklistRunWidget/CnChecklistRunWidget.vue +4 -2
- package/src/components/CnDataTable/CnDataTable.vue +19 -2
- package/src/components/CnDetailPage/CnDetailPage.md +1 -0
- package/src/components/CnDetailPage/CnDetailPage.vue +23 -0
- package/src/components/CnDetailWidgetHost/CnDetailWidgetHeaderItems.vue +3 -1
- package/src/components/CnFactsWidget/CnFactsWidget.vue +74 -9
- package/src/components/CnFieldListWidget/CnFieldListWidget.vue +2 -2
- package/src/components/CnIndexPage/CnIndexPage.vue +6 -3
- package/src/components/CnMailTab/CnMailTab.vue +6 -4
- package/src/components/CnNotesCard/CnNotesCard.vue +7 -2
- package/src/components/CnNotificationMatrix/CnNotificationMatrix.vue +25 -3
- package/src/components/CnRecordListWidget/CnRecordListWidget.vue +132 -20
- package/src/components/CnRetentionWidget/CnRetentionWidget.vue +2 -0
- package/src/components/CnSettingsField/CnSettingsField.vue +15 -0
- package/src/components/CnTabsWidget/CnTabsWidget.vue +6 -1
- package/src/components/CnWidgetObjectTable/CnWidgetObjectTable.vue +13 -8
- package/src/components/CnWorkspaceFilterWidget/CnWorkspaceFilterWidget.vue +10 -2
- package/src/composables/indexSources.js +35 -9
- package/src/css/dialog.css +25 -9
- package/src/css/look-board-detail.css +370 -30
- package/src/css/look-board-index.css +116 -4
- package/src/css/look-board.css +168 -8
- package/src/css/table.css +17 -1
- package/src/schemas/app-manifest-v2.schema.json +2 -2
- package/src/utils/builtInFormatters.js +17 -0
- package/src/utils/detailObjectContext.js +7 -2
- package/src/utils/localHeaderRows.js +91 -0
- package/src/utils/validateManifestV2.compiled.js +2 -2
- package/src/utils/visibleWhen.js +6 -0
|
@@ -481,6 +481,26 @@
|
|
|
481
481
|
padding: var(--cn-board-card-padding);
|
|
482
482
|
}
|
|
483
483
|
|
|
484
|
+
/* A panel's own heading (DqZaaktypeRegels "Regels op de zaak"): title and
|
|
485
|
+
subtitle on their natural leading 2px apart, actions that wrap 8px under
|
|
486
|
+
them, and the card's 12px gap before the content. */
|
|
487
|
+
.cn-look-board .cn-tabs-widget__tabs .cn-tabs-widget__panel-heading {
|
|
488
|
+
margin-bottom: 12px;
|
|
489
|
+
}
|
|
490
|
+
|
|
491
|
+
.cn-look-board .cn-tabs-widget__tabs .cn-tabs-widget__panel-heading--actions {
|
|
492
|
+
row-gap: 8px;
|
|
493
|
+
}
|
|
494
|
+
|
|
495
|
+
.cn-look-board .cn-tabs-widget__tabs .cn-tabs-widget__panel-heading-text {
|
|
496
|
+
gap: 2px;
|
|
497
|
+
}
|
|
498
|
+
|
|
499
|
+
.cn-look-board .cn-tabs-widget__tabs .cn-tabs-widget__panel-title,
|
|
500
|
+
.cn-look-board .cn-tabs-widget__tabs .cn-tabs-widget__panel-subtitle {
|
|
501
|
+
line-height: normal;
|
|
502
|
+
}
|
|
503
|
+
|
|
484
504
|
/* A list's footer Add bleeds to the panel's edges, so it bleeds the card
|
|
485
505
|
padding (CnTabsWidget bleeds the Nextcloud look's 12px). */
|
|
486
506
|
.cn-look-board .cn-tabs--board.cn-tabs-widget__tabs .cn-tabs__content > .cn-tab > .cn-detail-widget-host--bare .cn-object-list-widget__add {
|
|
@@ -627,6 +647,30 @@
|
|
|
627
647
|
font-size: 14px;
|
|
628
648
|
}
|
|
629
649
|
|
|
650
|
+
/* The reply box's buttons (Opslaan als concept, Versturen) are the board's
|
|
651
|
+
40px control, as DqBerichtVersturen draws Versturen; NcButton draws 34
|
|
652
|
+
(DqZaakContact r29 controlHeight 34).
|
|
653
|
+
@spec openspec/changes/board-conversation-reply-buttons-40/specs/board-conversation-reply-buttons-40/spec.md#requirement-the-reply-boxs-buttons-are-the-boards-40px-control */
|
|
654
|
+
.cn-look-board .cn-conversation-thread__reply .button-vue:where(:not(.cn-look-nextcloud *)) {
|
|
655
|
+
--button-size: var(--cn-board-control-height);
|
|
656
|
+
}
|
|
657
|
+
|
|
658
|
+
/* A lead widget in a card (the review summary over the files) stands 16px
|
|
659
|
+
above the card's own body, the boards' gap between a card's parts
|
|
660
|
+
(DqZaakDocumenten r29: the files toolbar sat flush under the summary).
|
|
661
|
+
@spec openspec/changes/board-lead-widget-gap-16/specs/board-lead-widget-gap-16/spec.md#requirement-a-lead-widget-stands-16px-above-the-cards-body */
|
|
662
|
+
.cn-look-board .cn-detail-widget-host__lead:not(.cn-look-nextcloud *) {
|
|
663
|
+
margin-bottom: 16px;
|
|
664
|
+
}
|
|
665
|
+
|
|
666
|
+
/* The compact review summary runs on the normal line height, as the board
|
|
667
|
+
draws its heading and legend (DqZaakDocumenten r29: heading 22.5 vs 18,
|
|
668
|
+
the box 99.5 vs 91 high).
|
|
669
|
+
@spec openspec/changes/board-stacked-bar-compact-line-height/specs/board-stacked-bar-compact-line-height/spec.md#requirement-the-compact-summary-runs-on-the-normal-line-height */
|
|
670
|
+
.cn-look-board .cn-stacked-bar--compact:not(.cn-look-nextcloud *) {
|
|
671
|
+
line-height: normal;
|
|
672
|
+
}
|
|
673
|
+
|
|
630
674
|
/* The case Status card as the board draws it: no grey box, the status's
|
|
631
675
|
explanation as its bold line, the time in the status muted under it.
|
|
632
676
|
@spec openspec/changes/status-explainer-board/specs/record-widgets/spec.md#requirement-the-status-card-says-where-the-record-stands-as-the-board-draws-it */
|
|
@@ -707,18 +751,28 @@
|
|
|
707
751
|
padding: calc(12px - var(--cn-board-first-line-leading)) var(--cn-board-card-inline-padding) 20px;
|
|
708
752
|
}
|
|
709
753
|
|
|
754
|
+
/* A history card with stacked rows (DqTaak "Historie") opens on the first
|
|
755
|
+
row's hairline 6px under the title, the row's own 12px padding above its
|
|
756
|
+
text, as drawn: 19px from the title to the first action.
|
|
757
|
+
@spec openspec/changes/board-history-card-ruled-start/specs/board-history-card-ruled-start/spec.md#requirement-a-board-history-card-with-stacked-rows-opens-on-its-first-rule */
|
|
758
|
+
.cn-look-board .cn-detail-card .cn-detail-card__content:has(> .cn-audit-card__list > .cn-audit-card__row--stacked:first-child):not(.cn-look-nextcloud *) {
|
|
759
|
+
padding-top: 6px;
|
|
760
|
+
}
|
|
761
|
+
|
|
710
762
|
/* A data card (labels over values) starts 14px below its title (DqZaak
|
|
711
|
-
"Zaakgegevens", DqContact "Contact")
|
|
763
|
+
"Zaakgegevens", DqContact "Contact"); its first label sits at the top of
|
|
764
|
+
its line box, so no leading comes off. A side card keeps its 10px.
|
|
712
765
|
@spec openspec/changes/board-data-card-gap/specs/board-data-card-gap/spec.md#requirement-a-board-data-cards-body-starts-14px-below-its-title */
|
|
713
766
|
.cn-look-board .cn-detail-page .cn-widget-wrapper__content:has(> .cn-object-data-widget__grid-wrap):not(.cn-detail-page__side *) {
|
|
714
|
-
padding-top:
|
|
767
|
+
padding-top: 14px;
|
|
715
768
|
}
|
|
716
769
|
|
|
717
770
|
/* Facts that open on the column grid are a data card too (DqContact
|
|
718
|
-
"Contact", DqOrganisatie "Organisatie").
|
|
771
|
+
"Contact", DqOrganisatie "Organisatie"). Their labels sit on the normal
|
|
772
|
+
line height in the board look, so no leading is taken off the 14px.
|
|
719
773
|
@spec openspec/changes/board-card-title-gap-variants/specs/board-card-title-gap-variants/spec.md#requirement-a-board-card-starts-its-body-as-drawn-for-its-kind-of-body */
|
|
720
774
|
.cn-look-board .cn-detail-page .cn-widget-wrapper__content:has(> .cn-facts-widget > .cn-facts-widget__rows--columns:first-child):not(.cn-detail-page__side *) {
|
|
721
|
-
padding-top:
|
|
775
|
+
padding-top: 14px;
|
|
722
776
|
}
|
|
723
777
|
|
|
724
778
|
/* A table (an object list) starts 12px below the title's box: its head has
|
|
@@ -787,6 +841,88 @@
|
|
|
787
841
|
font-weight: 500;
|
|
788
842
|
}
|
|
789
843
|
|
|
844
|
+
/* A labelled select in a page card is the board's field, as in a board
|
|
845
|
+
dialog (dialog.css): its label above the control at 14px/600 on the normal
|
|
846
|
+
line (the theme's label weight token set to 600 here), the control 40px,
|
|
847
|
+
21px of room above it so the raised label does not rise over what stands
|
|
848
|
+
above (DqZaakEmail "E-mailsjabloon": NcSelect drew
|
|
849
|
+
the label inside a 44px field, 15px/700). The quick filter bar's dropdown
|
|
850
|
+
keeps NcSelect's own look.
|
|
851
|
+
@spec openspec/changes/board-page-select-label-above/specs/board-page-select-label-above/spec.md#requirement-a-labelled-select-in-a-board-page-card-carries-its-label-above */
|
|
852
|
+
.cn-look-board .cn-detail-widget-host .v-select:not(.cn-quick-filter-bar__select):has(.input-field__label):not(.cn-look-nextcloud *) {
|
|
853
|
+
--nldesign-component-form-field-label-font-weight: 600;
|
|
854
|
+
margin-block: 21px 0;
|
|
855
|
+
}
|
|
856
|
+
|
|
857
|
+
.cn-look-board .cn-detail-widget-host .v-select:not(.cn-quick-filter-bar__select) .input-field__input + .input-field__label.input-field__label:not(.cn-look-nextcloud *),
|
|
858
|
+
.cn-look-board .cn-detail-widget-host .nc-select.v-select.select:not(.cn-quick-filter-bar__select) .vs__selected-options:has(.vs__selected) .vs__search .input-field__input + .input-field__label.input-field__label:not(.cn-look-nextcloud *) {
|
|
859
|
+
inset-block-start: auto;
|
|
860
|
+
inset-block-end: calc(100% + 4px);
|
|
861
|
+
inset-inline: 0 auto;
|
|
862
|
+
max-width: 100%;
|
|
863
|
+
margin: 0;
|
|
864
|
+
padding: 0;
|
|
865
|
+
background: none;
|
|
866
|
+
color: var(--color-main-text);
|
|
867
|
+
font-size: var(--cn-field-label-size, 14px);
|
|
868
|
+
font-weight: 600;
|
|
869
|
+
line-height: normal;
|
|
870
|
+
pointer-events: auto;
|
|
871
|
+
transition: none;
|
|
872
|
+
}
|
|
873
|
+
|
|
874
|
+
.cn-look-board .cn-detail-widget-host .v-select:not(.cn-quick-filter-bar__select):has(.input-field__label) .input-field__main-wrapper:not(.cn-look-nextcloud *) {
|
|
875
|
+
height: calc(var(--cn-field-height, 40px) + 2 * var(--border-width-input-focused, 2px));
|
|
876
|
+
}
|
|
877
|
+
|
|
878
|
+
/* The mail card's template buttons stand beside the field at its 40px
|
|
879
|
+
height, their bottom on the field's edge (inside its 2px focus inset). */
|
|
880
|
+
.cn-look-board .cn-mail-tab__template-row .button-vue:where(:not(.cn-look-nextcloud *)) {
|
|
881
|
+
--button-size: var(--cn-board-control-height);
|
|
882
|
+
margin-block-end: var(--border-width-input-focused, 2px);
|
|
883
|
+
}
|
|
884
|
+
|
|
885
|
+
/* A data card's label and value sit 3px apart on the normal line height, as
|
|
886
|
+
the boards draw their facts (194 of 212 dt/dd pairs: gap 3px, no line
|
|
887
|
+
height); live ran them at 1.5 with a 2px gap (DqZaakContact
|
|
888
|
+
Ontvangstbevestiging r29: the first label 33.8 under the title, board 29).
|
|
889
|
+
@spec openspec/changes/board-data-cell-rhythm/specs/board-data-cell-rhythm/spec.md#requirement-a-data-cards-label-and-value-sit-3px-apart-on-the-normal-line-height */
|
|
890
|
+
.cn-look-board .cn-object-data-widget__grid .cn-object-data-widget__cell.cn-object-data-widget__cell {
|
|
891
|
+
gap: 3px;
|
|
892
|
+
}
|
|
893
|
+
|
|
894
|
+
.cn-look-board .cn-object-data-widget__grid .cn-object-data-widget__label.cn-object-data-widget__label,
|
|
895
|
+
.cn-look-board .cn-object-data-widget__grid .cn-object-data-widget__value {
|
|
896
|
+
line-height: normal;
|
|
897
|
+
}
|
|
898
|
+
|
|
899
|
+
/* A note in a page card starts at the card's inset: no list-item padding
|
|
900
|
+
around it, its icon 12px before the text (DqZaakEmail Notities r29: icon
|
|
901
|
+
at 31 and text at 71 where the board draws 23 and 67).
|
|
902
|
+
@spec openspec/changes/board-notes-card-rows-flush/specs/board-notes-card-rows-flush/spec.md#requirement-a-note-in-a-page-card-starts-at-the-cards-inset */
|
|
903
|
+
.cn-look-board .cn-detail-widget-host .cn-notes-tab__thread .list-item__wrapper:not(.cn-look-nextcloud *),
|
|
904
|
+
.cn-look-board .cn-detail-widget-host .cn-notes-tab__thread .list-item:not(.cn-look-nextcloud *) {
|
|
905
|
+
padding: 0;
|
|
906
|
+
}
|
|
907
|
+
|
|
908
|
+
.cn-look-board .cn-detail-widget-host .cn-notes-tab__thread .list-item-content:not(.cn-look-nextcloud *) {
|
|
909
|
+
padding-inline-start: 12px;
|
|
910
|
+
}
|
|
911
|
+
|
|
912
|
+
/* The note's two lines on the normal line height and its icon at the top of
|
|
913
|
+
the row, as the board draws the author tile beside the name (probed on
|
|
914
|
+
:8080: the name 44.8 under the title as drawn, the icon 6.5px lower while
|
|
915
|
+
centred in the 45px item).
|
|
916
|
+
@spec openspec/changes/board-notes-card-rows-flush/specs/board-notes-card-rows-flush/spec.md#requirement-a-note-in-a-page-card-starts-at-the-cards-inset */
|
|
917
|
+
.cn-look-board .cn-detail-widget-host .cn-notes-tab__thread .list-item-content__name:not(.cn-look-nextcloud *),
|
|
918
|
+
.cn-look-board .cn-detail-widget-host .cn-notes-tab__thread .list-item-content__subname:not(.cn-look-nextcloud *) {
|
|
919
|
+
line-height: normal;
|
|
920
|
+
}
|
|
921
|
+
|
|
922
|
+
.cn-look-board .cn-detail-widget-host .cn-notes-tab__thread .list-item__anchor > :first-child:not(.list-item-content):not(.cn-look-nextcloud *) {
|
|
923
|
+
align-self: flex-start;
|
|
924
|
+
}
|
|
925
|
+
|
|
790
926
|
/* Side cards: the heading is a 15px muted label, not a title. The tone
|
|
791
927
|
carries `!important` against a theme that colours every h3 that way
|
|
792
928
|
(thematiq's heading colour). */
|
|
@@ -806,6 +942,14 @@
|
|
|
806
942
|
padding: calc(10px - var(--cn-board-first-line-leading)) 22px 20px;
|
|
807
943
|
}
|
|
808
944
|
|
|
945
|
+
/* A side card that opens on a list draws its first row's hairline 10px below
|
|
946
|
+
the title box; the row has no leading for the glyph gap above to subtract
|
|
947
|
+
(DqZaaktypeRegels, DqZaaktypeStatussen "Versies").
|
|
948
|
+
@spec openspec/changes/board-side-list-gap/specs/board-side-list-gap/spec.md#requirement-a-board-side-cards-list-starts-10px-below-its-title */
|
|
949
|
+
.cn-look-board .cn-detail-page__side .cn-widget-wrapper__content:has(> .cn-record-list--rows) {
|
|
950
|
+
padding-top: 10px;
|
|
951
|
+
}
|
|
952
|
+
|
|
809
953
|
/* A side card that opens on a lead (DqZaak "Aanvrager", DqOrganisatie "KvK en
|
|
810
954
|
adres") draws the lead row 12px below the title, its two lines at their
|
|
811
955
|
normal height so they centre on the 40px tile.
|
|
@@ -865,6 +1009,12 @@
|
|
|
865
1009
|
padding: 0;
|
|
866
1010
|
}
|
|
867
1011
|
|
|
1012
|
+
/* Its Actions menu is the board's 34px header control. */
|
|
1013
|
+
.cn-look-board .cn-detail-page__side .cn-widget-wrapper:has(.cn-ai-chat-widget) .cn-widget-wrapper__actions .action-item .button-vue {
|
|
1014
|
+
height: 34px;
|
|
1015
|
+
min-height: 34px;
|
|
1016
|
+
}
|
|
1017
|
+
|
|
868
1018
|
/* A widget-reported card header action in the main column is a neutral 40px
|
|
869
1019
|
control: the main background, the control border, the main text at
|
|
870
1020
|
14px/600, a 16px icon 8px before the label (DqZaakBesluiten "Document
|
|
@@ -885,6 +1035,13 @@
|
|
|
885
1035
|
line-height: 1;
|
|
886
1036
|
}
|
|
887
1037
|
|
|
1038
|
+
/* A list's Add in the title row is the card's 34px control, as the boards
|
|
1039
|
+
draw a card's Add (DqZaaktype "Variant toevoegen"). */
|
|
1040
|
+
.cn-look-board .cn-detail-page__catalog-action--add:not(.cn-detail-page__side *):not(.cn-look-nextcloud *) {
|
|
1041
|
+
height: 34px;
|
|
1042
|
+
min-height: 34px;
|
|
1043
|
+
}
|
|
1044
|
+
|
|
888
1045
|
.cn-look-board .cn-detail-page__catalog-action:not(.cn-detail-page__side *):not(.cn-look-nextcloud *):hover {
|
|
889
1046
|
background: var(--color-background-hover);
|
|
890
1047
|
}
|
|
@@ -944,6 +1101,24 @@
|
|
|
944
1101
|
width: 18px;
|
|
945
1102
|
}
|
|
946
1103
|
|
|
1104
|
+
/* NcNoteCard renders a slotted icon (the banner's own, DqSociaalDomein
|
|
1105
|
+
"Bijzondere persoonsgegevens") as a bare 22px material icon without the
|
|
1106
|
+
`notecard__icon` wrapper; it takes the same 18px box on the first line, so
|
|
1107
|
+
the text starts 44px in.
|
|
1108
|
+
@spec openspec/changes/board-notice-slotted-icon/specs/board-notice-slotted-icon/spec.md#requirement-a-side-notices-slotted-icon-is-18px */
|
|
1109
|
+
.cn-look-board .cn-detail-page__side-item--notice .cn-banner-widget__card > .material-design-icon:not(.cn-look-nextcloud *) {
|
|
1110
|
+
align-self: flex-start;
|
|
1111
|
+
color: var(--cn-board-notice-ink);
|
|
1112
|
+
margin-top: 2px;
|
|
1113
|
+
width: 18px;
|
|
1114
|
+
height: 18px;
|
|
1115
|
+
}
|
|
1116
|
+
|
|
1117
|
+
.cn-look-board .cn-detail-page__side-item--notice .cn-banner-widget__card > .material-design-icon svg:not(.cn-look-nextcloud *) {
|
|
1118
|
+
height: 18px;
|
|
1119
|
+
width: 18px;
|
|
1120
|
+
}
|
|
1121
|
+
|
|
947
1122
|
/* A notice whose condition does not hold renders no banner; its slot then
|
|
948
1123
|
takes no room instead of standing as an empty tinted block. */
|
|
949
1124
|
.cn-look-board .cn-detail-page__side-item--notice:not(:has(.cn-banner-widget)) {
|
|
@@ -1319,6 +1494,26 @@
|
|
|
1319
1494
|
line-height: 1.2;
|
|
1320
1495
|
}
|
|
1321
1496
|
|
|
1497
|
+
/* The task name takes the spare width, so it wraps only when long; the
|
|
1498
|
+
handler stays on one line. */
|
|
1499
|
+
.cn-look-board .cn-detail-page .cn-widget-wrapper__content > .cn-tasks-widget .cn-tasks-widget__table th:first-child,
|
|
1500
|
+
.cn-look-board .cn-detail-page .cn-widget-wrapper__content > .cn-tasks-widget .cn-tasks-widget__table .cn-tasks-widget__cell-task {
|
|
1501
|
+
width: 100%;
|
|
1502
|
+
}
|
|
1503
|
+
|
|
1504
|
+
.cn-look-board .cn-detail-page .cn-widget-wrapper__content > .cn-tasks-widget .cn-tasks-widget__table .cn-tasks-widget__cell-handler {
|
|
1505
|
+
white-space: nowrap;
|
|
1506
|
+
}
|
|
1507
|
+
|
|
1508
|
+
/* A head's filter is a 22px button, so a head is 42px high as drawn. */
|
|
1509
|
+
.cn-look-board .cn-detail-page .cn-widget-wrapper__content > .cn-tasks-widget .cn-tasks-widget__table .cn-tasks-widget__head-filter .button-vue {
|
|
1510
|
+
--button-size: 22px;
|
|
1511
|
+
min-width: 22px;
|
|
1512
|
+
min-height: 22px;
|
|
1513
|
+
width: 22px;
|
|
1514
|
+
height: 22px;
|
|
1515
|
+
}
|
|
1516
|
+
|
|
1322
1517
|
/* A long task name wraps under itself, as the board draws it, rather than
|
|
1323
1518
|
widening the table past the card. */
|
|
1324
1519
|
.cn-look-board .cn-detail-page .cn-widget-wrapper__content > .cn-tasks-widget .cn-tasks-widget__table :is(.cn-tasks-widget__name, .cn-tasks-widget__meta) {
|
|
@@ -1352,6 +1547,13 @@
|
|
|
1352
1547
|
padding-inline-end: var(--cn-board-card-inline-padding);
|
|
1353
1548
|
}
|
|
1354
1549
|
|
|
1550
|
+
/* A row menu in the last column keeps its 34px button and 16px start
|
|
1551
|
+
padding beside the card's end padding, so it is not cut off. */
|
|
1552
|
+
.cn-look-board .cn-detail-page .cn-widget-wrapper__content > .cn-object-list-widget--bleed .cn-table-container .cn-data-table .cn-table-col--actions:last-child {
|
|
1553
|
+
width: calc(50px + var(--cn-board-card-inline-padding));
|
|
1554
|
+
min-width: calc(50px + var(--cn-board-card-inline-padding));
|
|
1555
|
+
}
|
|
1556
|
+
|
|
1355
1557
|
/* ---- Grouped cards (CnGroupedCardsWidget, DqZaaktype "Fasen en taken") --- */
|
|
1356
1558
|
/* Groups 14px apart, each padded 14px with a 10px radius and a bold title; a
|
|
1357
1559
|
card in a group is padded 9px 12px with the 8px control radius, its title
|
|
@@ -1377,6 +1579,20 @@
|
|
|
1377
1579
|
|
|
1378
1580
|
.cn-look-board .cn-grouped-cards__group-title.cn-grouped-cards__group-title {
|
|
1379
1581
|
font-weight: 700;
|
|
1582
|
+
line-height: 1.2;
|
|
1583
|
+
}
|
|
1584
|
+
|
|
1585
|
+
/* The buttons above the groups are the card's 34px controls ("Bekijken als
|
|
1586
|
+
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). */
|
|
1589
|
+
.cn-look-board .cn-grouped-cards__actions.cn-grouped-cards__actions:not(.cn-look-nextcloud *) {
|
|
1590
|
+
margin-block: 2px 14px;
|
|
1591
|
+
}
|
|
1592
|
+
|
|
1593
|
+
.cn-look-board .cn-grouped-cards__actions:not(.cn-look-nextcloud *) .button-vue {
|
|
1594
|
+
min-height: 34px;
|
|
1595
|
+
height: 34px;
|
|
1380
1596
|
}
|
|
1381
1597
|
|
|
1382
1598
|
.cn-look-board .cn-grouped-cards__item.cn-grouped-cards__item {
|
|
@@ -1386,6 +1602,7 @@
|
|
|
1386
1602
|
|
|
1387
1603
|
.cn-look-board .cn-grouped-cards__item-title.cn-grouped-cards__item-title {
|
|
1388
1604
|
font-size: 15px;
|
|
1605
|
+
line-height: 1.2;
|
|
1389
1606
|
}
|
|
1390
1607
|
|
|
1391
1608
|
/* A card with actions holds them at its end, beside the title and meta (the
|
|
@@ -1564,6 +1781,15 @@
|
|
|
1564
1781
|
font-size: 14px;
|
|
1565
1782
|
}
|
|
1566
1783
|
|
|
1784
|
+
/* The mail card's description runs on the normal line height: thematiq's
|
|
1785
|
+
board paragraph token (1.5) gave
|
|
1786
|
+
it 21px lines (probed on :8080 after REFRESH-4b: 14px/21 vs the board's
|
|
1787
|
+
normal; DqZaakEmail r29 E-mail gapBelowTitle 44.4 vs 49).
|
|
1788
|
+
@spec openspec/changes/board-mail-subtitle-line-height/specs/board-mail-subtitle-line-height/spec.md#requirement-the-mail-cards-description-runs-on-the-normal-line-height */
|
|
1789
|
+
.cn-look-board .cn-detail-widget-host .cn-mail-tab__subtitle.cn-mail-tab__subtitle:not(.cn-look-nextcloud *) {
|
|
1790
|
+
line-height: normal;
|
|
1791
|
+
}
|
|
1792
|
+
|
|
1567
1793
|
/* ---- The attention flag's buttons --------------------------------------- */
|
|
1568
1794
|
/* The case boards draw "Markeer voor aandacht" and the flag's other labelled
|
|
1569
1795
|
buttons at the 40px control height (DqZaak and the case tab boards);
|
|
@@ -1728,9 +1954,14 @@
|
|
|
1728
1954
|
}
|
|
1729
1955
|
|
|
1730
1956
|
.cn-look-board .cn-detail-page__leaf-card .cn-contacts-tab .cn-contacts-tab__header {
|
|
1957
|
+
display: inline-flex;
|
|
1731
1958
|
justify-content: flex-start;
|
|
1732
1959
|
}
|
|
1733
1960
|
|
|
1961
|
+
.cn-look-board .cn-detail-page__leaf-card .cn-contacts-tab .cn-contacts-tab__header .button-vue {
|
|
1962
|
+
--button-size: var(--cn-board-control-height);
|
|
1963
|
+
}
|
|
1964
|
+
|
|
1734
1965
|
/* A body card's subtitle as the Dq boards draw it: 14px muted at line
|
|
1735
1966
|
height 1.2, 3px under the title, and the content 12px under it.
|
|
1736
1967
|
@spec openspec/changes/board-card-subtitle-gaps/specs/board-card/spec.md */
|
|
@@ -1800,6 +2031,11 @@
|
|
|
1800
2031
|
line-height: 1.2;
|
|
1801
2032
|
}
|
|
1802
2033
|
|
|
2034
|
+
.cn-look-board .cn-object-parties .cn-object-parties__accepted .cn-object-parties__muted {
|
|
2035
|
+
font-size: 13px;
|
|
2036
|
+
line-height: 1.2;
|
|
2037
|
+
}
|
|
2038
|
+
|
|
1803
2039
|
.cn-look-board .cn-object-parties .cn-object-parties__accepted-kind {
|
|
1804
2040
|
padding: 2px 8px;
|
|
1805
2041
|
border: 1px solid var(--color-border-maxcontrast);
|
|
@@ -1836,23 +2072,30 @@
|
|
|
1836
2072
|
/* Appointment and note rows (DqTaak Afspraken, Notities): a hairline above
|
|
1837
2073
|
every row including the first, 12px 0 padding, a 32px round tile (the day
|
|
1838
2074
|
an appointment starts, the author's initials) 12px before the text, the
|
|
1839
|
-
title 15/600 and one 13px muted meta line joined with " · ".
|
|
2075
|
+
title 15/600 and one 13px muted meta line joined with " · ". Every
|
|
2076
|
+
selector carries :not(.cn-look-nextcloud *) to outrank the cards' scoped
|
|
2077
|
+
rules, which tie with a two-class selector and load later.
|
|
1840
2078
|
@spec openspec/changes/board-task-cards-rows/specs/task-cards/spec.md#requirement-board-appointment-and-note-rows-carry-a-tile-and-a-meta-line */
|
|
1841
|
-
.cn-look-board .cn-events-card__list {
|
|
2079
|
+
.cn-look-board .cn-events-card__list:not(.cn-look-nextcloud *) {
|
|
1842
2080
|
gap: 0;
|
|
1843
2081
|
}
|
|
1844
2082
|
|
|
1845
|
-
.cn-look-board .cn-events-card__event,
|
|
1846
|
-
.cn-look-board .cn-events-card__event:last-child,
|
|
1847
|
-
.cn-look-board .cn-notes-card__note,
|
|
1848
|
-
.cn-look-board .cn-notes-card__note:last-child {
|
|
1849
|
-
padding: 12px
|
|
2083
|
+
.cn-look-board .cn-events-card__event:not(.cn-look-nextcloud *),
|
|
2084
|
+
.cn-look-board .cn-events-card__event:not(.cn-look-nextcloud *):last-child,
|
|
2085
|
+
.cn-look-board .cn-notes-card__note:not(.cn-look-nextcloud *),
|
|
2086
|
+
.cn-look-board .cn-notes-card__note:not(.cn-look-nextcloud *):last-child {
|
|
2087
|
+
padding-block: 12px;
|
|
1850
2088
|
border-top: 1px solid var(--cn-board-hairline);
|
|
1851
2089
|
border-bottom: none;
|
|
1852
2090
|
}
|
|
1853
2091
|
|
|
1854
|
-
.cn-look-board .cn-events-
|
|
1855
|
-
.cn-look-board .cn-
|
|
2092
|
+
.cn-look-board .cn-events-card__event:not(.cn-look-nextcloud *),
|
|
2093
|
+
.cn-look-board .cn-events-card__event:not(.cn-look-nextcloud *):last-child {
|
|
2094
|
+
padding-inline: 0;
|
|
2095
|
+
}
|
|
2096
|
+
|
|
2097
|
+
.cn-look-board .cn-events-card__day:not(.cn-look-nextcloud *),
|
|
2098
|
+
.cn-look-board .cn-notes-card__initials:not(.cn-look-nextcloud *) {
|
|
1856
2099
|
display: inline-flex;
|
|
1857
2100
|
flex: 0 0 32px;
|
|
1858
2101
|
align-items: center;
|
|
@@ -1866,60 +2109,79 @@
|
|
|
1866
2109
|
font-weight: 700;
|
|
1867
2110
|
}
|
|
1868
2111
|
|
|
1869
|
-
.cn-look-board .cn-events-card__text {
|
|
2112
|
+
.cn-look-board .cn-events-card__text:not(.cn-look-nextcloud *) {
|
|
1870
2113
|
flex-flow: row wrap;
|
|
1871
2114
|
row-gap: 2px;
|
|
1872
2115
|
}
|
|
1873
2116
|
|
|
1874
|
-
.cn-look-board .cn-events-card__summary,
|
|
1875
|
-
.cn-look-board .cn-notes-card__body {
|
|
2117
|
+
.cn-look-board .cn-events-card__summary:not(.cn-look-nextcloud *),
|
|
2118
|
+
.cn-look-board .cn-notes-card__body:not(.cn-look-nextcloud *) {
|
|
1876
2119
|
font-size: 15px;
|
|
1877
2120
|
font-weight: 600;
|
|
1878
|
-
line-height:
|
|
2121
|
+
line-height: normal;
|
|
1879
2122
|
}
|
|
1880
2123
|
|
|
1881
|
-
.cn-look-board .cn-events-card__summary {
|
|
2124
|
+
.cn-look-board .cn-events-card__summary:not(.cn-look-nextcloud *) {
|
|
1882
2125
|
flex-basis: 100%;
|
|
1883
2126
|
}
|
|
1884
2127
|
|
|
1885
|
-
.cn-look-board .cn-events-card__when,
|
|
1886
|
-
.cn-look-board .cn-events-card__where,
|
|
1887
|
-
.cn-look-board .cn-notes-card__author,
|
|
1888
|
-
.cn-look-board .cn-notes-card__time {
|
|
2128
|
+
.cn-look-board .cn-events-card__when:not(.cn-look-nextcloud *),
|
|
2129
|
+
.cn-look-board .cn-events-card__where:not(.cn-look-nextcloud *),
|
|
2130
|
+
.cn-look-board .cn-notes-card__author:not(.cn-look-nextcloud *),
|
|
2131
|
+
.cn-look-board .cn-notes-card__time:not(.cn-look-nextcloud *) {
|
|
1889
2132
|
color: var(--color-text-maxcontrast);
|
|
1890
2133
|
font-size: 13px;
|
|
1891
2134
|
font-weight: 400;
|
|
1892
2135
|
}
|
|
1893
2136
|
|
|
1894
|
-
.cn-look-board .cn-events-card__where::before,
|
|
1895
|
-
.cn-look-board .cn-notes-card__time::before {
|
|
2137
|
+
.cn-look-board .cn-events-card__where:not(.cn-look-nextcloud *)::before,
|
|
2138
|
+
.cn-look-board .cn-notes-card__time:not(.cn-look-nextcloud *)::before {
|
|
1896
2139
|
content: ' · ';
|
|
1897
2140
|
white-space: pre;
|
|
1898
2141
|
}
|
|
1899
2142
|
|
|
1900
|
-
|
|
2143
|
+
/* Each note sits alone in its thread, so it is also a :last-child; the
|
|
2144
|
+
padding above is set per side so the 44px room for the tile holds. */
|
|
2145
|
+
.cn-look-board .cn-notes-card__note:not(.cn-look-nextcloud *),
|
|
2146
|
+
.cn-look-board .cn-notes-card__note:not(.cn-look-nextcloud *):last-child {
|
|
1901
2147
|
display: flex;
|
|
1902
2148
|
flex-direction: column;
|
|
1903
2149
|
gap: 2px;
|
|
1904
|
-
padding-inline
|
|
2150
|
+
padding-inline: 44px 0;
|
|
1905
2151
|
}
|
|
1906
2152
|
|
|
1907
|
-
|
|
2153
|
+
/* Reply stays on the row as Delete does: at its end, shown on hover and on
|
|
2154
|
+
keyboard focus, so the row keeps the board's two lines.
|
|
2155
|
+
@spec openspec/changes/board-note-rows-tile-room/specs/task-cards/spec.md#requirement-a-board-note-row-keeps-its-tile-room-and-two-lines */
|
|
2156
|
+
.cn-look-board .cn-notes-card__note:not(.cn-look-nextcloud *) > .cn-notes-card__reply-btn {
|
|
2157
|
+
position: absolute;
|
|
2158
|
+
top: 8px;
|
|
2159
|
+
inset-inline-end: 32px;
|
|
2160
|
+
opacity: 0;
|
|
2161
|
+
}
|
|
2162
|
+
|
|
2163
|
+
.cn-look-board .cn-notes-card__note:not(.cn-look-nextcloud *):hover > .cn-notes-card__reply-btn,
|
|
2164
|
+
.cn-look-board .cn-notes-card__note:not(.cn-look-nextcloud *):focus-within > .cn-notes-card__reply-btn {
|
|
2165
|
+
opacity: 1;
|
|
2166
|
+
}
|
|
2167
|
+
|
|
2168
|
+
.cn-look-board .cn-notes-card__initials:not(.cn-look-nextcloud *) {
|
|
1908
2169
|
position: absolute;
|
|
1909
2170
|
top: 12px;
|
|
1910
2171
|
inset-inline-start: 0;
|
|
1911
2172
|
}
|
|
1912
2173
|
|
|
1913
|
-
.cn-look-board .cn-notes-card__body {
|
|
2174
|
+
.cn-look-board .cn-notes-card__body:not(.cn-look-nextcloud *) {
|
|
1914
2175
|
order: -1;
|
|
1915
2176
|
}
|
|
1916
2177
|
|
|
1917
|
-
.cn-look-board .cn-notes-card__note-header {
|
|
2178
|
+
.cn-look-board .cn-notes-card__note-header:not(.cn-look-nextcloud *) {
|
|
1918
2179
|
justify-content: flex-start;
|
|
1919
2180
|
margin-bottom: 0;
|
|
2181
|
+
line-height: normal;
|
|
1920
2182
|
}
|
|
1921
2183
|
|
|
1922
|
-
.cn-look-board .cn-notes-card__time {
|
|
2184
|
+
.cn-look-board .cn-notes-card__time:not(.cn-look-nextcloud *) {
|
|
1923
2185
|
margin-inline-start: 0;
|
|
1924
2186
|
}
|
|
1925
2187
|
|
|
@@ -1928,6 +2190,10 @@
|
|
|
1928
2190
|
that names the role, the pills at the end. The role headings stay for
|
|
1929
2191
|
assistive tech only.
|
|
1930
2192
|
@spec openspec/changes/board-parties-rows/specs/parties/spec.md */
|
|
2193
|
+
.cn-look-board .cn-object-parties--board {
|
|
2194
|
+
gap: 8px;
|
|
2195
|
+
}
|
|
2196
|
+
|
|
1931
2197
|
.cn-look-board .cn-object-parties--board .cn-object-parties__role-label {
|
|
1932
2198
|
position: absolute;
|
|
1933
2199
|
width: 1px;
|
|
@@ -2039,3 +2305,77 @@
|
|
|
2039
2305
|
font-weight: 600;
|
|
2040
2306
|
text-decoration: underline;
|
|
2041
2307
|
}
|
|
2308
|
+
|
|
2309
|
+
/* Two-column facts (`columns: 2`, DqContact "Contact", DqOrganisatie
|
|
2310
|
+
"Organisatie"): the boards draw the label 2px above a regular-weight
|
|
2311
|
+
value, with no hairline under the fact; the 14px row gap separates them.
|
|
2312
|
+
@spec openspec/changes/board-facts-columns-plain/specs/board-facts-columns-plain/spec.md#requirement-board-two-column-facts-are-plain-label-over-value-pairs */
|
|
2313
|
+
.cn-look-board .cn-facts-widget__rows--columns:not(.cn-look-nextcloud *) .cn-facts-widget__row {
|
|
2314
|
+
gap: 2px;
|
|
2315
|
+
padding-bottom: 0;
|
|
2316
|
+
border-bottom: none;
|
|
2317
|
+
}
|
|
2318
|
+
|
|
2319
|
+
.cn-look-board .cn-facts-widget__rows--columns:not(.cn-look-nextcloud *) .cn-facts-widget__value.cn-facts-widget__value {
|
|
2320
|
+
font-weight: 400;
|
|
2321
|
+
line-height: normal;
|
|
2322
|
+
}
|
|
2323
|
+
|
|
2324
|
+
.cn-look-board .cn-facts-widget__rows--columns:not(.cn-look-nextcloud *) .cn-facts-widget__label.cn-facts-widget__label {
|
|
2325
|
+
line-height: normal;
|
|
2326
|
+
}
|
|
2327
|
+
|
|
2328
|
+
/* A ruled list in a page card (`ruleAbove`, DqContact and DqOrganisatie
|
|
2329
|
+
"Zaken", "Tickets"): the rule sits 12px under the title and each row has
|
|
2330
|
+
12px above and below its text, so the first row's text is 25px under the
|
|
2331
|
+
title.
|
|
2332
|
+
@spec openspec/changes/board-ruled-list-card-start/specs/board-ruled-list-card-start/spec.md#requirement-a-board-ruled-list-in-a-page-card-starts-12px-under-the-title */
|
|
2333
|
+
.cn-look-board .cn-detail-page .cn-widget-wrapper__content:has(> .cn-record-list--rows.cn-record-list--rule-above):not(.cn-detail-page__side *),
|
|
2334
|
+
.cn-look-board .cn-detail-card__content:has(> .cn-record-list--rows.cn-record-list--rule-above):not(.cn-detail-page__side *) {
|
|
2335
|
+
padding-top: 12px;
|
|
2336
|
+
}
|
|
2337
|
+
|
|
2338
|
+
.cn-look-board .cn-detail-page .cn-record-list--rows.cn-record-list--rule-above:not(.cn-detail-page__side *):not(.cn-look-nextcloud *) .cn-record-list__row {
|
|
2339
|
+
padding: 12px 0;
|
|
2340
|
+
}
|
|
2341
|
+
|
|
2342
|
+
/* Under a title with a subtitle the rule sits 8px below the subtitle
|
|
2343
|
+
(DqZaakBesluiten "Adviezen", DqZaakArchivering "Bewaring"). A custom
|
|
2344
|
+
widget that opens on a ruled list opts in with `cn-rule-above` on its root. */
|
|
2345
|
+
.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-record-list--rows.cn-record-list--rule-above, > .cn-rule-above) {
|
|
2346
|
+
padding-top: 8px;
|
|
2347
|
+
}
|
|
2348
|
+
|
|
2349
|
+
/* A side list row with initials stays one line: a 28px circle 8px before
|
|
2350
|
+
the regular-weight text (DqSociaalDomein "Wie"). The library stacks side
|
|
2351
|
+
rows into a column, which put the initials above the name.
|
|
2352
|
+
@spec openspec/changes/board-side-person-rows/specs/board-side-person-rows/spec.md#requirement-a-board-side-row-with-initials-keeps-them-beside-the-text */
|
|
2353
|
+
.cn-look-board .cn-detail-page__side .cn-record-list__row:has(> .cn-record-list__avatar):not(.cn-look-nextcloud *) {
|
|
2354
|
+
flex-direction: row;
|
|
2355
|
+
align-items: center;
|
|
2356
|
+
gap: 8px;
|
|
2357
|
+
}
|
|
2358
|
+
|
|
2359
|
+
.cn-look-board .cn-detail-page__side .cn-record-list__row:not(.cn-look-nextcloud *) > .cn-record-list__avatar {
|
|
2360
|
+
width: 28px;
|
|
2361
|
+
height: 28px;
|
|
2362
|
+
background: var(--color-primary-element-light);
|
|
2363
|
+
color: var(--color-primary-element-light-text);
|
|
2364
|
+
}
|
|
2365
|
+
|
|
2366
|
+
.cn-look-board .cn-detail-page__side .cn-record-list__row:has(> .cn-record-list__avatar):not(.cn-look-nextcloud *) .cn-record-list__title {
|
|
2367
|
+
font-weight: 400;
|
|
2368
|
+
}
|
|
2369
|
+
|
|
2370
|
+
/* The history card's kind chips sit on the header's 16px gap, 8px apart, as
|
|
2371
|
+
DqZaakHistorie draws them: the server's 3px button margin pushed the row
|
|
2372
|
+
3px down and made it 42px tall. The composer's field labels run on a 1.2
|
|
2373
|
+
line, so "Sjabloon" starts 12px under the subtitle as drawn.
|
|
2374
|
+
@spec openspec/changes/board-history-chips-and-labels/specs/timeline/spec.md */
|
|
2375
|
+
.cn-look-board .cn-timeline-manage__chips .cn-timeline-manage__chip:not(.cn-look-nextcloud *) {
|
|
2376
|
+
margin: 0;
|
|
2377
|
+
}
|
|
2378
|
+
|
|
2379
|
+
.cn-look-board .cn-timeline-manage__draft-label:not(.cn-look-nextcloud *) {
|
|
2380
|
+
line-height: 1.2;
|
|
2381
|
+
}
|