{"version":3,"file":"MapPage-DXV40zWN.mjs","names":[],"sources":["../src/components/pages/MapPage.vue","../src/components/pages/MapPage.vue"],"sourcesContent":["<template>\n    <section class=\"page-box map-page\">\n        <component :is=\"titleTag\">\n            {{ t(\"Site map\") }}\n        </component>\n        <nav :aria-label=\"t('Site menu')\" class=\"d-flex flex-column align-items-center\">\n            <ul class=\"my-1\">\n                <template v-for=\"linkItem in siteMap\" :key=\"linkItem.id\">\n                    <li\n                        v-if=\"linkItem.condition\"\n                        :id=\"linkItem.id\"\n                        class=\"my-1\"\n                    >\n                        <router-link class=\"text-dark\" :to=\"linkItem.href\">\n                            {{\n                                linkItem.title\n                            }}\n                        </router-link>\n                        <ul v-if=\"linkItem.links\">\n                            <template v-for=\"subLink in linkItem.links\" :key=\"subLink.id\">\n                                <li\n                                    v-if=\"subLink.condition\"\n                                    :id=\"subLink.id\"\n                                    class=\"my-1\"\n                                >\n                                    <router-link class=\"text-dark\" :to=\"subLink.href\">\n                                        {{\n                                            subLink.title\n                                        }}\n                                    </router-link>\n                                </li>\n                            </template>\n                        </ul>\n                    </li>\n                </template>\n            </ul>\n        </nav>\n    </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { useAuthStore } from \"../../stores/AuthStore\";\nimport { useFilterStore } from \"../../stores/FilterStore\";\nimport { useGeneralStore } from \"../../stores/GeneralStore\";\nimport { state } from \"../../stores/ParamSdkStore\";\nimport { computed, onMounted, ref } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\ninterface LinkMapSite {\n    id: string;\n    title: string;\n    href: string;\n    condition: boolean;\n    links: Array<{\n        id: string;\n        title: string;\n        href: string;\n        condition: boolean;\n    }>;\n}\n\n\n//Props\nconst props = defineProps({\n    externLinks: { default: () => [], type: Array as () => Array<LinkMapSite> },\n    titleTag: { default: \"h1\", type: String },\n});\n\n//Data\nconst studioAuthorized = ref(true);\nconst radioAuthorized = ref(true);\n\n\n//Composables\nconst { t } = useI18n();\nconst authStore = useAuthStore();\nconst filterStore = useFilterStore();\nconst generalStore = useGeneralStore();\n\n\n//Computed\nconst isAuthenticated = computed(() =>undefined !== authStore.authProfile?.userId);\nconst isStudioAuth = computed(() =>(authStore.isRoleLive || authStore.isRoleContribution) && studioAuthorized.value);\nconst isPodcastmaker = computed(() =>state.generalParameters.podcastmaker);\nconst organisationsAvailable = computed(() =>authStore.authProfile?.organisations ?? []);\nconst siteMap = computed(() =>[\n    ...contentSection.value,\n    ...props.externLinks,\n    ...userLinks.value,\n    ...adminSection.value,\n    ...footerLinks.value,\n]);\nconst contentSection = computed(() =>[\n    {\n        title: t(\"Home\"),\n        id: \"link-page-home\",\n        href: \"/main/pub/home\",\n        condition: true,\n    },\n    {\n        title: isPodcastmaker.value? t(\"Live\"): t(\"Radio & Live\"),\n        id: \"link-page-lives\",\n        href: \"/main/pub/lives\",\n        condition: true,\n    },\n    {\n        title: t(\"Podcasts\"),\n        id: \"link-page-podcasts\",\n        href: \"/main/pub/podcasts\",\n        condition: true,\n    },\n    {\n        title: t(\"Emissions\"),\n        id: \"link-page-emissions\",\n        href: \"/main/pub/emissions\",\n        condition: true,\n    },\n    {\n        title: t(\"Speakers\"),\n        id: \"link-page-participants\",\n        href: \"/main/pub/participants\",\n        condition: true,\n    },\n    {\n        title: t(\"Playlists\"),\n        id: \"link-page-playlists\",\n        href: \"/main/pub/playlists\",\n        condition: true,\n    },\n    {\n        title: t(\"Productors\"),\n        id: \"link-page-productors\",\n        href: \"/main/pub/productors\",\n        condition:!isPodcastmaker.value && (!filterStore.filterOrgaId || generalStore.platformEducation),\n    },\n]);\nconst userLinks = computed(() =>[\n    {\n        title: t(\"Edit my profile\"),\n        href: { name: 'my-profile' },\n        id: \"link-page-profile\",\n        condition: !isPodcastmaker.value && isAuthenticated.value,\n    },\n    {\n        title: t(\"Edit my organisation\"),\n        href: \"/main/priv/edit/organisation\",\n        id: \"link-page-organisation\",\n        condition:\n            !isPodcastmaker.value &&\n            isAuthenticated.value &&\n            (authStore.isRoleOrganisation || 1 < organisationsAvailable.value.length),\n    },\n]);\nconst footerLinks = computed(() =>{\n    if (isPodcastmaker.value || authStore.isGarRole) {\n        return [];\n    }\n    return [\n        {\n            title: t(\"Contact\"),\n            href: \"/main/pub/contact\",\n            id: \"link-page-contact\",\n            condition: true,\n        },\n        {\n            title: t(\"Term of use\"),\n            href: \"/main/pub/cgu\",\n            id: \"link-page-cgu\",\n            condition: true,\n        },\n        {\n            title: t(\"Used libraries\"),\n            href: \"/main/pub/libraries\",\n            id: \"link-page-libraries\",\n            condition: true,\n        },\n    ];\n});\nconst adminSection = computed(() =>{\n    if (isPodcastmaker.value) {\n        return [];\n    }\n    return [\n        {\n            title: t(\"Welcome in the Backoffice\"),\n            href: \"/main/priv/backoffice\",\n            id: \"link-page-backoffice\",\n            condition: isAuthenticated.value,\n            links: [\n                {\n                    title: t(\"Upload\"),\n                    href: \"/main/priv/upload\",\n                    id: \"link-page-upload\",\n                    condition: authStore.isRoleContribution,\n                },\n                {\n                    title: t(\"Media library\"),\n                    href: \"/main/priv/media\",\n                    id: \"link-page-media\",\n                    condition: isStudioAuth.value,\n                },\n                {\n                    title: t(\"Studio\"),\n                    href: \"/main/priv/records\",\n                    id: \"link-page-records\",\n                    condition: isStudioAuth.value,\n                },\n                {\n                    title: t(\"Radio planning\"),\n                    href: \"/main/priv/radio/\",\n                    id: \"link-page-radio\",\n                    condition: authStore.isRoleRadio && radioAuthorized.value,\n                },\n                {\n                    title: t(\"Edit / Delete episodes\"),\n                    href: \"/main/pub/podcasts\",\n                    id: \"link-page-edit-podcast\",\n                    condition: true,\n                },\n                {\n                    title: t(\"Handle my players\"),\n                    href: \"/main/priv/players\",\n                    id: \"link-page-players\",\n                    condition: authStore.isRoleEditor,\n                },\n                {\n                    title: t(\"Monetization\"),\n                    href: \"/main/priv/edit/adserv\",\n                    id: \"link-page-adserv\",\n                    condition: authStore.isRoleAdvertising && !generalStore.platformEducation,\n                },\n                {\n                    title: t(\"Handle FTP\"),\n                    href: \"/main/priv/edit/ftp\",\n                    id: \"link-page-ftp\",\n                    condition: authStore.isRoleEditor,\n                },\n                {\n                    title: t(\"Topics and rubrics\"),\n                    href: \"/main/priv/edit/rubrics\",\n                    id: \"link-page-rubrics\",\n                    condition: authStore.isRoleEditor,\n                },\n                {\n                    title: t(\"Handle RSS\"),\n                    href: \"/main/priv/edit/rss\",\n                    id: \"link-page-rss\",\n                    condition: authStore.isRoleEditor,\n                },\n                {\n                    title: t(\"Handle my participants\"),\n                    href: \"/main/priv/participants/handle\",\n                    id: \"link-page-edit-participants\",\n                    condition: authStore.isRoleEditor,\n                },\n                {\n                    title: t(\"Handle comments\"),\n                    href: \"/main/priv/comments\",\n                    id: \"link-page-comments\",\n                    condition: authStore.isRoleComments,\n                },\n                {\n                    title: t(\"See my statistics\"),\n                    href: \"/main/priv/show/stats\",\n                    id: \"link-page-stats\",\n                    condition: authStore.isRoleAnalytics,\n                },\n                {\n                    title: t(\"Organisations management\"),\n                    href: \"/main/priv/edit/contract\",\n                    id: \"link-page-contract\",\n                    condition: authStore.isRoleAdmin,\n                },\n                {\n                    title: t(\"My account\"),\n                    href: \"/main/priv/account\",\n                    id: \"link-page-account\",\n                    condition: true,\n                },\n                {\n                    title: t(\"Handle my users\"),\n                    href: \"/main/priv/user/handle\",\n                    id: \"link-page-users\",\n                    condition: authStore.isRoleUsers,\n                },\n            ],\n        },\n    ];\n});\n\n\nonMounted(() => {\n    studioAuthorized.value = checkOrgaAttribute(\"studio.active\");\n    radioAuthorized.value = checkOrgaAttribute(\"radio.active\");\n})\n\n\n//Methods\nfunction checkOrgaAttribute(attribute: string): boolean {\n    return \"true\" == authStore.authOrganisation.attributes?.[attribute]?.toString();\n}\n</script>\n","<template>\n    <section class=\"page-box map-page\">\n        <component :is=\"titleTag\">\n            {{ t(\"Site map\") }}\n        </component>\n        <nav :aria-label=\"t('Site menu')\" class=\"d-flex flex-column align-items-center\">\n            <ul class=\"my-1\">\n                <template v-for=\"linkItem in siteMap\" :key=\"linkItem.id\">\n                    <li\n                        v-if=\"linkItem.condition\"\n                        :id=\"linkItem.id\"\n                        class=\"my-1\"\n                    >\n                        <router-link class=\"text-dark\" :to=\"linkItem.href\">\n                            {{\n                                linkItem.title\n                            }}\n                        </router-link>\n                        <ul v-if=\"linkItem.links\">\n                            <template v-for=\"subLink in linkItem.links\" :key=\"subLink.id\">\n                                <li\n                                    v-if=\"subLink.condition\"\n                                    :id=\"subLink.id\"\n                                    class=\"my-1\"\n                                >\n                                    <router-link class=\"text-dark\" :to=\"subLink.href\">\n                                        {{\n                                            subLink.title\n                                        }}\n                                    </router-link>\n                                </li>\n                            </template>\n                        </ul>\n                    </li>\n                </template>\n            </ul>\n        </nav>\n    </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { useAuthStore } from \"../../stores/AuthStore\";\nimport { useFilterStore } from \"../../stores/FilterStore\";\nimport { useGeneralStore } from \"../../stores/GeneralStore\";\nimport { state } from \"../../stores/ParamSdkStore\";\nimport { computed, onMounted, ref } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\ninterface LinkMapSite {\n    id: string;\n    title: string;\n    href: string;\n    condition: boolean;\n    links: Array<{\n        id: string;\n        title: string;\n        href: string;\n        condition: boolean;\n    }>;\n}\n\n\n//Props\nconst props = defineProps({\n    externLinks: { default: () => [], type: Array as () => Array<LinkMapSite> },\n    titleTag: { default: \"h1\", type: String },\n});\n\n//Data\nconst studioAuthorized = ref(true);\nconst radioAuthorized = ref(true);\n\n\n//Composables\nconst { t } = useI18n();\nconst authStore = useAuthStore();\nconst filterStore = useFilterStore();\nconst generalStore = useGeneralStore();\n\n\n//Computed\nconst isAuthenticated = computed(() =>undefined !== authStore.authProfile?.userId);\nconst isStudioAuth = computed(() =>(authStore.isRoleLive || authStore.isRoleContribution) && studioAuthorized.value);\nconst isPodcastmaker = computed(() =>state.generalParameters.podcastmaker);\nconst organisationsAvailable = computed(() =>authStore.authProfile?.organisations ?? []);\nconst siteMap = computed(() =>[\n    ...contentSection.value,\n    ...props.externLinks,\n    ...userLinks.value,\n    ...adminSection.value,\n    ...footerLinks.value,\n]);\nconst contentSection = computed(() =>[\n    {\n        title: t(\"Home\"),\n        id: \"link-page-home\",\n        href: \"/main/pub/home\",\n        condition: true,\n    },\n    {\n        title: isPodcastmaker.value? t(\"Live\"): t(\"Radio & Live\"),\n        id: \"link-page-lives\",\n        href: \"/main/pub/lives\",\n        condition: true,\n    },\n    {\n        title: t(\"Podcasts\"),\n        id: \"link-page-podcasts\",\n        href: \"/main/pub/podcasts\",\n        condition: true,\n    },\n    {\n        title: t(\"Emissions\"),\n        id: \"link-page-emissions\",\n        href: \"/main/pub/emissions\",\n        condition: true,\n    },\n    {\n        title: t(\"Speakers\"),\n        id: \"link-page-participants\",\n        href: \"/main/pub/participants\",\n        condition: true,\n    },\n    {\n        title: t(\"Playlists\"),\n        id: \"link-page-playlists\",\n        href: \"/main/pub/playlists\",\n        condition: true,\n    },\n    {\n        title: t(\"Productors\"),\n        id: \"link-page-productors\",\n        href: \"/main/pub/productors\",\n        condition:!isPodcastmaker.value && (!filterStore.filterOrgaId || generalStore.platformEducation),\n    },\n]);\nconst userLinks = computed(() =>[\n    {\n        title: t(\"Edit my profile\"),\n        href: { name: 'my-profile' },\n        id: \"link-page-profile\",\n        condition: !isPodcastmaker.value && isAuthenticated.value,\n    },\n    {\n        title: t(\"Edit my organisation\"),\n        href: \"/main/priv/edit/organisation\",\n        id: \"link-page-organisation\",\n        condition:\n            !isPodcastmaker.value &&\n            isAuthenticated.value &&\n            (authStore.isRoleOrganisation || 1 < organisationsAvailable.value.length),\n    },\n]);\nconst footerLinks = computed(() =>{\n    if (isPodcastmaker.value || authStore.isGarRole) {\n        return [];\n    }\n    return [\n        {\n            title: t(\"Contact\"),\n            href: \"/main/pub/contact\",\n            id: \"link-page-contact\",\n            condition: true,\n        },\n        {\n            title: t(\"Term of use\"),\n            href: \"/main/pub/cgu\",\n            id: \"link-page-cgu\",\n            condition: true,\n        },\n        {\n            title: t(\"Used libraries\"),\n            href: \"/main/pub/libraries\",\n            id: \"link-page-libraries\",\n            condition: true,\n        },\n    ];\n});\nconst adminSection = computed(() =>{\n    if (isPodcastmaker.value) {\n        return [];\n    }\n    return [\n        {\n            title: t(\"Welcome in the Backoffice\"),\n            href: \"/main/priv/backoffice\",\n            id: \"link-page-backoffice\",\n            condition: isAuthenticated.value,\n            links: [\n                {\n                    title: t(\"Upload\"),\n                    href: \"/main/priv/upload\",\n                    id: \"link-page-upload\",\n                    condition: authStore.isRoleContribution,\n                },\n                {\n                    title: t(\"Media library\"),\n                    href: \"/main/priv/media\",\n                    id: \"link-page-media\",\n                    condition: isStudioAuth.value,\n                },\n                {\n                    title: t(\"Studio\"),\n                    href: \"/main/priv/records\",\n                    id: \"link-page-records\",\n                    condition: isStudioAuth.value,\n                },\n                {\n                    title: t(\"Radio planning\"),\n                    href: \"/main/priv/radio/\",\n                    id: \"link-page-radio\",\n                    condition: authStore.isRoleRadio && radioAuthorized.value,\n                },\n                {\n                    title: t(\"Edit / Delete episodes\"),\n                    href: \"/main/pub/podcasts\",\n                    id: \"link-page-edit-podcast\",\n                    condition: true,\n                },\n                {\n                    title: t(\"Handle my players\"),\n                    href: \"/main/priv/players\",\n                    id: \"link-page-players\",\n                    condition: authStore.isRoleEditor,\n                },\n                {\n                    title: t(\"Monetization\"),\n                    href: \"/main/priv/edit/adserv\",\n                    id: \"link-page-adserv\",\n                    condition: authStore.isRoleAdvertising && !generalStore.platformEducation,\n                },\n                {\n                    title: t(\"Handle FTP\"),\n                    href: \"/main/priv/edit/ftp\",\n                    id: \"link-page-ftp\",\n                    condition: authStore.isRoleEditor,\n                },\n                {\n                    title: t(\"Topics and rubrics\"),\n                    href: \"/main/priv/edit/rubrics\",\n                    id: \"link-page-rubrics\",\n                    condition: authStore.isRoleEditor,\n                },\n                {\n                    title: t(\"Handle RSS\"),\n                    href: \"/main/priv/edit/rss\",\n                    id: \"link-page-rss\",\n                    condition: authStore.isRoleEditor,\n                },\n                {\n                    title: t(\"Handle my participants\"),\n                    href: \"/main/priv/participants/handle\",\n                    id: \"link-page-edit-participants\",\n                    condition: authStore.isRoleEditor,\n                },\n                {\n                    title: t(\"Handle comments\"),\n                    href: \"/main/priv/comments\",\n                    id: \"link-page-comments\",\n                    condition: authStore.isRoleComments,\n                },\n                {\n                    title: t(\"See my statistics\"),\n                    href: \"/main/priv/show/stats\",\n                    id: \"link-page-stats\",\n                    condition: authStore.isRoleAnalytics,\n                },\n                {\n                    title: t(\"Organisations management\"),\n                    href: \"/main/priv/edit/contract\",\n                    id: \"link-page-contract\",\n                    condition: authStore.isRoleAdmin,\n                },\n                {\n                    title: t(\"My account\"),\n                    href: \"/main/priv/account\",\n                    id: \"link-page-account\",\n                    condition: true,\n                },\n                {\n                    title: t(\"Handle my users\"),\n                    href: \"/main/priv/user/handle\",\n                    id: \"link-page-users\",\n                    condition: authStore.isRoleUsers,\n                },\n            ],\n        },\n    ];\n});\n\n\nonMounted(() => {\n    studioAuthorized.value = checkOrgaAttribute(\"studio.active\");\n    radioAuthorized.value = checkOrgaAttribute(\"radio.active\");\n})\n\n\n//Methods\nfunction checkOrgaAttribute(attribute: string): boolean {\n    return \"true\" == authStore.authOrganisation.attributes?.[attribute]?.toString();\n}\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;EA8DA,MAAM,QAAQ;EAMd,MAAM,mBAAmB,IAAI,IAAI;EACjC,MAAM,kBAAkB,IAAI,IAAI;EAIhC,MAAM,EAAE,MAAM,QAAQ;EACtB,MAAM,YAAY,aAAa;EAC/B,MAAM,cAAc,eAAe;EACnC,MAAM,eAAe,gBAAgB;EAIrC,MAAM,kBAAkB,eAAc,KAAA,MAAc,UAAU,aAAa,MAAM;EACjF,MAAM,eAAe,gBAAe,UAAU,cAAc,UAAU,uBAAuB,iBAAiB,KAAK;EACnH,MAAM,iBAAiB,eAAc,MAAM,kBAAkB,YAAY;EACzE,MAAM,yBAAyB,eAAc,UAAU,aAAa,iBAAiB,CAAC,CAAC;EACvF,MAAM,UAAU,eAAc;GAC1B,GAAG,eAAe;GAClB,GAAG,MAAM;GACT,GAAG,UAAU;GACb,GAAG,aAAa;GAChB,GAAG,YAAY;EACnB,CAAC;EACD,MAAM,iBAAiB,eAAc;GACjC;IACI,OAAO,EAAE,MAAM;IACf,IAAI;IACJ,MAAM;IACN,WAAW;GACf;GACA;IACI,OAAO,eAAe,QAAO,EAAE,MAAM,IAAG,EAAE,cAAc;IACxD,IAAI;IACJ,MAAM;IACN,WAAW;GACf;GACA;IACI,OAAO,EAAE,UAAU;IACnB,IAAI;IACJ,MAAM;IACN,WAAW;GACf;GACA;IACI,OAAO,EAAE,WAAW;IACpB,IAAI;IACJ,MAAM;IACN,WAAW;GACf;GACA;IACI,OAAO,EAAE,UAAU;IACnB,IAAI;IACJ,MAAM;IACN,WAAW;GACf;GACA;IACI,OAAO,EAAE,WAAW;IACpB,IAAI;IACJ,MAAM;IACN,WAAW;GACf;GACA;IACI,OAAO,EAAE,YAAY;IACrB,IAAI;IACJ,MAAM;IACN,WAAU,CAAC,eAAe,UAAU,CAAC,YAAY,gBAAgB,aAAa;GAClF;EACJ,CAAC;EACD,MAAM,YAAY,eAAc,CAC5B;GACI,OAAO,EAAE,iBAAiB;GAC1B,MAAM,EAAE,MAAM,aAAa;GAC3B,IAAI;GACJ,WAAW,CAAC,eAAe,SAAS,gBAAgB;EACxD,GACA;GACI,OAAO,EAAE,sBAAsB;GAC/B,MAAM;GACN,IAAI;GACJ,WACI,CAAC,eAAe,SAChB,gBAAgB,UACf,UAAU,sBAAsB,IAAI,uBAAuB,MAAM;EAC1E,CACJ,CAAC;EACD,MAAM,cAAc,eAAc;GAC9B,IAAI,eAAe,SAAS,UAAU,WAClC,OAAO,CAAC;GAEZ,OAAO;IACH;KACI,OAAO,EAAE,SAAS;KAClB,MAAM;KACN,IAAI;KACJ,WAAW;IACf;IACA;KACI,OAAO,EAAE,aAAa;KACtB,MAAM;KACN,IAAI;KACJ,WAAW;IACf;IACA;KACI,OAAO,EAAE,gBAAgB;KACzB,MAAM;KACN,IAAI;KACJ,WAAW;IACf;GACJ;EACJ,CAAC;EACD,MAAM,eAAe,eAAc;GAC/B,IAAI,eAAe,OACf,OAAO,CAAC;GAEZ,OAAO,CACH;IACI,OAAO,EAAE,2BAA2B;IACpC,MAAM;IACN,IAAI;IACJ,WAAW,gBAAgB;IAC3B,OAAO;KACH;MACI,OAAO,EAAE,QAAQ;MACjB,MAAM;MACN,IAAI;MACJ,WAAW,UAAU;KACzB;KACA;MACI,OAAO,EAAE,eAAe;MACxB,MAAM;MACN,IAAI;MACJ,WAAW,aAAa;KAC5B;KACA;MACI,OAAO,EAAE,QAAQ;MACjB,MAAM;MACN,IAAI;MACJ,WAAW,aAAa;KAC5B;KACA;MACI,OAAO,EAAE,gBAAgB;MACzB,MAAM;MACN,IAAI;MACJ,WAAW,UAAU,eAAe,gBAAgB;KACxD;KACA;MACI,OAAO,EAAE,wBAAwB;MACjC,MAAM;MACN,IAAI;MACJ,WAAW;KACf;KACA;MACI,OAAO,EAAE,mBAAmB;MAC5B,MAAM;MACN,IAAI;MACJ,WAAW,UAAU;KACzB;KACA;MACI,OAAO,EAAE,cAAc;MACvB,MAAM;MACN,IAAI;MACJ,WAAW,UAAU,qBAAqB,CAAC,aAAa;KAC5D;KACA;MACI,OAAO,EAAE,YAAY;MACrB,MAAM;MACN,IAAI;MACJ,WAAW,UAAU;KACzB;KACA;MACI,OAAO,EAAE,oBAAoB;MAC7B,MAAM;MACN,IAAI;MACJ,WAAW,UAAU;KACzB;KACA;MACI,OAAO,EAAE,YAAY;MACrB,MAAM;MACN,IAAI;MACJ,WAAW,UAAU;KACzB;KACA;MACI,OAAO,EAAE,wBAAwB;MACjC,MAAM;MACN,IAAI;MACJ,WAAW,UAAU;KACzB;KACA;MACI,OAAO,EAAE,iBAAiB;MAC1B,MAAM;MACN,IAAI;MACJ,WAAW,UAAU;KACzB;KACA;MACI,OAAO,EAAE,mBAAmB;MAC5B,MAAM;MACN,IAAI;MACJ,WAAW,UAAU;KACzB;KACA;MACI,OAAO,EAAE,0BAA0B;MACnC,MAAM;MACN,IAAI;MACJ,WAAW,UAAU;KACzB;KACA;MACI,OAAO,EAAE,YAAY;MACrB,MAAM;MACN,IAAI;MACJ,WAAW;KACf;KACA;MACI,OAAO,EAAE,iBAAiB;MAC1B,MAAM;MACN,IAAI;MACJ,WAAW,UAAU;KACzB;IACJ;GACJ,CACJ;EACJ,CAAC;EAGD,gBAAgB;GACZ,iBAAiB,QAAQ,mBAAmB,eAAe;GAC3D,gBAAgB,QAAQ,mBAAmB,cAAc;EAC7D,CAAC;EAID,SAAS,mBAAmB,WAA4B;GACpD,OAAO,UAAU,UAAU,iBAAiB,aAAa,YAAY,SAAS;EAClF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBC1Sa,OAAM,oBAAmB;;mBAKtB,OAAM,OAAM;;;;;;qBALxB,mBAoCU,WApCV,YAoCU,EAAA,UAAA,GAnCN,YAEY,wBAFI,OAAA,QAAQ,GAAA,MAAA;yBACD,CAAA,gBAAA,gBAAhB,OAAA,EAAC,UAAA,CAAA,GAAA,CAAA,CAAA,CAAA;;MAER,mBA+BM,OAAA;EA/BA,cAAY,OAAA,EAAC,WAAA;EAAe,OAAM;KACpC,mBA6BK,MA7BL,YA6BK,EAAA,UAAA,IAAA,GA5BD,mBA2BW,UAAA,MAAA,WA3BkB,OAAA,UAAZ,aAAQ;0DAAmB,SAAS,GAAA,GAAA,CAEvC,SAAS,aAAA,UAAA,GADnB,mBAyBK,MAAA;;GAvBA,IAAI,SAAS;GACd,OAAM;MAEN,YAIc,wBAAA;GAJD,OAAM;GAAa,IAAI,SAAS;;0BAGvC,CAAA,gBAAA,gBADE,SAAS,KAAK,GAAA,CAAA,CAAA,CAAA;;oBAGZ,SAAS,SAAA,UAAA,GAAnB,mBAcK,MAAA,YAAA,EAAA,UAAA,IAAA,GAbD,mBAYW,UAAA,MAAA,WAZiB,SAAS,QAApB,YAAO;2DAA0B,QAAQ,GAAA,GAAA,CAE5C,QAAQ,aAAA,UAAA,GADlB,mBAUK,MAAA;;IARA,IAAI,QAAQ;IACb,OAAM;OAEN,YAIc,wBAAA;IAJD,OAAM;IAAa,IAAI,QAAQ;;2BAGtC,CAAA,gBAAA,gBADE,QAAQ,KAAK,GAAA,CAAA,CAAA,CAAA"}