@aotearoan/neon 28.4.1 → 28.6.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/components/feedback/loading-state-card/NeonLoadingStateCard.cjs.js +2 -0
- package/dist/components/feedback/loading-state-card/NeonLoadingStateCard.cjs.js.map +1 -0
- package/dist/components/feedback/loading-state-card/NeonLoadingStateCard.es.js +16 -0
- package/dist/components/feedback/loading-state-card/NeonLoadingStateCard.es.js.map +1 -0
- package/dist/components/feedback/loading-state-card/NeonLoadingStateCard.vue.cjs.js +2 -0
- package/dist/components/feedback/loading-state-card/NeonLoadingStateCard.vue.cjs.js.map +1 -0
- package/dist/components/feedback/loading-state-card/NeonLoadingStateCard.vue.es.js +48 -0
- package/dist/components/feedback/loading-state-card/NeonLoadingStateCard.vue.es.js.map +1 -0
- package/dist/components/feedback/skeleton-loader/NeonSkeletonLoader.cjs.js.map +1 -1
- package/dist/components/feedback/skeleton-loader/NeonSkeletonLoader.es.js.map +1 -1
- package/dist/components/feedback/splash-loader/NeonSplashLoader.cjs.js.map +1 -1
- package/dist/components/feedback/splash-loader/NeonSplashLoader.es.js.map +1 -1
- package/dist/components/layout/basic-layout/NeonBasicLayout.cjs.js +2 -0
- package/dist/components/layout/basic-layout/NeonBasicLayout.cjs.js.map +1 -0
- package/dist/components/layout/basic-layout/NeonBasicLayout.es.js +40 -0
- package/dist/components/layout/basic-layout/NeonBasicLayout.es.js.map +1 -0
- package/dist/components/layout/basic-layout/NeonBasicLayout.vue.cjs.js +2 -0
- package/dist/components/layout/basic-layout/NeonBasicLayout.vue.cjs.js.map +1 -0
- package/dist/components/layout/basic-layout/NeonBasicLayout.vue.es.js +41 -0
- package/dist/components/layout/basic-layout/NeonBasicLayout.vue.es.js.map +1 -0
- package/dist/components/layout/card-list/NeonCardList.cjs.js +1 -1
- package/dist/components/layout/card-list/NeonCardList.cjs.js.map +1 -1
- package/dist/components/layout/card-list/NeonCardList.es.js +60 -49
- package/dist/components/layout/card-list/NeonCardList.es.js.map +1 -1
- package/dist/components/layout/card-list/NeonCardList.vue.cjs.js +1 -1
- package/dist/components/layout/card-list/NeonCardList.vue.cjs.js.map +1 -1
- package/dist/components/layout/card-list/NeonCardList.vue.es.js +98 -74
- package/dist/components/layout/card-list/NeonCardList.vue.es.js.map +1 -1
- package/dist/components/layout/list-layout/NeonListLayout.cjs.js +1 -1
- package/dist/components/layout/list-layout/NeonListLayout.cjs.js.map +1 -1
- package/dist/components/layout/list-layout/NeonListLayout.es.js +34 -23
- package/dist/components/layout/list-layout/NeonListLayout.es.js.map +1 -1
- package/dist/components/layout/list-layout/NeonListLayout.vue.cjs.js +1 -1
- package/dist/components/layout/list-layout/NeonListLayout.vue.cjs.js.map +1 -1
- package/dist/components/layout/list-layout/NeonListLayout.vue.es.js +56 -52
- package/dist/components/layout/list-layout/NeonListLayout.vue.es.js.map +1 -1
- package/dist/components/navigation/breadcrumbs/NeonBreadcrumbs.cjs.js +1 -1
- package/dist/components/navigation/breadcrumbs/NeonBreadcrumbs.cjs.js.map +1 -1
- package/dist/components/navigation/breadcrumbs/NeonBreadcrumbs.es.js +11 -10
- package/dist/components/navigation/breadcrumbs/NeonBreadcrumbs.es.js.map +1 -1
- package/dist/components/presentation/avatar/NeonAvatar.cjs.js +2 -0
- package/dist/components/presentation/avatar/NeonAvatar.cjs.js.map +1 -0
- package/dist/components/presentation/avatar/NeonAvatar.es.js +66 -0
- package/dist/components/presentation/avatar/NeonAvatar.es.js.map +1 -0
- package/dist/components/presentation/avatar/NeonAvatar.vue.cjs.js +2 -0
- package/dist/components/presentation/avatar/NeonAvatar.vue.cjs.js.map +1 -0
- package/dist/components/presentation/avatar/NeonAvatar.vue.es.js +25 -0
- package/dist/components/presentation/avatar/NeonAvatar.vue.es.js.map +1 -0
- package/dist/components/presentation/header/NeonHeader.vue.cjs.js +1 -1
- package/dist/components/presentation/header/NeonHeader.vue.cjs.js.map +1 -1
- package/dist/components/presentation/header/NeonHeader.vue.es.js +31 -29
- package/dist/components/presentation/header/NeonHeader.vue.es.js.map +1 -1
- package/dist/model/layout/card-list/NeonCardListStyle.cjs.js +2 -0
- package/dist/model/layout/card-list/NeonCardListStyle.cjs.js.map +1 -0
- package/dist/model/layout/card-list/NeonCardListStyle.es.js +5 -0
- package/dist/model/layout/card-list/NeonCardListStyle.es.js.map +1 -0
- package/dist/model/presentation/badge/NeonBadgeSize.cjs.js +1 -1
- package/dist/model/presentation/badge/NeonBadgeSize.cjs.js.map +1 -1
- package/dist/model/presentation/badge/NeonBadgeSize.es.js +1 -1
- package/dist/model/presentation/badge/NeonBadgeSize.es.js.map +1 -1
- package/dist/neon.cjs.js +1 -1
- package/dist/neon.es.js +267 -259
- package/dist/neon.es.js.map +1 -1
- package/dist/src/components/feedback/loading-state-card/NeonLoadingStateCard.d.ts +48 -0
- package/dist/src/components/feedback/loading-state-card/NeonLoadingStateCard.vue.d.ts +2 -0
- package/dist/src/components/feedback/skeleton-loader/NeonSkeletonLoader.d.ts +2 -2
- package/dist/src/components/feedback/splash-loader/NeonSplashLoader.d.ts +1 -2
- package/dist/src/components/layout/basic-layout/NeonBasicLayout.d.ts +427 -0
- package/dist/src/components/layout/basic-layout/NeonBasicLayout.vue.d.ts +2 -0
- package/dist/src/components/layout/card-list/NeonCardList.d.ts +81 -28
- package/dist/src/components/layout/list-layout/NeonListLayout.d.ts +374 -265
- package/dist/src/components/presentation/avatar/NeonAvatar.d.ts +1806 -0
- package/dist/src/components/presentation/avatar/NeonAvatar.vue.d.ts +2 -0
- package/dist/src/model/layout/card-list/NeonCardListStyle.d.ts +13 -0
- package/dist/src/model/layout/card-list/NeonLoadOnDemandModel.d.ts +4 -8
- package/dist/src/model/presentation/badge/NeonBadgeSize.d.ts +3 -1
- package/dist/src/neon.d.ts +5 -1
- package/dist/src/utils/common/http/NeonHttpUtils.d.ts +23 -0
- package/dist/utils/common/http/NeonHttpUtils.cjs.js +2 -0
- package/dist/utils/common/http/NeonHttpUtils.cjs.js.map +1 -0
- package/dist/utils/common/http/NeonHttpUtils.es.js +31 -0
- package/dist/utils/common/http/NeonHttpUtils.es.js.map +1 -0
- package/package.json +1 -1
- package/src/sass/components/_badge.scss +2 -2
- package/src/sass/components/{_page-container.scss → _basic-layout.scss} +12 -33
- package/src/sass/components/_card-list.scss +33 -16
- package/src/sass/components/_date-picker.scss +2 -0
- package/src/sass/components/_drawer.scss +1 -0
- package/src/sass/components/_field-group.scss +5 -1
- package/src/sass/components/_header.scss +2 -1
- package/src/sass/components/_input.scss +6 -0
- package/src/sass/components/_link.scss +1 -0
- package/src/sass/components/_loading-state-card.scss +48 -0
- package/src/sass/components/_modal.scss +1 -0
- package/src/sass/components/_page.scss +1 -0
- package/src/sass/components/_range-slider.scss +4 -0
- package/src/sass/components/_skeleton-loader.scss +1 -0
- package/src/sass/components/_sticky-buttons.scss +1 -1
- package/src/sass/components/components.scss +2 -1
- package/src/sass/core/_transitions.scss +3 -3
- package/src/sass/includes/_dependencies.scss +4 -3
- package/src/sass/palette.scss +2 -2
- package/src/sass/theme.scss +8 -4
- package/src/sass/variables-dark.scss +10 -3
- package/src/sass/variables-global.scss +30 -9
- package/src/sass/variables-light.scss +10 -3
- package/dist/components/layout/page-container/NeonPageContainer.cjs.js +0 -2
- package/dist/components/layout/page-container/NeonPageContainer.cjs.js.map +0 -1
- package/dist/components/layout/page-container/NeonPageContainer.es.js +0 -26
- package/dist/components/layout/page-container/NeonPageContainer.es.js.map +0 -1
- package/dist/components/layout/page-container/NeonPageContainer.vue.cjs.js +0 -2
- package/dist/components/layout/page-container/NeonPageContainer.vue.cjs.js.map +0 -1
- package/dist/components/layout/page-container/NeonPageContainer.vue.es.js +0 -31
- package/dist/components/layout/page-container/NeonPageContainer.vue.es.js.map +0 -1
- package/dist/src/components/layout/page-container/NeonPageContainer.d.ts +0 -98
- package/dist/src/components/layout/page-container/NeonPageContainer.vue.d.ts +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NeonCardList.vue.cjs.js","sources":["../../../../src/components/layout/card-list/NeonCardList.vue"],"sourcesContent":["<template>\n <div class=\"neon-card-list\">\n <!-- @slot slot for providing a filter bar component -->\n <slot name=\"filters\"></slot>\n <neon-inline v-if=\"slots.header
|
|
1
|
+
{"version":3,"file":"NeonCardList.vue.cjs.js","sources":["../../../../src/components/layout/card-list/NeonCardList.vue"],"sourcesContent":["<template>\n <div :class=\"`neon-card-list--${listStyle}`\" class=\"neon-card-list\">\n <!-- @slot slot for providing a filter bar component -->\n <slot name=\"filters\"></slot>\n <neon-inline v-if=\"slots.header\" class=\"neon-card-list__header\">\n <!-- @slot slot for providing titles for the card list -->\n <slot name=\"header\"></slot>\n </neon-inline>\n <div ref=\"cards\" class=\"neon-card-list__cards\">\n <template v-for=\"(item, index) in items\">\n <neon-link\n v-if=\"item.href && !item.disabled\"\n :key=\"`${item.model.id ?? index}-link`\"\n :class=\"color && `neon-card-list__link--${color}`\"\n :href=\"item.href\"\n class=\"neon-card-list__link\"\n no-style\n outline-style=\"background\"\n >\n <div class=\"neon-card-list__card\">\n <!-- @slot override the default loading state card -->\n <slot v-if=\"pagination && loading\" name=\"loadingStateCard\">\n <neon-loading-state-card />\n </slot>\n <template v-else>\n <transition mode=\"out-in\" name=\"neon-fade-transition\">\n <!-- @slot slot for rendering card contents, two parameters are available:\n @binding {T} model - the model item to be rendered\n @binding {number} index - the index of the item in the list -->\n <slot name=\"card\" v-bind=\"{ model: item.model, index: index }\"></slot>\n </transition>\n </template>\n </div>\n </neon-link>\n <neon-selectable-card\n v-else-if=\"selectable\"\n :key=\"`${item.model.id ?? index}-selectable`\"\n :class=\"{\n 'neon-card-list__card--disabled': item.disabled,\n 'neon-card-list__card--selected': item.selected,\n }\"\n :disabled=\"item.disabled\"\n :model-value=\"!!item.selected\"\n class=\"neon-card-list__card neon-card-list__card--selectable\"\n @update:model-value=\"emit('toggle-selected', item.model.id, $event)\"\n >\n <!-- @slot override the default loading state card -->\n <slot v-if=\"pagination && loading\" name=\"loadingStateCard\">\n <neon-loading-state-card />\n </slot>\n <template v-else>\n <transition mode=\"out-in\" name=\"neon-fade-transition\">\n <!-- @slot slot for rendering card contents, two parameters are available:\n @binding {T} model - the model item to be rendered\n @binding {number} index - the index of the item in the list -->\n <slot name=\"card\" v-bind=\"{ model: item.model, index: index }\"></slot>\n </transition>\n </template>\n </neon-selectable-card>\n <div\n v-else\n :key=\"`${item.model.id ?? index}-card`\"\n :class=\"{ 'neon-card-list__card--disabled': item.disabled }\"\n class=\"neon-card-list__card\"\n >\n <!-- @slot override the default loading state card -->\n <slot v-if=\"pagination && loading\" name=\"loadingStateCard\">\n <neon-loading-state-card />\n </slot>\n <template v-else>\n <transition mode=\"out-in\" name=\"neon-fade-transition\">\n <!-- @slot slot for rendering card contents, two parameters are available:\n @binding {T} model - the model item to be rendered\n @binding {number} index - the index of the item in the list -->\n <slot name=\"card\" v-bind=\"{ model: item.model, index: index }\"></slot>\n </transition>\n </template>\n </div>\n </template>\n </div>\n <template v-if=\"loadOnDemand\">\n <span v-if=\"resultCountLabel\" class=\"neon-card-list__result-count-label\">{{ resultCountLabel }}</span>\n <neon-button\n v-if=\"items.length < total\"\n :label=\"showMoreLabel\"\n :size=\"NeonSize.Large\"\n :state=\"loading ? NeonState.Loading : NeonState.Ready\"\n class=\"neon-card-list__show-more\"\n @click=\"emit('show-more', $event)\"\n />\n </template>\n <neon-pagination\n v-else-if=\"pagination\"\n :color=\"color\"\n :display-first-and-last=\"pagination.displayFirstAndLast\"\n :page=\"pagination.page\"\n :page-size=\"pagination.pageSize\"\n :total=\"pagination.total\"\n :url-template=\"pagination.urlTemplate\"\n @page-change=\"onPageChange\"\n />\n </div>\n</template>\n\n<script lang=\"ts\" src=\"./NeonCardList.ts\"></script>\n"],"names":["_hoisted_2","_createElementBlock","_normalizeClass","_ctx","_renderSlot","_createBlock","_component_neon_inline","_createElementVNode","_hoisted_1","_openBlock","_Fragment","_renderList","item","index","_component_neon_link","_createVNode","_component_neon_loading_state_card","_Transition","_mergeProps","_component_neon_selectable_card","$event","_hoisted_3","_toDisplayString","_component_neon_button","_cache","_component_neon_pagination"],"mappings":"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"}
|
|
@@ -1,85 +1,109 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { resolveComponent as
|
|
3
|
-
import
|
|
4
|
-
const V = {
|
|
1
|
+
import L from "./NeonCardList.es.js";
|
|
2
|
+
import { resolveComponent as d, openBlock as o, createElementBlock as t, normalizeClass as i, renderSlot as a, createBlock as l, withCtx as r, createCommentVNode as c, createElementVNode as k, Fragment as u, renderList as v, createVNode as g, Transition as m, mergeProps as f, toDisplayString as z } from "vue";
|
|
3
|
+
import N from "../../../_virtual/_plugin-vue_export-helper.es.js";
|
|
4
|
+
const V = {
|
|
5
|
+
ref: "cards",
|
|
6
|
+
class: "neon-card-list__cards"
|
|
7
|
+
}, w = { class: "neon-card-list__card" }, P = {
|
|
5
8
|
key: 0,
|
|
6
|
-
class: "neon-card-
|
|
7
|
-
}, B = { class: "neon-card-list__card" }, D = {
|
|
8
|
-
key: 0,
|
|
9
|
-
class: "neon-card-list__results-end"
|
|
9
|
+
class: "neon-card-list__result-count-label"
|
|
10
10
|
};
|
|
11
|
-
function
|
|
12
|
-
const
|
|
13
|
-
return
|
|
14
|
-
|
|
15
|
-
|
|
11
|
+
function B(e, _, D, E, F, T) {
|
|
12
|
+
const b = d("neon-inline"), p = d("neon-loading-state-card"), y = d("neon-link"), h = d("neon-selectable-card"), $ = d("neon-button"), C = d("neon-pagination");
|
|
13
|
+
return o(), t("div", {
|
|
14
|
+
class: i([`neon-card-list--${e.listStyle}`, "neon-card-list"])
|
|
15
|
+
}, [
|
|
16
|
+
a(e.$slots, "filters"),
|
|
17
|
+
e.slots.header ? (o(), l(b, {
|
|
16
18
|
key: 0,
|
|
17
19
|
class: "neon-card-list__header"
|
|
18
20
|
}, {
|
|
19
|
-
default:
|
|
20
|
-
|
|
21
|
-
e.loadOnDemand ? (n(), a("span", w, c(e.n(e.items.length)) + " " + c(e.ofLabel) + " " + c(e.n(e.total)), 1)) : p("", !0)
|
|
21
|
+
default: r(() => [
|
|
22
|
+
a(e.$slots, "header")
|
|
22
23
|
]),
|
|
23
24
|
_: 3
|
|
24
|
-
})) :
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
"
|
|
36
|
-
|
|
25
|
+
})) : c("", !0),
|
|
26
|
+
k("div", V, [
|
|
27
|
+
(o(!0), t(u, null, v(e.items, (n, s) => (o(), t(u, null, [
|
|
28
|
+
n.href && !n.disabled ? (o(), l(y, {
|
|
29
|
+
key: `${n.model.id ?? s}-link`,
|
|
30
|
+
class: i([e.color && `neon-card-list__link--${e.color}`, "neon-card-list__link"]),
|
|
31
|
+
href: n.href,
|
|
32
|
+
"no-style": "",
|
|
33
|
+
"outline-style": "background"
|
|
34
|
+
}, {
|
|
35
|
+
default: r(() => [
|
|
36
|
+
k("div", w, [
|
|
37
|
+
e.pagination && e.loading ? a(e.$slots, "loadingStateCard", { key: 0 }, () => [
|
|
38
|
+
g(p)
|
|
39
|
+
]) : (o(), l(m, {
|
|
40
|
+
key: 1,
|
|
41
|
+
mode: "out-in",
|
|
42
|
+
name: "neon-fade-transition"
|
|
43
|
+
}, {
|
|
44
|
+
default: r(() => [
|
|
45
|
+
a(e.$slots, "card", f({ ref_for: !0 }, { model: n.model, index: s }))
|
|
46
|
+
]),
|
|
47
|
+
_: 2
|
|
48
|
+
}, 1024))
|
|
49
|
+
])
|
|
50
|
+
]),
|
|
51
|
+
_: 2
|
|
52
|
+
}, 1032, ["class", "href"])) : e.selectable ? (o(), l(h, {
|
|
53
|
+
key: `${n.model.id ?? s}-selectable`,
|
|
54
|
+
class: i([{
|
|
55
|
+
"neon-card-list__card--disabled": n.disabled,
|
|
56
|
+
"neon-card-list__card--selected": n.selected
|
|
57
|
+
}, "neon-card-list__card neon-card-list__card--selectable"]),
|
|
58
|
+
disabled: n.disabled,
|
|
59
|
+
"model-value": !!n.selected,
|
|
60
|
+
"onUpdate:modelValue": (S) => e.emit("toggle-selected", n.model.id, S)
|
|
61
|
+
}, {
|
|
62
|
+
default: r(() => [
|
|
63
|
+
e.pagination && e.loading ? a(e.$slots, "loadingStateCard", { key: 0 }, () => [
|
|
64
|
+
g(p)
|
|
65
|
+
]) : (o(), l(m, {
|
|
66
|
+
key: 1,
|
|
67
|
+
mode: "out-in",
|
|
68
|
+
name: "neon-fade-transition"
|
|
69
|
+
}, {
|
|
70
|
+
default: r(() => [
|
|
71
|
+
a(e.$slots, "card", f({ ref_for: !0 }, { model: n.model, index: s }))
|
|
72
|
+
]),
|
|
73
|
+
_: 2
|
|
74
|
+
}, 1024))
|
|
75
|
+
]),
|
|
76
|
+
_: 2
|
|
77
|
+
}, 1032, ["class", "disabled", "model-value", "onUpdate:modelValue"])) : (o(), t("div", {
|
|
78
|
+
key: `${n.model.id ?? s}-card`,
|
|
79
|
+
class: i([{ "neon-card-list__card--disabled": n.disabled }, "neon-card-list__card"])
|
|
80
|
+
}, [
|
|
81
|
+
e.pagination && e.loading ? a(e.$slots, "loadingStateCard", { key: 0 }, () => [
|
|
82
|
+
g(p)
|
|
83
|
+
]) : (o(), l(m, {
|
|
84
|
+
key: 1,
|
|
85
|
+
mode: "out-in",
|
|
86
|
+
name: "neon-fade-transition"
|
|
37
87
|
}, {
|
|
38
|
-
default:
|
|
39
|
-
|
|
40
|
-
d(e.$slots, "card", _({ ref_for: !0 }, { model: o.model, index: s }))
|
|
41
|
-
])
|
|
88
|
+
default: r(() => [
|
|
89
|
+
a(e.$slots, "card", f({ ref_for: !0 }, { model: n.model, index: s }))
|
|
42
90
|
]),
|
|
43
91
|
_: 2
|
|
44
|
-
},
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
"model-value": !!o.selected,
|
|
52
|
-
"onUpdate:modelValue": (z) => e.emit("toggle-selected", o.model.id, z)
|
|
53
|
-
}, {
|
|
54
|
-
default: i(() => [
|
|
55
|
-
d(e.$slots, "card", _({ ref_for: !0 }, { model: o.model, index: s }))
|
|
56
|
-
]),
|
|
57
|
-
_: 2
|
|
58
|
-
}, 1032, ["class", "disabled", "model-value", "onUpdate:modelValue"])) : (n(), a("div", {
|
|
59
|
-
key: `${o.model.id ?? s}-link`,
|
|
60
|
-
class: m([{ "neon-card-list__card--disabled": o.disabled }, "neon-card-list__card"])
|
|
61
|
-
}, [
|
|
62
|
-
d(e.$slots, "card", _({ ref_for: !0 }, { model: o.model, index: s }))
|
|
63
|
-
], 2))
|
|
64
|
-
], 64))), 256)),
|
|
65
|
-
e.loading ? (n(), t(k, {
|
|
66
|
-
key: 0,
|
|
67
|
-
color: e.color
|
|
68
|
-
}, null, 8, ["color"])) : p("", !0)
|
|
69
|
-
]),
|
|
70
|
-
_: 3
|
|
71
|
-
}),
|
|
72
|
-
e.loadOnDemand ? (n(), a(u, { key: 1 }, [
|
|
73
|
-
e.items.length === e.total ? (n(), a("span", D, c(e.endOfResultsLabel), 1)) : (n(), t(h, {
|
|
92
|
+
}, 1024))
|
|
93
|
+
], 2))
|
|
94
|
+
], 64))), 256))
|
|
95
|
+
], 512),
|
|
96
|
+
e.loadOnDemand ? (o(), t(u, { key: 1 }, [
|
|
97
|
+
e.resultCountLabel ? (o(), t("span", P, z(e.resultCountLabel), 1)) : c("", !0),
|
|
98
|
+
e.items.length < e.total ? (o(), l($, {
|
|
74
99
|
key: 1,
|
|
75
|
-
"button-style": e.NeonButtonStyle.Text,
|
|
76
|
-
color: e.NeonFunctionalColor.Neutral,
|
|
77
100
|
label: e.showMoreLabel,
|
|
78
|
-
size: e.NeonSize.
|
|
101
|
+
size: e.NeonSize.Large,
|
|
102
|
+
state: e.loading ? e.NeonState.Loading : e.NeonState.Ready,
|
|
79
103
|
class: "neon-card-list__show-more",
|
|
80
|
-
onClick:
|
|
81
|
-
}, null, 8, ["
|
|
82
|
-
], 64)) : e.pagination ? (
|
|
104
|
+
onClick: _[0] || (_[0] = (n) => e.emit("show-more", n))
|
|
105
|
+
}, null, 8, ["label", "size", "state"])) : c("", !0)
|
|
106
|
+
], 64)) : e.pagination ? (o(), l(C, {
|
|
83
107
|
key: 2,
|
|
84
108
|
color: e.color,
|
|
85
109
|
"display-first-and-last": e.pagination.displayFirstAndLast,
|
|
@@ -87,12 +111,12 @@ function O(e, r, F, E, P, T) {
|
|
|
87
111
|
"page-size": e.pagination.pageSize,
|
|
88
112
|
total: e.pagination.total,
|
|
89
113
|
"url-template": e.pagination.urlTemplate,
|
|
90
|
-
onPageChange:
|
|
91
|
-
}, null, 8, ["color", "display-first-and-last", "page", "page-size", "total", "url-template"])) :
|
|
92
|
-
]);
|
|
114
|
+
onPageChange: e.onPageChange
|
|
115
|
+
}, null, 8, ["color", "display-first-and-last", "page", "page-size", "total", "url-template", "onPageChange"])) : c("", !0)
|
|
116
|
+
], 2);
|
|
93
117
|
}
|
|
94
|
-
const
|
|
118
|
+
const O = /* @__PURE__ */ N(L, [["render", B]]);
|
|
95
119
|
export {
|
|
96
|
-
|
|
120
|
+
O as default
|
|
97
121
|
};
|
|
98
122
|
//# sourceMappingURL=NeonCardList.vue.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NeonCardList.vue.es.js","sources":["../../../../src/components/layout/card-list/NeonCardList.vue"],"sourcesContent":["<template>\n <div class=\"neon-card-list\">\n <!-- @slot slot for providing a filter bar component -->\n <slot name=\"filters\"></slot>\n <neon-inline v-if=\"slots.header
|
|
1
|
+
{"version":3,"file":"NeonCardList.vue.es.js","sources":["../../../../src/components/layout/card-list/NeonCardList.vue"],"sourcesContent":["<template>\n <div :class=\"`neon-card-list--${listStyle}`\" class=\"neon-card-list\">\n <!-- @slot slot for providing a filter bar component -->\n <slot name=\"filters\"></slot>\n <neon-inline v-if=\"slots.header\" class=\"neon-card-list__header\">\n <!-- @slot slot for providing titles for the card list -->\n <slot name=\"header\"></slot>\n </neon-inline>\n <div ref=\"cards\" class=\"neon-card-list__cards\">\n <template v-for=\"(item, index) in items\">\n <neon-link\n v-if=\"item.href && !item.disabled\"\n :key=\"`${item.model.id ?? index}-link`\"\n :class=\"color && `neon-card-list__link--${color}`\"\n :href=\"item.href\"\n class=\"neon-card-list__link\"\n no-style\n outline-style=\"background\"\n >\n <div class=\"neon-card-list__card\">\n <!-- @slot override the default loading state card -->\n <slot v-if=\"pagination && loading\" name=\"loadingStateCard\">\n <neon-loading-state-card />\n </slot>\n <template v-else>\n <transition mode=\"out-in\" name=\"neon-fade-transition\">\n <!-- @slot slot for rendering card contents, two parameters are available:\n @binding {T} model - the model item to be rendered\n @binding {number} index - the index of the item in the list -->\n <slot name=\"card\" v-bind=\"{ model: item.model, index: index }\"></slot>\n </transition>\n </template>\n </div>\n </neon-link>\n <neon-selectable-card\n v-else-if=\"selectable\"\n :key=\"`${item.model.id ?? index}-selectable`\"\n :class=\"{\n 'neon-card-list__card--disabled': item.disabled,\n 'neon-card-list__card--selected': item.selected,\n }\"\n :disabled=\"item.disabled\"\n :model-value=\"!!item.selected\"\n class=\"neon-card-list__card neon-card-list__card--selectable\"\n @update:model-value=\"emit('toggle-selected', item.model.id, $event)\"\n >\n <!-- @slot override the default loading state card -->\n <slot v-if=\"pagination && loading\" name=\"loadingStateCard\">\n <neon-loading-state-card />\n </slot>\n <template v-else>\n <transition mode=\"out-in\" name=\"neon-fade-transition\">\n <!-- @slot slot for rendering card contents, two parameters are available:\n @binding {T} model - the model item to be rendered\n @binding {number} index - the index of the item in the list -->\n <slot name=\"card\" v-bind=\"{ model: item.model, index: index }\"></slot>\n </transition>\n </template>\n </neon-selectable-card>\n <div\n v-else\n :key=\"`${item.model.id ?? index}-card`\"\n :class=\"{ 'neon-card-list__card--disabled': item.disabled }\"\n class=\"neon-card-list__card\"\n >\n <!-- @slot override the default loading state card -->\n <slot v-if=\"pagination && loading\" name=\"loadingStateCard\">\n <neon-loading-state-card />\n </slot>\n <template v-else>\n <transition mode=\"out-in\" name=\"neon-fade-transition\">\n <!-- @slot slot for rendering card contents, two parameters are available:\n @binding {T} model - the model item to be rendered\n @binding {number} index - the index of the item in the list -->\n <slot name=\"card\" v-bind=\"{ model: item.model, index: index }\"></slot>\n </transition>\n </template>\n </div>\n </template>\n </div>\n <template v-if=\"loadOnDemand\">\n <span v-if=\"resultCountLabel\" class=\"neon-card-list__result-count-label\">{{ resultCountLabel }}</span>\n <neon-button\n v-if=\"items.length < total\"\n :label=\"showMoreLabel\"\n :size=\"NeonSize.Large\"\n :state=\"loading ? NeonState.Loading : NeonState.Ready\"\n class=\"neon-card-list__show-more\"\n @click=\"emit('show-more', $event)\"\n />\n </template>\n <neon-pagination\n v-else-if=\"pagination\"\n :color=\"color\"\n :display-first-and-last=\"pagination.displayFirstAndLast\"\n :page=\"pagination.page\"\n :page-size=\"pagination.pageSize\"\n :total=\"pagination.total\"\n :url-template=\"pagination.urlTemplate\"\n @page-change=\"onPageChange\"\n />\n </div>\n</template>\n\n<script lang=\"ts\" src=\"./NeonCardList.ts\"></script>\n"],"names":["_hoisted_2","_createElementBlock","_normalizeClass","_ctx","_renderSlot","_createBlock","_component_neon_inline","_createElementVNode","_hoisted_1","_openBlock","_Fragment","_renderList","item","index","_component_neon_link","_createVNode","_component_neon_loading_state_card","_Transition","_mergeProps","_component_neon_selectable_card","$event","_hoisted_3","_toDisplayString","_component_neon_button","_cache","_component_neon_pagination"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const
|
|
1
|
+
"use strict";const n=require("vue"),s=require("../card-list/NeonCardList.vue.cjs.js"),c=require("../../presentation/header/NeonHeader.vue.cjs.js"),u=require("../../../model/common/color/NeonFunctionalColor.cjs.js"),d=require("../../presentation/empty-state/NeonEmptyState.vue.cjs.js"),g=require("../../feedback/splash-loader/NeonSplashLoader.vue.cjs.js"),p=require("../../../model/layout/card-list/NeonCardListStyle.cjs.js"),y=n.defineComponent({name:"NeonListLayout",components:{NeonSplashLoader:g,NeonEmptyState:d,NeonCardList:s,NeonHeader:c},props:{title:{type:String,required:!0},subtitle:{type:String},breadcrumbs:{type:Array,default:()=>[]},backButton:{type:Boolean,default:!0},backLabel:{type:String,default:"Back"},items:{type:Array,required:!0},initializing:{type:Boolean},loading:{type:Boolean},color:{type:String,default:()=>u.NeonFunctionalColor.Brand},selectable:{type:Boolean,default:!1},listStyle:{type:String,default:()=>p.NeonCardListStyle.List},loadOnDemand:{type:Object},pagination:{type:Object}},emits:["page-change","show-more","toggle-selected"],setup(o,{emit:t,slots:a}){const r=()=>{t("show-more")},i=(e,l)=>{t("toggle-selected",e,l)};return n.watch(()=>o.initializing,async e=>{!e&&o.items.length>0&&window.scrollTo({top:0,left:0,behavior:"instant"})},{immediate:!0}),{emit:t,slots:a,showMore:r,toggleSelected:i,onPageChange:e=>{window.scrollTo({top:0,left:0,behavior:"instant"}),t("page-change",e)}}}});module.exports=y;
|
|
2
2
|
//# sourceMappingURL=NeonListLayout.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NeonListLayout.cjs.js","sources":["../../../../src/components/layout/list-layout/NeonListLayout.ts?vue&type=script&src=true&lang.ts"],"sourcesContent":["import { defineComponent,
|
|
1
|
+
{"version":3,"file":"NeonListLayout.cjs.js","sources":["../../../../src/components/layout/list-layout/NeonListLayout.ts?vue&type=script&src=true&lang.ts"],"sourcesContent":["import { defineComponent, watch } from 'vue';\nimport type { NeonBreadcrumbLink } from '@/model/navigation/breadcrumbs/NeonBreadcrumbLink';\nimport NeonCardList from '@/components/layout/card-list/NeonCardList.vue';\nimport NeonHeader from '@/components/presentation/header/NeonHeader.vue';\nimport { NeonFunctionalColor } from '@/model/common/color/NeonFunctionalColor';\nimport type { NeonLoadOnDemandModel } from '@/model/layout/card-list/NeonLoadOnDemandModel';\nimport type { NeonPaginationModel } from '@/model/navigation/pagination/NeonPaginationModel';\nimport type { NeonCardListModel } from '@/model/layout/card-list/NeonCardListModel';\nimport type { NeonIdentifiable } from '@/model/common/entity/NeonIdentifiable';\nimport type { NeonSelectable } from '@/model/common/entity/NeonSelectable';\nimport NeonEmptyState from '@/components/presentation/empty-state/NeonEmptyState.vue';\nimport NeonSplashLoader from '@/components/feedback/splash-loader/NeonSplashLoader.vue';\nimport { NeonCardListStyle } from '@/model/layout/card-list/NeonCardListStyle';\n\n/**\n * A page level layout component for displaying a list with a page header, filter bar, card list, pagination & an empty\n * state. Use this component directly inside the NeonPage <em>contents</em> slot.\n */\nexport default defineComponent({\n name: 'NeonListLayout',\n components: {\n NeonSplashLoader,\n NeonEmptyState,\n NeonCardList,\n NeonHeader,\n },\n props: {\n /**\n * The title of the header.\n */\n title: { type: String, required: true },\n /**\n * The subtitle of the header.\n */\n subtitle: { type: String },\n /**\n * Breadcrumbs to display above the header.\n */\n breadcrumbs: { type: Array as () => NeonBreadcrumbLink[], default: () => [] },\n /**\n * Whether to display a back button\n */\n backButton: { type: Boolean, default: true },\n /**\n * Override the label for the back button\n */\n backLabel: { type: String, default: 'Back' },\n /**\n * Items to display as cards. Each item should be a NeonCardListModel.\n */\n items: {\n type: Array as () => Array<NeonCardListModel<NeonIdentifiable | (NeonIdentifiable & NeonSelectable)>>,\n required: true,\n },\n /**\n * Loading state for the initial load.\n */\n initializing: { type: Boolean },\n /**\n * Loading state for pagination, set when loading a new page.\n */\n loading: { type: Boolean },\n /**\n * Specify a selection/loading/hover color for the cards.\n */\n color: { type: String as () => NeonFunctionalColor, default: () => NeonFunctionalColor.Brand },\n /**\n * Make cards selectable.\n */\n selectable: { type: Boolean, default: false },\n /**\n * Specify the card list layout, either a 'List' of cards with 100% width or a responsive 'Grid' of cards.\n */\n listStyle: { type: String as () => NeonCardListStyle, default: () => NeonCardListStyle.List },\n /**\n * Model for configuring the on demand loading layout.\n */\n loadOnDemand: { type: Object as () => NeonLoadOnDemandModel },\n /**\n * Model for configuring pagination, either pagination or loadOnDemand should be provided.\n */\n pagination: { type: Object as () => NeonPaginationModel },\n },\n emits: [\n /**\n * Emitted when the user clicks on a pagination link (useful for paginated lists which are not the main focus of the page,\n * i.e. should not be deep linked).\n *\n * @type {number} The new page number.\n */\n 'page-change',\n /**\n * Emitted when the 'Load more' button is clicked in \"on demand\" mode.\n * @type {void}\n */\n 'show-more',\n /**\n * Emitted when in selectable mode and the selected state of a card is toggled.\n * @type {string, boolean} - the id of the card which is toggled & the new selected state.\n */\n 'toggle-selected',\n ],\n setup(props, { emit, slots }) {\n const showMore = () => {\n emit('show-more');\n };\n\n const toggleSelected = (id: string, selected: boolean) => {\n emit('toggle-selected', id, selected);\n };\n\n watch(\n () => props.initializing,\n async (newValue) => {\n if (!newValue && props.items.length > 0) {\n window.scrollTo({ top: 0, left: 0, behavior: 'instant' as ScrollBehavior });\n }\n },\n { immediate: true },\n );\n\n const onPageChange = (newPage: number) => {\n window.scrollTo({ top: 0, left: 0, behavior: 'instant' as ScrollBehavior });\n emit('page-change', newPage);\n };\n\n return {\n emit,\n slots,\n showMore,\n toggleSelected,\n onPageChange,\n };\n },\n});\n"],"names":["_sfc_main","defineComponent","NeonSplashLoader","NeonEmptyState","NeonCardList","NeonHeader","NeonFunctionalColor","NeonCardListStyle","props","emit","slots","showMore","toggleSelected","id","selected","watch","newValue","newPage"],"mappings":"yaAkBAA,EAAeC,kBAAgB,CAC7B,KAAM,iBACN,WAAY,CACV,iBAAAC,EACA,eAAAC,EACA,aAAAC,EACA,WAAAC,CAAA,EAEF,MAAO,CAIL,MAAO,CAAE,KAAM,OAAQ,SAAU,EAAA,EAIjC,SAAU,CAAE,KAAM,MAAA,EAIlB,YAAa,CAAE,KAAM,MAAqC,QAAS,IAAM,CAAA,CAAC,EAI1E,WAAY,CAAE,KAAM,QAAS,QAAS,EAAA,EAItC,UAAW,CAAE,KAAM,OAAQ,QAAS,MAAA,EAIpC,MAAO,CACL,KAAM,MACN,SAAU,EAAA,EAKZ,aAAc,CAAE,KAAM,OAAA,EAItB,QAAS,CAAE,KAAM,OAAA,EAIjB,MAAO,CAAE,KAAM,OAAqC,QAAS,IAAMC,EAAAA,oBAAoB,KAAA,EAIvF,WAAY,CAAE,KAAM,QAAS,QAAS,EAAA,EAItC,UAAW,CAAE,KAAM,OAAmC,QAAS,IAAMC,EAAAA,kBAAkB,IAAA,EAIvF,aAAc,CAAE,KAAM,MAAA,EAItB,WAAY,CAAE,KAAM,MAAA,CAAoC,EAE1D,MAAO,CAOL,cAKA,YAKA,iBAAA,EAEF,MAAMC,EAAO,CAAE,KAAAC,EAAM,MAAAC,GAAS,CAC5B,MAAMC,EAAW,IAAM,CACrBF,EAAK,WAAW,CAClB,EAEMG,EAAiB,CAACC,EAAYC,IAAsB,CACxDL,EAAK,kBAAmBI,EAAIC,CAAQ,CACtC,EAEAC,OAAAA,EAAAA,MACE,IAAMP,EAAM,aACZ,MAAOQ,GAAa,CACd,CAACA,GAAYR,EAAM,MAAM,OAAS,GACpC,OAAO,SAAS,CAAE,IAAK,EAAG,KAAM,EAAG,SAAU,UAA6B,CAE9E,EACA,CAAE,UAAW,EAAA,CAAK,EAQb,CACL,KAAAC,EACA,MAAAC,EACA,SAAAC,EACA,eAAAC,EACA,aAVoBK,GAAoB,CACxC,OAAO,SAAS,CAAE,IAAK,EAAG,KAAM,EAAG,SAAU,UAA6B,EAC1ER,EAAK,cAAeQ,CAAO,CAC7B,CAOE,CAEJ,CACF,CAAC"}
|
|
@@ -1,15 +1,16 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import
|
|
1
|
+
import { defineComponent as l, watch as p } from "vue";
|
|
2
|
+
import s from "../card-list/NeonCardList.vue.es.js";
|
|
3
3
|
import d from "../../presentation/header/NeonHeader.vue.es.js";
|
|
4
|
-
import { NeonFunctionalColor as
|
|
5
|
-
import
|
|
4
|
+
import { NeonFunctionalColor as m } from "../../../model/common/color/NeonFunctionalColor.es.js";
|
|
5
|
+
import c from "../../presentation/empty-state/NeonEmptyState.vue.es.js";
|
|
6
6
|
import g from "../../feedback/splash-loader/NeonSplashLoader.vue.es.js";
|
|
7
|
-
|
|
7
|
+
import { NeonCardListStyle as f } from "../../../model/layout/card-list/NeonCardListStyle.es.js";
|
|
8
|
+
const N = l({
|
|
8
9
|
name: "NeonListLayout",
|
|
9
10
|
components: {
|
|
10
11
|
NeonSplashLoader: g,
|
|
11
|
-
NeonEmptyState:
|
|
12
|
-
NeonCardList:
|
|
12
|
+
NeonEmptyState: c,
|
|
13
|
+
NeonCardList: s,
|
|
13
14
|
NeonHeader: d
|
|
14
15
|
},
|
|
15
16
|
props: {
|
|
@@ -40,6 +41,10 @@ const L = p({
|
|
|
40
41
|
type: Array,
|
|
41
42
|
required: !0
|
|
42
43
|
},
|
|
44
|
+
/**
|
|
45
|
+
* Loading state for the initial load.
|
|
46
|
+
*/
|
|
47
|
+
initializing: { type: Boolean },
|
|
43
48
|
/**
|
|
44
49
|
* Loading state for pagination, set when loading a new page.
|
|
45
50
|
*/
|
|
@@ -47,11 +52,15 @@ const L = p({
|
|
|
47
52
|
/**
|
|
48
53
|
* Specify a selection/loading/hover color for the cards.
|
|
49
54
|
*/
|
|
50
|
-
color: { type: String, default: () =>
|
|
55
|
+
color: { type: String, default: () => m.Brand },
|
|
51
56
|
/**
|
|
52
57
|
* Make cards selectable.
|
|
53
58
|
*/
|
|
54
59
|
selectable: { type: Boolean, default: !1 },
|
|
60
|
+
/**
|
|
61
|
+
* Specify the card list layout, either a 'List' of cards with 100% width or a responsive 'Grid' of cards.
|
|
62
|
+
*/
|
|
63
|
+
listStyle: { type: String, default: () => f.List },
|
|
55
64
|
/**
|
|
56
65
|
* Model for configuring the on demand loading layout.
|
|
57
66
|
*/
|
|
@@ -70,7 +79,7 @@ const L = p({
|
|
|
70
79
|
*/
|
|
71
80
|
"page-change",
|
|
72
81
|
/**
|
|
73
|
-
* Emitted when the '
|
|
82
|
+
* Emitted when the 'Load more' button is clicked in "on demand" mode.
|
|
74
83
|
* @type {void}
|
|
75
84
|
*/
|
|
76
85
|
"show-more",
|
|
@@ -80,28 +89,30 @@ const L = p({
|
|
|
80
89
|
*/
|
|
81
90
|
"toggle-selected"
|
|
82
91
|
],
|
|
83
|
-
setup(o, { emit:
|
|
84
|
-
const
|
|
85
|
-
|
|
86
|
-
},
|
|
87
|
-
|
|
92
|
+
setup(o, { emit: t, slots: n }) {
|
|
93
|
+
const a = () => {
|
|
94
|
+
t("show-more");
|
|
95
|
+
}, r = (e, i) => {
|
|
96
|
+
t("toggle-selected", e, i);
|
|
88
97
|
};
|
|
89
|
-
return
|
|
90
|
-
() => o.
|
|
91
|
-
() => {
|
|
92
|
-
|
|
98
|
+
return p(
|
|
99
|
+
() => o.initializing,
|
|
100
|
+
async (e) => {
|
|
101
|
+
!e && o.items.length > 0 && window.scrollTo({ top: 0, left: 0, behavior: "instant" });
|
|
93
102
|
},
|
|
94
103
|
{ immediate: !0 }
|
|
95
104
|
), {
|
|
96
|
-
emit:
|
|
97
|
-
|
|
98
|
-
slots: r,
|
|
105
|
+
emit: t,
|
|
106
|
+
slots: n,
|
|
99
107
|
showMore: a,
|
|
100
|
-
toggleSelected:
|
|
108
|
+
toggleSelected: r,
|
|
109
|
+
onPageChange: (e) => {
|
|
110
|
+
window.scrollTo({ top: 0, left: 0, behavior: "instant" }), t("page-change", e);
|
|
111
|
+
}
|
|
101
112
|
};
|
|
102
113
|
}
|
|
103
114
|
});
|
|
104
115
|
export {
|
|
105
|
-
|
|
116
|
+
N as default
|
|
106
117
|
};
|
|
107
118
|
//# sourceMappingURL=NeonListLayout.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NeonListLayout.es.js","sources":["../../../../src/components/layout/list-layout/NeonListLayout.ts?vue&type=script&src=true&lang.ts"],"sourcesContent":["import { defineComponent,
|
|
1
|
+
{"version":3,"file":"NeonListLayout.es.js","sources":["../../../../src/components/layout/list-layout/NeonListLayout.ts?vue&type=script&src=true&lang.ts"],"sourcesContent":["import { defineComponent, watch } from 'vue';\nimport type { NeonBreadcrumbLink } from '@/model/navigation/breadcrumbs/NeonBreadcrumbLink';\nimport NeonCardList from '@/components/layout/card-list/NeonCardList.vue';\nimport NeonHeader from '@/components/presentation/header/NeonHeader.vue';\nimport { NeonFunctionalColor } from '@/model/common/color/NeonFunctionalColor';\nimport type { NeonLoadOnDemandModel } from '@/model/layout/card-list/NeonLoadOnDemandModel';\nimport type { NeonPaginationModel } from '@/model/navigation/pagination/NeonPaginationModel';\nimport type { NeonCardListModel } from '@/model/layout/card-list/NeonCardListModel';\nimport type { NeonIdentifiable } from '@/model/common/entity/NeonIdentifiable';\nimport type { NeonSelectable } from '@/model/common/entity/NeonSelectable';\nimport NeonEmptyState from '@/components/presentation/empty-state/NeonEmptyState.vue';\nimport NeonSplashLoader from '@/components/feedback/splash-loader/NeonSplashLoader.vue';\nimport { NeonCardListStyle } from '@/model/layout/card-list/NeonCardListStyle';\n\n/**\n * A page level layout component for displaying a list with a page header, filter bar, card list, pagination & an empty\n * state. Use this component directly inside the NeonPage <em>contents</em> slot.\n */\nexport default defineComponent({\n name: 'NeonListLayout',\n components: {\n NeonSplashLoader,\n NeonEmptyState,\n NeonCardList,\n NeonHeader,\n },\n props: {\n /**\n * The title of the header.\n */\n title: { type: String, required: true },\n /**\n * The subtitle of the header.\n */\n subtitle: { type: String },\n /**\n * Breadcrumbs to display above the header.\n */\n breadcrumbs: { type: Array as () => NeonBreadcrumbLink[], default: () => [] },\n /**\n * Whether to display a back button\n */\n backButton: { type: Boolean, default: true },\n /**\n * Override the label for the back button\n */\n backLabel: { type: String, default: 'Back' },\n /**\n * Items to display as cards. Each item should be a NeonCardListModel.\n */\n items: {\n type: Array as () => Array<NeonCardListModel<NeonIdentifiable | (NeonIdentifiable & NeonSelectable)>>,\n required: true,\n },\n /**\n * Loading state for the initial load.\n */\n initializing: { type: Boolean },\n /**\n * Loading state for pagination, set when loading a new page.\n */\n loading: { type: Boolean },\n /**\n * Specify a selection/loading/hover color for the cards.\n */\n color: { type: String as () => NeonFunctionalColor, default: () => NeonFunctionalColor.Brand },\n /**\n * Make cards selectable.\n */\n selectable: { type: Boolean, default: false },\n /**\n * Specify the card list layout, either a 'List' of cards with 100% width or a responsive 'Grid' of cards.\n */\n listStyle: { type: String as () => NeonCardListStyle, default: () => NeonCardListStyle.List },\n /**\n * Model for configuring the on demand loading layout.\n */\n loadOnDemand: { type: Object as () => NeonLoadOnDemandModel },\n /**\n * Model for configuring pagination, either pagination or loadOnDemand should be provided.\n */\n pagination: { type: Object as () => NeonPaginationModel },\n },\n emits: [\n /**\n * Emitted when the user clicks on a pagination link (useful for paginated lists which are not the main focus of the page,\n * i.e. should not be deep linked).\n *\n * @type {number} The new page number.\n */\n 'page-change',\n /**\n * Emitted when the 'Load more' button is clicked in \"on demand\" mode.\n * @type {void}\n */\n 'show-more',\n /**\n * Emitted when in selectable mode and the selected state of a card is toggled.\n * @type {string, boolean} - the id of the card which is toggled & the new selected state.\n */\n 'toggle-selected',\n ],\n setup(props, { emit, slots }) {\n const showMore = () => {\n emit('show-more');\n };\n\n const toggleSelected = (id: string, selected: boolean) => {\n emit('toggle-selected', id, selected);\n };\n\n watch(\n () => props.initializing,\n async (newValue) => {\n if (!newValue && props.items.length > 0) {\n window.scrollTo({ top: 0, left: 0, behavior: 'instant' as ScrollBehavior });\n }\n },\n { immediate: true },\n );\n\n const onPageChange = (newPage: number) => {\n window.scrollTo({ top: 0, left: 0, behavior: 'instant' as ScrollBehavior });\n emit('page-change', newPage);\n };\n\n return {\n emit,\n slots,\n showMore,\n toggleSelected,\n onPageChange,\n };\n },\n});\n"],"names":["_sfc_main","defineComponent","NeonSplashLoader","NeonEmptyState","NeonCardList","NeonHeader","NeonFunctionalColor","NeonCardListStyle","props","emit","slots","showMore","toggleSelected","id","selected","watch","newValue","newPage"],"mappings":";;;;;;;AAkBA,MAAAA,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV,kBAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,cAAAC;AAAA,IACA,YAAAC;AAAA,EAAA;AAAA,EAEF,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,OAAO,EAAE,MAAM,QAAQ,UAAU,GAAA;AAAA;AAAA;AAAA;AAAA,IAIjC,UAAU,EAAE,MAAM,OAAA;AAAA;AAAA;AAAA;AAAA,IAIlB,aAAa,EAAE,MAAM,OAAqC,SAAS,MAAM,CAAA,EAAC;AAAA;AAAA;AAAA;AAAA,IAI1E,YAAY,EAAE,MAAM,SAAS,SAAS,GAAA;AAAA;AAAA;AAAA;AAAA,IAItC,WAAW,EAAE,MAAM,QAAQ,SAAS,OAAA;AAAA;AAAA;AAAA;AAAA,IAIpC,OAAO;AAAA,MACL,MAAM;AAAA,MACN,UAAU;AAAA,IAAA;AAAA;AAAA;AAAA;AAAA,IAKZ,cAAc,EAAE,MAAM,QAAA;AAAA;AAAA;AAAA;AAAA,IAItB,SAAS,EAAE,MAAM,QAAA;AAAA;AAAA;AAAA;AAAA,IAIjB,OAAO,EAAE,MAAM,QAAqC,SAAS,MAAMC,EAAoB,MAAA;AAAA;AAAA;AAAA;AAAA,IAIvF,YAAY,EAAE,MAAM,SAAS,SAAS,GAAA;AAAA;AAAA;AAAA;AAAA,IAItC,WAAW,EAAE,MAAM,QAAmC,SAAS,MAAMC,EAAkB,KAAA;AAAA;AAAA;AAAA;AAAA,IAIvF,cAAc,EAAE,MAAM,OAAA;AAAA;AAAA;AAAA;AAAA,IAItB,YAAY,EAAE,MAAM,OAAA;AAAA,EAAoC;AAAA,EAE1D,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOL;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA;AAAA,EAAA;AAAA,EAEF,MAAMC,GAAO,EAAE,MAAAC,GAAM,OAAAC,KAAS;AAC5B,UAAMC,IAAW,MAAM;AACrB,MAAAF,EAAK,WAAW;AAAA,IAClB,GAEMG,IAAiB,CAACC,GAAYC,MAAsB;AACxD,MAAAL,EAAK,mBAAmBI,GAAIC,CAAQ;AAAA,IACtC;AAEA,WAAAC;AAAA,MACE,MAAMP,EAAM;AAAA,MACZ,OAAOQ,MAAa;AAClB,QAAI,CAACA,KAAYR,EAAM,MAAM,SAAS,KACpC,OAAO,SAAS,EAAE,KAAK,GAAG,MAAM,GAAG,UAAU,WAA6B;AAAA,MAE9E;AAAA,MACA,EAAE,WAAW,GAAA;AAAA,IAAK,GAQb;AAAA,MACL,MAAAC;AAAA,MACA,OAAAC;AAAA,MACA,UAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,cAVmB,CAACK,MAAoB;AACxC,eAAO,SAAS,EAAE,KAAK,GAAG,MAAM,GAAG,UAAU,WAA6B,GAC1ER,EAAK,eAAeQ,CAAO;AAAA,MAC7B;AAAA,IAOE;AAAA,EAEJ;AACF,CAAC;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const
|
|
1
|
+
"use strict";const i=require("./NeonListLayout.cjs.js"),o=require("vue"),d=require("../../../_virtual/_plugin-vue_export-helper.cjs.js"),p={class:"neon-list-layout"},c={key:1};function m(e,n,b,g,h,k){const l=o.resolveComponent("neon-splash-loader"),s=o.resolveComponent("neon-header"),r=o.resolveComponent("neon-card-list");return o.openBlock(),o.createElementBlock("div",p,[e.initializing?(o.openBlock(),o.createBlock(l,{key:0,color:"brand"})):!e.initializing&&e.items.length>0?(o.openBlock(),o.createElementBlock("div",c,[o.createVNode(s,{"back-button":e.backButton,"back-label":e.backLabel,breadcrumbs:e.breadcrumbs,subtitle:e.subtitle,title:e.title},o.createSlots({labels:o.withCtx(()=>[o.renderSlot(e.$slots,"labels")]),_:2},[e.items.length>0?{name:"actions",fn:o.withCtx(()=>[o.renderSlot(e.$slots,"actions")]),key:"0"}:void 0]),1032,["back-button","back-label","breadcrumbs","subtitle","title"]),o.renderSlot(e.$slots,"note"),o.createVNode(r,{color:e.color,items:e.items,"list-style":e.listStyle,"load-on-demand":e.loadOnDemand,loading:e.loading,pagination:e.pagination,selectable:e.selectable,onPageChange:n[0]||(n[0]=t=>e.emit("page-change",t)),onShowMore:e.showMore,onToggleSelected:e.toggleSelected},{filters:o.withCtx(()=>[o.renderSlot(e.$slots,"filters")]),header:o.withCtx(()=>[o.renderSlot(e.$slots,"header")]),card:o.withCtx(({model:t,index:a})=>[o.renderSlot(e.$slots,"card",o.normalizeProps(o.guardReactiveProps({model:t,index:a})))]),_:3},8,["color","items","list-style","load-on-demand","loading","pagination","selectable","onShowMore","onToggleSelected"])])):!e.initializing&&!e.loading&&e.slots.emptyState&&e.items.length===0?o.renderSlot(e.$slots,"emptyState",{key:2}):o.createCommentVNode("",!0)])}const u=d(i,[["render",m]]);module.exports=u;
|
|
2
2
|
//# sourceMappingURL=NeonListLayout.vue.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NeonListLayout.vue.cjs.js","sources":["../../../../src/components/layout/list-layout/NeonListLayout.vue"],"sourcesContent":["<template>\n <div class=\"neon-list-layout\">\n <neon-
|
|
1
|
+
{"version":3,"file":"NeonListLayout.vue.cjs.js","sources":["../../../../src/components/layout/list-layout/NeonListLayout.vue"],"sourcesContent":["<template>\n <div class=\"neon-list-layout\">\n <neon-splash-loader v-if=\"initializing\" color=\"brand\" />\n <div v-else-if=\"!initializing && items.length > 0\">\n <neon-header\n :back-button=\"backButton\"\n :back-label=\"backLabel\"\n :breadcrumbs=\"breadcrumbs\"\n :subtitle=\"subtitle\"\n :title=\"title\"\n >\n <template #labels>\n <!-- @slot a slot for adding labels/info popovers next to the title -->\n <slot name=\"labels\"></slot>\n </template>\n <template v-if=\"items.length > 0\" #actions>\n <!-- @slot a slot for adding contextual action buttons to the header. The wrapper is provided, just add the\n buttons here in order to apply the correct spacings -->\n <slot name=\"actions\"></slot>\n </template>\n </neon-header>\n <!-- @slot the insert a note into the page -->\n <slot name=\"note\"></slot>\n <neon-card-list\n :color=\"color\"\n :items=\"items\"\n :list-style=\"listStyle\"\n :load-on-demand=\"loadOnDemand\"\n :loading=\"loading\"\n :pagination=\"pagination\"\n :selectable=\"selectable\"\n @page-change=\"(page: number) => emit('page-change', page)\"\n @show-more=\"showMore\"\n @toggle-selected=\"toggleSelected\"\n >\n <template #filters>\n <!-- @slot the insert a filter bar above the list -->\n <slot name=\"filters\"></slot>\n </template>\n <template #header>\n <!-- @slot the list header -->\n <slot name=\"header\"></slot>\n </template>\n <template #card=\"{ model, index }\">\n <!-- @slot slot for rendering card contents, two parameters are available:\n @binding {T} model - the model item to be rendered\n @binding {number} index - the index of the item in the list -->\n <slot name=\"card\" v-bind=\"{ model, index }\"></slot>\n </template>\n </neon-card-list>\n </div>\n <template v-else-if=\"!initializing && !loading && slots.emptyState && items.length === 0\">\n <!-- @slot page empty state rendered when there are no list items -->\n <slot name=\"emptyState\"></slot>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\" src=\"./NeonListLayout.ts\" />\n"],"names":["_hoisted_1","_openBlock","_createElementBlock","_ctx","_createBlock","_component_neon_splash_loader","_hoisted_2","_createVNode","_component_neon_header","_renderSlot","_component_neon_card_list","_cache","page","_withCtx","model","index","_normalizeProps","_guardReactiveProps"],"mappings":"yIACOA,EAAA,CAAA,MAAM,kBAAkB,gKAA7B,OAAAC,YAAA,EAAAC,qBAsDM,MAtDNF,EAsDM,CArDsBG,EAAA,4BAA1BC,EAAAA,YAAwDC,EAAA,OAAhB,MAAM,YAC7BF,EAAA,cAAgBA,EAAA,MAAM,OAAM,iBAA7CD,EAAAA,mBA+CM,MAAAI,EAAA,CA9CJC,EAAAA,YAgBcC,EAAA,CAfX,cAAaL,EAAA,WACb,aAAYA,EAAA,UACZ,YAAaA,EAAA,YACb,SAAUA,EAAA,SACV,MAAOA,EAAA,sBAEG,iBAET,IAA2B,CAA3BM,aAA2BN,EAAA,OAAA,QAAA,UAEbA,EAAA,MAAM,OAAM,QAAO,uBAGjC,IAA4B,CAA5BM,aAA4BN,EAAA,OAAA,SAAA,0FAIhCM,aAAyBN,EAAA,OAAA,MAAA,EACzBI,EAAAA,YA0BiBG,EAAA,CAzBd,MAAOP,EAAA,MACP,MAAOA,EAAA,MACP,aAAYA,EAAA,UACZ,iBAAgBA,EAAA,aAChB,QAASA,EAAA,QACT,WAAYA,EAAA,WACZ,WAAYA,EAAA,WACZ,aAAWQ,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAGC,GAAiBT,EAAA,mBAAoBS,CAAI,GACvD,WAAWT,EAAA,SACX,iBAAiBA,EAAA,iBAEP,kBAET,IAA4B,CAA5BM,aAA4BN,EAAA,OAAA,SAAA,IAEnB,iBAET,IAA2B,CAA3BM,aAA2BN,EAAA,OAAA,QAAA,IAElB,KAAIU,EAAAA,QAIb,CAAmD,CAJlC,MAAAC,EAAO,MAAAC,CAAK,IAAA,CAI7BN,aAAmDN,EAAA,OAAA,OAAAa,EAAAA,eAAAC,EAAAA,mBAAA,CAAvB,MAAAH,EAAO,MAAAC,CAAK,CAAA,CAAA,CAAA,oIAIxBZ,EAAA,cAAY,CAAKA,WAAWA,EAAA,MAAM,YAAcA,EAAA,MAAM,SAAM,EAEhFM,EAAAA,WAA+BN,EAAA,OAAA,aAAA,CAAA,IAAA,CAAA,CAAA"}
|