@aotearoan/neon 28.4.0 → 28.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/dist/components/feedback/loading-state-card/NeonLoadingStateCard.cjs.js +2 -0
  2. package/dist/components/feedback/loading-state-card/NeonLoadingStateCard.cjs.js.map +1 -0
  3. package/dist/components/feedback/loading-state-card/NeonLoadingStateCard.es.js +16 -0
  4. package/dist/components/feedback/loading-state-card/NeonLoadingStateCard.es.js.map +1 -0
  5. package/dist/components/feedback/loading-state-card/NeonLoadingStateCard.vue.cjs.js +2 -0
  6. package/dist/components/feedback/loading-state-card/NeonLoadingStateCard.vue.cjs.js.map +1 -0
  7. package/dist/components/feedback/loading-state-card/NeonLoadingStateCard.vue.es.js +48 -0
  8. package/dist/components/feedback/loading-state-card/NeonLoadingStateCard.vue.es.js.map +1 -0
  9. package/dist/components/feedback/skeleton-loader/NeonSkeletonLoader.cjs.js.map +1 -1
  10. package/dist/components/feedback/skeleton-loader/NeonSkeletonLoader.es.js.map +1 -1
  11. package/dist/components/feedback/splash-loader/NeonSplashLoader.cjs.js.map +1 -1
  12. package/dist/components/feedback/splash-loader/NeonSplashLoader.es.js.map +1 -1
  13. package/dist/components/layout/card-list/NeonCardList.cjs.js +1 -1
  14. package/dist/components/layout/card-list/NeonCardList.cjs.js.map +1 -1
  15. package/dist/components/layout/card-list/NeonCardList.es.js +59 -43
  16. package/dist/components/layout/card-list/NeonCardList.es.js.map +1 -1
  17. package/dist/components/layout/card-list/NeonCardList.vue.cjs.js +1 -1
  18. package/dist/components/layout/card-list/NeonCardList.vue.cjs.js.map +1 -1
  19. package/dist/components/layout/card-list/NeonCardList.vue.es.js +90 -63
  20. package/dist/components/layout/card-list/NeonCardList.vue.es.js.map +1 -1
  21. package/dist/components/layout/list-layout/NeonListLayout.cjs.js +1 -1
  22. package/dist/components/layout/list-layout/NeonListLayout.cjs.js.map +1 -1
  23. package/dist/components/layout/list-layout/NeonListLayout.es.js +38 -24
  24. package/dist/components/layout/list-layout/NeonListLayout.es.js.map +1 -1
  25. package/dist/components/layout/list-layout/NeonListLayout.vue.cjs.js +1 -1
  26. package/dist/components/layout/list-layout/NeonListLayout.vue.cjs.js.map +1 -1
  27. package/dist/components/layout/list-layout/NeonListLayout.vue.es.js +55 -51
  28. package/dist/components/layout/list-layout/NeonListLayout.vue.es.js.map +1 -1
  29. package/dist/components/navigation/breadcrumbs/NeonBreadcrumbs.cjs.js +1 -1
  30. package/dist/components/navigation/breadcrumbs/NeonBreadcrumbs.cjs.js.map +1 -1
  31. package/dist/components/navigation/breadcrumbs/NeonBreadcrumbs.es.js +11 -10
  32. package/dist/components/navigation/breadcrumbs/NeonBreadcrumbs.es.js.map +1 -1
  33. package/dist/components/navigation/breadcrumbs/NeonBreadcrumbs.vue.cjs.js +1 -1
  34. package/dist/components/navigation/breadcrumbs/NeonBreadcrumbs.vue.cjs.js.map +1 -1
  35. package/dist/components/navigation/breadcrumbs/NeonBreadcrumbs.vue.es.js +10 -10
  36. package/dist/components/navigation/breadcrumbs/NeonBreadcrumbs.vue.es.js.map +1 -1
  37. package/dist/components/navigation/pagination/NeonPagination.cjs.js +1 -1
  38. package/dist/components/navigation/pagination/NeonPagination.cjs.js.map +1 -1
  39. package/dist/components/navigation/pagination/NeonPagination.es.js +31 -21
  40. package/dist/components/navigation/pagination/NeonPagination.es.js.map +1 -1
  41. package/dist/components/navigation/pagination/NeonPagination.vue.cjs.js +1 -1
  42. package/dist/components/navigation/pagination/NeonPagination.vue.cjs.js.map +1 -1
  43. package/dist/components/navigation/pagination/NeonPagination.vue.es.js +43 -36
  44. package/dist/components/navigation/pagination/NeonPagination.vue.es.js.map +1 -1
  45. package/dist/components/presentation/image-carousel/NeonImageCarousel.vue.cjs.js +1 -1
  46. package/dist/components/presentation/image-carousel/NeonImageCarousel.vue.cjs.js.map +1 -1
  47. package/dist/components/presentation/image-carousel/NeonImageCarousel.vue.es.js +7 -7
  48. package/dist/components/presentation/image-carousel/NeonImageCarousel.vue.es.js.map +1 -1
  49. package/dist/components/user-input/date-picker/NeonDatePicker.vue.cjs.js +1 -1
  50. package/dist/components/user-input/date-picker/NeonDatePicker.vue.cjs.js.map +1 -1
  51. package/dist/components/user-input/date-picker/NeonDatePicker.vue.es.js +40 -40
  52. package/dist/components/user-input/date-picker/NeonDatePicker.vue.es.js.map +1 -1
  53. package/dist/neon.cjs.js +1 -1
  54. package/dist/neon.es.js +175 -173
  55. package/dist/neon.es.js.map +1 -1
  56. package/dist/src/components/feedback/loading-state-card/NeonLoadingStateCard.d.ts +48 -0
  57. package/dist/src/components/feedback/loading-state-card/NeonLoadingStateCard.vue.d.ts +2 -0
  58. package/dist/src/components/feedback/skeleton-loader/NeonSkeletonLoader.d.ts +2 -2
  59. package/dist/src/components/feedback/splash-loader/NeonSplashLoader.d.ts +1 -2
  60. package/dist/src/components/layout/card-list/NeonCardList.d.ts +105 -49
  61. package/dist/src/components/layout/list-layout/NeonListLayout.d.ts +317 -300
  62. package/dist/src/components/navigation/pagination/NeonPagination.d.ts +6 -5
  63. package/dist/src/model/navigation/pagination/NeonPaginationModel.d.ts +1 -1
  64. package/dist/src/neon.d.ts +1 -0
  65. package/package.json +1 -1
  66. package/src/sass/components/_card-list.scss +4 -12
  67. package/src/sass/components/_loading-state-card.scss +48 -0
  68. package/src/sass/components/_skeleton-loader.scss +1 -0
  69. package/src/sass/components/components.scss +1 -0
  70. package/src/sass/core/_transitions.scss +3 -3
  71. package/src/sass/includes/_dependencies.scss +3 -2
  72. package/src/sass/palette.scss +2 -2
  73. package/src/sass/theme.scss +4 -0
  74. package/src/sass/variables-dark.scss +3 -3
  75. package/src/sass/variables-global.scss +9 -2
  76. package/src/sass/variables-light.scss +3 -3
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("vue"),s=require("../../presentation/icon/NeonIcon.vue.cjs.js"),c=require("../link/NeonLink.vue.cjs.js"),a=require("../../layout/swiper/NeonSwiper.vue.cjs.js"),i=require("../../../model/navigation/breadcrumbs/NeonBreadcrumbResponsiveStyle.cjs.js"),u=e.defineComponent({name:"NeonBreadcrumbs",components:{NeonIcon:s,NeonLink:c,NeonSwiper:a},props:{breadcrumbs:{type:Array,default:()=>[]},backButton:{type:Boolean,default:!0},backLabel:{type:String,default:"Back"},responsiveStyle:{type:String,default:i.NeonBreadcrumbResponsiveStyle.Swiper}},setup(r){const n=e.ref(null),o=async()=>history.back();return e.onMounted(async()=>{r.breadcrumbs.length>0&&(await e.nextTick(),setTimeout(()=>{if(n.value){const t=n.value.querySelector(".neon-link:last-child");t==null||t.scrollIntoView({behavior:"auto",inline:"end"})}}))}),{back:o,linksRef:n}}});module.exports=u;
1
+ "use strict";const e=require("vue"),s=require("../../presentation/icon/NeonIcon.vue.cjs.js"),c=require("../link/NeonLink.vue.cjs.js"),a=require("../../layout/swiper/NeonSwiper.vue.cjs.js"),i=require("../../../model/navigation/breadcrumbs/NeonBreadcrumbResponsiveStyle.cjs.js"),u=e.defineComponent({name:"NeonBreadcrumbs",components:{NeonIcon:s,NeonLink:c,NeonSwiper:a},props:{breadcrumbs:{type:Array,default:()=>[]},backButton:{type:Boolean,default:!0},backLabel:{type:String,default:"Back"},responsiveStyle:{type:String,default:i.NeonBreadcrumbResponsiveStyle.Swiper}},setup(r){const n=e.ref(null),o=async()=>history.back();return e.onMounted(async()=>{r.breadcrumbs.length>0&&(await e.nextTick(),setTimeout(()=>{if(n.value){const t=n.value.querySelector(".neon-link:last-child");t==null||t.scrollIntoView({behavior:"instant",inline:"end",block:"nearest"})}}))}),{back:o,linksRef:n}}});module.exports=u;
2
2
  //# sourceMappingURL=NeonBreadcrumbs.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NeonBreadcrumbs.cjs.js","sources":["../../../../src/components/navigation/breadcrumbs/NeonBreadcrumbs.ts?vue&type=script&src=true&lang.ts"],"sourcesContent":["import { defineComponent, nextTick, onMounted, ref } from 'vue';\nimport NeonIcon from '@/components/presentation/icon/NeonIcon.vue';\nimport NeonLink from '@/components/navigation/link/NeonLink.vue';\nimport NeonSwiper from '@/components/layout/swiper/NeonSwiper.vue';\nimport type { NeonBreadcrumbLink } from '@/model/navigation/breadcrumbs/NeonBreadcrumbLink';\nimport { NeonBreadcrumbResponsiveStyle } from '@/model/navigation/breadcrumbs/NeonBreadcrumbResponsiveStyle';\n\n/**\n * The <em>NeonBreadcrumbs</em> component displays an optional list of breadcrumbs with an optional back button. This is\n * used in the <em>NeonHeader</em> component to display the current page hierarchy.\n */\nexport default defineComponent({\n name: 'NeonBreadcrumbs',\n components: { NeonIcon, NeonLink, NeonSwiper },\n props: {\n /**\n * The list of breadcrumbs to display.\n */\n breadcrumbs: { type: Array as () => NeonBreadcrumbLink[], default: () => [] },\n /**\n * Whether to display the back button.\n */\n backButton: { type: Boolean, default: true },\n /**\n * The label override for the back button.\n */\n backLabel: { type: String, default: 'Back' },\n /**\n * The responsive style (mobile-large breakpoint), either place in a swiper or display a larger back button & no\n * breadcrumbs.\n */\n responsiveStyle: {\n type: String as () => NeonBreadcrumbResponsiveStyle,\n default: NeonBreadcrumbResponsiveStyle.Swiper,\n },\n },\n setup(props) {\n const linksRef = ref<HTMLDivElement | null>(null);\n const back = async () => history.back();\n\n onMounted(async () => {\n if (props.breadcrumbs.length > 0) {\n await nextTick();\n setTimeout(() => {\n if (linksRef.value) {\n const neonLink = linksRef.value.querySelector<HTMLAnchorElement>('.neon-link:last-child');\n neonLink?.scrollIntoView({\n behavior: 'auto',\n inline: 'end',\n });\n }\n });\n }\n });\n\n return {\n back,\n linksRef,\n };\n },\n});\n"],"names":["_sfc_main","defineComponent","NeonIcon","NeonLink","NeonSwiper","NeonBreadcrumbResponsiveStyle","props","linksRef","ref","back","onMounted","nextTick","neonLink"],"mappings":"qRAWAA,EAAeC,kBAAgB,CAC7B,KAAM,kBACN,WAAY,CAAE,SAAAC,EAAU,SAAAC,EAAU,WAAAC,CAAA,EAClC,MAAO,CAIL,YAAa,CAAE,KAAM,MAAqC,QAAS,IAAM,CAAA,CAAC,EAI1E,WAAY,CAAE,KAAM,QAAS,QAAS,EAAA,EAItC,UAAW,CAAE,KAAM,OAAQ,QAAS,MAAA,EAKpC,gBAAiB,CACf,KAAM,OACN,QAASC,EAAAA,8BAA8B,MAAA,CACzC,EAEF,MAAMC,EAAO,CACX,MAAMC,EAAWC,EAAAA,IAA2B,IAAI,EAC1CC,EAAO,SAAY,QAAQ,KAAA,EAEjCC,OAAAA,EAAAA,UAAU,SAAY,CAChBJ,EAAM,YAAY,OAAS,IAC7B,MAAMK,WAAA,EACN,WAAW,IAAM,CACf,GAAIJ,EAAS,MAAO,CAClB,MAAMK,EAAWL,EAAS,MAAM,cAAiC,uBAAuB,EACxFK,GAAA,MAAAA,EAAU,eAAe,CACvB,SAAU,OACV,OAAQ,KAAA,EAEZ,CACF,CAAC,EAEL,CAAC,EAEM,CACL,KAAAH,EACA,SAAAF,CAAA,CAEJ,CACF,CAAC"}
1
+ {"version":3,"file":"NeonBreadcrumbs.cjs.js","sources":["../../../../src/components/navigation/breadcrumbs/NeonBreadcrumbs.ts?vue&type=script&src=true&lang.ts"],"sourcesContent":["import { defineComponent, nextTick, onMounted, ref } from 'vue';\nimport NeonIcon from '@/components/presentation/icon/NeonIcon.vue';\nimport NeonLink from '@/components/navigation/link/NeonLink.vue';\nimport NeonSwiper from '@/components/layout/swiper/NeonSwiper.vue';\nimport type { NeonBreadcrumbLink } from '@/model/navigation/breadcrumbs/NeonBreadcrumbLink';\nimport { NeonBreadcrumbResponsiveStyle } from '@/model/navigation/breadcrumbs/NeonBreadcrumbResponsiveStyle';\n\n/**\n * The <em>NeonBreadcrumbs</em> component displays an optional list of breadcrumbs with an optional back button. This is\n * used in the <em>NeonHeader</em> component to display the current page hierarchy.\n */\nexport default defineComponent({\n name: 'NeonBreadcrumbs',\n components: { NeonIcon, NeonLink, NeonSwiper },\n props: {\n /**\n * The list of breadcrumbs to display.\n */\n breadcrumbs: { type: Array as () => NeonBreadcrumbLink[], default: () => [] },\n /**\n * Whether to display the back button.\n */\n backButton: { type: Boolean, default: true },\n /**\n * The label override for the back button.\n */\n backLabel: { type: String, default: 'Back' },\n /**\n * The responsive style (mobile-large breakpoint), either place in a swiper or display a larger back button & no\n * breadcrumbs.\n */\n responsiveStyle: {\n type: String as () => NeonBreadcrumbResponsiveStyle,\n default: NeonBreadcrumbResponsiveStyle.Swiper,\n },\n },\n setup(props) {\n const linksRef = ref<HTMLDivElement | null>(null);\n const back = async () => history.back();\n\n onMounted(async () => {\n if (props.breadcrumbs.length > 0) {\n await nextTick();\n setTimeout(() => {\n if (linksRef.value) {\n const neonLink = linksRef.value.querySelector<HTMLAnchorElement>('.neon-link:last-child');\n neonLink?.scrollIntoView({\n behavior: 'instant' as ScrollBehavior,\n inline: 'end',\n block: 'nearest',\n });\n }\n });\n }\n });\n\n return {\n back,\n linksRef,\n };\n },\n});\n"],"names":["_sfc_main","defineComponent","NeonIcon","NeonLink","NeonSwiper","NeonBreadcrumbResponsiveStyle","props","linksRef","ref","back","onMounted","nextTick","neonLink"],"mappings":"qRAWAA,EAAeC,kBAAgB,CAC7B,KAAM,kBACN,WAAY,CAAE,SAAAC,EAAU,SAAAC,EAAU,WAAAC,CAAA,EAClC,MAAO,CAIL,YAAa,CAAE,KAAM,MAAqC,QAAS,IAAM,CAAA,CAAC,EAI1E,WAAY,CAAE,KAAM,QAAS,QAAS,EAAA,EAItC,UAAW,CAAE,KAAM,OAAQ,QAAS,MAAA,EAKpC,gBAAiB,CACf,KAAM,OACN,QAASC,EAAAA,8BAA8B,MAAA,CACzC,EAEF,MAAMC,EAAO,CACX,MAAMC,EAAWC,EAAAA,IAA2B,IAAI,EAC1CC,EAAO,SAAY,QAAQ,KAAA,EAEjCC,OAAAA,EAAAA,UAAU,SAAY,CAChBJ,EAAM,YAAY,OAAS,IAC7B,MAAMK,WAAA,EACN,WAAW,IAAM,CACf,GAAIJ,EAAS,MAAO,CAClB,MAAMK,EAAWL,EAAS,MAAM,cAAiC,uBAAuB,EACxFK,GAAA,MAAAA,EAAU,eAAe,CACvB,SAAU,UACV,OAAQ,MACR,MAAO,SAAA,EAEX,CACF,CAAC,EAEL,CAAC,EAEM,CACL,KAAAH,EACA,SAAAF,CAAA,CAEJ,CACF,CAAC"}
@@ -1,11 +1,11 @@
1
1
  import { defineComponent as r, ref as a, onMounted as i, nextTick as s } from "vue";
