@conduction/nextcloud-vue 2.149.0 → 2.151.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 +7 -2
- package/dist/esm/components/CnActionDialog/CnActionDialog.vue2.js.map +1 -1
- package/dist/esm/components/CnActionDialog/CnActionDialog.vue3.js +40 -41
- package/dist/esm/components/CnActionDialog/CnActionDialog.vue3.js.map +1 -1
- package/dist/esm/components/CnChartWidget/CnChartWidget.vue.js +1 -1
- package/dist/esm/components/CnChartWidget/CnChartWidget.vue2.js +12 -0
- package/dist/esm/components/CnChartWidget/CnChartWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnChartWidget/CnChartWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnConversationThread/CnConversationThread.vue.js +1 -1
- package/dist/esm/components/CnConversationThread/CnConversationThread.vue2.js +6 -3
- package/dist/esm/components/CnConversationThread/CnConversationThread.vue2.js.map +1 -1
- package/dist/esm/components/CnConversationThread/CnConversationThread.vue3.js +13 -1
- package/dist/esm/components/CnConversationThread/CnConversationThread.vue3.js.map +1 -1
- package/dist/esm/components/CnConversationThread/CnConversationWidget.vue.js +1 -1
- package/dist/esm/components/CnConversationThread/CnConversationWidget.vue2.js +5 -1
- package/dist/esm/components/CnConversationThread/CnConversationWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnConversationThread/CnConversationWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue.js +1 -1
- package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue2.js +46 -0
- package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue2.js.map +1 -1
- package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue3.js +64 -64
- package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue3.js.map +1 -1
- package/dist/esm/components/CnObjectDataWidget/CnObjectDataWidget.vue.js +1 -1
- package/dist/esm/components/CnObjectDataWidget/CnObjectDataWidget.vue2.js +15 -1
- package/dist/esm/components/CnObjectDataWidget/CnObjectDataWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnObjectDataWidget/CnObjectDataWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnPlanWidget/CnPlanWidgetRow.vue.js +1 -1
- package/dist/esm/components/CnPlanWidget/CnPlanWidgetRow.vue2.js.map +1 -1
- package/dist/esm/components/CnPlanWidget/CnPlanWidgetRow.vue3.js +16 -5
- package/dist/esm/components/CnPlanWidget/CnPlanWidgetRow.vue3.js.map +1 -1
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue.js +1 -1
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue2.js +25 -2
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue3.js +82 -68
- 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/CnTimelineWidget/CnTimelineManage.vue.js +1 -1
- package/dist/esm/components/CnTimelineWidget/CnTimelineManage.vue2.js.map +1 -1
- package/dist/esm/components/CnTimelineWidget/CnTimelineManage.vue3.js +1 -1
- package/dist/esm/components/CnTimelineWidget/CnTimelineManage.vue3.js.map +1 -1
- package/dist/esm/integrations/builtin/calendar/eventStatus.js +43 -2
- package/dist/esm/integrations/builtin/calendar/eventStatus.js.map +1 -1
- package/dist/esm/l10n/en.json.js +4 -1
- package/dist/esm/l10n/en.json.js.map +1 -1
- package/dist/esm/l10n/nl.json.js +5 -2
- package/dist/esm/l10n/nl.json.js.map +1 -1
- package/dist/esm/library-style.js +1 -1
- package/dist/esm/nextcloud-vue.css +707 -438
- package/dist/esm/utils/fillTemplate.js +19 -2
- package/dist/esm/utils/fillTemplate.js.map +1 -1
- package/dist/nextcloud-vue.cjs.js +926 -723
- package/dist/nextcloud-vue.cjs.js.map +2 -2
- package/dist/nextcloud-vue.css +707 -438
- package/l10n/en.json +4 -1
- package/l10n/nl.json +5 -2
- package/package.json +1 -1
- package/src/components/CnActionDialog/CnActionDialog.vue +17 -4
- package/src/components/CnChartWidget/CnChartWidget.md +1 -1
- package/src/components/CnChartWidget/CnChartWidget.vue +12 -0
- package/src/components/CnConversationThread/CnConversationThread.vue +16 -2
- package/src/components/CnConversationThread/CnConversationWidget.vue +5 -1
- package/src/components/CnFilesBrowser/CnFilesBrowser.vue +47 -2
- package/src/components/CnObjectDataWidget/CnObjectDataWidget.md +1 -1
- package/src/components/CnObjectDataWidget/CnObjectDataWidget.vue +15 -1
- package/src/components/CnPlanWidget/CnPlanWidgetRow.vue +17 -2
- package/src/components/CnRecordListWidget/CnRecordListWidget.vue +45 -2
- package/src/components/CnRetentionWidget/CnRetentionWidget.vue +8 -1
- package/src/components/CnTimelineWidget/CnTimelineManage.vue +1 -1
- package/src/css/board.css +2 -0
- package/src/css/dialog.css +6 -0
- package/src/css/look-board-detail.css +137 -0
- package/src/css/look-board-index.css +5 -1
- package/src/css/look-board.css +78 -2
- package/src/integrations/builtin/calendar/eventStatus.js +42 -1
- package/src/utils/fillTemplate.js +19 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CnPlanWidgetRow.vue2.js","sources":["../../../../src/components/CnPlanWidget/CnPlanWidgetRow.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2026 Conduction B.V.\n - SPDX-License-Identifier: EUPL-1.2\n-->\n<template>\n\t<div class=\"cn-plan-row\" :data-testid=\"`cn-plan-row-${item.key || item.uuid}`\">\n\t\t<span class=\"cn-plan-row__name\">{{ item.name }}</span>\n\t\t<span class=\"cn-plan-row__state\" :data-state=\"item.state\">{{ stateLabel(item.state) }}</span>\n\t\t<NcButton v-if=\"item.state === 'enabled' && item.discretionary\"\n\t\t\t:disabled=\"busy\"\n\t\t\t:data-testid=\"`cn-plan-enable-${item.key || item.uuid}`\"\n\t\t\t@click=\"$emit('enable', item)\">\n\t\t\t{{ t('nextcloud-vue', 'Start') }}\n\t\t</NcButton>\n\t\t<NcButton v-for=\"target in targets\"\n\t\t\t:key=\"target\"\n\t\t\t:disabled=\"busy\"\n\t\t\t:data-testid=\"`cn-plan-${target}-${item.key || item.uuid}`\"\n\t\t\t@click=\"$emit('transition', item, target)\">\n\t\t\t{{ target === 'completed' ? t('nextcloud-vue', 'Complete') : t('nextcloud-vue', 'Stop') }}\n\t\t</NcButton>\n\t</div>\n</template>\n\n<script>\nimport { translate as t } from '@nextcloud/l10n'\nimport { NcButton } from '@nextcloud/vue'\nimport { offeredTransitions } from '../../utils/planTree.js'\n\n/**\n * One plan item in CnPlanWidget: its name, its state and the moves offered.\n */\nexport default {\n\tname: 'CnPlanWidgetRow',\n\n\tcomponents: { NcButton },\n\n\tprops: {\n\t\t/**\n\t\t * The plan item (`uuid`, `key`, `name`, `state`, `type`, `discretionary`).\n\t\t *\n\t\t * @type {object}\n\t\t */\n\t\titem: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\n\t\t/** A move is running. */\n\t\tbusy: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\temits: ['enable', 'transition'],\n\n\tcomputed: {\n\t\t/** @return {string[]} The moves offered. */\n\t\ttargets() {\n\t\t\treturn offeredTransitions(this.item)\n\t\t},\n\t},\n\n\tmethods: {\n\t\tt,\n\n\t\t/**\n\t\t * The word for a state.\n\t\t *\n\t\t * @param {string} state The state.\n\t\t * @return {string}\n\t\t */\n\t\tstateLabel(state) {\n\t\t\tconst labels = {\n\t\t\t\tavailable: t('nextcloud-vue', 'Waiting'),\n\t\t\t\tenabled: t('nextcloud-vue', 'Can start'),\n\t\t\t\tactive: t('nextcloud-vue', 'In progress'),\n\t\t\t\tcompleted: t('nextcloud-vue', 'Done'),\n\t\t\t\tterminated: t('nextcloud-vue', 'Stopped'),\n\t\t\t\tdisabled: t('nextcloud-vue', 'Not needed'),\n\t\t\t}\n\t\t\treturn labels[state] || String(state || '')\n\t\t},\n\t},\n}\n</script>\n\n<style scoped>\n.cn-plan-row {\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\talign-items: center;\n\tgap: 8px;\n\tpadding-block: 6px;\n}\n\n.cn-plan-
|
|
1
|
+
{"version":3,"file":"CnPlanWidgetRow.vue2.js","sources":["../../../../src/components/CnPlanWidget/CnPlanWidgetRow.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2026 Conduction B.V.\n - SPDX-License-Identifier: EUPL-1.2\n-->\n<template>\n\t<div class=\"cn-plan-row\" :data-testid=\"`cn-plan-row-${item.key || item.uuid}`\">\n\t\t<span class=\"cn-plan-row__text\">\n\t\t\t<span class=\"cn-plan-row__name\">{{ item.name }}</span>\n\t\t\t<span v-if=\"item.description\" class=\"cn-plan-row__meta\" data-testid=\"cn-plan-row-meta\">{{ item.description }}</span>\n\t\t</span>\n\t\t<span class=\"cn-plan-row__state\" :data-state=\"item.state\">{{ stateLabel(item.state) }}</span>\n\t\t<NcButton v-if=\"item.state === 'enabled' && item.discretionary\"\n\t\t\t:disabled=\"busy\"\n\t\t\t:data-testid=\"`cn-plan-enable-${item.key || item.uuid}`\"\n\t\t\t@click=\"$emit('enable', item)\">\n\t\t\t{{ t('nextcloud-vue', 'Start') }}\n\t\t</NcButton>\n\t\t<NcButton v-for=\"target in targets\"\n\t\t\t:key=\"target\"\n\t\t\t:disabled=\"busy\"\n\t\t\t:data-testid=\"`cn-plan-${target}-${item.key || item.uuid}`\"\n\t\t\t@click=\"$emit('transition', item, target)\">\n\t\t\t{{ target === 'completed' ? t('nextcloud-vue', 'Complete') : t('nextcloud-vue', 'Stop') }}\n\t\t</NcButton>\n\t</div>\n</template>\n\n<script>\nimport { translate as t } from '@nextcloud/l10n'\nimport { NcButton } from '@nextcloud/vue'\nimport { offeredTransitions } from '../../utils/planTree.js'\n\n/**\n * One plan item in CnPlanWidget: its name, its state and the moves offered.\n */\nexport default {\n\tname: 'CnPlanWidgetRow',\n\n\tcomponents: { NcButton },\n\n\tprops: {\n\t\t/**\n\t\t * The plan item (`uuid`, `key`, `name`, `state`, `type`, `discretionary`).\n\t\t *\n\t\t * @type {object}\n\t\t */\n\t\titem: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\n\t\t/** A move is running. */\n\t\tbusy: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\temits: ['enable', 'transition'],\n\n\tcomputed: {\n\t\t/** @return {string[]} The moves offered. */\n\t\ttargets() {\n\t\t\treturn offeredTransitions(this.item)\n\t\t},\n\t},\n\n\tmethods: {\n\t\tt,\n\n\t\t/**\n\t\t * The word for a state.\n\t\t *\n\t\t * @param {string} state The state.\n\t\t * @return {string}\n\t\t */\n\t\tstateLabel(state) {\n\t\t\tconst labels = {\n\t\t\t\tavailable: t('nextcloud-vue', 'Waiting'),\n\t\t\t\tenabled: t('nextcloud-vue', 'Can start'),\n\t\t\t\tactive: t('nextcloud-vue', 'In progress'),\n\t\t\t\tcompleted: t('nextcloud-vue', 'Done'),\n\t\t\t\tterminated: t('nextcloud-vue', 'Stopped'),\n\t\t\t\tdisabled: t('nextcloud-vue', 'Not needed'),\n\t\t\t}\n\t\t\treturn labels[state] || String(state || '')\n\t\t},\n\t},\n}\n</script>\n\n<style scoped>\n.cn-plan-row {\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\talign-items: center;\n\tgap: 8px;\n\tpadding-block: 6px;\n}\n\n.cn-plan-row__text {\n\tdisplay: flex;\n\tflex: 1 1 auto;\n\tflex-direction: column;\n\tgap: 2px;\n\tmin-width: 0;\n}\n\n.cn-plan-row__name {\n\tfont-weight: 600;\n}\n\n.cn-plan-row__meta {\n\tcolor: var(--color-text-maxcontrast);\n\tfont-size: 13px;\n}\n\n.cn-plan-row__state {\n\tpadding: 2px 10px;\n\tborder-radius: 12px;\n\tbackground: var(--color-background-dark);\n\tfont-size: 13px;\n}\n\n.cn-plan-row__state[data-state='active'] {\n\tbackground: var(--color-primary-element-light);\n}\n\n.cn-plan-row__state[data-state='completed'] {\n\tcolor: var(--color-success-text, var(--color-success));\n}\n</style>\n"],"names":["t"],"mappings":";;;;AAgCA;;;AAGA,aAAe;CACd,IAAI,EAAE,iBAAiB;;AAEvB,CAAA,UAAU,EAAE,EAAE,UAAU;;AAExB,CAAA,KAAK,EAAE;AACN;AACC;AACA;;;EAGD,IAAI,EAAE;GACL,IAAI,EAAE,MAAM;GACZ,QAAQ,EAAE,IAAI;GACd;;AAED;EACA,IAAI,EAAE;GACL,IAAI,EAAE,OAAO;GACb,OAAO,EAAE,KAAK;GACd;EACD;;CAED,KAAK,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC;;AAE/B,CAAA,QAAQ,EAAE;AACT;AACA,EAAA,OAAO,GAAG;AACT,GAAA,OAAO,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAA;GACnC;EACD;;AAED,CAAA,OAAO,EAAE;KACRA,SAAC;;AAED;AACC;AACA;;AAEA;;AAED,EAAA,UAAU,CAAC,KAAK,EAAE;GACjB,MAAM,MAAK,GAAI;AACd,IAAA,SAAS,EAAEA,SAAC,CAAC,eAAe,EAAE,SAAS,CAAC;AACxC,IAAA,OAAO,EAAEA,SAAC,CAAC,eAAe,EAAE,WAAW,CAAC;AACxC,IAAA,MAAM,EAAEA,SAAC,CAAC,eAAe,EAAE,aAAa,CAAC;AACzC,IAAA,SAAS,EAAEA,SAAC,CAAC,eAAe,EAAE,MAAM,CAAC;AACrC,IAAA,UAAU,EAAEA,SAAC,CAAC,eAAe,EAAE,SAAS,CAAC;AACzC,IAAA,QAAQ,EAAEA,SAAC,CAAC,eAAe,EAAE,YAAY,CAAC;AAC3C,KAAA;AACA,GAAA,OAAO,MAAM,CAAC,KAAK,CAAE,IAAG,MAAM,CAAC,KAAI,IAAK,EAAE,CAAA;GAC1C;EACD;AACF;;;;"}
|
|
@@ -1,8 +1,14 @@
|
|
|
1
|
-
import { resolveComponent, openBlock, createElementBlock, createElementVNode, toDisplayString, createBlock, withCtx, createTextVNode,
|
|
1
|
+
import { resolveComponent, openBlock, createElementBlock, createElementVNode, toDisplayString, createCommentVNode, createBlock, withCtx, createTextVNode, Fragment, renderList } from 'vue';
|
|
2
2
|
|
|
3
3
|
const _hoisted_1 = ["data-testid"];
|
|
4
|
-
const _hoisted_2 = { class: "cn-plan-
|
|
5
|
-
const _hoisted_3 =
|
|
4
|
+
const _hoisted_2 = { class: "cn-plan-row__text" };
|
|
5
|
+
const _hoisted_3 = { class: "cn-plan-row__name" };
|
|
6
|
+
const _hoisted_4 = {
|
|
7
|
+
key: 0,
|
|
8
|
+
class: "cn-plan-row__meta",
|
|
9
|
+
"data-testid": "cn-plan-row-meta"
|
|
10
|
+
};
|
|
11
|
+
const _hoisted_5 = ["data-state"];
|
|
6
12
|
|
|
7
13
|
function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8
14
|
const _component_NcButton = resolveComponent("NcButton");
|
|
@@ -11,11 +17,16 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
11
17
|
class: "cn-plan-row",
|
|
12
18
|
"data-testid": `cn-plan-row-${$props.item.key || $props.item.uuid}`
|
|
13
19
|
}, [
|
|
14
|
-
createElementVNode("span", _hoisted_2,
|
|
20
|
+
createElementVNode("span", _hoisted_2, [
|
|
21
|
+
createElementVNode("span", _hoisted_3, toDisplayString($props.item.name), 1 /* TEXT */),
|
|
22
|
+
($props.item.description)
|
|
23
|
+
? (openBlock(), createElementBlock("span", _hoisted_4, toDisplayString($props.item.description), 1 /* TEXT */))
|
|
24
|
+
: createCommentVNode("v-if", true)
|
|
25
|
+
]),
|
|
15
26
|
createElementVNode("span", {
|
|
16
27
|
class: "cn-plan-row__state",
|
|
17
28
|
"data-state": $props.item.state
|
|
18
|
-
}, toDisplayString($options.stateLabel($props.item.state)), 9 /* TEXT, PROPS */,
|
|
29
|
+
}, toDisplayString($options.stateLabel($props.item.state)), 9 /* TEXT, PROPS */, _hoisted_5),
|
|
19
30
|
($props.item.state === 'enabled' && $props.item.discretionary)
|
|
20
31
|
? (openBlock(), createBlock(_component_NcButton, {
|
|
21
32
|
key: 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CnPlanWidgetRow.vue3.js","sources":["../../../../src/components/CnPlanWidget/CnPlanWidgetRow.vue?vue&type=template&id=
|
|
1
|
+
{"version":3,"file":"CnPlanWidgetRow.vue3.js","sources":["../../../../src/components/CnPlanWidget/CnPlanWidgetRow.vue?vue&type=template&id=45566f45&lang.js"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2026 Conduction B.V.\n - SPDX-License-Identifier: EUPL-1.2\n-->\n<template>\n\t<div class=\"cn-plan-row\" :data-testid=\"`cn-plan-row-${item.key || item.uuid}`\">\n\t\t<span class=\"cn-plan-row__text\">\n\t\t\t<span class=\"cn-plan-row__name\">{{ item.name }}</span>\n\t\t\t<span v-if=\"item.description\" class=\"cn-plan-row__meta\" data-testid=\"cn-plan-row-meta\">{{ item.description }}</span>\n\t\t</span>\n\t\t<span class=\"cn-plan-row__state\" :data-state=\"item.state\">{{ stateLabel(item.state) }}</span>\n\t\t<NcButton v-if=\"item.state === 'enabled' && item.discretionary\"\n\t\t\t:disabled=\"busy\"\n\t\t\t:data-testid=\"`cn-plan-enable-${item.key || item.uuid}`\"\n\t\t\t@click=\"$emit('enable', item)\">\n\t\t\t{{ t('nextcloud-vue', 'Start') }}\n\t\t</NcButton>\n\t\t<NcButton v-for=\"target in targets\"\n\t\t\t:key=\"target\"\n\t\t\t:disabled=\"busy\"\n\t\t\t:data-testid=\"`cn-plan-${target}-${item.key || item.uuid}`\"\n\t\t\t@click=\"$emit('transition', item, target)\">\n\t\t\t{{ target === 'completed' ? t('nextcloud-vue', 'Complete') : t('nextcloud-vue', 'Stop') }}\n\t\t</NcButton>\n\t</div>\n</template>\n\n<script>\nimport { translate as t } from '@nextcloud/l10n'\nimport { NcButton } from '@nextcloud/vue'\nimport { offeredTransitions } from '../../utils/planTree.js'\n\n/**\n * One plan item in CnPlanWidget: its name, its state and the moves offered.\n */\nexport default {\n\tname: 'CnPlanWidgetRow',\n\n\tcomponents: { NcButton },\n\n\tprops: {\n\t\t/**\n\t\t * The plan item (`uuid`, `key`, `name`, `state`, `type`, `discretionary`).\n\t\t *\n\t\t * @type {object}\n\t\t */\n\t\titem: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\n\t\t/** A move is running. */\n\t\tbusy: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\temits: ['enable', 'transition'],\n\n\tcomputed: {\n\t\t/** @return {string[]} The moves offered. */\n\t\ttargets() {\n\t\t\treturn offeredTransitions(this.item)\n\t\t},\n\t},\n\n\tmethods: {\n\t\tt,\n\n\t\t/**\n\t\t * The word for a state.\n\t\t *\n\t\t * @param {string} state The state.\n\t\t * @return {string}\n\t\t */\n\t\tstateLabel(state) {\n\t\t\tconst labels = {\n\t\t\t\tavailable: t('nextcloud-vue', 'Waiting'),\n\t\t\t\tenabled: t('nextcloud-vue', 'Can start'),\n\t\t\t\tactive: t('nextcloud-vue', 'In progress'),\n\t\t\t\tcompleted: t('nextcloud-vue', 'Done'),\n\t\t\t\tterminated: t('nextcloud-vue', 'Stopped'),\n\t\t\t\tdisabled: t('nextcloud-vue', 'Not needed'),\n\t\t\t}\n\t\t\treturn labels[state] || String(state || '')\n\t\t},\n\t},\n}\n</script>\n\n<style scoped>\n.cn-plan-row {\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\talign-items: center;\n\tgap: 8px;\n\tpadding-block: 6px;\n}\n\n.cn-plan-row__text {\n\tdisplay: flex;\n\tflex: 1 1 auto;\n\tflex-direction: column;\n\tgap: 2px;\n\tmin-width: 0;\n}\n\n.cn-plan-row__name {\n\tfont-weight: 600;\n}\n\n.cn-plan-row__meta {\n\tcolor: var(--color-text-maxcontrast);\n\tfont-size: 13px;\n}\n\n.cn-plan-row__state {\n\tpadding: 2px 10px;\n\tborder-radius: 12px;\n\tbackground: var(--color-background-dark);\n\tfont-size: 13px;\n}\n\n.cn-plan-row__state[data-state='active'] {\n\tbackground: var(--color-primary-element-light);\n}\n\n.cn-plan-row__state[data-state='completed'] {\n\tcolor: var(--color-success-text, var(--color-success));\n}\n</style>\n"],"names":["_createElementBlock","_createElementVNode","_toDisplayString","_openBlock","_createBlock"],"mappings":";;;AAUQ,MAAA,UAAA,GAAA,EAAA,KAAK,EAAC,mBAAmB,GAAA;AACxB,MAAA,UAAA,GAAA,EAAA,KAAK,EAAC,mBAAmB,GAAA;;;AAChB,EAAA,KAAA,EAAA,mBAAA;AAAA,EAAA,aAAA,EAAA,kBAAA;;;;;;;uBAHhBA;AAAI,IAAA,KAAE,EAAA,aAAA;AAAA,IAAA,aAAA,iBAAA,MAAA,CAAA,IAAA,CAAA,GAAA,IAAA,MAAA,CAAA,IAAA,CAAA,IAAA,CAAA,CAAA;;AACN,IAAAC,kBAAA,CAGO,QAHP,UAGO,EAAA;AAFN,MAAAA,kBAAA,CAAsD,MAAtD,EAAA,UAAsD,EAAnBC,eAAA,CAAA,MAAA,CAAA,IAAG,CAAE,IAAI,CAAA,EAAA,CAAA,YAAA;AAChC,MAAA,CAAA,MAAA,CAAA,IAAG,CAAA,WAAA;AAAf,WAAAC,SAAA,EAAA,EAAAH,kBAAA,CAAe,MAAf,EAAA,UAAe,EAAAE,eAAA,CAAA,MAAA,CAAA,IAAA,CAAA,WAAA,CAAA,EAAA,CAAA,YAAA;;;sBAEe,CAAA,MAAA,EAAA;AAAzB,MAAA,KAAK,EAAC,oBAAmB;MAAA,YAAA,EAAA,MAAA,CAAA,IAAA,CAAA,KAAA;uBAAA,QAAA,CAAA,UAAA,CAAA,MAAA,CAAA,IAAA,CAAA,KAAA,CAAA,CAAA,EAAA,CAAA,oBAAA,UAAA,CAAA;AACf,IAAA,CAAA,MAAA,CAAA,IAAI,CAAC,KAAK,KAAO,SAAA,IAAA,MAAA,CAAA,IAAA,CAAA,aAAA;iCAKtB,CAAA,mBAAA,EAAA;;AAJT,UAAA,QAAQ,EAAA,MAAA,CAAA,IAAA;AACR,UAAA,aAAW,oBAAoB,MAAC,CAAA,IAAA,CAAA,GAAA,IAAA,MAAA,CAAA,IAAA,CAAA,IAAA,CAAA,CAAA;UAChC,OAAK,EAAA,MAAA,CAAA,CAAA,CAAA,KAAA,MAAA,CAAA,CAAA,CAAA,GAAA,MAAA,KAAE,IAAI,CAAA,KAAA,CAAA,QAAA,EAAA,MAAA,CAAA,IAAA,CAAA,CAAA,CAAA;;2BACZ,MAAe;4CAAZ,QAAC,CAAA,CAAA,CAAA,eAAA,EAAA,OAAA,CAAA,CAAA,EAAA,CAAA,YAAA;;;;;sBAEJF,8CAA0B,QAAM,CAAA,OAAA,EAAA,CAAhB,MAAM,KAAA;2BAAtBI;AACC,QAAA,GAAG,EAAE,MAAM;AACX,QAAA,QAAQ,EAAA,MAAA,CAAA,IAAA;QACR,aAAE,EAAA,CAAA,QAAA,EAAA,MAAA,CAAA,CAAA,EAAA,MAAA,CAAA,IAAA,CAAA,GAAA,IAAA,MAAA,CAAA,IAAA,CAAA,IAAA,CAAA,CAAA;;;;;;;;;;;;;;"}
|
|
@@ -2,7 +2,7 @@ import script from './CnRecordListWidget.vue2.js';
|
|
|
2
2
|
import { render } from './CnRecordListWidget.vue3.js';
|
|
3
3
|
|
|
4
4
|
script.render = render;
|
|
5
|
-
script.__scopeId = "data-v-
|
|
5
|
+
script.__scopeId = "data-v-60a08dcb";
|
|
6
6
|
const __sfc_main = script;
|
|
7
7
|
|
|
8
8
|
export { __sfc_main as default };
|
|
@@ -20,6 +20,7 @@ import { resolveDue } from '../../utils/dueText.js';
|
|
|
20
20
|
import { fillCountLabel } from '../../utils/fillCountLabel.js';
|
|
21
21
|
import { firstFilled, fillTemplate } from '../../utils/fillTemplate.js';
|
|
22
22
|
import { unwrapAppConfig } from '../../utils/formatMetric.js';
|
|
23
|
+
import { variantForColor } from '../../utils/headerFieldChips.js';
|
|
23
24
|
import { initialsOf } from '../../utils/initials.js';
|
|
24
25
|
import { lensUnavailableText, readLensReports } from '../../utils/lensAvailability.js';
|
|
25
26
|
import { isObjectRowsSpec, objectRowsOf } from '../../utils/objectRows.js';
|
|
@@ -429,6 +430,17 @@ var script = {
|
|
|
429
430
|
return PRESENTATIONS.includes(value) ? value : 'rows'
|
|
430
431
|
},
|
|
431
432
|
|
|
433
|
+
/**
|
|
434
|
+
* Whether a `rows` row leads with its icon in a round tile
|
|
435
|
+
* (`iconTile: true` beside `icon`), as DqZaakTaken draws "Wat hierna komt".
|
|
436
|
+
*
|
|
437
|
+
* @return {boolean}
|
|
438
|
+
* @spec openspec/changes/record-list-row-icon-tile/specs/record-list/spec.md#requirement-a-record-list-row-can-lead-with-an-icon-tile
|
|
439
|
+
*/
|
|
440
|
+
iconTiles() {
|
|
441
|
+
return this.content?.iconTile === true && this.cardIcons
|
|
442
|
+
},
|
|
443
|
+
|
|
432
444
|
/**
|
|
433
445
|
* Whether a `cards` card leads its title with an icon: only when the
|
|
434
446
|
* list declares `icon`, so a card without one has no placeholder.
|
|
@@ -2056,7 +2068,11 @@ var script = {
|
|
|
2056
2068
|
},
|
|
2057
2069
|
|
|
2058
2070
|
/**
|
|
2059
|
-
* The row's pill: `{ field, labels?, colorMap?, variant?, hideValues? }`.
|
|
2071
|
+
* The row's pill: `{ field, labels?, colorMap?, colorField?, variant?, variantWhen?, hideValues? }`.
|
|
2072
|
+
* `variantWhen` (`[{ when, variant }]`, the first whose condition holds for the row) wins over `colorMap`.
|
|
2073
|
+
* `colorField` reads the tone from the row (a colour name such as a
|
|
2074
|
+
* status type's `colour`: purple, teal, blue ...) where `colorMap`
|
|
2075
|
+
* names none (DqMijnWerk "In behandeling" in the status's purple).
|
|
2060
2076
|
*
|
|
2061
2077
|
* @param {object} row The row.
|
|
2062
2078
|
* @param {object} [config] A pill config; the widget's `pill` by default.
|
|
@@ -2081,7 +2097,14 @@ var script = {
|
|
|
2081
2097
|
const labels = pill.labels && typeof pill.labels === 'object' ? pill.labels : {};
|
|
2082
2098
|
const map = pill.colorMap && typeof pill.colorMap === 'object' ? pill.colorMap : {};
|
|
2083
2099
|
const found = Object.keys(map).find((k) => k.toLowerCase() === key.toLowerCase());
|
|
2084
|
-
|
|
2100
|
+
// `variantWhen` colours the pill by the row rather than the value: a
|
|
2101
|
+
// finished case is green whatever its case type calls the final status.
|
|
2102
|
+
const rule = Array.isArray(pill.variantWhen)
|
|
2103
|
+
? pill.variantWhen.find((entry) => entry && entry.when && evaluateVisibleWhenLocal(entry.when, row || {}))
|
|
2104
|
+
: null;
|
|
2105
|
+
const colour = pill.colorField ? readPath(row, pill.colorField) : null;
|
|
2106
|
+
const fromRow = typeof colour === 'string' && colour !== '' ? variantForColor(colour) : null;
|
|
2107
|
+
const variant = rule ? rule.variant : (found ? map[found] : (fromRow || pill.variant));
|
|
2085
2108
|
return {
|
|
2086
2109
|
label: labels[key] ? this.translate(labels[key]) : key,
|
|
2087
2110
|
variant: isBadgeVariant(variant) ? variant : 'default',
|