2
2
  import c from "../../presentation/icon/NeonIcon.vue.es.js";
3
3
  import l from "../link/NeonLink.vue.es.js";
4
- import u from "../../layout/swiper/NeonSwiper.vue.es.js";
5
- import { NeonBreadcrumbResponsiveStyle as m } from "../../../model/navigation/breadcrumbs/NeonBreadcrumbResponsiveStyle.es.js";
4
+ import m from "../../layout/swiper/NeonSwiper.vue.es.js";
5
+ import { NeonBreadcrumbResponsiveStyle as p } from "../../../model/navigation/breadcrumbs/NeonBreadcrumbResponsiveStyle.es.js";
6
6
  const k = r({
7
7
  name: "NeonBreadcrumbs",
8
- components: { NeonIcon: c, NeonLink: l, NeonSwiper: u },
8
+ components: { NeonIcon: c, NeonLink: l, NeonSwiper: m },
9
9
  props: {
10
10
  /**
11
11
  * The list of breadcrumbs to display.
@@ -25,23 +25,24 @@ const k = r({
25
25
  */
26
26
  responsiveStyle: {
27
27
  type: String,
28
- default: m.Swiper
28
+ default: p.Swiper
29
29
  }
30
30
  },
31
- setup(o) {
32
- const e = a(null), n = async () => history.back();
31
+ setup(n) {
32
+ const e = a(null), o = async () => history.back();
33
33
  return i(async () => {
34
- o.breadcrumbs.length > 0 && (await s(), setTimeout(() => {
34
+ n.breadcrumbs.length > 0 && (await s(), setTimeout(() => {
35
35
  if (e.value) {
36
36
  const t = e.value.querySelector(".neon-link:last-child");
37
37
  t == null || t.scrollIntoView({
38
- behavior: "auto",
39
- inline: "end"
38
+ behavior: "instant",
39
+ inline: "end",
40
+ block: "nearest"
40
41
  });
41
42
  }
42
43
  }));
43
44
  }), {
44
- back: n,
45
+ back: o,
45
46
  linksRef: e
46
47
  };
47
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"NeonBreadcrumbs.es.js","sources":["../../../../src/components/navigation/breadcrumbs/NeonBreadcrumbs.ts?vue&type=script&src=true&lang.ts"],"sourcesContent":["import { defineComponent, nextTick, onMounted, ref } from 'vue';\nimport NeonIcon from '@/components/presentation/icon/NeonIcon.vue';\nimport NeonLink from '@/components/navigation/link/NeonLink.vue';\nimport NeonSwiper from '@/components/layout/swiper/NeonSwiper.vue';\nimport type { NeonBreadcrumbLink } from '@/model/navigation/breadcrumbs/NeonBreadcrumbLink';\nimport { NeonBreadcrumbResponsiveStyle } from '@/model/navigation/breadcrumbs/NeonBreadcrumbResponsiveStyle';\n\n/**\n * The <em>NeonBreadcrumbs</em> component displays an optional list of breadcrumbs with an optional back button. This is\n * used in the <em>NeonHeader</em> component to display the current page hierarchy.\n */\nexport default defineComponent({\n name: 'NeonBreadcrumbs',\n components: { NeonIcon, NeonLink, NeonSwiper },\n props: {\n /**\n * The list of breadcrumbs to display.\n */\n breadcrumbs: { type: Array as () => NeonBreadcrumbLink[], default: () => [] },\n /**\n * Whether to display the back button.\n */\n backButton: { type: Boolean, default: true },\n /**\n * The label override for the back button.\n */\n backLabel: { type: String, default: 'Back' },\n /**\n * The responsive style (mobile-large breakpoint), either place in a swiper or display a larger back button & no\n * breadcrumbs.\n */\n responsiveStyle: {\n type: String as () => NeonBreadcrumbResponsiveStyle,\n default: NeonBreadcrumbResponsiveStyle.Swiper,\n },\n },\n setup(props) {\n const linksRef = ref<HTMLDivElement | null>(null);\n const back = async () => history.back();\n\n onMounted(async () => {\n if (props.breadcrumbs.length > 0) {\n await nextTick();\n setTimeout(() => {\n if (linksRef.value) {\n const neonLink = linksRef.value.querySelector<HTMLAnchorElement>('.neon-link:last-child');\n neonLink?.scrollIntoView({\n behavior: 'auto',\n inline: 'end',\n });\n }\n });\n }\n });\n\n return {\n back,\n linksRef,\n };\n },\n});\n"],"names":["_sfc_main","defineComponent","NeonIcon","NeonLink","NeonSwiper","NeonBreadcrumbResponsiveStyle","props","linksRef","ref","back","onMounted","nextTick","neonLink"],"mappings":";;;;;AAWA,MAAAA,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY,EAAE,UAAAC,GAAU,UAAAC,GAAU,YAAAC,EAAA;AAAA,EAClC,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,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;AAAA,IAKpC,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,SAASC,EAA8B;AAAA,IAAA;AAAA,EACzC;AAAA,EAEF,MAAMC,GAAO;AACX,UAAMC,IAAWC,EAA2B,IAAI,GAC1CC,IAAO,YAAY,QAAQ,KAAA;AAEjC,WAAAC,EAAU,YAAY;AACpB,MAAIJ,EAAM,YAAY,SAAS,MAC7B,MAAMK,EAAA,GACN,WAAW,MAAM;AACf,YAAIJ,EAAS,OAAO;AAClB,gBAAMK,IAAWL,EAAS,MAAM,cAAiC,uBAAuB;AACxF,UAAAK,KAAA,QAAAA,EAAU,eAAe;AAAA,YACvB,UAAU;AAAA,YACV,QAAQ;AAAA,UAAA;AAAA,QAEZ;AAAA,MACF,CAAC;AAAA,IAEL,CAAC,GAEM;AAAA,MACL,MAAAH;AAAA,MACA,UAAAF;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;"}
1
+ {"version":3,"file":"NeonBreadcrumbs.es.js","sources":["../../../../src/components/navigation/breadcrumbs/NeonBreadcrumbs.ts?vue&type=script&src=true&lang.ts"],"sourcesContent":["import { defineComponent, nextTick, onMounted, ref } from 'vue';\nimport NeonIcon from '@/components/presentation/icon/NeonIcon.vue';\nimport NeonLink from '@/components/navigation/link/NeonLink.vue';\nimport NeonSwiper from '@/components/layout/swiper/NeonSwiper.vue';\nimport type { NeonBreadcrumbLink } from '@/model/navigation/breadcrumbs/NeonBreadcrumbLink';\nimport { NeonBreadcrumbResponsiveStyle } from '@/model/navigation/breadcrumbs/NeonBreadcrumbResponsiveStyle';\n\n/**\n * The <em>NeonBreadcrumbs</em> component displays an optional list of breadcrumbs with an optional back button. This is\n * used in the <em>NeonHeader</em> component to display the current page hierarchy.\n */\nexport default defineComponent({\n name: 'NeonBreadcrumbs',\n components: { NeonIcon, NeonLink, NeonSwiper },\n props: {\n /**\n * The list of breadcrumbs to display.\n */\n breadcrumbs: { type: Array as () => NeonBreadcrumbLink[], default: () => [] },\n /**\n * Whether to display the back button.\n */\n backButton: { type: Boolean, default: true },\n /**\n * The label override for the back button.\n */\n backLabel: { type: String, default: 'Back' },\n /**\n * The responsive style (mobile-large breakpoint), either place in a swiper or display a larger back button & no\n * breadcrumbs.\n */\n responsiveStyle: {\n type: String as () => NeonBreadcrumbResponsiveStyle,\n default: NeonBreadcrumbResponsiveStyle.Swiper,\n },\n },\n setup(props) {\n const linksRef = ref<HTMLDivElement | null>(null);\n const back = async () => history.back();\n\n onMounted(async () => {\n if (props.breadcrumbs.length > 0) {\n await nextTick();\n setTimeout(() => {\n if (linksRef.value) {\n const neonLink = linksRef.value.querySelector<HTMLAnchorElement>('.neon-link:last-child');\n neonLink?.scrollIntoView({\n behavior: 'instant' as ScrollBehavior,\n inline: 'end',\n block: 'nearest',\n });\n }\n });\n }\n });\n\n return {\n back,\n linksRef,\n };\n },\n});\n"],"names":["_sfc_main","defineComponent","NeonIcon","NeonLink","NeonSwiper","NeonBreadcrumbResponsiveStyle","props","linksRef","ref","back","onMounted","nextTick","neonLink"],"mappings":";;;;;AAWA,MAAAA,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY,EAAE,UAAAC,GAAU,UAAAC,GAAU,YAAAC,EAAA;AAAA,EAClC,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,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;AAAA,IAKpC,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,SAASC,EAA8B;AAAA,IAAA;AAAA,EACzC;AAAA,EAEF,MAAMC,GAAO;AACX,UAAMC,IAAWC,EAA2B,IAAI,GAC1CC,IAAO,YAAY,QAAQ,KAAA;AAEjC,WAAAC,EAAU,YAAY;AACpB,MAAIJ,EAAM,YAAY,SAAS,MAC7B,MAAMK,EAAA,GACN,WAAW,MAAM;AACf,YAAIJ,EAAS,OAAO;AAClB,gBAAMK,IAAWL,EAAS,MAAM,cAAiC,uBAAuB;AACxF,UAAAK,KAAA,QAAAA,EAAU,eAAe;AAAA,YACvB,UAAU;AAAA,YACV,QAAQ;AAAA,YACR,OAAO;AAAA,UAAA;AAAA,QAEX;AAAA,MACF,CAAC;AAAA,IAEL,CAAC,GAEM;AAAA,MACL,MAAAH;AAAA,MACA,UAAAF;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;"}
@@ -1,2 +1,2 @@
1
- "use strict";const l=require("./NeonBreadcrumbs.cjs.js"),e=require("vue"),u=require("../../../_virtual/_plugin-vue_export-helper.cjs.js"),i={class:"neon-breadcrumbs__container"},m={class:"neon-breadcrumbs__back-label"},b={key:1,ref:"linksRef",class:"neon-breadcrumbs__links"},k={key:2,class:"neon-breadcrumbs__link-text"};function _(n,r,p,B,y,C){const t=e.resolveComponent("neon-icon"),s=e.resolveComponent("neon-link"),a=e.resolveComponent("neon-swiper");return n.breadcrumbs.length!==0||n.backButton?(e.openBlock(),e.createBlock(a,{key:0,class:e.normalizeClass([[{"neon-breadcrumbs--breadcrumbs-only":!n.backButton},`neon-breadcrumbs--responsive-${n.responsiveStyle}`],"neon-breadcrumbs"])},{default:e.withCtx(()=>[e.createElementVNode("div",i,[n.backButton?(e.openBlock(),e.createBlock(s,{key:0,class:"neon-breadcrumbs__back","no-style":"",onClick:r[0]||(r[0]=o=>n.back())},{default:e.withCtx(()=>[e.createVNode(t,{class:"neon-breadcrumbs__back-icon",name:"arrow-left"}),e.createElementVNode("span",m,e.toDisplayString(n.backLabel),1)]),_:1})):e.createCommentVNode("",!0),n.breadcrumbs.length!==0?(e.openBlock(),e.createElementBlock("div",b,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.breadcrumbs,(o,c)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:c},[c!==0?(e.openBlock(),e.createBlock(t,{key:0,class:"neon-breadcrumbs__separator",name:"arrow-right-1"})):e.createCommentVNode("",!0),o.url?(e.openBlock(),e.createBlock(s,{key:1,href:o.url,class:"neon-breadcrumbs__link","no-style":""},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.label),1)]),_:2},1032,["href"])):(e.openBlock(),e.createElementBlock("span",k,e.toDisplayString(o.label),1))],64))),128))],512)):e.createCommentVNode("",!0)])]),_:1},8,["class"])):e.createCommentVNode("",!0)}const d=u(l,[["render",_]]);module.exports=d;
1
+ "use strict";const l=require("./NeonBreadcrumbs.cjs.js"),e=require("vue"),u=require("../../../_virtual/_plugin-vue_export-helper.cjs.js"),i={class:"neon-breadcrumbs__container"},m={class:"neon-breadcrumbs__back-label"},b={key:1,ref:"linksRef",class:"neon-breadcrumbs__links"},k={key:2,class:"neon-breadcrumbs__link-text"};function _(n,r,p,B,y,h){const t=e.resolveComponent("neon-icon"),s=e.resolveComponent("neon-link"),a=e.resolveComponent("neon-swiper");return n.breadcrumbs.length!==0||n.backButton?(e.openBlock(),e.createBlock(a,{key:0,class:e.normalizeClass([[{"neon-breadcrumbs--breadcrumbs-only":!n.backButton},`neon-breadcrumbs--responsive-${n.responsiveStyle}`],"neon-breadcrumbs"])},{default:e.withCtx(()=>[e.createElementVNode("div",i,[n.backButton?(e.openBlock(),e.createBlock(s,{key:0,class:"neon-breadcrumbs__back","no-style":"",onClick:r[0]||(r[0]=o=>n.back())},{default:e.withCtx(()=>[e.createVNode(t,{class:"neon-breadcrumbs__back-icon",name:"arrow-left"}),e.createElementVNode("span",m,e.toDisplayString(n.backLabel),1)]),_:1})):e.createCommentVNode("",!0),n.breadcrumbs.length!==0?(e.openBlock(),e.createElementBlock("div",b,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.breadcrumbs,(o,c)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:c},[c!==0?(e.openBlock(),e.createBlock(t,{key:0,class:"neon-breadcrumbs__separator",name:"chevron-right"})):e.createCommentVNode("",!0),o.url?(e.openBlock(),e.createBlock(s,{key:1,href:o.url,class:"neon-breadcrumbs__link","no-style":""},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.label),1)]),_:2},1032,["href"])):(e.openBlock(),e.createElementBlock("span",k,e.toDisplayString(o.label),1))],64))),128))],512)):e.createCommentVNode("",!0)])]),_:1},8,["class"])):e.createCommentVNode("",!0)}const d=u(l,[["render",_]]);module.exports=d;
2
2
  //# sourceMappingURL=NeonBreadcrumbs.vue.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NeonBreadcrumbs.vue.cjs.js","sources":["../../../../src/components/navigation/breadcrumbs/NeonBreadcrumbs.vue"],"sourcesContent":["<template>\n <neon-swiper\n v-if=\"breadcrumbs.length !== 0 || backButton\"\n :class=\"[{ 'neon-breadcrumbs--breadcrumbs-only': !backButton }, `neon-breadcrumbs--responsive-${responsiveStyle}`]\"\n class=\"neon-breadcrumbs\"\n >\n <div class=\"neon-breadcrumbs__container\">\n <neon-link v-if=\"backButton\" class=\"neon-breadcrumbs__back\" no-style @click=\"back()\">\n <neon-icon class=\"neon-breadcrumbs__back-icon\" name=\"arrow-left\" />\n <span class=\"neon-breadcrumbs__back-label\">{{ backLabel }}</span>\n </neon-link>\n <div v-if=\"breadcrumbs.length !== 0\" ref=\"linksRef\" class=\"neon-breadcrumbs__links\">\n <template v-for=\"(breadcrumb, index) in breadcrumbs\" :key=\"index\">\n <neon-icon v-if=\"index !== 0\" class=\"neon-breadcrumbs__separator\" name=\"arrow-right-1\" />\n <neon-link v-if=\"breadcrumb.url\" :href=\"breadcrumb.url\" class=\"neon-breadcrumbs__link\" no-style>\n {{ breadcrumb.label }}\n </neon-link>\n <span v-else class=\"neon-breadcrumbs__link-text\">{{ breadcrumb.label }}</span>\n </template>\n </div>\n </div>\n </neon-swiper>\n</template>\n\n<script lang=\"ts\" src=\"./NeonBreadcrumbs.ts\" />\n"],"names":["_hoisted_1","_hoisted_2","_ctx","_createBlock","_component_neon_swiper","_normalizeClass","_createElementVNode","_component_neon_link","_createVNode","_component_neon_icon","_toDisplayString","_openBlock","_createElementBlock","_hoisted_3","_Fragment","_renderList","breadcrumb","index","_createTextVNode","_hoisted_4"],"mappings":"0IAMSA,EAAA,CAAA,MAAM,6BAA6B,EAG9BC,EAAA,CAAA,MAAM,8BAA8B,WAEP,IAAI,WAAW,MAAM,oCAMzC,MAAM,4KAfnBC,EAAA,YAAY,SAAM,GAAUA,EAAA,0BADpCC,EAAAA,YAoBcC,EAAA,OAlBX,MAAKC,EAAAA,eAAA,CAAA,CAAA,CAAA,qCAAA,CAA4CH,EAAA,YAAU,gCAAoCA,EAAA,eAAe,IACzG,kBAAkB,CAAA,sBAExB,IAcM,CAdNI,EAAAA,mBAcM,MAdNN,EAcM,CAbaE,EAAA,0BAAjBC,EAAAA,YAGYI,EAAA,OAHiB,MAAM,yBAAyB,WAAA,GAAU,uBAAOL,EAAA,4BAC3E,IAAmE,CAAnEM,EAAAA,YAAmEC,EAAA,CAAxD,MAAM,8BAA8B,KAAK,eACpDH,EAAAA,mBAAiE,OAAjEL,EAAiES,EAAAA,gBAAnBR,EAAA,SAAS,EAAA,CAAA,uCAE9CA,EAAA,YAAY,SAAM,GAA7BS,EAAAA,YAAAC,EAAAA,mBAQM,MARNC,EAQM,EAPJF,EAAAA,UAAA,EAAA,EAAAC,EAAAA,mBAMWE,WAAA,KAAAC,EAAAA,WAN6Bb,EAAA,YAAW,CAAjCc,EAAYC,wDAA6BA,GAAK,CAC7CA,IAAK,iBAAtBd,EAAAA,YAAyFM,EAAA,OAA3D,MAAM,8BAA8B,KAAK,+CACtDO,EAAW,mBAA5Bb,EAAAA,YAEYI,EAAA,OAFsB,KAAMS,EAAW,IAAK,MAAM,yBAAyB,WAAA,uBACrF,IAAsB,CAAnBE,EAAAA,gBAAAR,EAAAA,gBAAAM,EAAW,KAAK,EAAA,CAAA,0BAErBL,YAAA,EAAAC,EAAAA,mBAA8E,OAA9EO,EAA8ET,EAAAA,gBAA1BM,EAAW,KAAK,EAAA,CAAA"}
1
+ {"version":3,"file":"NeonBreadcrumbs.vue.cjs.js","sources":["../../../../src/components/navigation/breadcrumbs/NeonBreadcrumbs.vue"],"sourcesContent":["<template>\n <neon-swiper\n v-if=\"breadcrumbs.length !== 0 || backButton\"\n :class=\"[{ 'neon-breadcrumbs--breadcrumbs-only': !backButton }, `neon-breadcrumbs--responsive-${responsiveStyle}`]\"\n class=\"neon-breadcrumbs\"\n >\n <div class=\"neon-breadcrumbs__container\">\n <neon-link v-if=\"backButton\" class=\"neon-breadcrumbs__back\" no-style @click=\"back()\">\n <neon-icon class=\"neon-breadcrumbs__back-icon\" name=\"arrow-left\" />\n <span class=\"neon-breadcrumbs__back-label\">{{ backLabel }}</span>\n </neon-link>\n <div v-if=\"breadcrumbs.length !== 0\" ref=\"linksRef\" class=\"neon-breadcrumbs__links\">\n <template v-for=\"(breadcrumb, index) in breadcrumbs\" :key=\"index\">\n <neon-icon v-if=\"index !== 0\" class=\"neon-breadcrumbs__separator\" name=\"chevron-right\" />\n <neon-link v-if=\"breadcrumb.url\" :href=\"breadcrumb.url\" class=\"neon-breadcrumbs__link\" no-style>\n {{ breadcrumb.label }}\n </neon-link>\n <span v-else class=\"neon-breadcrumbs__link-text\">{{ breadcrumb.label }}</span>\n </template>\n </div>\n </div>\n </neon-swiper>\n</template>\n\n<script lang=\"ts\" src=\"./NeonBreadcrumbs.ts\" />\n"],"names":["_hoisted_1","_hoisted_2","_ctx","_createBlock","_component_neon_swiper","_normalizeClass","_createElementVNode","_component_neon_link","_createVNode","_component_neon_icon","_toDisplayString","_openBlock","_createElementBlock","_hoisted_3","_Fragment","_renderList","breadcrumb","index","_createTextVNode","_hoisted_4"],"mappings":"0IAMSA,EAAA,CAAA,MAAM,6BAA6B,EAG9BC,EAAA,CAAA,MAAM,8BAA8B,WAEP,IAAI,WAAW,MAAM,oCAMzC,MAAM,4KAfnBC,EAAA,YAAY,SAAM,GAAUA,EAAA,0BADpCC,EAAAA,YAoBcC,EAAA,OAlBX,MAAKC,EAAAA,eAAA,CAAA,CAAA,CAAA,qCAAA,CAA4CH,EAAA,YAAU,gCAAoCA,EAAA,eAAe,IACzG,kBAAkB,CAAA,sBAExB,IAcM,CAdNI,EAAAA,mBAcM,MAdNN,EAcM,CAbaE,EAAA,0BAAjBC,EAAAA,YAGYI,EAAA,OAHiB,MAAM,yBAAyB,WAAA,GAAU,uBAAOL,EAAA,4BAC3E,IAAmE,CAAnEM,EAAAA,YAAmEC,EAAA,CAAxD,MAAM,8BAA8B,KAAK,eACpDH,EAAAA,mBAAiE,OAAjEL,EAAiES,EAAAA,gBAAnBR,EAAA,SAAS,EAAA,CAAA,uCAE9CA,EAAA,YAAY,SAAM,GAA7BS,EAAAA,YAAAC,EAAAA,mBAQM,MARNC,EAQM,EAPJF,EAAAA,UAAA,EAAA,EAAAC,EAAAA,mBAMWE,WAAA,KAAAC,EAAAA,WAN6Bb,EAAA,YAAW,CAAjCc,EAAYC,wDAA6BA,GAAK,CAC7CA,IAAK,iBAAtBd,EAAAA,YAAyFM,EAAA,OAA3D,MAAM,8BAA8B,KAAK,+CACtDO,EAAW,mBAA5Bb,EAAAA,YAEYI,EAAA,OAFsB,KAAMS,EAAW,IAAK,MAAM,yBAAyB,WAAA,uBACrF,IAAsB,CAAnBE,EAAAA,gBAAAR,EAAAA,gBAAAM,EAAW,KAAK,EAAA,CAAA,0BAErBL,YAAA,EAAAC,EAAAA,mBAA8E,OAA9EO,EAA8ET,EAAAA,gBAA1BM,EAAW,KAAK,EAAA,CAAA"}
@@ -1,15 +1,15 @@
1
1
  import p from "./NeonBreadcrumbs.es.js";
2
- import { resolveComponent as a, openBlock as n, createBlock as r, normalizeClass as f, withCtx as c, createElementVNode as u, createVNode as y, toDisplayString as l, createCommentVNode as s, createElementBlock as t, Fragment as d, renderList as h, createTextVNode as B } from "vue";
3
- import v from "../../../_virtual/_plugin-vue_export-helper.es.js";
4
- const $ = { class: "neon-breadcrumbs__container" }, g = { class: "neon-breadcrumbs__back-label" }, w = {
2
+ import { resolveComponent as a, openBlock as n, createBlock as r, normalizeClass as f, withCtx as c, createElementVNode as u, createVNode as y, toDisplayString as l, createCommentVNode as s, createElementBlock as t, Fragment as d, renderList as h, createTextVNode as v } from "vue";
3
+ import B from "../../../_virtual/_plugin-vue_export-helper.es.js";
4
+ const $ = { class: "neon-breadcrumbs__container" }, g = { class: "neon-breadcrumbs__back-label" }, C = {
5
5
  key: 1,
6
6
  ref: "linksRef",
7
7
  class: "neon-breadcrumbs__links"
8
- }, C = {
8
+ }, N = {
9
9
  key: 2,
10
10
  class: "neon-breadcrumbs__link-text"
11
11
  };
12
- function N(e, b, V, E, L, S) {
12
+ function w(e, b, V, E, L, S) {
13
13
  const _ = a("neon-icon"), i = a("neon-link"), k = a("neon-swiper");
14
14
  return e.breadcrumbs.length !== 0 || e.backButton ? (n(), r(k, {
15
15
  key: 0,
@@ -32,12 +32,12 @@ function N(e, b, V, E, L, S) {
32
32
  ]),
33
33
  _: 1
34
34
  })) : s("", !0),
35
- e.breadcrumbs.length !== 0 ? (n(), t("div", w, [
35
+ e.breadcrumbs.length !== 0 ? (n(), t("div", C, [
36
36
  (n(!0), t(d, null, h(e.breadcrumbs, (o, m) => (n(), t(d, { key: m }, [
37
37
  m !== 0 ? (n(), r(_, {
38
38
  key: 0,
39
39
  class: "neon-breadcrumbs__separator",
40
- name: "arrow-right-1"
40
+ name: "chevron-right"
41
41
  })) : s("", !0),
42
42
  o.url ? (n(), r(i, {
43
43
  key: 1,
@@ -46,10 +46,10 @@ function N(e, b, V, E, L, S) {
46
46
  "no-style": ""
47
47
  }, {
48
48
  default: c(() => [
49
- B(l(o.label), 1)
49
+ v(l(o.label), 1)
50
50
  ]),
51
51
  _: 2
52
- }, 1032, ["href"])) : (n(), t("span", C, l(o.label), 1))
52
+ }, 1032, ["href"])) : (n(), t("span", N, l(o.label), 1))
53
53
  ], 64))), 128))
54
54
  ], 512)) : s("", !0)
55
55
  ])
@@ -57,7 +57,7 @@ function N(e, b, V, E, L, S) {
57
57
  _: 1
58
58
  }, 8, ["class"])) : s("", !0);
59
59
  }
60
- const R = /* @__PURE__ */ v(p, [["render", N]]);
60
+ const R = /* @__PURE__ */ B(p, [["render", w]]);
61
61
  export {
62
62
  R as default
63
63
  };
@@ -1 +1 @@
1
- {"version":3,"file":"NeonBreadcrumbs.vue.es.js","sources":["../../../../src/components/navigation/breadcrumbs/NeonBreadcrumbs.vue"],"sourcesContent":["<template>\n <neon-swiper\n v-if=\"breadcrumbs.length !== 0 || backButton\"\n :class=\"[{ 'neon-breadcrumbs--breadcrumbs-only': !backButton }, `neon-breadcrumbs--responsive-${responsiveStyle}`]\"\n class=\"neon-breadcrumbs\"\n >\n <div class=\"neon-breadcrumbs__container\">\n <neon-link v-if=\"backButton\" class=\"neon-breadcrumbs__back\" no-style @click=\"back()\">\n <neon-icon class=\"neon-breadcrumbs__back-icon\" name=\"arrow-left\" />\n <span class=\"neon-breadcrumbs__back-label\">{{ backLabel }}</span>\n </neon-link>\n <div v-if=\"breadcrumbs.length !== 0\" ref=\"linksRef\" class=\"neon-breadcrumbs__links\">\n <template v-for=\"(breadcrumb, index) in breadcrumbs\" :key=\"index\">\n <neon-icon v-if=\"index !== 0\" class=\"neon-breadcrumbs__separator\" name=\"arrow-right-1\" />\n <neon-link v-if=\"breadcrumb.url\" :href=\"breadcrumb.url\" class=\"neon-breadcrumbs__link\" no-style>\n {{ breadcrumb.label }}\n </neon-link>\n <span v-else class=\"neon-breadcrumbs__link-text\">{{ breadcrumb.label }}</span>\n </template>\n </div>\n </div>\n </neon-swiper>\n</template>\n\n<script lang=\"ts\" src=\"./NeonBreadcrumbs.ts\" />\n"],"names":["_hoisted_1","_hoisted_2","_ctx","_createBlock","_component_neon_swiper","_normalizeClass","_createElementVNode","_component_neon_link","_createVNode","_component_neon_icon","_toDisplayString","_openBlock","_createElementBlock","_hoisted_3","_Fragment","_renderList","breadcrumb","index","_createTextVNode","_hoisted_4"],"mappings":";;;AAMS,MAAAA,IAAA,EAAA,OAAM,8BAA6B,GAG9BC,IAAA,EAAA,OAAM,+BAA8B;;EAEP,KAAI;AAAA,EAAW,OAAM;;;EAMzC,OAAM;;;;SAfnBC,EAAA,YAAY,WAAM,KAAUA,EAAA,mBADpCC,EAoBcC,GAAA;AAAA;IAlBX,OAAKC,EAAA,CAAA,CAAA,EAAA,sCAAA,CAA4CH,EAAA,cAAU,gCAAoCA,EAAA,eAAe,KACzG,kBAAkB,CAAA;AAAA;eAExB,MAcM;AAAA,MAdNI,EAcM,OAdNN,GAcM;AAAA,QAbaE,EAAA,mBAAjBC,EAGYI,GAAA;AAAA;UAHiB,OAAM;AAAA,UAAyB,YAAA;AAAA,UAAU,gCAAOL,EAAA;;qBAC3E,MAAmE;AAAA,YAAnEM,EAAmEC,GAAA;AAAA,cAAxD,OAAM;AAAA,cAA8B,MAAK;AAAA;YACpDH,EAAiE,QAAjEL,GAAiES,EAAnBR,EAAA,SAAS,GAAA,CAAA;AAAA;;;QAE9CA,EAAA,YAAY,WAAM,KAA7BS,KAAAC,EAQM,OARNC,GAQM;AAAA,WAPJF,EAAA,EAAA,GAAAC,EAMWE,GAAA,MAAAC,EAN6Bb,EAAA,aAAW,CAAjCc,GAAYC,wBAA6BA,KAAK;AAAA,YAC7CA,MAAK,UAAtBd,EAAyFM,GAAA;AAAA;cAA3D,OAAM;AAAA,cAA8B,MAAK;AAAA;YACtDO,EAAW,YAA5Bb,EAEYI,GAAA;AAAA;cAFsB,MAAMS,EAAW;AAAA,cAAK,OAAM;AAAA,cAAyB,YAAA;AAAA;yBACrF,MAAsB;AAAA,gBAAnBE,EAAAR,EAAAM,EAAW,KAAK,GAAA,CAAA;AAAA;;mCAErBL,EAAA,GAAAC,EAA8E,QAA9EO,GAA8ET,EAA1BM,EAAW,KAAK,GAAA,CAAA;AAAA;;;;;;;;"}
1
+ {"version":3,"file":"NeonBreadcrumbs.vue.es.js","sources":["../../../../src/components/navigation/breadcrumbs/NeonBreadcrumbs.vue"],"sourcesContent":["<template>\n <neon-swiper\n v-if=\"breadcrumbs.length !== 0 || backButton\"\n :class=\"[{ 'neon-breadcrumbs--breadcrumbs-only': !backButton }, `neon-breadcrumbs--responsive-${responsiveStyle}`]\"\n class=\"neon-breadcrumbs\"\n >\n <div class=\"neon-breadcrumbs__container\">\n <neon-link v-if=\"backButton\" class=\"neon-breadcrumbs__back\" no-style @click=\"back()\">\n <neon-icon class=\"neon-breadcrumbs__back-icon\" name=\"arrow-left\" />\n <span class=\"neon-breadcrumbs__back-label\">{{ backLabel }}</span>\n </neon-link>\n <div v-if=\"breadcrumbs.length !== 0\" ref=\"linksRef\" class=\"neon-breadcrumbs__links\">\n <template v-for=\"(breadcrumb, index) in breadcrumbs\" :key=\"index\">\n <neon-icon v-if=\"index !== 0\" class=\"neon-breadcrumbs__separator\" name=\"chevron-right\" />\n <neon-link v-if=\"breadcrumb.url\" :href=\"breadcrumb.url\" class=\"neon-breadcrumbs__link\" no-style>\n {{ breadcrumb.label }}\n </neon-link>\n <span v-else class=\"neon-breadcrumbs__link-text\">{{ breadcrumb.label }}</span>\n </template>\n </div>\n </div>\n </neon-swiper>\n</template>\n\n<script lang=\"ts\" src=\"./NeonBreadcrumbs.ts\" />\n"],"names":["_hoisted_1","_hoisted_2","_ctx","_createBlock","_component_neon_swiper","_normalizeClass","_createElementVNode","_component_neon_link","_createVNode","_component_neon_icon","_toDisplayString","_openBlock","_createElementBlock","_hoisted_3","_Fragment","_renderList","breadcrumb","index","_createTextVNode","_hoisted_4"],"mappings":";;;AAMS,MAAAA,IAAA,EAAA,OAAM,8BAA6B,GAG9BC,IAAA,EAAA,OAAM,+BAA8B;;EAEP,KAAI;AAAA,EAAW,OAAM;;;EAMzC,OAAM;;;;SAfnBC,EAAA,YAAY,WAAM,KAAUA,EAAA,mBADpCC,EAoBcC,GAAA;AAAA;IAlBX,OAAKC,EAAA,CAAA,CAAA,EAAA,sCAAA,CAA4CH,EAAA,cAAU,gCAAoCA,EAAA,eAAe,KACzG,kBAAkB,CAAA;AAAA;eAExB,MAcM;AAAA,MAdNI,EAcM,OAdNN,GAcM;AAAA,QAbaE,EAAA,mBAAjBC,EAGYI,GAAA;AAAA;UAHiB,OAAM;AAAA,UAAyB,YAAA;AAAA,UAAU,gCAAOL,EAAA;;qBAC3E,MAAmE;AAAA,YAAnEM,EAAmEC,GAAA;AAAA,cAAxD,OAAM;AAAA,cAA8B,MAAK;AAAA;YACpDH,EAAiE,QAAjEL,GAAiES,EAAnBR,EAAA,SAAS,GAAA,CAAA;AAAA;;;QAE9CA,EAAA,YAAY,WAAM,KAA7BS,KAAAC,EAQM,OARNC,GAQM;AAAA,WAPJF,EAAA,EAAA,GAAAC,EAMWE,GAAA,MAAAC,EAN6Bb,EAAA,aAAW,CAAjCc,GAAYC,wBAA6BA,KAAK;AAAA,YAC7CA,MAAK,UAAtBd,EAAyFM,GAAA;AAAA;cAA3D,OAAM;AAAA,cAA8B,MAAK;AAAA;YACtDO,EAAW,YAA5Bb,EAEYI,GAAA;AAAA;cAFsB,MAAMS,EAAW;AAAA,cAAK,OAAM;AAAA,cAAyB,YAAA;AAAA;yBACrF,MAAsB;AAAA,gBAAnBE,EAAAR,EAAAM,EAAW,KAAK,GAAA,CAAA;AAAA;;mCAErBL,EAAA,GAAAC,EAA8E,QAA9EO,GAA8ET,EAA1BM,EAAW,KAAK,GAAA,CAAA;AAAA;;;;;;;;"}
@@ -1,2 +1,2 @@
1
- "use strict";const y=require("../../user-input/button/NeonButton.vue.cjs.js"),d=require("../../presentation/icon/NeonIcon.vue.cjs.js"),n=require("vue"),f=require("../../../model/common/color/NeonFunctionalColor.cjs.js"),v=n.defineComponent({name:"NeonPagination",components:{NeonButton:y,NeonIcon:d},props:{page:{type:Number,required:!0},urlTemplate:{type:String,required:!0},pageSize:{type:Number,default:20},total:{type:Number,required:!0},displayFirstAndLast:{type:Boolean,default:!1},color:{type:String,default:()=>f.NeonFunctionalColor.Brand}},setup(t){const e=n.computed(()=>Math.ceil(t.total/t.pageSize)),l=n.computed(()=>e.value<=1),o=n.computed(()=>Math.max(t.page-1,1)),s=n.computed(()=>t.page===1),r=n.computed(()=>Math.min(t.page+1,e.value)),p=n.computed(()=>t.page===e.value),g=n.computed(()=>e.value>5&&t.page>=5),m=n.computed(()=>e.value>5&&t.page<=e.value-4),c=n.computed(()=>{if(e.value<=5)return Array.from(Array(e.value).keys()).map(a=>a+1);if(t.page<=e.value/2){let a=Math.max(t.page-Math.floor(1.5),1),u=3;return a===2?(a=1,u+=1):a===3&&(a=1,u+=2),Array.from(Array(u).keys()).map(i=>a+i)}else{let a=Math.min(t.page+Math.floor(1.5),e.value),u=3;return a===e.value-1?(a=e.value,u+=1):a===e.value-2&&(a=e.value,u+=2),Array.from(Array(u).keys()).map(i=>a-(u-1)+i)}});return{pageCount:e,hidePagination:l,previousPage:o,disabledPrevious:s,nextPage:r,disabledNext:p,showFirstPageWithEllipsis:g,showLastPageWithEllipsis:m,pageRange:c,url:a=>t.urlTemplate.replace("{page}",a.toString())}}});module.exports=v;
1
+ "use strict";const d=require("../../user-input/button/NeonButton.vue.cjs.js"),v=require("../../presentation/icon/NeonIcon.vue.cjs.js"),n=require("vue"),f=require("../../../model/common/color/NeonFunctionalColor.cjs.js"),P=n.defineComponent({name:"NeonPagination",components:{NeonButton:d,NeonIcon:v},props:{page:{type:Number,required:!0},urlTemplate:{type:String},pageSize:{type:Number,default:20},total:{type:Number,required:!0},displayFirstAndLast:{type:Boolean,default:!1},color:{type:String,default:()=>f.NeonFunctionalColor.Brand}},emits:["page-change"],setup(t,{emit:u}){const e=n.computed(()=>Math.ceil(t.total/t.pageSize)),o=n.computed(()=>e.value<=1),s=n.computed(()=>Math.max(t.page-1,1)),r=n.computed(()=>t.page===1),g=n.computed(()=>Math.min(t.page+1,e.value)),p=n.computed(()=>t.page===e.value),m=n.computed(()=>e.value>5&&t.page>=5),c=n.computed(()=>e.value>5&&t.page<=e.value-4),y=n.computed(()=>{if(e.value<=5)return Array.from(Array(e.value).keys()).map(a=>a+1);if(t.page<=e.value/2){let a=Math.max(t.page-Math.floor(1.5),1),l=3;return a===2?(a=1,l+=1):a===3&&(a=1,l+=2),Array.from(Array(l).keys()).map(i=>a+i)}else{let a=Math.min(t.page+Math.floor(1.5),e.value),l=3;return a===e.value-1?(a=e.value,l+=1):a===e.value-2&&(a=e.value,l+=2),Array.from(Array(l).keys()).map(i=>a-(l-1)+i)}});return{pageCount:e,hidePagination:o,previousPage:s,disabledPrevious:r,nextPage:g,disabledNext:p,showFirstPageWithEllipsis:m,showLastPageWithEllipsis:c,pageRange:y,url:a=>t.urlTemplate?t.urlTemplate.replace("{page}",a.toString()):void 0,emit:u}}});module.exports=P;
2
2
  //# sourceMappingURL=NeonPagination.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NeonPagination.cjs.js","sources":["../../../../src/components/navigation/pagination/NeonPagination.ts?vue&type=script&src=true&lang.ts"],"sourcesContent":["import NeonButton from '@/components/user-input/button/NeonButton.vue';\nimport NeonIcon from '@/components/presentation/icon/NeonIcon.vue';\nimport { computed, defineComponent } from 'vue';\nimport { NeonFunctionalColor } from '@/model/common/color/NeonFunctionalColor';\n\n/**\n * A pagination component that displays a list of page numbers and allows the user to navigate between pages. Typically,\n * the component displays the first and last page numbers and 3 pages before and after the current page.\n */\nexport default defineComponent({\n name: 'NeonPagination',\n components: {\n NeonButton,\n NeonIcon,\n },\n props: {\n /**\n * The current page number.\n */\n page: { type: Number, required: true },\n /**\n * The URL template for the pagination links. The template should contain a '{page}' placeholder that will be\n * substituted in links with the correct page number.\n */\n urlTemplate: { type: String, required: true },\n /**\n * The number of items per page.\n */\n pageSize: { type: Number, default: 20 },\n /**\n * The total number of items.\n */\n total: { type: Number, required: true },\n /**\n * Whether to display links to the first and last pages.\n */\n displayFirstAndLast: { type: Boolean, default: false },\n /**\n * The accent color of the component.\n */\n color: { type: String as () => NeonFunctionalColor, default: () => NeonFunctionalColor.Brand },\n },\n setup(props) {\n const maxDisplayPageLinks = 5;\n const pageDisplayCount = maxDisplayPageLinks - 2;\n\n const pageCount = computed(() => Math.ceil(props.total / props.pageSize));\n const hidePagination = computed(() => pageCount.value <= 1);\n\n const previousPage = computed(() => Math.max(props.page - 1, 1));\n const disabledPrevious = computed(() => props.page === 1);\n\n const nextPage = computed(() => Math.min(props.page + 1, pageCount.value));\n const disabledNext = computed(() => props.page === pageCount.value);\n\n const showFirstPageWithEllipsis = computed(\n () => pageCount.value > maxDisplayPageLinks && props.page >= maxDisplayPageLinks,\n );\n\n const showLastPageWithEllipsis = computed(\n () => pageCount.value > maxDisplayPageLinks && props.page <= pageCount.value - (pageDisplayCount + 1),\n );\n\n const pageRange = computed(() => {\n // not enough pages to fill range, show them all\n if (pageCount.value <= maxDisplayPageLinks) {\n return Array.from(Array(pageCount.value).keys()).map((value) => value + 1);\n }\n\n // determine page range to display\n if (props.page <= pageCount.value / 2) {\n // bottom of range calculation\n let startPage = Math.max(props.page - Math.floor(pageDisplayCount / 2), 1);\n let numPages = pageDisplayCount;\n\n // when the start page would be 2 then also display 1, and if start page is 3 then also display 1 and 2 (no ellipsis)\n if (startPage === 2) {\n startPage = 1;\n numPages += 1;\n } else if (startPage === 3) {\n startPage = 1;\n numPages += 2;\n }\n\n return Array.from(Array(numPages).keys()).map((value) => startPage + value);\n } else {\n // top of range calculation\n let endPage = Math.min(props.page + Math.floor(pageDisplayCount / 2), pageCount.value);\n let numPages = pageDisplayCount;\n\n // when the end page would be pageCount - 1 then also display last page,\n // and if end page is pageCount - 2 then also display last page & second last page (no ellipsis)\n if (endPage === pageCount.value - 1) {\n endPage = pageCount.value;\n numPages += 1;\n } else if (endPage === pageCount.value - 2) {\n endPage = pageCount.value;\n numPages += 2;\n }\n\n return Array.from(Array(numPages).keys()).map((value) => endPage - (numPages - 1) + value);\n }\n });\n\n const url = (page: number) => props.urlTemplate.replace('{page}', page.toString());\n\n return {\n pageCount,\n hidePagination,\n previousPage,\n disabledPrevious,\n nextPage,\n disabledNext,\n showFirstPageWithEllipsis,\n showLastPageWithEllipsis,\n pageRange,\n url,\n };\n },\n});\n"],"names":["_sfc_main","defineComponent","NeonButton","NeonIcon","NeonFunctionalColor","props","pageCount","computed","hidePagination","previousPage","disabledPrevious","nextPage","disabledNext","showFirstPageWithEllipsis","showLastPageWithEllipsis","pageRange","value","startPage","numPages","endPage","page"],"mappings":"4NASAA,EAAeC,kBAAgB,CAC7B,KAAM,iBACN,WAAY,CACV,WAAAC,EACA,SAAAC,CAAA,EAEF,MAAO,CAIL,KAAM,CAAE,KAAM,OAAQ,SAAU,EAAA,EAKhC,YAAa,CAAE,KAAM,OAAQ,SAAU,EAAA,EAIvC,SAAU,CAAE,KAAM,OAAQ,QAAS,EAAA,EAInC,MAAO,CAAE,KAAM,OAAQ,SAAU,EAAA,EAIjC,oBAAqB,CAAE,KAAM,QAAS,QAAS,EAAA,EAI/C,MAAO,CAAE,KAAM,OAAqC,QAAS,IAAMC,EAAAA,oBAAoB,KAAA,CAAM,EAE/F,MAAMC,EAAO,CAIX,MAAMC,EAAYC,WAAS,IAAM,KAAK,KAAKF,EAAM,MAAQA,EAAM,QAAQ,CAAC,EAClEG,EAAiBD,EAAAA,SAAS,IAAMD,EAAU,OAAS,CAAC,EAEpDG,EAAeF,WAAS,IAAM,KAAK,IAAIF,EAAM,KAAO,EAAG,CAAC,CAAC,EACzDK,EAAmBH,EAAAA,SAAS,IAAMF,EAAM,OAAS,CAAC,EAElDM,EAAWJ,EAAAA,SAAS,IAAM,KAAK,IAAIF,EAAM,KAAO,EAAGC,EAAU,KAAK,CAAC,EACnEM,EAAeL,EAAAA,SAAS,IAAMF,EAAM,OAASC,EAAU,KAAK,EAE5DO,EAA4BN,EAAAA,SAChC,IAAMD,EAAU,MAAQ,GAAuBD,EAAM,MAAQ,CAAA,EAGzDS,EAA2BP,EAAAA,SAC/B,IAAMD,EAAU,MAAQ,GAAuBD,EAAM,MAAQC,EAAU,MAAS,CAAmB,EAG/FS,EAAYR,EAAAA,SAAS,IAAM,CAE/B,GAAID,EAAU,OAAS,EACrB,OAAO,MAAM,KAAK,MAAMA,EAAU,KAAK,EAAE,KAAA,CAAM,EAAE,IAAKU,GAAUA,EAAQ,CAAC,EAI3E,GAAIX,EAAM,MAAQC,EAAU,MAAQ,EAAG,CAErC,IAAIW,EAAY,KAAK,IAAIZ,EAAM,KAAO,KAAK,MAAM,GAAoB,EAAG,CAAC,EACrEa,EAAW,EAGf,OAAID,IAAc,GAChBA,EAAY,EACZC,GAAY,GACHD,IAAc,IACvBA,EAAY,EACZC,GAAY,GAGP,MAAM,KAAK,MAAMA,CAAQ,EAAE,MAAM,EAAE,IAAKF,GAAUC,EAAYD,CAAK,CAC5E,KAAO,CAEL,IAAIG,EAAU,KAAK,IAAId,EAAM,KAAO,KAAK,MAAM,GAAoB,EAAGC,EAAU,KAAK,EACjFY,EAAW,EAIf,OAAIC,IAAYb,EAAU,MAAQ,GAChCa,EAAUb,EAAU,MACpBY,GAAY,GACHC,IAAYb,EAAU,MAAQ,IACvCa,EAAUb,EAAU,MACpBY,GAAY,GAGP,MAAM,KAAK,MAAMA,CAAQ,EAAE,KAAA,CAAM,EAAE,IAAKF,GAAUG,GAAWD,EAAW,GAAKF,CAAK,CAC3F,CACF,CAAC,EAID,MAAO,CACL,UAAAV,EACA,eAAAE,EACA,aAAAC,EACA,iBAAAC,EACA,SAAAC,EACA,aAAAC,EACA,0BAAAC,EACA,yBAAAC,EACA,UAAAC,EACA,IAZWK,GAAiBf,EAAM,YAAY,QAAQ,SAAUe,EAAK,UAAU,CAY/E,CAEJ,CACF,CAAC"}
1
+ {"version":3,"file":"NeonPagination.cjs.js","sources":["../../../../src/components/navigation/pagination/NeonPagination.ts?vue&type=script&src=true&lang.ts"],"sourcesContent":["import NeonButton from '@/components/user-input/button/NeonButton.vue';\nimport NeonIcon from '@/components/presentation/icon/NeonIcon.vue';\nimport { computed, defineComponent } from 'vue';\nimport { NeonFunctionalColor } from '@/model/common/color/NeonFunctionalColor';\n\n/**\n * A pagination component that displays a list of page numbers and allows the user to navigate between pages. Typically,\n * the component displays the first and last page numbers and 3 pages before and after the current page.\n */\nexport default defineComponent({\n name: 'NeonPagination',\n components: {\n NeonButton,\n NeonIcon,\n },\n props: {\n /**\n * The current page number.\n */\n page: { type: Number, required: true },\n /**\n * The URL template for the pagination links. The template should contain a '{page}' placeholder that will be\n * substituted in links with the correct page number.\n */\n urlTemplate: { type: String },\n /**\n * The number of items per page.\n */\n pageSize: { type: Number, default: 20 },\n /**\n * The total number of items.\n */\n total: { type: Number, required: true },\n /**\n * Whether to display links to the first and last pages.\n */\n displayFirstAndLast: { type: Boolean, default: false },\n /**\n * The accent color of the component.\n */\n color: { type: String as () => NeonFunctionalColor, default: () => NeonFunctionalColor.Brand },\n },\n emits: [\n /**\n * Emitted when the user clicks on a page 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 setup(props, { emit }) {\n const maxDisplayPageLinks = 5;\n const pageDisplayCount = maxDisplayPageLinks - 2;\n\n const pageCount = computed(() => Math.ceil(props.total / props.pageSize));\n const hidePagination = computed(() => pageCount.value <= 1);\n\n const previousPage = computed(() => Math.max(props.page - 1, 1));\n const disabledPrevious = computed(() => props.page === 1);\n\n const nextPage = computed(() => Math.min(props.page + 1, pageCount.value));\n const disabledNext = computed(() => props.page === pageCount.value);\n\n const showFirstPageWithEllipsis = computed(\n () => pageCount.value > maxDisplayPageLinks && props.page >= maxDisplayPageLinks,\n );\n\n const showLastPageWithEllipsis = computed(\n () => pageCount.value > maxDisplayPageLinks && props.page <= pageCount.value - (pageDisplayCount + 1),\n );\n\n const pageRange = computed(() => {\n // not enough pages to fill range, show them all\n if (pageCount.value <= maxDisplayPageLinks) {\n return Array.from(Array(pageCount.value).keys()).map((value) => value + 1);\n }\n\n // determine page range to display\n if (props.page <= pageCount.value / 2) {\n // bottom of range calculation\n let startPage = Math.max(props.page - Math.floor(pageDisplayCount / 2), 1);\n let numPages = pageDisplayCount;\n\n // when the start page would be 2 then also display 1, and if start page is 3 then also display 1 and 2 (no ellipsis)\n if (startPage === 2) {\n startPage = 1;\n numPages += 1;\n } else if (startPage === 3) {\n startPage = 1;\n numPages += 2;\n }\n\n return Array.from(Array(numPages).keys()).map((value) => startPage + value);\n } else {\n // top of range calculation\n let endPage = Math.min(props.page + Math.floor(pageDisplayCount / 2), pageCount.value);\n let numPages = pageDisplayCount;\n\n // when the end page would be pageCount - 1 then also display last page,\n // and if end page is pageCount - 2 then also display last page & second last page (no ellipsis)\n if (endPage === pageCount.value - 1) {\n endPage = pageCount.value;\n numPages += 1;\n } else if (endPage === pageCount.value - 2) {\n endPage = pageCount.value;\n numPages += 2;\n }\n\n return Array.from(Array(numPages).keys()).map((value) => endPage - (numPages - 1) + value);\n }\n });\n\n const url = (page: number) =>\n props.urlTemplate ? props.urlTemplate.replace('{page}', page.toString()) : undefined;\n\n return {\n pageCount,\n hidePagination,\n previousPage,\n disabledPrevious,\n nextPage,\n disabledNext,\n showFirstPageWithEllipsis,\n showLastPageWithEllipsis,\n pageRange,\n url,\n emit,\n };\n },\n});\n"],"names":["_sfc_main","defineComponent","NeonButton","NeonIcon","NeonFunctionalColor","props","emit","pageCount","computed","hidePagination","previousPage","disabledPrevious","nextPage","disabledNext","showFirstPageWithEllipsis","showLastPageWithEllipsis","pageRange","value","startPage","numPages","endPage","page"],"mappings":"4NASAA,EAAeC,kBAAgB,CAC7B,KAAM,iBACN,WAAY,CACV,WAAAC,EACA,SAAAC,CAAA,EAEF,MAAO,CAIL,KAAM,CAAE,KAAM,OAAQ,SAAU,EAAA,EAKhC,YAAa,CAAE,KAAM,MAAA,EAIrB,SAAU,CAAE,KAAM,OAAQ,QAAS,EAAA,EAInC,MAAO,CAAE,KAAM,OAAQ,SAAU,EAAA,EAIjC,oBAAqB,CAAE,KAAM,QAAS,QAAS,EAAA,EAI/C,MAAO,CAAE,KAAM,OAAqC,QAAS,IAAMC,EAAAA,oBAAoB,KAAA,CAAM,EAE/F,MAAO,CAOL,aAAA,EAEF,MAAMC,EAAO,CAAE,KAAAC,GAAQ,CAIrB,MAAMC,EAAYC,WAAS,IAAM,KAAK,KAAKH,EAAM,MAAQA,EAAM,QAAQ,CAAC,EAClEI,EAAiBD,EAAAA,SAAS,IAAMD,EAAU,OAAS,CAAC,EAEpDG,EAAeF,WAAS,IAAM,KAAK,IAAIH,EAAM,KAAO,EAAG,CAAC,CAAC,EACzDM,EAAmBH,EAAAA,SAAS,IAAMH,EAAM,OAAS,CAAC,EAElDO,EAAWJ,EAAAA,SAAS,IAAM,KAAK,IAAIH,EAAM,KAAO,EAAGE,EAAU,KAAK,CAAC,EACnEM,EAAeL,EAAAA,SAAS,IAAMH,EAAM,OAASE,EAAU,KAAK,EAE5DO,EAA4BN,EAAAA,SAChC,IAAMD,EAAU,MAAQ,GAAuBF,EAAM,MAAQ,CAAA,EAGzDU,EAA2BP,EAAAA,SAC/B,IAAMD,EAAU,MAAQ,GAAuBF,EAAM,MAAQE,EAAU,MAAS,CAAmB,EAG/FS,EAAYR,EAAAA,SAAS,IAAM,CAE/B,GAAID,EAAU,OAAS,EACrB,OAAO,MAAM,KAAK,MAAMA,EAAU,KAAK,EAAE,KAAA,CAAM,EAAE,IAAKU,GAAUA,EAAQ,CAAC,EAI3E,GAAIZ,EAAM,MAAQE,EAAU,MAAQ,EAAG,CAErC,IAAIW,EAAY,KAAK,IAAIb,EAAM,KAAO,KAAK,MAAM,GAAoB,EAAG,CAAC,EACrEc,EAAW,EAGf,OAAID,IAAc,GAChBA,EAAY,EACZC,GAAY,GACHD,IAAc,IACvBA,EAAY,EACZC,GAAY,GAGP,MAAM,KAAK,MAAMA,CAAQ,EAAE,MAAM,EAAE,IAAKF,GAAUC,EAAYD,CAAK,CAC5E,KAAO,CAEL,IAAIG,EAAU,KAAK,IAAIf,EAAM,KAAO,KAAK,MAAM,GAAoB,EAAGE,EAAU,KAAK,EACjFY,EAAW,EAIf,OAAIC,IAAYb,EAAU,MAAQ,GAChCa,EAAUb,EAAU,MACpBY,GAAY,GACHC,IAAYb,EAAU,MAAQ,IACvCa,EAAUb,EAAU,MACpBY,GAAY,GAGP,MAAM,KAAK,MAAMA,CAAQ,EAAE,KAAA,CAAM,EAAE,IAAKF,GAAUG,GAAWD,EAAW,GAAKF,CAAK,CAC3F,CACF,CAAC,EAKD,MAAO,CACL,UAAAV,EACA,eAAAE,EACA,aAAAC,EACA,iBAAAC,EACA,SAAAC,EACA,aAAAC,EACA,0BAAAC,EACA,yBAAAC,EACA,UAAAC,EACA,IAbWK,GACXhB,EAAM,YAAcA,EAAM,YAAY,QAAQ,SAAUgB,EAAK,SAAA,CAAU,EAAI,OAa3E,KAAAf,CAAA,CAEJ,CACF,CAAC"}
@@ -1,12 +1,12 @@
1
1
  import f from "../../user-input/button/NeonButton.vue.es.js";
2
- import c from "../../presentation/icon/NeonIcon.vue.es.js";
3
- import { defineComponent as d, computed as n } from "vue";
2
+ import d from "../../presentation/icon/NeonIcon.vue.es.js";
3
+ import { defineComponent as v, computed as l } from "vue";
4
4
  import { NeonFunctionalColor as P } from "../../../model/common/color/NeonFunctionalColor.es.js";
5
- const N = d({
5
+ const A = v({
6
6
  name: "NeonPagination",
7
7
  components: {
8
8
  NeonButton: f,
9
- NeonIcon: c
9
+ NeonIcon: d
10
10
  },
11
11
  props: {
12
12
  /**
@@ -17,7 +17,7 @@ const N = d({
17
17
  * The URL template for the pagination links. The template should contain a '{page}' placeholder that will be
18
18
  * substituted in links with the correct page number.
19
19
  */
20
- urlTemplate: { type: String, required: !0 },
20
+ urlTemplate: { type: String },
21
21
  /**
22
22
  * The number of items per page.
23
23
  */
@@ -35,37 +35,47 @@ const N = d({
35
35
  */
36
36
  color: { type: String, default: () => P.Brand }
37
37
  },
38
- setup(t) {
39
- const e = n(() => Math.ceil(t.total / t.pageSize)), o = n(() => e.value <= 1), r = n(() => Math.max(t.page - 1, 1)), s = n(() => t.page === 1), u = n(() => Math.min(t.page + 1, e.value)), g = n(() => t.page === e.value), p = n(
38
+ emits: [
39
+ /**
40
+ * Emitted when the user clicks on a page link (useful for paginated lists which are not the main focus of the page,
41
+ * i.e. should not be deep linked).
42
+ *
43
+ * @type {number} The new page number.
44
+ */
45
+ "page-change"
46
+ ],
47
+ setup(t, { emit: o }) {
48
+ const e = l(() => Math.ceil(t.total / t.pageSize)), s = l(() => e.value <= 1), r = l(() => Math.max(t.page - 1, 1)), u = l(() => t.page === 1), g = l(() => Math.min(t.page + 1, e.value)), m = l(() => t.page === e.value), p = l(
40
49
  () => e.value > 5 && t.page >= 5
41
- ), m = n(
50
+ ), y = l(
42
51
  () => e.value > 5 && t.page <= e.value - 4
43
- ), y = n(() => {
52
+ ), c = l(() => {
44
53
  if (e.value <= 5)
45
54
  return Array.from(Array(e.value).keys()).map((a) => a + 1);
46
55
  if (t.page <= e.value / 2) {
47
- let a = Math.max(t.page - Math.floor(1.5), 1), l = 3;
48
- return a === 2 ? (a = 1, l += 1) : a === 3 && (a = 1, l += 2), Array.from(Array(l).keys()).map((i) => a + i);
56
+ let a = Math.max(t.page - Math.floor(1.5), 1), n = 3;
57
+ return a === 2 ? (a = 1, n += 1) : a === 3 && (a = 1, n += 2), Array.from(Array(n).keys()).map((i) => a + i);
49
58
  } else {
50
- let a = Math.min(t.page + Math.floor(1.5), e.value), l = 3;
51
- return a === e.value - 1 ? (a = e.value, l += 1) : a === e.value - 2 && (a = e.value, l += 2), Array.from(Array(l).keys()).map((i) => a - (l - 1) + i);
59
+ let a = Math.min(t.page + Math.floor(1.5), e.value), n = 3;
60
+ return a === e.value - 1 ? (a = e.value, n += 1) : a === e.value - 2 && (a = e.value, n += 2), Array.from(Array(n).keys()).map((i) => a - (n - 1) + i);
52
61
  }
53
62
  });
54
63
  return {
55
64
  pageCount: e,
56
- hidePagination: o,
65
+ hidePagination: s,
57
66
  previousPage: r,
58
- disabledPrevious: s,
59
- nextPage: u,
60
- disabledNext: g,
67
+ disabledPrevious: u,
68
+ nextPage: g,
69
+ disabledNext: m,
61
70
  showFirstPageWithEllipsis: p,
62
- showLastPageWithEllipsis: m,
63
- pageRange: y,
64
- url: (a) => t.urlTemplate.replace("{page}", a.toString())
71
+ showLastPageWithEllipsis: y,
72
+ pageRange: c,
73
+ url: (a) => t.urlTemplate ? t.urlTemplate.replace("{page}", a.toString()) : void 0,
74
+ emit: o
65
75
  };
66
76
  }
67
77
  });
68
78
  export {
69
- N as default
79
+ A as default
70
80
  };
71
81
  //# sourceMappingURL=NeonPagination.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NeonPagination.es.js","sources":["../../../../src/components/navigation/pagination/NeonPagination.ts?vue&type=script&src=true&lang.ts"],"sourcesContent":["import NeonButton from '@/components/user-input/button/NeonButton.vue';\nimport NeonIcon from '@/components/presentation/icon/NeonIcon.vue';\nimport { computed, defineComponent } from 'vue';\nimport { NeonFunctionalColor } from '@/model/common/color/NeonFunctionalColor';\n\n/**\n * A pagination component that displays a list of page numbers and allows the user to navigate between pages. Typically,\n * the component displays the first and last page numbers and 3 pages before and after the current page.\n */\nexport default defineComponent({\n name: 'NeonPagination',\n components: {\n NeonButton,\n NeonIcon,\n },\n props: {\n /**\n * The current page number.\n */\n page: { type: Number, required: true },\n /**\n * The URL template for the pagination links. The template should contain a '{page}' placeholder that will be\n * substituted in links with the correct page number.\n */\n urlTemplate: { type: String, required: true },\n /**\n * The number of items per page.\n */\n pageSize: { type: Number, default: 20 },\n /**\n * The total number of items.\n */\n total: { type: Number, required: true },\n /**\n * Whether to display links to the first and last pages.\n */\n displayFirstAndLast: { type: Boolean, default: false },\n /**\n * The accent color of the component.\n */\n color: { type: String as () => NeonFunctionalColor, default: () => NeonFunctionalColor.Brand },\n },\n setup(props) {\n const maxDisplayPageLinks = 5;\n const pageDisplayCount = maxDisplayPageLinks - 2;\n\n const pageCount = computed(() => Math.ceil(props.total / props.pageSize));\n const hidePagination = computed(() => pageCount.value <= 1);\n\n const previousPage = computed(() => Math.max(props.page - 1, 1));\n const disabledPrevious = computed(() => props.page === 1);\n\n const nextPage = computed(() => Math.min(props.page + 1, pageCount.value));\n const disabledNext = computed(() => props.page === pageCount.value);\n\n const showFirstPageWithEllipsis = computed(\n () => pageCount.value > maxDisplayPageLinks && props.page >= maxDisplayPageLinks,\n );\n\n const showLastPageWithEllipsis = computed(\n () => pageCount.value > maxDisplayPageLinks && props.page <= pageCount.value - (pageDisplayCount + 1),\n );\n\n const pageRange = computed(() => {\n // not enough pages to fill range, show them all\n if (pageCount.value <= maxDisplayPageLinks) {\n return Array.from(Array(pageCount.value).keys()).map((value) => value + 1);\n }\n\n // determine page range to display\n if (props.page <= pageCount.value / 2) {\n // bottom of range calculation\n let startPage = Math.max(props.page - Math.floor(pageDisplayCount / 2), 1);\n let numPages = pageDisplayCount;\n\n // when the start page would be 2 then also display 1, and if start page is 3 then also display 1 and 2 (no ellipsis)\n if (startPage === 2) {\n startPage = 1;\n numPages += 1;\n } else if (startPage === 3) {\n startPage = 1;\n numPages += 2;\n }\n\n return Array.from(Array(numPages).keys()).map((value) => startPage + value);\n } else {\n // top of range calculation\n let endPage = Math.min(props.page + Math.floor(pageDisplayCount / 2), pageCount.value);\n let numPages = pageDisplayCount;\n\n // when the end page would be pageCount - 1 then also display last page,\n // and if end page is pageCount - 2 then also display last page & second last page (no ellipsis)\n if (endPage === pageCount.value - 1) {\n endPage = pageCount.value;\n numPages += 1;\n } else if (endPage === pageCount.value - 2) {\n endPage = pageCount.value;\n numPages += 2;\n }\n\n return Array.from(Array(numPages).keys()).map((value) => endPage - (numPages - 1) + value);\n }\n });\n\n const url = (page: number) => props.urlTemplate.replace('{page}', page.toString());\n\n return {\n pageCount,\n hidePagination,\n previousPage,\n disabledPrevious,\n nextPage,\n disabledNext,\n showFirstPageWithEllipsis,\n showLastPageWithEllipsis,\n pageRange,\n url,\n };\n },\n});\n"],"names":["_sfc_main","defineComponent","NeonButton","NeonIcon","NeonFunctionalColor","props","pageCount","computed","hidePagination","previousPage","disabledPrevious","nextPage","disabledNext","showFirstPageWithEllipsis","showLastPageWithEllipsis","pageRange","value","startPage","numPages","endPage","page"],"mappings":";;;;AASA,MAAAA,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV,YAAAC;AAAA,IACA,UAAAC;AAAA,EAAA;AAAA,EAEF,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,MAAM,EAAE,MAAM,QAAQ,UAAU,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKhC,aAAa,EAAE,MAAM,QAAQ,UAAU,GAAA;AAAA;AAAA;AAAA;AAAA,IAIvC,UAAU,EAAE,MAAM,QAAQ,SAAS,GAAA;AAAA;AAAA;AAAA;AAAA,IAInC,OAAO,EAAE,MAAM,QAAQ,UAAU,GAAA;AAAA;AAAA;AAAA;AAAA,IAIjC,qBAAqB,EAAE,MAAM,SAAS,SAAS,GAAA;AAAA;AAAA;AAAA;AAAA,IAI/C,OAAO,EAAE,MAAM,QAAqC,SAAS,MAAMC,EAAoB,MAAA;AAAA,EAAM;AAAA,EAE/F,MAAMC,GAAO;AAIX,UAAMC,IAAYC,EAAS,MAAM,KAAK,KAAKF,EAAM,QAAQA,EAAM,QAAQ,CAAC,GAClEG,IAAiBD,EAAS,MAAMD,EAAU,SAAS,CAAC,GAEpDG,IAAeF,EAAS,MAAM,KAAK,IAAIF,EAAM,OAAO,GAAG,CAAC,CAAC,GACzDK,IAAmBH,EAAS,MAAMF,EAAM,SAAS,CAAC,GAElDM,IAAWJ,EAAS,MAAM,KAAK,IAAIF,EAAM,OAAO,GAAGC,EAAU,KAAK,CAAC,GACnEM,IAAeL,EAAS,MAAMF,EAAM,SAASC,EAAU,KAAK,GAE5DO,IAA4BN;AAAA,MAChC,MAAMD,EAAU,QAAQ,KAAuBD,EAAM,QAAQ;AAAA,IAAA,GAGzDS,IAA2BP;AAAA,MAC/B,MAAMD,EAAU,QAAQ,KAAuBD,EAAM,QAAQC,EAAU,QAAS;AAAA,IAAmB,GAG/FS,IAAYR,EAAS,MAAM;AAE/B,UAAID,EAAU,SAAS;AACrB,eAAO,MAAM,KAAK,MAAMA,EAAU,KAAK,EAAE,KAAA,CAAM,EAAE,IAAI,CAACU,MAAUA,IAAQ,CAAC;AAI3E,UAAIX,EAAM,QAAQC,EAAU,QAAQ,GAAG;AAErC,YAAIW,IAAY,KAAK,IAAIZ,EAAM,OAAO,KAAK,MAAM,GAAoB,GAAG,CAAC,GACrEa,IAAW;AAGf,eAAID,MAAc,KAChBA,IAAY,GACZC,KAAY,KACHD,MAAc,MACvBA,IAAY,GACZC,KAAY,IAGP,MAAM,KAAK,MAAMA,CAAQ,EAAE,MAAM,EAAE,IAAI,CAACF,MAAUC,IAAYD,CAAK;AAAA,MAC5E,OAAO;AAEL,YAAIG,IAAU,KAAK,IAAId,EAAM,OAAO,KAAK,MAAM,GAAoB,GAAGC,EAAU,KAAK,GACjFY,IAAW;AAIf,eAAIC,MAAYb,EAAU,QAAQ,KAChCa,IAAUb,EAAU,OACpBY,KAAY,KACHC,MAAYb,EAAU,QAAQ,MACvCa,IAAUb,EAAU,OACpBY,KAAY,IAGP,MAAM,KAAK,MAAMA,CAAQ,EAAE,KAAA,CAAM,EAAE,IAAI,CAACF,MAAUG,KAAWD,IAAW,KAAKF,CAAK;AAAA,MAC3F;AAAA,IACF,CAAC;AAID,WAAO;AAAA,MACL,WAAAV;AAAA,MACA,gBAAAE;AAAA,MACA,cAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,UAAAC;AAAA,MACA,cAAAC;AAAA,MACA,2BAAAC;AAAA,MACA,0BAAAC;AAAA,MACA,WAAAC;AAAA,MACA,KAZU,CAACK,MAAiBf,EAAM,YAAY,QAAQ,UAAUe,EAAK,UAAU;AAAA,IAY/E;AAAA,EAEJ;AACF,CAAC;"}
1
+ {"version":3,"file":"NeonPagination.es.js","sources":["../../../../src/components/navigation/pagination/NeonPagination.ts?vue&type=script&src=true&lang.ts"],"sourcesContent":["import NeonButton from '@/components/user-input/button/NeonButton.vue';\nimport NeonIcon from '@/components/presentation/icon/NeonIcon.vue';\nimport { computed, defineComponent } from 'vue';\nimport { NeonFunctionalColor } from '@/model/common/color/NeonFunctionalColor';\n\n/**\n * A pagination component that displays a list of page numbers and allows the user to navigate between pages. Typically,\n * the component displays the first and last page numbers and 3 pages before and after the current page.\n */\nexport default defineComponent({\n name: 'NeonPagination',\n components: {\n NeonButton,\n NeonIcon,\n },\n props: {\n /**\n * The current page number.\n */\n page: { type: Number, required: true },\n /**\n * The URL template for the pagination links. The template should contain a '{page}' placeholder that will be\n * substituted in links with the correct page number.\n */\n urlTemplate: { type: String },\n /**\n * The number of items per page.\n */\n pageSize: { type: Number, default: 20 },\n /**\n * The total number of items.\n */\n total: { type: Number, required: true },\n /**\n * Whether to display links to the first and last pages.\n */\n displayFirstAndLast: { type: Boolean, default: false },\n /**\n * The accent color of the component.\n */\n color: { type: String as () => NeonFunctionalColor, default: () => NeonFunctionalColor.Brand },\n },\n emits: [\n /**\n * Emitted when the user clicks on a page 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 setup(props, { emit }) {\n const maxDisplayPageLinks = 5;\n const pageDisplayCount = maxDisplayPageLinks - 2;\n\n const pageCount = computed(() => Math.ceil(props.total / props.pageSize));\n const hidePagination = computed(() => pageCount.value <= 1);\n\n const previousPage = computed(() => Math.max(props.page - 1, 1));\n const disabledPrevious = computed(() => props.page === 1);\n\n const nextPage = computed(() => Math.min(props.page + 1, pageCount.value));\n const disabledNext = computed(() => props.page === pageCount.value);\n\n const showFirstPageWithEllipsis = computed(\n () => pageCount.value > maxDisplayPageLinks && props.page >= maxDisplayPageLinks,\n );\n\n const showLastPageWithEllipsis = computed(\n () => pageCount.value > maxDisplayPageLinks && props.page <= pageCount.value - (pageDisplayCount + 1),\n );\n\n const pageRange = computed(() => {\n // not enough pages to fill range, show them all\n if (pageCount.value <= maxDisplayPageLinks) {\n return Array.from(Array(pageCount.value).keys()).map((value) => value + 1);\n }\n\n // determine page range to display\n if (props.page <= pageCount.value / 2) {\n // bottom of range calculation\n let startPage = Math.max(props.page - Math.floor(pageDisplayCount / 2), 1);\n let numPages = pageDisplayCount;\n\n // when the start page would be 2 then also display 1, and if start page is 3 then also display 1 and 2 (no ellipsis)\n if (startPage === 2) {\n startPage = 1;\n numPages += 1;\n } else if (startPage === 3) {\n startPage = 1;\n numPages += 2;\n }\n\n return Array.from(Array(numPages).keys()).map((value) => startPage + value);\n } else {\n // top of range calculation\n let endPage = Math.min(props.page + Math.floor(pageDisplayCount / 2), pageCount.value);\n let numPages = pageDisplayCount;\n\n // when the end page would be pageCount - 1 then also display last page,\n // and if end page is pageCount - 2 then also display last page & second last page (no ellipsis)\n if (endPage === pageCount.value - 1) {\n endPage = pageCount.value;\n numPages += 1;\n } else if (endPage === pageCount.value - 2) {\n endPage = pageCount.value;\n numPages += 2;\n }\n\n return Array.from(Array(numPages).keys()).map((value) => endPage - (numPages - 1) + value);\n }\n });\n\n const url = (page: number) =>\n props.urlTemplate ? props.urlTemplate.replace('{page}', page.toString()) : undefined;\n\n return {\n pageCount,\n hidePagination,\n previousPage,\n disabledPrevious,\n nextPage,\n disabledNext,\n showFirstPageWithEllipsis,\n showLastPageWithEllipsis,\n pageRange,\n url,\n emit,\n };\n },\n});\n"],"names":["_sfc_main","defineComponent","NeonButton","NeonIcon","NeonFunctionalColor","props","emit","pageCount","computed","hidePagination","previousPage","disabledPrevious","nextPage","disabledNext","showFirstPageWithEllipsis","showLastPageWithEllipsis","pageRange","value","startPage","numPages","endPage","page"],"mappings":";;;;AASA,MAAAA,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV,YAAAC;AAAA,IACA,UAAAC;AAAA,EAAA;AAAA,EAEF,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,MAAM,EAAE,MAAM,QAAQ,UAAU,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKhC,aAAa,EAAE,MAAM,OAAA;AAAA;AAAA;AAAA;AAAA,IAIrB,UAAU,EAAE,MAAM,QAAQ,SAAS,GAAA;AAAA;AAAA;AAAA;AAAA,IAInC,OAAO,EAAE,MAAM,QAAQ,UAAU,GAAA;AAAA;AAAA;AAAA;AAAA,IAIjC,qBAAqB,EAAE,MAAM,SAAS,SAAS,GAAA;AAAA;AAAA;AAAA;AAAA,IAI/C,OAAO,EAAE,MAAM,QAAqC,SAAS,MAAMC,EAAoB,MAAA;AAAA,EAAM;AAAA,EAE/F,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOL;AAAA,EAAA;AAAA,EAEF,MAAMC,GAAO,EAAE,MAAAC,KAAQ;AAIrB,UAAMC,IAAYC,EAAS,MAAM,KAAK,KAAKH,EAAM,QAAQA,EAAM,QAAQ,CAAC,GAClEI,IAAiBD,EAAS,MAAMD,EAAU,SAAS,CAAC,GAEpDG,IAAeF,EAAS,MAAM,KAAK,IAAIH,EAAM,OAAO,GAAG,CAAC,CAAC,GACzDM,IAAmBH,EAAS,MAAMH,EAAM,SAAS,CAAC,GAElDO,IAAWJ,EAAS,MAAM,KAAK,IAAIH,EAAM,OAAO,GAAGE,EAAU,KAAK,CAAC,GACnEM,IAAeL,EAAS,MAAMH,EAAM,SAASE,EAAU,KAAK,GAE5DO,IAA4BN;AAAA,MAChC,MAAMD,EAAU,QAAQ,KAAuBF,EAAM,QAAQ;AAAA,IAAA,GAGzDU,IAA2BP;AAAA,MAC/B,MAAMD,EAAU,QAAQ,KAAuBF,EAAM,QAAQE,EAAU,QAAS;AAAA,IAAmB,GAG/FS,IAAYR,EAAS,MAAM;AAE/B,UAAID,EAAU,SAAS;AACrB,eAAO,MAAM,KAAK,MAAMA,EAAU,KAAK,EAAE,KAAA,CAAM,EAAE,IAAI,CAACU,MAAUA,IAAQ,CAAC;AAI3E,UAAIZ,EAAM,QAAQE,EAAU,QAAQ,GAAG;AAErC,YAAIW,IAAY,KAAK,IAAIb,EAAM,OAAO,KAAK,MAAM,GAAoB,GAAG,CAAC,GACrEc,IAAW;AAGf,eAAID,MAAc,KAChBA,IAAY,GACZC,KAAY,KACHD,MAAc,MACvBA,IAAY,GACZC,KAAY,IAGP,MAAM,KAAK,MAAMA,CAAQ,EAAE,MAAM,EAAE,IAAI,CAACF,MAAUC,IAAYD,CAAK;AAAA,MAC5E,OAAO;AAEL,YAAIG,IAAU,KAAK,IAAIf,EAAM,OAAO,KAAK,MAAM,GAAoB,GAAGE,EAAU,KAAK,GACjFY,IAAW;AAIf,eAAIC,MAAYb,EAAU,QAAQ,KAChCa,IAAUb,EAAU,OACpBY,KAAY,KACHC,MAAYb,EAAU,QAAQ,MACvCa,IAAUb,EAAU,OACpBY,KAAY,IAGP,MAAM,KAAK,MAAMA,CAAQ,EAAE,KAAA,CAAM,EAAE,IAAI,CAACF,MAAUG,KAAWD,IAAW,KAAKF,CAAK;AAAA,MAC3F;AAAA,IACF,CAAC;AAKD,WAAO;AAAA,MACL,WAAAV;AAAA,MACA,gBAAAE;AAAA,MACA,cAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,UAAAC;AAAA,MACA,cAAAC;AAAA,MACA,2BAAAC;AAAA,MACA,0BAAAC;AAAA,MACA,WAAAC;AAAA,MACA,KAbU,CAACK,MACXhB,EAAM,cAAcA,EAAM,YAAY,QAAQ,UAAUgB,EAAK,SAAA,CAAU,IAAI;AAAA,MAa3E,MAAAf;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;"}
@@ -1,2 +1,2 @@
1
- "use strict";const a=require("./NeonPagination.cjs.js"),e=require("vue"),i=require("../../../_virtual/_plugin-vue_export-helper.cjs.js"),s={class:"neon-pagination__page-links"},r={key:0,class:"neon-pagination__link--selected"};function c(n,p,u,g,h,k){const o=e.resolveComponent("neon-button"),l=e.resolveComponent("neon-icon");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([[{"neon-pagination--empty":n.hidePagination},`neon-pagination--${n.color}`],"neon-pagination"])},[n.displayFirstAndLast?(e.openBlock(),e.createBlock(o,{key:0,disabled:n.disabledPrevious,href:n.disabledPrevious?void 0:n.url(1),"button-style":"outline",class:"neon-pagination__nav-link neon-pagination__first",color:"high-contrast",icon:"first-page"},null,8,["disabled","href"])):e.createCommentVNode("",!0),e.createVNode(o,{disabled:n.disabledPrevious,href:n.disabledPrevious?void 0:n.url(n.previousPage),"button-style":"outline",class:"neon-pagination__nav-link neon-pagination__previous",color:"high-contrast",icon:"arrow-left-1"},null,8,["disabled","href"]),e.createElementVNode("div",s,[n.showFirstPageWithEllipsis?(e.openBlock(),e.createBlock(o,{key:0,href:n.url(1),"button-style":"text",class:"neon-pagination__link",color:"high-contrast",label:"1",transparent:""},null,8,["href"])):e.createCommentVNode("",!0),n.showFirstPageWithEllipsis?(e.openBlock(),e.createBlock(l,{key:1,class:"neon-pagination__less",color:"low-contrast",name:"ellipsis"})):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.pageRange,t=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:t},[n.page===t?(e.openBlock(),e.createElementBlock("span",r,e.toDisplayString(t),1)):(e.openBlock(),e.createBlock(o,{key:1,href:n.url(t),label:`${t}`,"button-style":"text",class:"neon-pagination__link",color:"high-contrast",transparent:""},null,8,["href","label"]))],64))),128)),n.showLastPageWithEllipsis?(e.openBlock(),e.createBlock(l,{key:2,class:"neon-pagination__more",color:"low-contrast",name:"ellipsis"})):e.createCommentVNode("",!0),n.showLastPageWithEllipsis?(e.openBlock(),e.createBlock(o,{key:3,href:n.url(n.pageCount),label:`${n.pageCount}`,"button-style":"text",class:"neon-pagination__link",color:"high-contrast",transparent:""},null,8,["href","label"])):e.createCommentVNode("",!0)]),e.createVNode(o,{disabled:n.disabledNext,href:n.disabledNext?void 0:n.url(n.nextPage),"button-style":"outline",class:"neon-pagination__nav-link neon-pagination__next",color:"high-contrast",icon:"arrow-right-1"},null,8,["disabled","href"]),n.displayFirstAndLast?(e.openBlock(),e.createBlock(o,{key:1,disabled:n.disabledNext,href:n.disabledNext?void 0:n.url(n.pageCount),"button-style":"outline",class:"neon-pagination__nav-link neon-pagination__last",color:"high-contrast",icon:"last-page"},null,8,["disabled","href"])):e.createCommentVNode("",!0)],2)}const d=i(a,[["render",c]]);module.exports=d;
1
+ "use strict";const a=require("./NeonPagination.cjs.js"),n=require("vue"),s=require("../../../_virtual/_plugin-vue_export-helper.cjs.js"),r={class:"neon-pagination__page-links"},p={key:0,class:"neon-pagination__link--selected"};function u(e,o,g,c,k,h){const l=n.resolveComponent("neon-button"),i=n.resolveComponent("neon-icon");return n.openBlock(),n.createElementBlock("div",{class:n.normalizeClass([[{"neon-pagination--empty":e.hidePagination},`neon-pagination--${e.color}`],"neon-pagination"])},[e.displayFirstAndLast?(n.openBlock(),n.createBlock(l,{key:0,disabled:e.disabledPrevious,href:e.disabledPrevious?void 0:e.url(1),"button-style":"outline",class:"neon-pagination__nav-link neon-pagination__first",color:"high-contrast",icon:"first-page",onClick:o[0]||(o[0]=t=>e.emit("page-change",1))},null,8,["disabled","href"])):n.createCommentVNode("",!0),n.createVNode(l,{disabled:e.disabledPrevious,href:e.disabledPrevious?void 0:e.url(e.previousPage),"button-style":"outline",class:"neon-pagination__nav-link neon-pagination__previous",color:"high-contrast",icon:"chevron-left",onClick:o[1]||(o[1]=t=>e.emit("page-change",e.previousPage))},null,8,["disabled","href"]),n.createElementVNode("div",r,[e.showFirstPageWithEllipsis?(n.openBlock(),n.createBlock(l,{key:0,href:e.url(1),"button-style":"text",class:"neon-pagination__link",color:"high-contrast",label:"1",transparent:"",onClick:o[2]||(o[2]=t=>e.emit("page-change",1))},null,8,["href"])):n.createCommentVNode("",!0),e.showFirstPageWithEllipsis?(n.openBlock(),n.createBlock(i,{key:1,class:"neon-pagination__less",color:"low-contrast",name:"ellipsis"})):n.createCommentVNode("",!0),(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(e.pageRange,t=>(n.openBlock(),n.createElementBlock(n.Fragment,{key:t},[e.page===t?(n.openBlock(),n.createElementBlock("span",p,n.toDisplayString(t),1)):(n.openBlock(),n.createBlock(l,{key:1,href:e.url(t),label:`${t}`,"button-style":"text",class:"neon-pagination__link",color:"high-contrast",transparent:"",onClick:m=>e.emit("page-change",t)},null,8,["href","label","onClick"]))],64))),128)),e.showLastPageWithEllipsis?(n.openBlock(),n.createBlock(i,{key:2,class:"neon-pagination__more",color:"low-contrast",name:"ellipsis"})):n.createCommentVNode("",!0),e.showLastPageWithEllipsis?(n.openBlock(),n.createBlock(l,{key:3,href:e.url(e.pageCount),label:`${e.pageCount}`,"button-style":"text",class:"neon-pagination__link",color:"high-contrast",transparent:"",onClick:o[3]||(o[3]=t=>e.emit("page-change",e.pageCount))},null,8,["href","label"])):n.createCommentVNode("",!0)]),n.createVNode(l,{disabled:e.disabledNext,href:e.disabledNext?void 0:e.url(e.nextPage),"button-style":"outline",class:"neon-pagination__nav-link neon-pagination__next",color:"high-contrast",icon:"chevron-right",onClick:o[4]||(o[4]=t=>e.emit("page-change",e.nextPage))},null,8,["disabled","href"]),e.displayFirstAndLast?(n.openBlock(),n.createBlock(l,{key:1,disabled:e.disabledNext,href:e.disabledNext?void 0:e.url(e.pageCount),"button-style":"outline",class:"neon-pagination__nav-link neon-pagination__last",color:"high-contrast",icon:"last-page",onClick:o[5]||(o[5]=t=>e.emit("page-change",e.pageCount))},null,8,["disabled","href"])):n.createCommentVNode("",!0)],2)}const d=s(a,[["render",u]]);module.exports=d;
2
2
  //# sourceMappingURL=NeonPagination.vue.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NeonPagination.vue.cjs.js","sources":["../../../../src/components/navigation/pagination/NeonPagination.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n {\n 'neon-pagination--empty': hidePagination,\n },\n `neon-pagination--${color}`,\n ]\"\n class=\"neon-pagination\"\n >\n <neon-button\n v-if=\"displayFirstAndLast\"\n :disabled=\"disabledPrevious\"\n :href=\"!disabledPrevious ? url(1) : undefined\"\n button-style=\"outline\"\n class=\"neon-pagination__nav-link neon-pagination__first\"\n color=\"high-contrast\"\n icon=\"first-page\"\n />\n <neon-button\n :disabled=\"disabledPrevious\"\n :href=\"!disabledPrevious ? url(previousPage) : undefined\"\n button-style=\"outline\"\n class=\"neon-pagination__nav-link neon-pagination__previous\"\n color=\"high-contrast\"\n icon=\"arrow-left-1\"\n />\n <div class=\"neon-pagination__page-links\">\n <neon-button\n v-if=\"showFirstPageWithEllipsis\"\n :href=\"url(1)\"\n button-style=\"text\"\n class=\"neon-pagination__link\"\n color=\"high-contrast\"\n label=\"1\"\n transparent\n />\n <neon-icon v-if=\"showFirstPageWithEllipsis\" class=\"neon-pagination__less\" color=\"low-contrast\" name=\"ellipsis\" />\n <!-- eslint-disable-next-line -->\n <template v-for=\"pageInRange in pageRange\" :key=\"pageInRange\">\n <span v-if=\"page === pageInRange\" class=\"neon-pagination__link--selected\">\n {{ pageInRange }}\n </span>\n <neon-button\n v-else\n :href=\"url(pageInRange)\"\n :label=\"`${pageInRange}`\"\n button-style=\"text\"\n class=\"neon-pagination__link\"\n color=\"high-contrast\"\n transparent\n />\n </template>\n <neon-icon v-if=\"showLastPageWithEllipsis\" class=\"neon-pagination__more\" color=\"low-contrast\" name=\"ellipsis\" />\n <neon-button\n v-if=\"showLastPageWithEllipsis\"\n :href=\"url(pageCount)\"\n :label=\"`${pageCount}`\"\n button-style=\"text\"\n class=\"neon-pagination__link\"\n color=\"high-contrast\"\n transparent\n />\n </div>\n <neon-button\n :disabled=\"disabledNext\"\n :href=\"!disabledNext ? url(nextPage) : undefined\"\n button-style=\"outline\"\n class=\"neon-pagination__nav-link neon-pagination__next\"\n color=\"high-contrast\"\n icon=\"arrow-right-1\"\n />\n <neon-button\n v-if=\"displayFirstAndLast\"\n :disabled=\"disabledNext\"\n :href=\"!disabledNext ? url(pageCount) : undefined\"\n button-style=\"outline\"\n class=\"neon-pagination__nav-link neon-pagination__last\"\n color=\"high-contrast\"\n icon=\"last-page\"\n />\n </div>\n</template>\n\n<script lang=\"ts\" src=\"./NeonPagination.ts\"></script>\n"],"names":["_hoisted_1","_createElementBlock","_normalizeClass","_ctx","_createBlock","_component_neon_button","_createVNode","_createElementVNode","_component_neon_icon","_Fragment","_renderList","pageInRange","_hoisted_2","_toDisplayString"],"mappings":"yIA2BSA,EAAA,CAAA,MAAM,6BAA6B,WAaF,MAAM,4JAvC9CC,EAAAA,mBAgFM,MAAA,CA/EH,MAAKC,EAAAA,eAAA,CAAA,2BAA8CC,EAAA,oCAAmDA,EAAA,KAAK,IAMtG,iBAAiB,CAAA,IAGfA,EAAA,mCADRC,EAAAA,YAQEC,EAAA,OANC,SAAUF,EAAA,iBACV,KAAOA,EAAA,iBAA4B,OAATA,EAAA,OAC3B,eAAa,UACb,MAAM,mDACN,MAAM,gBACN,KAAK,uEAEPG,EAAAA,YAOED,EAAA,CANC,SAAUF,EAAA,iBACV,KAAOA,EAAA,iBAAuC,OAApBA,MAAIA,EAAA,YAAY,EAC3C,eAAa,UACb,MAAM,sDACN,MAAM,gBACN,KAAK,4CAEPI,EAAAA,mBAoCM,MApCNP,EAoCM,CAlCIG,EAAA,yCADRC,EAAAA,YAQEC,EAAA,OANC,KAAMF,EAAA,IAAG,CAAA,EACV,eAAa,OACb,MAAM,wBACN,MAAM,gBACN,MAAM,IACN,YAAA,kDAEeA,EAAA,yCAAjBC,EAAAA,YAAiHI,EAAA,OAArE,MAAM,wBAAwB,MAAM,eAAe,KAAK,2DAEpGP,EAAAA,mBAaWQ,EAAAA,SAAA,KAAAC,EAAAA,WAbqBP,EAAA,UAAfQ,uDAAgCA,GAAW,CAC9CR,EAAA,OAASQ,iBAArBV,EAAAA,mBAEO,OAFPW,EAEOC,kBADFF,CAAW,EAAA,CAAA,kBAEhBP,EAAAA,YAQEC,EAAA,OANC,KAAMF,EAAA,IAAIQ,CAAW,EACrB,SAAUA,CAAW,GACtB,eAAa,OACb,MAAM,wBACN,MAAM,gBACN,YAAA,2CAGaR,EAAA,wCAAjBC,EAAAA,YAAgHI,EAAA,OAArE,MAAM,wBAAwB,MAAM,eAAe,KAAK,0CAE3FL,EAAA,wCADRC,EAAAA,YAQEC,EAAA,OANC,KAAMF,EAAA,IAAIA,EAAA,SAAS,EACnB,SAAUA,EAAA,SAAS,GACpB,eAAa,OACb,MAAM,wBACN,MAAM,gBACN,YAAA,4DAGJG,EAAAA,YAOED,EAAA,CANC,SAAUF,EAAA,aACV,KAAOA,EAAA,aAA+B,OAAhBA,MAAIA,EAAA,QAAQ,EACnC,eAAa,UACb,MAAM,kDACN,MAAM,gBACN,KAAK,6CAGCA,EAAA,mCADRC,EAAAA,YAQEC,EAAA,OANC,SAAUF,EAAA,aACV,KAAOA,EAAA,aAAgC,OAAjBA,MAAIA,EAAA,SAAS,EACpC,eAAa,UACb,MAAM,kDACN,MAAM,gBACN,KAAK"}
1
+ {"version":3,"file":"NeonPagination.vue.cjs.js","sources":["../../../../src/components/navigation/pagination/NeonPagination.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n {\n 'neon-pagination--empty': hidePagination,\n },\n `neon-pagination--${color}`,\n ]\"\n class=\"neon-pagination\"\n >\n <neon-button\n v-if=\"displayFirstAndLast\"\n :disabled=\"disabledPrevious\"\n :href=\"!disabledPrevious ? url(1) : undefined\"\n button-style=\"outline\"\n class=\"neon-pagination__nav-link neon-pagination__first\"\n color=\"high-contrast\"\n icon=\"first-page\"\n @click=\"emit('page-change', 1)\"\n />\n <neon-button\n :disabled=\"disabledPrevious\"\n :href=\"!disabledPrevious ? url(previousPage) : undefined\"\n button-style=\"outline\"\n class=\"neon-pagination__nav-link neon-pagination__previous\"\n color=\"high-contrast\"\n icon=\"chevron-left\"\n @click=\"emit('page-change', previousPage)\"\n />\n <div class=\"neon-pagination__page-links\">\n <neon-button\n v-if=\"showFirstPageWithEllipsis\"\n :href=\"url(1)\"\n button-style=\"text\"\n class=\"neon-pagination__link\"\n color=\"high-contrast\"\n label=\"1\"\n transparent\n @click=\"emit('page-change', 1)\"\n />\n <neon-icon v-if=\"showFirstPageWithEllipsis\" class=\"neon-pagination__less\" color=\"low-contrast\" name=\"ellipsis\" />\n <!-- eslint-disable-next-line -->\n <template v-for=\"pageInRange in pageRange\" :key=\"pageInRange\">\n <span v-if=\"page === pageInRange\" class=\"neon-pagination__link--selected\">\n {{ pageInRange }}\n </span>\n <neon-button\n v-else\n :href=\"url(pageInRange)\"\n :label=\"`${pageInRange}`\"\n button-style=\"text\"\n class=\"neon-pagination__link\"\n color=\"high-contrast\"\n transparent\n @click=\"emit('page-change', pageInRange)\"\n />\n </template>\n <neon-icon v-if=\"showLastPageWithEllipsis\" class=\"neon-pagination__more\" color=\"low-contrast\" name=\"ellipsis\" />\n <neon-button\n v-if=\"showLastPageWithEllipsis\"\n :href=\"url(pageCount)\"\n :label=\"`${pageCount}`\"\n button-style=\"text\"\n class=\"neon-pagination__link\"\n color=\"high-contrast\"\n transparent\n @click=\"emit('page-change', pageCount)\"\n />\n </div>\n <neon-button\n :disabled=\"disabledNext\"\n :href=\"!disabledNext ? url(nextPage) : undefined\"\n button-style=\"outline\"\n class=\"neon-pagination__nav-link neon-pagination__next\"\n color=\"high-contrast\"\n icon=\"chevron-right\"\n @click=\"emit('page-change', nextPage)\"\n />\n <neon-button\n v-if=\"displayFirstAndLast\"\n :disabled=\"disabledNext\"\n :href=\"!disabledNext ? url(pageCount) : undefined\"\n button-style=\"outline\"\n class=\"neon-pagination__nav-link neon-pagination__last\"\n color=\"high-contrast\"\n icon=\"last-page\"\n @click=\"emit('page-change', pageCount)\"\n />\n </div>\n</template>\n\n<script lang=\"ts\" src=\"./NeonPagination.ts\"></script>\n"],"names":["_hoisted_1","_createElementBlock","_normalizeClass","_ctx","_createBlock","_component_neon_button","_createVNode","_cache","$event","_createElementVNode","_component_neon_icon","_Fragment","_renderList","pageInRange","_hoisted_2","_toDisplayString"],"mappings":"yIA6BSA,EAAA,CAAA,MAAM,6BAA6B,WAcF,MAAM,4JA1C9CC,EAAAA,mBAuFM,MAAA,CAtFH,MAAKC,EAAAA,eAAA,CAAA,2BAA8CC,EAAA,oCAAmDA,EAAA,KAAK,IAMtG,iBAAiB,CAAA,IAGfA,EAAA,mCADRC,EAAAA,YASEC,EAAA,OAPC,SAAUF,EAAA,iBACV,KAAOA,EAAA,iBAA4B,OAATA,EAAA,OAC3B,eAAa,UACb,MAAM,mDACN,MAAM,gBACN,KAAK,aACJ,uBAAOA,EAAA,KAAI,cAAA,CAAA,6DAEdG,EAAAA,YAQED,EAAA,CAPC,SAAUF,EAAA,iBACV,KAAOA,EAAA,iBAAuC,OAApBA,MAAIA,EAAA,YAAY,EAC3C,eAAa,UACb,MAAM,sDACN,MAAM,gBACN,KAAK,eACJ,QAAKI,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAAEL,EAAA,KAAI,cAAgBA,EAAA,YAAY,gCAE1CM,EAAAA,mBAuCM,MAvCNT,EAuCM,CArCIG,EAAA,yCADRC,EAAAA,YASEC,EAAA,OAPC,KAAMF,EAAA,IAAG,CAAA,EACV,eAAa,OACb,MAAM,wBACN,MAAM,gBACN,MAAM,IACN,YAAA,GACC,uBAAOA,EAAA,KAAI,cAAA,CAAA,kDAEGA,EAAA,yCAAjBC,EAAAA,YAAiHM,EAAA,OAArE,MAAM,wBAAwB,MAAM,eAAe,KAAK,2DAEpGT,EAAAA,mBAcWU,EAAAA,SAAA,KAAAC,EAAAA,WAdqBT,EAAA,UAAfU,uDAAgCA,GAAW,CAC9CV,EAAA,OAASU,iBAArBZ,EAAAA,mBAEO,OAFPa,EAEOC,kBADFF,CAAW,EAAA,CAAA,kBAEhBT,EAAAA,YASEC,EAAA,OAPC,KAAMF,EAAA,IAAIU,CAAW,EACrB,SAAUA,CAAW,GACtB,eAAa,OACb,MAAM,wBACN,MAAM,gBACN,YAAA,GACC,QAAKL,GAAEL,EAAA,KAAI,cAAgBU,CAAW,oDAG1BV,EAAA,wCAAjBC,EAAAA,YAAgHM,EAAA,OAArE,MAAM,wBAAwB,MAAM,eAAe,KAAK,0CAE3FP,EAAA,wCADRC,EAAAA,YASEC,EAAA,OAPC,KAAMF,EAAA,IAAIA,EAAA,SAAS,EACnB,SAAUA,EAAA,SAAS,GACpB,eAAa,OACb,MAAM,wBACN,MAAM,gBACN,YAAA,GACC,QAAKI,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAAEL,EAAA,KAAI,cAAgBA,EAAA,SAAS,4DAGzCG,EAAAA,YAQED,EAAA,CAPC,SAAUF,EAAA,aACV,KAAOA,EAAA,aAA+B,OAAhBA,MAAIA,EAAA,QAAQ,EACnC,eAAa,UACb,MAAM,kDACN,MAAM,gBACN,KAAK,gBACJ,QAAKI,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAAEL,EAAA,KAAI,cAAgBA,EAAA,QAAQ,gCAG9BA,EAAA,mCADRC,EAAAA,YASEC,EAAA,OAPC,SAAUF,EAAA,aACV,KAAOA,EAAA,aAAgC,OAAjBA,MAAIA,EAAA,SAAS,EACpC,eAAa,UACb,MAAM,kDACN,MAAM,gBACN,KAAK,YACJ,QAAKI,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAAEL,EAAA,KAAI,cAAgBA,EAAA,SAAS"}
@@ -1,13 +1,13 @@
1
- import p from "./NeonPagination.es.js";
2
- import { resolveComponent as r, openBlock as e, createElementBlock as t, normalizeClass as h, createBlock as i, createCommentVNode as a, createVNode as d, createElementVNode as g, Fragment as u, renderList as b, toDisplayString as c } from "vue";
3
- import f from "../../../_virtual/_plugin-vue_export-helper.es.js";
4
- const k = { class: "neon-pagination__page-links" }, m = {
1
+ import g from "./NeonPagination.es.js";
2
+ import { resolveComponent as p, openBlock as i, createElementBlock as s, normalizeClass as h, createBlock as a, createCommentVNode as t, createVNode as d, createElementVNode as b, Fragment as u, renderList as f, toDisplayString as k } from "vue";
3
+ import m from "../../../_virtual/_plugin-vue_export-helper.es.js";
4
+ const v = { class: "neon-pagination__page-links" }, y = {
5
5
  key: 0,
6
6
  class: "neon-pagination__link--selected"
7
7
  };
8
- function y(n, _, v, P, w, N) {
9
- const o = r("neon-button"), s = r("neon-icon");
10
- return e(), t("div", {
8
+ function C(n, e, P, $, c, N) {
9
+ const l = p("neon-button"), r = p("neon-icon");
10
+ return i(), s("div", {
11
11
  class: h([[
12
12
  {
13
13
  "neon-pagination--empty": n.hidePagination
@@ -15,87 +15,94 @@ function y(n, _, v, P, w, N) {
15
15
  `neon-pagination--${n.color}`
16
16
  ], "neon-pagination"])
17
17
  }, [
18
- n.displayFirstAndLast ? (e(), i(o, {
18
+ n.displayFirstAndLast ? (i(), a(l, {
19
19
  key: 0,
20
20
  disabled: n.disabledPrevious,
21
21
  href: n.disabledPrevious ? void 0 : n.url(1),
22
22
  "button-style": "outline",
23
23
  class: "neon-pagination__nav-link neon-pagination__first",
24
24
  color: "high-contrast",
25
- icon: "first-page"
26
- }, null, 8, ["disabled", "href"])) : a("", !0),
27
- d(o, {
25
+ icon: "first-page",
26
+ onClick: e[0] || (e[0] = (o) => n.emit("page-change", 1))
27
+ }, null, 8, ["disabled", "href"])) : t("", !0),
28
+ d(l, {
28
29
  disabled: n.disabledPrevious,
29
30
  href: n.disabledPrevious ? void 0 : n.url(n.previousPage),
30
31
  "button-style": "outline",
31
32
  class: "neon-pagination__nav-link neon-pagination__previous",
32
33
  color: "high-contrast",
33
- icon: "arrow-left-1"
34
+ icon: "chevron-left",
35
+ onClick: e[1] || (e[1] = (o) => n.emit("page-change", n.previousPage))
34
36
  }, null, 8, ["disabled", "href"]),
35
- g("div", k, [
36
- n.showFirstPageWithEllipsis ? (e(), i(o, {
37
+ b("div", v, [
38
+ n.showFirstPageWithEllipsis ? (i(), a(l, {
37
39
  key: 0,
38
40
  href: n.url(1),
39
41
  "button-style": "text",
40
42
  class: "neon-pagination__link",
41
43
  color: "high-contrast",
42
44
  label: "1",
43
- transparent: ""
44
- }, null, 8, ["href"])) : a("", !0),
45
- n.showFirstPageWithEllipsis ? (e(), i(s, {
45
+ transparent: "",
46
+ onClick: e[2] || (e[2] = (o) => n.emit("page-change", 1))
47
+ }, null, 8, ["href"])) : t("", !0),
48
+ n.showFirstPageWithEllipsis ? (i(), a(r, {
46
49
  key: 1,
47
50
  class: "neon-pagination__less",
48
51
  color: "low-contrast",
49
52
  name: "ellipsis"
50
- })) : a("", !0),
51
- (e(!0), t(u, null, b(n.pageRange, (l) => (e(), t(u, { key: l }, [
52
- n.page === l ? (e(), t("span", m, c(l), 1)) : (e(), i(o, {
53
+ })) : t("", !0),
54
+ (i(!0), s(u, null, f(n.pageRange, (o) => (i(), s(u, { key: o }, [
55
+ n.page === o ? (i(), s("span", y, k(o), 1)) : (i(), a(l, {
53
56
  key: 1,
54
- href: n.url(l),
55
- label: `${l}`,
57
+ href: n.url(o),
58
+ label: `${o}`,
56
59
  "button-style": "text",
57
60
  class: "neon-pagination__link",
58
61
  color: "high-contrast",
59
- transparent: ""
60
- }, null, 8, ["href", "label"]))
62
+ transparent: "",
63
+ onClick: (w) => n.emit("page-change", o)
64
+ }, null, 8, ["href", "label", "onClick"]))
61
65
  ], 64))), 128)),
62
- n.showLastPageWithEllipsis ? (e(), i(s, {
66
+ n.showLastPageWithEllipsis ? (i(), a(r, {
63
67
  key: 2,
64
68
  class: "neon-pagination__more",
65
69
  color: "low-contrast",
66
70
  name: "ellipsis"
67
- })) : a("", !0),
68
- n.showLastPageWithEllipsis ? (e(), i(o, {
71
+ })) : t("", !0),
72
+ n.showLastPageWithEllipsis ? (i(), a(l, {
69
73
  key: 3,
70
74
  href: n.url(n.pageCount),
71
75
  label: `${n.pageCount}`,
72
76
  "button-style": "text",
73
77
  class: "neon-pagination__link",
74
78
  color: "high-contrast",
75
- transparent: ""
76
- }, null, 8, ["href", "label"])) : a("", !0)
79
+ transparent: "",
80
+ onClick: e[3] || (e[3] = (o) => n.emit("page-change", n.pageCount))
81
+ }, null, 8, ["href", "label"])) : t("", !0)
77
82
  ]),
78
- d(o, {
83
+ d(l, {
79
84
  disabled: n.disabledNext,
80
85
  href: n.disabledNext ? void 0 : n.url(n.nextPage),
81
86
  "button-style": "outline",
82
87
  class: "neon-pagination__nav-link neon-pagination__next",
83
88
  color: "high-contrast",
84
- icon: "arrow-right-1"
89
+ icon: "chevron-right",
90
+ onClick: e[4] || (e[4] = (o) => n.emit("page-change", n.nextPage))
85
91
  }, null, 8, ["disabled", "href"]),
86
- n.displayFirstAndLast ? (e(), i(o, {
92
+ n.displayFirstAndLast ? (i(), a(l, {
87
93
  key: 1,
88
94
  disabled: n.disabledNext,
89
95
  href: n.disabledNext ? void 0 : n.url(n.pageCount),
90
96
  "button-style": "outline",
91
97
  class: "neon-pagination__nav-link neon-pagination__last",
92
98
  color: "high-contrast",
93
- icon: "last-page"
94
- }, null, 8, ["disabled", "href"])) : a("", !0)
99
+ icon: "last-page",
100
+ onClick: e[5] || (e[5] = (o) => n.emit("page-change", n.pageCount))
101
+ }, null, 8, ["disabled", "href"])) : t("", !0)
95
102
  ], 2);
96
103
  }
97
- const F = /* @__PURE__ */ f(p, [["render", y]]);
104
+ const W = /* @__PURE__ */ m(g, [["render", C]]);
98
105
  export {
99
- F as default
106
+ W as default
100
107
  };
101
108
  //# sourceMappingURL=NeonPagination.vue.es.js.map