PageSourceSearch

https://www.ybcproduction.com/_nuxt/C7Q2fgVa.js

js ybcproduction.com collected 2026-10-08 15:57:54 UTC 114,012 bytes, 2,040 lines download raw bytes

1import { _ as _export_sfc, J as resolveDirective, o as openBlock, c as createElementBlock, a as createVNode, w as withCtx, q as withDirectives, b as createBaseVNode, ab as PageRouteSymbol, f as __nuxt_component_0$1, v as vShow, e as defineNuxtComponent, M as useOrdantStore, t as toDisplayString, d as createCommentVNode, i as withModifiers, r as resolveComponent, F as Fragment, g as renderList, h as createBlock, z as normalizeStyle, n as normalizeClass, af as TransitionGroup, j as createTextVNode, l as SFButton, ag as isClient, k as SFInput, a6 as createStaticVNode, Q as ref, u as unref, ah as applyCustomerCSS, ai as applyCustomJSPlugins, aj as findDeep, a7 as useRoute, G as useNuxtApp, H as useAsyncData, ak as stripBodyMainFromHtml, a1 as watchEffect, ad as useRuntimeConfig, a9 as useHead, al as buildCanonicalUrl, am as jsonLdScript, an as buildArticleJsonLd, ao as buildSocialMeta, I as computed, ap as pickPageSeo, aq as absoluteImageUrl, ar as displayImage, as as findDeepAll, V as watch } from "#entry";
2import { B as BlogGalleryO1Card, r as renderHtml, a as attachClickListener, b as renderStyles, _ as __nuxt_component_2 } from "./BQb3YbUI.js";
3import { _ as __nuxt_component_1$1 } from "./BqL3v7_s.js";
4import { P as PageHeader } from "./Bm4XbcE6.js";
5import "./BQDAIf8x.js";
6import "./GBa0xkkE.js";
7import "./WIp78_aO.js";
8const _sfc_main$b = defineNuxtComponent(
9  {
10    name: "PageHeader",
11    props: {
12      title: {
13        type: String
14      },
15      hideSubtitle: {
16        type: Boolean,
17        default: false
18      },
19      subtitle: {
20        type: String,
21        default: null
22      },
23      image: {
24        type: String,
25        default: null
26      }
27    },
28    data() {
29      return {
30        ordantStore: useOrdantStore()
31      };
32    },
33    computed: {
34      computedImage() {
35        return this.image ? this.$displayImage(this.image) : "";
36      }
37    }
38  },
39  "$NSw5sS9cgD"
40  /* nuxt-injected */
41);
42const _hoisted_1$a = { class: "" };
43const _hoisted_2$a = { class: "text-center" };
44const _hoisted_3$9 = { class: "grid justify-items-center gap-6 pt-12 pb-4 text-center" };
45const _hoisted_4$9 = { class: "page-header o-w-full-screen bg-brand-5 text-center" };
46function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) {
47  const _component_ClientOnly = __nuxt_component_0$1;
48  const _directive_lazy = resolveDirective("lazy");
49  return openBlock(), createElementBlock("div", _hoisted_1$a, [
50    createVNode(_component_ClientOnly, null, {
51      default: withCtx(() => [
52        withDirectives((openBlock(), createElementBlock("div", _hoisted_2$a, [
53          createBaseVNode("div", _hoisted_3$9, [
54            _cache[2] || (_cache[2] = createBaseVNode("h1", { class: "!text-center" }, "Print Business, Simplified", -1)),
55            _cache[3] || (_cache[3] = createBaseVNode("p", { class: "!text-center !text-wrap" }, " Read our recent blogs for tips to effectively manage your print business, no matter what industry you’re in. ", -1)),
56            createBaseVNode("div", {
57              class: "flex w-fit cursor-pointer flex-row items-center justify-center",
58              onClick: _cache[0] || (_cache[0] = ($event) => _ctx.ordantStore.openPopupForm((_ctx._.provides[PageRouteSymbol] || _ctx.$route).name, "Start A Free Trial"))
59            }, [..._cache[1] || (_cache[1] = [
60              createBaseVNode("a", { class: "ordant-button default" }, " Start a free Trial ", -1),
61              createBaseVNode("i", { class: "fa-solid fa-arrow-right ml-2" }, null, -1)
62            ])])
63          ])
64        ])), [
65          [_directive_lazy, _ctx.computedImage, "background-image"]
66        ])
67      ]),
68      _: 1
69    }),
70    withDirectives(createBaseVNode("div", _hoisted_4$9, null, 512), [
71      [vShow, _ctx.isServer]
72    ])
73  ]);
74}
75const PageHeaderBlog = /* @__PURE__ */ Object.assign(_export_sfc(_sfc_main$b, [["render", _sfc_render$a]]), { __name: "ElementsPageHeaderBlog" });
76const _sfc_main$a = defineNuxtComponent(
77  {
78    name: "BlogPreview",
79    props: {
80      blog: { type: Object, default: () => {
81      } }
82    },
83    computed: {
84      computedThumbnailUrl() {
85        var _a, _b, _c;
86        return ((_a = this.blog) == null ? void 0 : _a.thumbnail) || ((_c = (_b = this.blog) == null ? void 0 : _b.parent_page) == null ? void 0 : _c.thumbnail) || "https://images.unsplash.com/photo-1496128858413-b36217c2ce36?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1679&q=80";
87      }
88    },
89    methods: {
90      goToBlog() {
91        var _a, _b, _c;
92        console.log("GOING TO BLOG PAGE");
93        this.$router.push(`/${((_b = (_a = this.blog) == null ? void 0 : _a.seo) == null ? void 0 : _b.slug) || ((_c = this.blog) == null ? void 0 : _c._id)}`);
94      },
95      getBlogHref(blog) {
96        var _a;
97        return `/${((_a = blog == null ? void 0 : blog.seo) == null ? void 0 : _a.slug) || (blog == null ? void 0 : blog._id)}`;
98      }
99    }
100  },
101  "$lu8XwTXdLL"
102  /* nuxt-injected */
103);
104const _hoisted_1$9 = ["href"];
105const _hoisted_2$9 = { class: "flex-shrink-0" };
106const _hoisted_3$8 = ["src"];
107const _hoisted_4$8 = { class: "flex flex-1 flex-col justify-between bg-white p-6" };
108const _hoisted_5$7 = { class: "flex-1" };
109const _hoisted_6$5 = ["href"];
110const _hoisted_7$4 = { class: "text-xl font-semibold text-gray-900" };
111const _hoisted_8$2 = { class: "mt-3 text-base text-gray-500" };
112const _hoisted_9$2 = { class: "mt-6 flex items-center" };
113const _hoisted_10$2 = {
114  key: 0,
115  class: "flex-shrink-0"
116};
117const _hoisted_11$2 = { class: "ml-3" };
118const _hoisted_12$2 = { class: "text-sm font-medium text-gray-900" };
119const _hoisted_13$1 = { class: "hover:underline" };
120const _hoisted_14$1 = { class: "flex space-x-1 text-sm text-gray-500" };
121const _hoisted_15$1 = ["datetime"];
122function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) {
123  var _a, _b, _c, _d, _e, _f, _g, _h, _i;
124  return openBlock(), createElementBlock("a", {
125    class: "flex cursor-pointer flex-col overflow-hidden rounded-lg",
126    href: _ctx.getBlogHref(_ctx.blog),
127    onClick: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.goToBlog && _ctx.goToBlog(...args), ["prevent", "stop"]))
128  }, [
129    createBaseVNode("div", _hoisted_2$9, [
130      createBaseVNode("img", {
131        class: "h-48 w-full object-cover",
132        src: _ctx.$displayImage(_ctx.computedThumbnailUrl),
133        alt: ""
134      }, null, 8, _hoisted_3$8)
135    ]),
136    createBaseVNode("div", _hoisted_4$8, [
137      createBaseVNode("div", _hoisted_5$7, [
138        createBaseVNode("a", {
139          href: (_a = _ctx.blog) == null ? void 0 : _a.href,
140          class: "mt-2 block"
141        }, [
142          createBaseVNode("p", _hoisted_7$4, toDisplayString((_b = _ctx.blog) == null ? void 0 : _b.title) + "TT", 1),
143          createBaseVNode("p", _hoisted_8$2, toDisplayString((_c = _ctx.blog) == null ? void 0 : _c.description), 1)
144        ], 8, _hoisted_6$5)
145      ]),
146      createBaseVNode("div", _hoisted_9$2, [
147        ((_e = (_d = _ctx.blog) == null ? void 0 : _d.author) == null ? void 0 : _e.imageUrl) ? (openBlock(), createElementBlock("div", _hoisted_10$2)) : createCommentVNode("", true),
148        createBaseVNode("div", _hoisted_11$2, [
149          createBaseVNode("p", _hoisted_12$2, [
150            createBaseVNode("a", _hoisted_13$1, toDisplayString((_f = _ctx.blog) == null ? void 0 : _f.author), 1)
151          ]),
152          createBaseVNode("div", _hoisted_14$1, [
153            createBaseVNode("time", {
154              datetime: new Date((_g = _ctx.blog) == null ? void 0 : _g.date)
155            }, toDisplayString((_h = _ctx.blog) == null ? void 0 : _h.date), 9, _hoisted_15$1),
156            _cache[1] || (_cache[1] = createBaseVNode("span", { "aria-hidden": "true" }, "·", -1)),
157            createBaseVNode("span", null, toDisplayString(((_i = _ctx.blog) == null ? void 0 : _i.readingTime) || "5 min") + " read", 1)
158          ])
159        ])
160      ])
161    ])
162  ], 8, _hoisted_1$9);
163}
164const BlogPreview = /* @__PURE__ */ Object.assign(_export_sfc(_sfc_main$a, [["render", _sfc_render$9]]), { __name: "ElementsBlogPreview" });
165const _sfc_main$9 = defineNuxtComponent(
166  {
167    name: "FAQPreview",
168    props: {
169      faq: { type: Object, default: () => {
170      } },
171      type: { type: String, default: "kb" },
172      pageData: { type: Object, default: () => {
173      } }
174    },
175    methods: {
176      goToFAQ() {
177        var _a, _b, _c, _d, _e, _f, _g, _h;
178        if (((_a = this.pageData) == null ? void 0 : _a.type) === "page_category") {
179          this.$store.kbStore.currentCategory = this.$cloneDeep(this.pageData);
180        }
181        this.$store.kbStore.currentPage = this.$cloneDeep(this.faq);
182        this.$router.push(`/${this.type}/${((_c = (_b = this.faq) == null ? void 0 : _b.seo) == null ? void 0 : _c.slug) || ((_f = (_e = (_d = this.faq) == null ? void 0 : _d.parent_page) == null ? void 0 : _e.seo) == null ? void 0 : _f.slug) || ((_g = this.faq) == null ? void 0 : _g.link) || ((_h = this.faq) == null ? void 0 : _h._id)}`);
183      },
184      getFAQHref(faq) {
185        var _a, _b, _c;
186        return `/${this.type}/${((_a = faq == null ? void 0 : faq.seo) == null ? void 0 : _a.slug) || ((_c = (_b = faq == null ? void 0 : faq.parent_page) == null ? void 0 : _b.seo) == null ? void 0 : _c.slug) || (faq == null ? void 0 : faq.link) || (faq == null ? void 0 : faq._id)}`;
187      }
188    },
189    computed: {
190      publishedDate() {
191        const d = new Date(this.faq.updatedAt);
192        const options = {
193          year: "numeric",
194          month: "long",
195          day: "numeric"
196        };
197        return new Intl.DateTimeFormat("en-US", options).format(d);
198      }
199    }
200  },
201  "$eSCWbVaNys"
202  /* nuxt-injected */
203);
204const _hoisted_1$8 = ["href"];
205const _hoisted_2$8 = { class: "grid gap-4" };
206const _hoisted_3$7 = { class: "grid gap-2" };
207const _hoisted_4$7 = { class: "!text-xs !text-gray-600" };
208const _hoisted_5$6 = { class: "truncate !text-wrap lg:!text-lg" };
209function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
210  var _a;
211  return openBlock(), createElementBlock("a", {
212    href: _ctx.getFAQHref(_ctx.faq),
213    class: "grid h-full place-content-between gap-4 rounded-lg border-1 bg-white border-gray-200 p-4",
214    onClick: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.goToFAQ && _ctx.goToFAQ(...args), ["prevent", "stop"]))
215  }, [
216    createBaseVNode("div", _hoisted_2$8, [
217      createBaseVNode("div", _hoisted_3$7, [
218        createBaseVNode("p", _hoisted_4$7, toDisplayString(_ctx.publishedDate), 1),
219        createBaseVNode("p", _hoisted_5$6, toDisplayString((_a = _ctx.faq) == null ? void 0 : _a.title), 1)
220      ])
221    ]),
222    _cache[1] || (_cache[1] = createBaseVNode("p", { class: "!font-medium !capitalize !text-teal-500" }, "Read More", -1))
223  ], 8, _hoisted_1$8);
224}
225const FAQPreview = /* @__PURE__ */ Object.assign(_export_sfc(_sfc_main$9, [["render", _sfc_render$8], ["__scopeId", "data-v-b3ab51a6"]]), { __name: "ElementsFAQPreview" });
226const _sfc_main$8 = defineNuxtComponent(
227  {
228    name: "BlogList",
229    components: {
230      SFButton,
231      FAQPreview,
232      BlogPreview,
233      BlogGalleryO1Card
234    },
235    props: {
236      showTitle: {
237        type: Boolean,
238        default: true
239      },
240      blogCategories: {
241        type: Array,
242        default: () => []
243      },
244      blogs: {
245        type: Array,
246        default: () => []
247      }
248    },
249    data() {
250      return {
251        // SSR: show all items; Client: pagination gets activated in mounted()
252        paginationActive: false,
253        itemsToShow: this.blogs.length,
254        itemsPerPage: 8,
255        // Keeps track of how many items were visible before the last "Show More" click
256        lastItemsToShow: this.blogs.length
257      };
258    },
259    computed: {
260      BlogPageTitle() {
261        return (this._.provides[PageRouteSymbol] || this.$route).params.pageId ? "Recommended" : "Recent Articles";
262      },
263      // Show only a subset on the client if pagination is active
264      displayedBlogs() {
265        return this.paginationActive ? this.blogs.slice(0, Math.max(this.itemsToShow, 12)) : this.blogs;
266      },
267      computedBlogCategories() {
268        return this.blogCategories.filter((cat) => (cat == null ? void 0 : cat.type) === "page_category");
269      }
270    },
271    mounted() {
272      this.paginationActive = true;
273      this.itemsToShow = this.itemsPerPage;
274      this.lastItemsToShow = this.itemsToShow;
275    },
276    methods: {
277      isClient() {
278        return isClient;
279      },
280      showMore() {
281        this.lastItemsToShow = this.itemsToShow;
282        this.itemsToShow = Math.min(this.itemsToShow + this.itemsPerPage, this.blogs.length);
283        this.$nextTick(() => {
284          const newItem = document.querySelector(".blog-item.new");
285          if (newItem) {
286            const scrollToPosition = document.body.scrollTop + 500;
287            document.body.scrollTo({ top: scrollToPosition, behavior: "smooth" });
288          }
289        });
290      },
291      getItemStyle(index) {
292        if (index >= this.lastItemsToShow && index < this.itemsToShow) {
293          const delay = (index - this.lastItemsToShow) * 0.1;
294          return { transitionDelay: `${delay}s` };
295        }
296        return { transitionDelay: "0s" };
297      },
298      isNewItem(index) {
299        return index >= this.lastItemsToShow && index < this.itemsToShow;
300      }
301    }
302  },
303  "$0COL4AGiMi"
304  /* nuxt-injected */
305);
306const _hoisted_1$7 = { class: "gap-page grid" };
307const _hoisted_2$7 = {
308  key: 0,
309  class: "gap-section grid"
310};
311const _hoisted_3$6 = { key: 0 };
312const _hoisted_4$6 = {
313  key: 1,
314  class: "text-center"
315};
316const _hoisted_5$5 = {
317  key: 1,
318  class: "gap-section grid"
319};
320const _hoisted_6$4 = { key: 0 };
321const _hoisted_7$3 = { class: "grid grid-cols-[repeat(auto-fit,_minmax(164px,_1fr))] gap-x-8 gap-y-12 lg:grid-cols-[repeat(auto-fit,_minmax(280px,_1fr))]" };
322function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
323  var _a, _b, _c, _d, _e, _f, _g;
324  const _component_BlogGalleryO1Card = resolveComponent("BlogGalleryO1Card");
325  const _component_SFButton = resolveComponent("SFButton");
326  const _component_FAQPreview = resolveComponent("FAQPreview");
327  return openBlock(), createElementBlock("div", _hoisted_1$7, [
328    ((_a = _ctx.blogs) == null ? void 0 : _a.length) ? (openBlock(), createElementBlock("div", _hoisted_2$7, [
329      _ctx.showTitle ? (openBlock(), createElementBlock("h2", _hoisted_3$6, toDisplayString(_ctx.BlogPageTitle), 1)) : createCommentVNode("", true),
330      createVNode(TransitionGroup, {
331        name: "slide-fade",
332        tag: "div",
333        style: normalizeStyle({ maxWidth: "1440px", width: `calc(100vw - ${((_c = (_b = _ctx.$store.config.getCssSettings) == null ? void 0 : _b.page) == null ? void 0 : _c["padding-left"]) + ((_e = (_d = _ctx.$store.config.getCssSettings) == null ? void 0 : _d.page) == null ? void 0 : _e["padding-right"])}px)` }),
334        class: "grid grid-cols-[repeat(auto-fit,_minmax(164px,_1fr))] gap-x-8 gap-y-12 lg:grid-cols-[repeat(auto-fit,_minmax(280px,_1fr))]"
335      }, {
336        default: withCtx(() => [
337          (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.displayedBlogs, (blog, index) => {
338            return openBlock(), createBlock(_component_BlogGalleryO1Card, {
339              key: blog._id,
340              blog,
341              class: normalizeClass(["blog-item", { new: _ctx.isNewItem(index) }]),
342              style: normalizeStyle(_ctx.getItemStyle(index))
343            }, null, 8, ["blog", "style", "class"]);
344          }), 128))
345        ]),
346        _: 1
347      }, 8, ["style"]),
348      _ctx.paginationActive && _ctx.itemsToShow < _ctx.blogs.length ? (openBlock(), createElementBlock("div", _hoisted_4$6, [
349        createVNode(_component_SFButton, {
350          class: "max-w-[200px] mx-auto",
351          btnClass: "secondary",
352          onClick: _ctx.showMore
353        }, {
354          default: withCtx(() => [..._cache[0] || (_cache[0] = [
355            createTextVNode(" Show More ", -1)
356          ])]),
357          _: 1
358        }, 8, ["onClick"])
359      ])) : createCommentVNode("", true)
360    ])) : createCommentVNode("", true),
361    ((_f = _ctx.blogCategories) == null ? void 0 : _f.length) ? (openBlock(), createElementBlock("div", _hoisted_5$5, [
362      _ctx.showTitle || ((_g = _ctx.blogs) == null ? void 0 : _g.length) ? (openBlock(), createElementBlock("h2", _hoisted_6$4, toDisplayString((_ctx._.provides[PageRouteSymbol] || _ctx.$route).path === "/blog" ? "" : "Related") + " Categories ", 1)) : createCommentVNode("", true),
363      createBaseVNode("div", _hoisted_7$3, [
364        (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.computedBlogCategories, (blog) => {
365          return openBlock(), createElementBlock("div", {
366            key: blog.title
367          }, [
368            createVNode(_component_FAQPreview, {
369              type: "blog",
370              faq: blog
371            }, null, 8, ["faq"])
372          ]);
373        }), 128))
374      ])
375    ])) : createCommentVNode("", true)
376  ]);
377}
378const BlogList = /* @__PURE__ */ Object.assign(_export_sfc(_sfc_main$8, [["render", _sfc_render$7], ["__scopeId", "data-v-7c0bfe9e"]]), { __name: "ElementsBlogList" });
379function resolveBlogIndexPage(pages) {
380  if (!Array.isArray(pages)) {
381    return null;
382  }
383  return pages.find(
384    (page) => {
385      var _a;
386      return ((_a = page == null ? void 0 : page.seo) == null ? void 0 : _a.slug) === "blog" && (page == null ? void 0 : page.type) !== "blog" && (page == null ? void 0 : page.isActive) !== false;
387    }
388  ) || null;
389}
390const _sfc_main$7 = {
391  name: "ContactUsO1",
392  components: {
393    SFButton,
394    SFInput
395  },
396  data() {
397    return {
398      form: {
399        name: "",
400        email: "",
401        phoneNumber: ""
402      }
403    };
404  },
405  computed: {},
406  watch: {},
407  mounted() {
408  },
409  methods: {
410    async submitTrialForm() {
411      var _a, _b;
412      if (this.validateForm(false, "contact_us_form")) {
413        console.log("submitTrialForm", this.form);
414        this.$store.ordantStore.firstName = ((_a = this.form.name.split(" ")) == null ? void 0 : _a[0]) || "";
415        this.$store.ordantStore.lastName = ((_b = this.form.name.split(" ")) == null ? void 0 : _b[1]) || "";
416        this.$store.ordantStore.emailAddresses = this.form.email;
417        this.$store.ordantStore.phoneNumber = this.form.phoneNumber;
418        try {
419          await this.$store.ordantStore.createLead((this._.provides[PageRouteSymbol] || this.$route).name);
420          await this.$store.ordantStore.openPopupForm((this._.provides[PageRouteSymbol] || this.$route).name, "Start A Free Trial", false);
421        } catch (e) {
422          console.error("submitTrialForm", e);
423        }
424      }
425    },
426    validateForm(silent = false, form_ref) {
427      const errs = this.$validateForm(this.$refs[form_ref]);
428      if (!silent) {
429        for (const err of errs) {
430          this.$toast.error(err);
431          if (err) {
432            break;
433          }
434        }
435      }
436      return !(errs == null ? void 0 : errs.length);
437    }
438  }
439};
440const _hoisted_1$6 = { class: "flex h-full max-w-[387px] flex-col" };
441const _hoisted_2$6 = { class: "flex flex-col items-center overflow-hidden rounded-t-[20px] bg-[#0087CA]" };
442const _hoisted_3$5 = { class: "mb-[20px] px-[30px] pt-[24px]" };
443const _hoisted_4$5 = { class: "flex h-[117px] w-full flex-col justify-end gap-y-[24px] bg-white" };
444const _hoisted_5$4 = { class: "lg:gap-x-none mx-auto mb-[20px] grid grid-cols-6 items-center justify-items-center gap-x-[25px] gap-y-[32px] lg:gap-y-[32px]" };
445const _hoisted_6$3 = { class: "flex h-[22px] w-[22px] flex-col items-center justify-center gap-y-[8px]" };
446const _hoisted_7$2 = { class: "flex h-[22px] w-[22px] flex-col items-center justify-center gap-y-[8px]" };
447const _hoisted_8$1 = { class: "flex h-[22px] w-[22px] flex-col items-center justify-center gap-y-[8px]" };
448const _hoisted_9$1 = { class: "flex h-[22px] w-[22px] flex-col items-center justify-center gap-y-[8px]" };
449const _hoisted_10$1 = { class: "flex h-[22px] w-[22px] flex-col items-center justify-center gap-y-[8px]" };
450const _hoisted_11$1 = { class: "flex h-[22px] w-[22px] flex-col items-center justify-center gap-y-[8px]" };
451const _hoisted_12$1 = { class: "fixed sticky top-0 flex flex-col rounded-b-[20px] bg-[#0087CA] px-[30px] py-[24px]" };
452function _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) {
453  const _component_ClientOnly = __nuxt_component_0$1;
454  const _component_SFInput = resolveComponent("SFInput");
455  const _component_SFButton = resolveComponent("SFButton");
456  return openBlock(), createElementBlock("div", _hoisted_1$6, [
457    createBaseVNode("div", _hoisted_2$6, [
458      createBaseVNode("div", _hoisted_3$5, [
459        createVNode(_component_ClientOnly)
460      ]),
461      _cache[11] || (_cache[11] = createBaseVNode("div", { class: "mb-[80px] max-w-[308px] px-[30px] text-center text-xl text-white" }, " Hundreds of customers trust Ordant to simplify their workflow ", -1)),
462      createBaseVNode("div", _hoisted_4$5, [
463        _cache[10] || (_cache[10] = createBaseVNode("div", { class: "relative items-center justify-center" }, [
464          createBaseVNode("img", {
465            src: "https://ordant.com/_nuxt/BlogCTA-image-01.926c2420.png",
466            class: "z-10 ml-[25px] h-[117px] w-[392px] -rotate-6 rounded-[5px] object-cover shadow-2xl",
467            alt: ""
468          }),
469          createBaseVNode("img", {
470            src: "https://ordant.com/_nuxt/BlogCTA-image-02.3f1dc692.png",
471            class: "-rotate-5 absolute z-20 -mt-[190px] ml-[160px] rounded-[5px] object-cover",
472            alt: ""
473          })
474        ], -1)),
475        createBaseVNode("div", _hoisted_5$4, [
476          createBaseVNode("div", _hoisted_6$3, [
477            createVNode(_component_ClientOnly, null, {
478              default: withCtx(() => [..._cache[4] || (_cache[4] = [
479                createBaseVNode("img", {
480                  format: "webp",
481                  loading: "lazy",
482                  provider: "cloudfront",
483                  fit: "inside",
484                  src: "https://d2ljs4ffhjgrz3.cloudfront.net/ordant-site-v5/images/svg/connect-ordant-to/slack.svg",
485                  height: "22px",
486                  width: "22px",
487                  class: "scale-[300%]",
488                  alt: "Slack"
489                }, null, -1)
490              ])]),
491              _: 1
492            })
493          ]),
494          createBaseVNode("div", _hoisted_7$2, [
495            createVNode(_component_ClientOnly, null, {
496              default: withCtx(() => [..._cache[5] || (_cache[5] = [
497                createBaseVNode("img", {
498                  format: "webp",
499                  loading: "lazy",
500                  provider: "cloudfront",
501                  fit: "inside",
502                  src: "https://d2ljs4ffhjgrz3.cloudfront.net/ordant-site-v5/images/svg/connect-ordant-to/google.svg",
503                  height: "22px",
504                  width: "22px",
505                  class: "scale-[300%]",
506                  alt: "Google drive"
507                }, null, -1)
508              ])]),
509              _: 1
510            })
511          ]),
512          createBaseVNode("div", _hoisted_8$1, [
513            createVNode(_component_ClientOnly, null, {
514              default: withCtx(() => [..._cache[6] || (_cache[6] = [
515                createBaseVNode("img", {
516                  format: "webp",
517                  loading: "lazy",
518                  provider: "cloudfront",
519                  fit: "inside",
520                  src: "https://d2ljs4ffhjgrz3.cloudfront.net/ordant-site-v5/images/svg/connect-ordant-to/fedex.svg",
521                  height: "22px",
522                  width: "22px",
523                  class: "scale-[300%]",
524                  alt: "FedEx"
525                }, null, -1)
526              ])]),
527              _: 1
528            })
529          ]),
530          createBaseVNode("div", _hoisted_9$1, [
531            createVNode(_component_ClientOnly, null, {
532              default: withCtx(() => [..._cache[7] || (_cache[7] = [
533                createBaseVNode("img", {
534                  format: "webp",
535                  loading: "lazy",
536                  provider: "cloudfront",
537                  fit: "inside",
538                  src: "https://d2ljs4ffhjgrz3.cloudfront.net/ordant-site-v5/images/svg/connect-ordant-to/google.svg",
539                  height: "22px",
540                  width: "22px",
541                  class: "scale-[300%]",
542                  alt: "UPS"
543                }, null, -1)
544              ])]),
545              _: 1
546            })
547          ]),
548          createBaseVNode("div", _hoisted_10$1, [
549            createVNode(_component_ClientOnly, null, {
550              default: withCtx(() => [..._cache[8] || (_cache[8] = [
551                createBaseVNode("img", {
552                  format: "webp",
553                  loading: "lazy",
554                  provider: "cloudfront",
555                  fit: "inside",
556                  src: "https://d2ljs4ffhjgrz3.cloudfront.net/ordant-site-v5/images/svg/connect-ordant-to/quickbooks.svg",
557                  height: "22px",
558                  width: "22px",
559                  class: "scale-[300%]",
560                  alt: "QuickBooks"
561                }, null, -1)
562              ])]),
563              _: 1
564            })
565          ]),
566          createBaseVNode("div", _hoisted_11$1, [
567            createVNode(_component_ClientOnly, null, {
568              default: withCtx(() => [..._cache[9] || (_cache[9] = [
569                createBaseVNode("img", {
570                  format: "webp",
571                  loading: "lazy",
572                  provider: "cloudfront",
573                  fit: "inside",
574                  src: "https://d2ljs4ffhjgrz3.cloudfront.net/ordant-site-v5/images/svg/connect-ordant-to/hubspot.svg",
575                  height: "22px",
576                  width: "22px",
577                  class: "scale-[300%]",
578                  alt: "Hubspot"
579                }, null, -1)
580              ])]),
581              _: 1
582            })
583          ])
584        ])
585      ])
586    ]),
587    createBaseVNode("div", _hoisted_12$1, [
588      _cache[12] || (_cache[12] = createBaseVNode("div", { class: "text-xl font-medium text-white mb-4" }, " Try it for free to see what we can do for you! ", -1)),
589      createBaseVNode("form", {
590        ref: "contact_us_form",
591        class: "grid justify-items-center gap-4",
592        onSubmit: _cache[3] || (_cache[3] = withModifiers((...args) => $options.submitTrialForm && $options.submitTrialForm(...args), ["prevent"]))
593      }, [
594        createVNode(_component_SFInput, {
595          modelValue: $data.form.name,
596          "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => $data.form.name = $event),
597          labelClass: "text-white",
598          class: "w-full",
599          rules: "[required]",
600          label: "First and Last Name"
601        }, null, 8, ["modelValue"]),
602        createVNode(_component_SFInput, {
603          modelValue: $data.form.email,
604          "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => $data.form.email = $event),
605          labelClass: "text-white",
606          class: "w-full",
607          rules: "[required, email]",
608          label: "Email"
609        }, null, 8, ["modelValue"]),
610        createVNode(_component_SFInput, {
611          modelValue: $data.form.phoneNumber,
612          "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => $data.form.phoneNumber = $event),
613          labelClass: "text-white",
614          class: "w-full",
615          rules: "[required, phone]",
616          label: "Phone number"
617        }, null, 8, ["modelValue"]),
618        createVNode(_component_SFButton, {
619          btnText: "Start A Free Trial",
620          btnClass: "bg-white rounded-lg mt-4"
621        })
622      ], 544)
623    ])
624  ]);
625}
626const v1 = /* @__PURE__ */ Object.assign(_export_sfc(_sfc_main$7, [["render", _sfc_render$6]]), { __name: "ElementsOrdantCtaV1" });
627const _sfc_main$6 = {
628  name: "ContactUsO1",
629  components: {
630    SFButton,
631    SFInput
632  },
633  props: {
634    title: {
635      type: String,
636      default: ""
637    },
638    btntext: {
639      type: String,
640      default: ""
641    },
642    btncolor: {
643      type: String,
644      default: ""
645    }
646  },
647  data() {
648    return {
649      form: {
650        name: "",
651        email: "",
652        phoneNumber: ""
653      },
654      user: {
655        title: "",
656        btnText: "",
657        btnColor: ""
658      }
659    };
660  },
661  computed: {},
662  watch: {
663    title: {
664      handler(newVal) {
665        this.user.title = newVal;
666      },
667      immediate: true
668    },
669    btntext: {
670      handler(newVal) {
671        this.user.btnText = newVal;
672      },
673      immediate: true
674    },
675    btncolor: {
676      handler(newVal) {
677        this.user.btnColor = newVal;
678      },
679      immediate: true
680    }
681  },
682  mounted() {
683  },
684  methods: {
685    async submitTrialForm() {
686      var _a, _b;
687      if (this.validateForm(false, "contact_us_form")) {
688        console.log("submitTrialForm", this.form);
689        this.$store.ordantStore.firstName = ((_a = this.form.name.split(" ")) == null ? void 0 : _a[0]) || "";
690        this.$store.ordantStore.lastName = ((_b = this.form.name.split(" ")) == null ? void 0 : _b[1]) || "";
691        this.$store.ordantStore.emailAddresses = this.form.email;
692        this.$store.ordantStore.phoneNumber = this.form.phoneNumber;
693        try {
694          await this.$store.ordantStore.createLead((this._.provides[PageRouteSymbol] || this.$route).name);
695          await this.$store.ordantStore.openPopupForm((this._.provides[PageRouteSymbol] || this.$route).name, "Start A Free Trial", false);
696        } catch (e) {
697          console.error("submitTrialForm", e);
698        }
699      }
700    },
701    validateForm(silent = false, form_ref) {
702      const errs = this.$validateForm(this.$refs[form_ref]);
703      if (!silent) {
704        for (const err of errs) {
705          this.$toast.error(err);
706          if (err) {
707            break;
708          }
709        }
710      }
711      return !(errs == null ? void 0 : errs.length);
712    }
713  }
714};
715const _hoisted_1$5 = { class: "flex h-full max-w-[387px] flex-col" };
716const _hoisted_2$5 = { class: "flex flex-col items-center rounded-t-[20px] bg-white" };
717const _hoisted_3$4 = { class: "grid w-full justify-items-center rounded-t-[20px] bg-[#0087CA] px-[30px] pt-[24px] text-3xl tracking-wide" };
718const _hoisted_4$4 = { class: "grid gap-4 justify-items-center py-12" };
719const _hoisted_5$3 = { class: "fixed sticky top-0 flex flex-col rounded-b-[20px] bg-[#0087CA] px-[30px] py-[24px]" };
720function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
721  const _component_ClientOnly = __nuxt_component_0$1;
722  const _component_NuxtLink = __nuxt_component_1$1;
723  const _component_SFInput = resolveComponent("SFInput");
724  const _component_SFButton = resolveComponent("SFButton");
725  return openBlock(), createElementBlock("div", _hoisted_1$5, [
726    createBaseVNode("div", _hoisted_2$5, [
727      createBaseVNode("div", _hoisted_3$4, [
728        createVNode(_component_ClientOnly, null, {
729          default: withCtx(() => [..._cache[4] || (_cache[4] = [
730            createBaseVNode("img", {
731              src: "https://d2ljs4ffhjgrz3.cloudfront.net/ordant-site-v5/images/svg/logo/white-logo.svg",
732              height: "18px",
733              width: "112px",
734              class: "mb-[10px] h-[11.25px] w-[70px] object-cover lg:h-[29px] lg:w-[177px]",
735              alt: "ordant-logo"
736            }, null, -1)
737          ])]),
738          _: 1
739        })
740      ]),
741      createBaseVNode("div", _hoisted_4$4, [
742        _cache[10] || (_cache[10] = createBaseVNode("div", { class: "text-[21px] font-semibold capitalize" }, "Modules", -1)),
743        createVNode(_component_NuxtLink, {
744          to: "/best-print-estimating-software/",
745          class: "cursor-pointer"
746        }, {
747          default: withCtx(() => [..._cache[5] || (_cache[5] = [
748            createBaseVNode("p", null, " Estimating Module ", -1)
749          ])]),
750          _: 1
751        }),
752        createVNode(_component_NuxtLink, {
753          to: "/print-proofing-software/",
754          class: "cursor-pointer"
755        }, {
756          default: withCtx(() => [..._cache[6] || (_cache[6] = [
757            createBaseVNode("p", null, " Print Proofing Module ", -1)
758          ])]),
759          _: 1
760        }),
761        createVNode(_component_NuxtLink, {
762          to: "/print-estimating-order-management/",
763          class: "cursor-pointer"
764        }, {
765          default: withCtx(() => [..._cache[7] || (_cache[7] = [
766            createBaseVNode("p", null, " Order Management Module ", -1)
767          ])]),
768          _: 1
769        }),
770        createVNode(_component_NuxtLink, {
771          to: "/print-mis-quickbooks-integration/",
772          class: "cursor-pointer"
773        }, {
774          default: withCtx(() => [..._cache[8] || (_cache[8] = [
775            createBaseVNode("p", null, " QuickBooks Module: Desktop & Online ", -1)
776          ])]),
777          _: 1
778        }),
779        createVNode(_component_NuxtLink, {
780          to: "/send-invoices/",
781          class: "cursor-pointer"
782        }, {
783          default: withCtx(() => [..._cache[9] || (_cache[9] = [
784            createBaseVNode("p", null, " Invoicing and Online Payments Module ", -1)
785          ])]),
786          _: 1
787        }),
788        _cache[11] || (_cache[11] = createBaseVNode("div", { class: "text-[21px] font-semibold capitalize" }, "and many more!", -1))
789      ])
790    ]),
791    createBaseVNode("div", _hoisted_5$3, [
792      _cache[12] || (_cache[12] = createBaseVNode("div", { class: "mb-4 text-xl font-medium text-white" }, " Try it for free to see what we can do for you! ", -1)),
793      createBaseVNode("form", {
794        ref: "contact_us_form",
795        class: "grid justify-items-center gap-4",
796        onSubmit: _cache[3] || (_cache[3] = withModifiers((...args) => $options.submitTrialForm && $options.submitTrialForm(...args), ["prevent"]))
797      }, [
798        createVNode(_component_SFInput, {
799          modelValue: $data.form.name,
800          "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => $data.form.name = $event),
801          labelClass: "text-white",
802          class: "w-full",
803          rules: "[required]",
804          label: "First and Last Name"
805        }, null, 8, ["modelValue"]),
806        createVNode(_component_SFInput, {
807          modelValue: $data.form.email,
808          "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => $data.form.email = $event),
809          labelClass: "text-white",
810          class: "w-full",
811          rules: "[required, email]",
812          label: "Email"
813        }, null, 8, ["modelValue"]),
814        createVNode(_component_SFInput, {
815          modelValue: $data.form.phoneNumber,
816          "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => $data.form.phoneNumber = $event),
817          labelClass: "text-white",
818          class: "w-full",
819          rules: "[required, phone]",
820          label: "Phone number"
821        }, null, 8, ["modelValue"]),
822        createVNode(_component_SFButton, {
823          btnText: "Start A Free Trial",
824          btnClass: "bg-white text-center rounded-lg mt-4"
825        })
826      ], 544)
827    ])
828  ]);
829}
830const v2 = /* @__PURE__ */ Object.assign(_export_sfc(_sfc_main$6, [["render", _sfc_render$5]]), { __name: "ElementsOrdantCtaV2" });
831const _sfc_main$5 = {
832  name: "ContactUsO1",
833  components: {
834    SFButton,
835    SFInput
836  },
837  props: {
838    title: {
839      type: String,
840      default: ""
841    },
842    btntext: {
843      type: String,
844      default: ""
845    },
846    btncolor: {
847      type: String,
848      default: ""
849    }
850  },
851  data() {
852    return {
853      form: {
854        name: "",
855        email: "",
856        phoneNumber: ""
857      },
858      user: {
859        title: "",
860        btnText: "",
861        btnColor: ""
862      }
863    };
864  },
865  computed: {},
866  watch: {
867    title: {
868      handler(newVal) {
869        this.user.title = newVal;
870      },
871      immediate: true
872    },
873    btntext: {
874      handler(newVal) {
875        this.user.btnText = newVal;
876      },
877      immediate: true
878    },
879    btncolor: {
880      handler(newVal) {
881        this.user.btnColor = newVal;
882      },
883      immediate: true
884    }
885  },
886  mounted() {
887  },
888  methods: {
889    async submitTrialForm() {
890      var _a, _b;
891      if (this.validateForm(false, "contact_us_form")) {
892        console.log("submitTrialForm", this.form);
893        this.$store.ordantStore.firstName = ((_a = this.form.name.split(" ")) == null ? void 0 : _a[0]) || "";
894        this.$store.ordantStore.lastName = ((_b = this.form.name.split(" ")) == null ? void 0 : _b[1]) || "";
895        this.$store.ordantStore.emailAddresses = this.form.email;
896        this.$store.ordantStore.phoneNumber = this.form.phoneNumber;
897        try {
898          await this.$store.ordantStore.createLead((this._.provides[PageRouteSymbol] || this.$route).name);
899          await this.$store.ordantStore.openPopupForm((this._.provides[PageRouteSymbol] || this.$route).name, "Start A Free Trial", false);
900        } catch (e) {
901          console.error("submitTrialForm", e);
902        }
903      }
904    },
905    validateForm(silent = false, form_ref) {
906      const errs = this.$validateForm(this.$refs[form_ref]);
907      if (!silent) {
908        for (const err of errs) {
909          this.$toast.error(err);
910          if (err) {
911            break;
912          }
913        }
914      }
915      return !(errs == null ? void 0 : errs.length);
916    }
917  }
918};
919const _hoisted_1$4 = { class: "flex h-full max-w-[387px] flex-col" };
920const _hoisted_2$4 = { class: "relative flex flex-col items-center overflow-hidden rounded-t-[20px] bg-blue-T900" };
921const _hoisted_3$3 = { class: "mb-[20px] grid max-h-[102px] min-h-[102px] w-full items-center bg-[#0087CA] px-[30px] pt-[24px] text-3xl tracking-wide text-[#0087CA]" };
922const _hoisted_4$3 = { class: "align-items-center mb-[120px] mt-[8px] flex flex-col gap-y-[10px] text-sm font-medium text-white px-4" };
923const _hoisted_5$2 = { class: "grid grid-cols-2 gap-x-[39px] gap-y-[12px]" };
924const _hoisted_6$2 = { class: "fixed sticky top-0 flex flex-col rounded-b-[20px] bg-[#0087CA] px-[30px] py-[24px]" };
925function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
926  const _component_ClientOnly = __nuxt_component_0$1;
927  const _component_NuxtLink = __nuxt_component_1$1;
928  const _component_SFInput = resolveComponent("SFInput");
929  const _component_SFButton = resolveComponent("SFButton");
930  return openBlock(), createElementBlock("div", _hoisted_1$4, [
931    createBaseVNode("div", _hoisted_2$4, [
932      createBaseVNode("div", _hoisted_3$3, [
933        createVNode(_component_ClientOnly, null, {
934          default: withCtx(() => [..._cache[4] || (_cache[4] = [
935            createBaseVNode("img", {
936              src: "https://d2ljs4ffhjgrz3.cloudfront.net/ordant-site-v5/images/svg/logo/white-logo.svg",
937              height: "18px",
938              width: "112px",
939              class: "object-cover lg:h-[29px] lg:w-[177px]",
940              alt: "ordant-logo"
941            }, null, -1)
942          ])]),
943          _: 1
944        })
945      ]),
946      createBaseVNode("div", _hoisted_4$3, [
947        _cache[12] || (_cache[12] = createBaseVNode("p", { class: "!text-[21px] !font-semibold !capitalize text-white" }, "We Work With:", -1)),
948        createBaseVNode("div", _hoisted_5$2, [
949          createVNode(_component_NuxtLink, {
950            to: "/digital-print-estimating/",
951            class: "cursor-pointer text-white"
952          }, {
953            default: withCtx(() => [..._cache[5] || (_cache[5] = [
954              createTextVNode(" Digital Printing ", -1)
955            ])]),
956            _: 1
957          }),
958          createVNode(_component_NuxtLink, {
959            to: "/wide-format-estimating/",
960            class: "cursor-pointer text-white"
961          }, {
962            default: withCtx(() => [..._cache[6] || (_cache[6] = [
963              createTextVNode(" Large Format ", -1)
964            ])]),
965            _: 1
966          }),
967          createVNode(_component_NuxtLink, {
968            to: "/label-print-estimating/",
969            class: "cursor-pointer text-white"
970          }, {
971            default: withCtx(() => [..._cache[7] || (_cache[7] = [
972              createTextVNode(" Label Printing ", -1)
973            ])]),
974            _: 1
975          }),
976          createVNode(_component_NuxtLink, {
977            to: "/dye-sublimation/",
978            class: "cursor-pointer text-white"
979          }, {
980            default: withCtx(() => [..._cache[8] || (_cache[8] = [
981              createTextVNode(" Sublimation Printing ", -1)
982            ])]),
983            _: 1
984          }),
985          createVNode(_component_NuxtLink, {
986            to: "/screen-print-estimating/",
987            class: "cursor-pointer text-white"
988          }, {
989            default: withCtx(() => [..._cache[9] || (_cache[9] = [
990              createTextVNode(" Screen Printing ", -1)
991            ])]),
992            _: 1
993          }),
994          createVNode(_component_NuxtLink, {
995            to: "/apparel/",
996            class: "cursor-pointer text-white"
997          }, {
998            default: withCtx(() => [..._cache[10] || (_cache[10] = [
999              createTextVNode(" Apparel ", -1)
1000            ])]),
1001            _: 1
1002          }),
1003          createVNode(_component_NuxtLink, {
1004            to: "/vehicle-wrap-estimating-software/",
1005            class: "cursor-pointer text-white"
1006          }, {
1007            default: withCtx(() => [..._cache[11] || (_cache[11] = [
1008              createTextVNode(" Vehicle Wrap ", -1)
1009            ])]),
1010            _: 1
1011          })
1012        ]),
1013        _cache[13] || (_cache[13] = createBaseVNode("p", { class: "!text-[21px] !font-semibold !capitalize text-white" }, "and many more!", -1))
1014      ]),
1015      _cache[14] || (_cache[14] = createStaticVNode('<div class="absolute top-[355px] flex max-h-[68px] flex-row gap-x-[10px]"><img src="data:image/png;base64,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" class="rotate-270 object-cover" alt="screenshot"><img src="data:image/png;base64,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" class="rotate-270 object-cover" alt="screenshot"><img src="data:image/png;base64,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" class="rotate-270 object-cover" alt="screenshot"><img src="data:image/png;base64,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" class="rotate-270 object-cover" alt="screenshot"><img src="data:image/png;base64,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" class="rotate-270 object-cover" alt="screenshot"></div>', 1))
1016    ]),
1017    createBaseVNode("div", _hoisted_6$2, [
1018      _cache[15] || (_cache[15] = createBaseVNode("div", { class: "mb-4 text-xl font-medium text-white" }, " Try it for free to see what we can do for you! ", -1)),
1019      createBaseVNode("form", {
1020        ref: "contact_us_form",
1021        class: "grid justify-items-center gap-4",
1022        onSubmit: _cache[3] || (_cache[3] = withModifiers((...args) => $options.submitTrialForm && $options.submitTrialForm(...args), ["prevent"]))
1023      }, [
1024        createVNode(_component_SFInput, {
1025          modelValue: $data.form.name,
1026          "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => $data.form.name = $event),
1027          labelClass: "text-white",
1028          class: "w-full",
1029          rules: "[required]",
1030          label: "First and Last Name"
1031        }, null, 8, ["modelValue"]),
1032        createVNode(_component_SFInput, {
1033          modelValue: $data.form.email,
1034          "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => $data.form.email = $event),
1035          labelClass: "text-white",
1036          class: "w-full",
1037          rules: "[required, email]",
1038          label: "Email"
1039        }, null, 8, ["modelValue"]),
1040        createVNode(_component_SFInput, {
1041          modelValue: $data.form.phoneNumber,
1042          "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => $data.form.phoneNumber = $event),
1043          labelClass: "text-white",
1044          class: "w-full",
1045          rules: "[required, phone]",
1046          label: "Phone number"
1047        }, null, 8, ["modelValue"]),
1048        createVNode(_component_SFButton, {
1049          btnText: "Start A Free Trial",
1050          btnClass: "bg-white rounded-lg mt-4"
1051        })
1052      ], 544)
1053    ])
1054  ]);
1055}
1056const v3 = /* @__PURE__ */ Object.assign(_export_sfc(_sfc_main$5, [["render", _sfc_render$4]]), { __name: "ElementsOrdantCtaV3" });
1057const _sfc_main$4 = {
1058  __name: "ElementsOrdantCtaRandomBlogCta",
1059  setup(__props) {
1060    const components = ref(["v1", "v2", "v3"]);
1061    const randomIndex = ref(Math.floor(Math.random() * components.value.length));
1062    return (_ctx, _cache) => {
1063      const _component_ClientOnly = __nuxt_component_0$1;
1064      return openBlock(), createElementBlock("div", null, [
1065        createVNode(_component_ClientOnly, null, {
1066          default: withCtx(() => [
1067            unref(randomIndex) === 0 ? (openBlock(), createBlock(v1, { key: 0 })) : createCommentVNode("", true),
1068            unref(randomIndex) === 1 ? (openBlock(), createBlock(v2, { key: 1 })) : createCommentVNode("", true),
1069            unref(randomIndex) === 2 ? (openBlock(), createBlock(v3, { key: 2 })) : createCommentVNode("", true)
1070          ]),
1071          _: 1
1072        })
1073      ]);
1074    };
1075  }
1076};
1077const _sfc_main$3 = defineNuxtComponent(
1078  {
1079    name: "FAQList",
1080    components: {
1081      FAQPreview
1082    },
1083    props: {
1084      showTitle: {
1085        type: Boolean,
1086        default: true
1087      },
1088      faqCategories: {
1089        type: Array,
1090        default: () => []
1091      },
1092      faqs: {
1093        type: Array,
1094        default: () => []
1095      },
1096      pageData: {
1097        type: Object,
1098        default: () => {
1099        }
1100      }
1101    },
1102    data() {
1103      return {};
1104    },
1105    computed: {
1106      FAQPageTitle() {
1107        return (this._.provides[PageRouteSymbol] || this.$route).params.pageId ? "Related" : "Frequently Asked Questions";
1108      }
1109    },
1110    mounted() {
1111    }
1112  },
1113  "$L2pPItLDaS"
1114  /* nuxt-injected */
1115);
1116const _hoisted_1$3 = { class: "relative grid gap-8 bg-gray-50 px-6 pb-8 pt-8 xl:px-8 xl:pb-16 xl:pt-16" };
1117const _hoisted_2$3 = {
1118  key: 0,
1119  class: "relative mx-auto w-full max-w-[100rem]"
1120};
1121const _hoisted_3$2 = {
1122  key: 0,
1123  class: "pb-12 text-3xl font-bold tracking-tight text-gray-900 sm:text-4xl"
1124};
1125const _hoisted_4$2 = { class: "mx-auto grid w-full max-w-[100rem] gap-5" };
1126const _hoisted_5$1 = {
1127  key: 1,
1128  class: "relative mx-auto w-full max-w-[100rem]"
1129};
1130const _hoisted_6$1 = {
1131  key: 0,
1132  class: "pb-12 text-3xl font-bold tracking-tight text-gray-900 sm:text-4xl"
1133};
1134const _hoisted_7$1 = { class: "mx-auto grid max-w-lg gap-5 xl:max-w-none xl:grid-cols-3" };
1135function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) {
1136  var _a, _b, _c;
1137  const _component_FAQPreview = resolveComponent("FAQPreview");
1138  return openBlock(), createElementBlock("div", _hoisted_1$3, [
1139    ((_a = _ctx.faqs) == null ? void 0 : _a.length) ? (openBlock(), createElementBlock("div", _hoisted_2$3, [
1140      ((_b = _ctx.faqCategories) == null ? void 0 : _b.length) ? (openBlock(), createElementBlock("h2", _hoisted_3$2, toDisplayString(_ctx.FAQPageTitle), 1)) : createCommentVNode("", true),
1141      createBaseVNode("div", _hoisted_4$2, [
1142        (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.faqs, (faq, key) => {
1143          return openBlock(), createBlock(_component_FAQPreview, {
1144            key,
1145            pageData: _ctx.pageData,
1146            faq
1147          }, null, 8, ["pageData", "faq"]);
1148        }), 128))
1149      ])
1150    ])) : createCommentVNode("", true),
1151    ((_c = _ctx.faqCategories) == null ? void 0 : _c.length) ? (openBlock(), createElementBlock("div", _hoisted_5$1, [
1152      _ctx.showTitle ? (openBlock(), createElementBlock("h2", _hoisted_6$1, " Related Categories ")) : createCommentVNode("", true),
1153      createBaseVNode("div", _hoisted_7$1, [
1154        (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.faqCategories, (faqCat, key) => {
1155          return openBlock(), createBlock(_component_FAQPreview, {
1156            key,
1157            pageData: _ctx.pageData,
1158            faq: faqCat
1159          }, null, 8, ["pageData", "faq"]);
1160        }), 128))
1161      ])
1162    ])) : createCommentVNode("", true)
1163  ]);
1164}
1165const FAQList = /* @__PURE__ */ Object.assign(_export_sfc(_sfc_main$3, [["render", _sfc_render$3]]), { __name: "ElementsFAQList" });
1166const _sfc_main$2 = defineNuxtComponent(
1167  {
1168    name: "BlogPage",
1169    components: {
1170      FAQList,
1171      PageHeaderBlog,
1172      BlogList,
1173      RandomBlogCta: _sfc_main$4
1174    },
1175    props: {
1176      blog_id: { type: String }
1177    },
1178    // ---- NEW: setup() + useAsyncData (reactive to prop/route + store readiness)
1179    setup(props) {
1180      var _a;
1181      const route = useRoute();
1182      const { $store } = useNuxtApp();
1183      const blogId = computed(() => {
1184        var _a2;
1185        return (_a2 = props.blog_id) != null ? _a2 : route.params.pageId;
1186      });
1187      const pagesKey = computed(() => {
1188        var _a2, _b, _c;
1189        return ((_c = (_b = (_a2 = $store.config) == null ? void 0 : _a2.getStoreConfig) == null ? void 0 : _b.pages) == null ? void 0 : _c.length) || 0;
1190      });
1191      const pageData = ref(null);
1192      const blogTop = ref(null);
1193      const blogBottom = ref(null);
1194      const { data, pending, error } = useAsyncData(
1195        () => `blog:${blogId.value}:${pagesKey.value}`,
1196        async () => {
1197          var _a2, _b, _c, _d;
1198          const cfg = ((_a2 = $store.config) == null ? void 0 : _a2.getStoreConfig) || {};
1199          const pages = cfg.pages || [];
1200          let page = null;
1201          const id = blogId.value;
1202          if (pages.length && id) {
1203            page = pages.find(
1204              (p) => {
1205                var _a3, _b2, _c2;
1206                return ((p == null ? void 0 : p._id) === id || ((_b2 = (_a3 = p == null ? void 0 : p.parent_page) == null ? void 0 : _a3.seo) == null ? void 0 : _b2.slug) === id || ((_c2 = p == null ? void 0 : p.seo) == null ? void 0 : _c2.slug) === id) && (p == null ? void 0 : p.type) === "blog";
1207              }
1208            );
1209          }
1210          if (!page && id) {
1211            const blog_menu = (_b = cfg.menus) == null ? void 0 : _b.blogs;
1212            page = findDeep(blog_menu, (c) => (c == null ? void 0 : c.link) === id);
1213          }
1214          const indexPage = id ? null : resolveBlogIndexPage(pages);
1215          let top = pages.find((p) => {
1216            var _a3, _b2;
1217            return ((_a3 = p == null ? void 0 : p.seo) == null ? void 0 : _a3.slug) === "blog-top" || ((_b2 = p == null ? void 0 : p.seo) == null ? void 0 : _b2.slug) === "blogtop";
1218          });
1219          let bottom = pages.find(
1220            (p) => {
1221              var _a3, _b2;
1222              return ((_a3 = p == null ? void 0 : p.seo) == null ? void 0 : _a3.slug) === "blog-bottom" || ((_b2 = p == null ? void 0 : p.seo) == null ? void 0 : _b2.slug) === "blogbottom";
1223            }
1224          );
1225          if ((_c = top == null ? void 0 : top.editorJsonData) == null ? void 0 : _c.html) {
1226            top = {
1227              ...top,
1228              editorJsonData: {
1229                ...top.editorJsonData,
1230                html: stripBodyMainFromHtml(top.editorJsonData.html)
1231              }
1232            };
1233          }
1234          if ((_d = bottom == null ? void 0 : bottom.editorJsonData) == null ? void 0 : _d.html) {
1235            bottom = {
1236              ...bottom,
1237              editorJsonData: {
1238                ...bottom.editorJsonData,
1239                html: stripBodyMainFromHtml(bottom.editorJsonData.html)
1240              }
1241            };
1242          }
1243          return {
1244            pageData: (page == null ? void 0 : page.parent_page) || page || null,
1245            // The UNCOLLAPSED record, for SEO only. `parent_page` is frequently an
1246            // empty object `{}`, which is truthy — so `pageData` above collapses to
1247            // a record with no `seo` bag at all and every such post rendered with an
1248            // empty <title>. `pickPageSeo` looks in both places, so hand it the
1249            // original rather than change what the template renders.
1250            seoSource: page || indexPage || null,
1251            blogTop: top || null,
1252            blogBottom: bottom || null
1253          };
1254        },
1255        { watch: [blogId, pagesKey] }
1256      );
1257      watchEffect(() => {
1258        var _a2, _b, _c;
1259        pageData.value = ((_a2 = data.value) == null ? void 0 : _a2.pageData) || null;
1260        blogTop.value = ((_b = data.value) == null ? void 0 : _b.blogTop) || null;
1261        blogBottom.value = ((_c = data.value) == null ? void 0 : _c.blogBottom) || null;
1262      });
1263      const siteSeo = ((_a = useRuntimeConfig().public) == null ? void 0 : _a.seo) || {};
1264      const blogSeo = computed(() => {
1265        var _a2;
1266        const source = ((_a2 = data.value) == null ? void 0 : _a2.seoSource) || pageData.value;
1267        const seo = source ? pickPageSeo(source) : null;
1268        if (seo == null ? void 0 : seo.title) {
1269          return seo;
1270        }
1271        if (!blogId.value) {
1272          const site = siteSeo.siteName ? ` | ${siteSeo.siteName}` : "";
1273          return {
1274            title: `Blog${site}`,
1275            description: siteSeo.siteName ? `Articles, guides and updates from ${siteSeo.siteName}.` : "Articles, guides and updates.",
1276            keywords: ""
1277          };
1278        }
1279        return seo;
1280      });
1281      const blogImage = computed(() => {
1282        var _a2, _b, _c;
1283        const thumbnail = ((_b = (_a2 = data.value) == null ? void 0 : _a2.seoSource) == null ? void 0 : _b.thumbnail) || ((_c = pageData.value) == null ? void 0 : _c.thumbnail);
1284        return thumbnail ? absoluteImageUrl(siteSeo.origin, displayImage(thumbnail)) : "";
1285      });
1286      useHead(() => {
1287        var _a2, _b;
1288        const seo = blogSeo.value;
1289        if (!seo) {
1290          return {};
1291        }
1292        const url = buildCanonicalUrl(siteSeo.origin, route.path);
1293        const isPost = !!blogId.value && !!((_a2 = data.value) == null ? void 0 : _a2.seoSource);
1294        const source = ((_b = data.value) == null ? void 0 : _b.seoSource) || pageData.value;
1295        let article = null;
1296        if (isPost) {
1297          article = jsonLdScript(
1298            buildArticleJsonLd({
1299              origin: siteSeo.origin,
1300              url,
1301              title: seo.title,
1302              description: seo.description,
1303              image: blogImage.value,
1304              // `displayDate` is what the post shows the reader; fall back to the
1305              // record timestamps so a post is never dateless.
1306              publishedAt: (source == null ? void 0 : source.displayDate) || (source == null ? void 0 : source.createdAt),
1307              updatedAt: source == null ? void 0 : source.updatedAt,
1308              authorName: source == null ? void 0 : source.author,
1309              publisherName: siteSeo.siteName
1310            }),
1311            "ld-article"
1312          );
1313        }
1314        return {
1315          title: seo.title,
1316          meta: [
1317            { hid: "description", name: "description", content: seo.description },
1318            { hid: "keywords", name: "keywords", content: seo.keywords },
1319            ...buildSocialMeta({
1320              title: seo.title,
1321              description: seo.description,
1322              image: blogImage.value,
1323              siteName: siteSeo.siteName,
1324              type: isPost ? "article" : "website"
1325            })
1326          ],
1327          script: article ? [article] : []
1328        };
1329      });
1330      const isServer = false;
1331      return { pageData, blogTop, blogBottom, pending, error, isServer };
1332    },
1333    data() {
1334      return {
1335        hasMounted: false
1336      };
1337    },
1338    computed: {
1339      computedVideoUrl() {
1340        var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j;
1341        let videoId = this.$extractYoutubeVideoId(
1342          ((_c = (_b = (_a = this.pageData) == null ? void 0 : _a.parent_page) == null ? void 0 : _b.editorJsonData) == null ? void 0 : _c.videoUrl) || ((_e = (_d = this.pageData) == null ? void 0 : _d.editorJsonData) == null ? void 0 : _e.videoUrl)
1343        );
1344        if (videoId) {
1345          return `https://www.youtube.com/embed/${videoId}?rel=0`;
1346        } else {
1347          return ((_h = (_g = (_f = this.pageData) == null ? void 0 : _f.parent_page) == null ? void 0 : _g.editorJsonData) == null ? void 0 : _h.videoUrl) || ((_j = (_i = this.pageData) == null ? void 0 : _i.editorJsonData) == null ? void 0 : _j.videoUrl);
1348        }
1349      },
1350      // Keep your original list logic (filters by category when pageData exists,
1351      // else returns all blogs sorted by date)
1352      blogList() {
1353        var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k;
1354        let blogs = [];
1355        if ((_a = this.pageData) == null ? void 0 : _a._id) {
1356          let pages = (_c = (_b = this.$store.config) == null ? void 0 : _b.getStoreConfig) == null ? void 0 : _c.pages;
1357          for (let page of pages || []) {
1358            if (!this.$store.auth.loggedIn && (page == null ? void 0 : page.forGuest) === false) continue;
1359            let categories = ((_d = page == null ? void 0 : page.parent_page) == null ? void 0 : _d.contentCategories) || page.contentCategories || [];
1360            if (categories.includes((_e = this.pageData) == null ? void 0 : _e._id)) blogs.push(page);
1361          }
1362        } else if ((_h = (_g = (_f = this.$store.config) == null ? void 0 : _f.getStoreConfig) == null ? void 0 : _g.pages) == null ? void 0 : _h.length) {
1363          blogs = (_k = (_j = (_i = this.$store.config) == null ? void 0 : _i.getStoreConfig) == null ? void 0 : _j.pages) == null ? void 0 : _k.filter((p) => p.type === "blog");
1364          blogs.sort((a, b) => new Date(b.date) - new Date(a.date));
1365        }
1366        return blogs;
1367      },
1368      blogCategories() {
1369        var _a, _b, _c, _d, _e;
1370        let blogChildren = (_d = (_c = (_b = (_a = this.$store.config) == null ? void 0 : _a.getStoreConfig) == null ? void 0 : _b.menus) == null ? void 0 : _c.blogs) == null ? void 0 : _d.children;
1371        let currentPage = this.$findDeep(blogChildren, (c) => {
1372          var _a2;
1373          return (c == null ? void 0 : c.parentPageId) === ((_a2 = this.pageData) == null ? void 0 : _a2._id);
1374        });
1375        let nestedChildren = (currentPage == null ? void 0 : currentPage.children) || blogChildren || [];
1376        return ((_e = this.pageData) == null ? void 0 : _e.children) || nestedChildren;
1377      }
1378    },
1379    // Preserve your old behavior that (on prop change) re-renders the blocks client-side.
1380    // Now it will cooperate with useAsyncData (these will just render once data is there).
1381    watch: {
1382      blog_id: {
1383        async handler(blog_id) {
1384          var _a, _b, _c, _d, _e, _f, _g, _h;
1385          let page = null;
1386          if (((_c = (_b = (_a = this.$store.config) == null ? void 0 : _a.getStoreConfig) == null ? void 0 : _b.pages) == null ? void 0 : _c.length) && blog_id) {
1387            page = (_e = (_d = this.$store.config) == null ? void 0 : _d.getStoreConfig) == null ? void 0 : _e.pages.find(
1388              (p) => {
1389                var _a2, _b2, _c2;
1390                return ((p == null ? void 0 : p._id) === blog_id || ((_b2 = (_a2 = p == null ? void 0 : p.parent_page) == null ? void 0 : _a2.seo) == null ? void 0 : _b2.slug) === blog_id || ((_c2 = p == null ? void 0 : p.seo) == null ? void 0 : _c2.slug) === blog_id) && p.t
1390ype === "blog";
1391              }
1392            );
1393          }
1394          if (!page) {
1395            let blog_menu = (_h = (_g = (_f = this.$store.config) == null ? void 0 : _f.getStoreConfig) == null ? void 0 : _g.menus) == null ? void 0 : _h.blogs;
1396            page = findDeep(blog_menu, (c) => (c == null ? void 0 : c.link) === blog_id);
1397          }
1398          if (page) this.pageData = (page == null ? void 0 : page.parent_page) || page;
1399          {
1400            this.$nextTick(async () => {
1401              await this.isMounted();
1402              if (this.blog_id) this.setBlogPage();
1403              this.setBlogTopPage();
1404              this.setBlogBottomPage();
1405            });
1406          }
1407        },
1408        immediate: true
1409      },
1410      // Also react when page data or top/bottom content arrives via useAsyncData
1411      pageData: {
1412        async handler() {
1413          {
1414            this.$nextTick(async () => {
1415              await this.isMounted();
1416              this.setBlogPage();
1417            });
1418          }
1419        },
1420        immediate: true
1421      },
1422      blogTop: {
1423        async handler() {
1424          {
1425            this.$nextTick(async () => {
1426              await this.isMounted();
1427              this.setBlogTopPage();
1428            });
1429          }
1430        },
1431        immediate: true
1432      },
1433      blogBottom: {
1434        async handler() {
1435          {
1436            this.$nextTick(async () => {
1437              await this.isMounted();
1438              this.setBlogBottomPage();
1439            });
1440          }
1441        },
1442        immediate: true
1443      }
1444    },
1445    mounted() {
1446      var _a;
1447      if (!this.$store.auth.loggedIn && ((_a = this.pageData) == null ? void 0 : _a.forGuest) === false) {
1448        return this.$router.push("/login");
1449      }
1450      this.hasMounted = true;
1451    },
1452    methods: {
1453      async isMounted() {
1454        if (!this.hasMounted) {
1455          await this.$sleep(100);
1456          return this.isMounted();
1457        } else {
1458          return true;
1459        }
1460      },
1461      async setBlogPage() {
1462        var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j;
1463        if (!this.pageData && this.blog_id) {
1464          await this.fetchCmsPage();
1465        }
1466        if ((_b = (_a = this.pageData) == null ? void 0 : _a.editorJsonData) == null ? void 0 : _b.html) {
1467          {
1468            renderHtml(this.$preserveEmptyPTags((_d = (_c = this.pageData) == null ? void 0 : _c.editorJsonData) == null ? void 0 : _d.html));
1469            applyCustomerCSS(
1470              ((_f = (_e = this.pageData) == null ? void 0 : _e.editorJsonData) == null ? void 0 : _f.customCSS) || "",
1471              "ordant_customer_page_css"
1472            );
1473            attachClickListener(this.$refs.htmlContainer, this.onLinkClick);
1474            if ((_h = (_g = this.pageData) == null ? void 0 : _g.editorJsonData) == null ? void 0 : _h.customScript) {
1475              await applyCustomJSPlugins((_j = (_i = this.pageData) == null ? void 0 : _i.editorJsonData) == null ? void 0 : _j.customScript);
1476            }
1477          }
1478        }
1479      },
1480      onLinkClick(event) {
1481        event.preventDefault();
1482        const target = event.target.closest("a");
1483        if (!target) return;
1484        const cleanUrl = window.location.href.split("#")[0];
1485        window.history.replaceState(null, "", cleanUrl);
1486        const href = target.href;
1487        if (!href) return;
1488        const [action, id] = Object.entries({
1489          "#redirect_": (redirectUrl) => this.$router.push(redirectUrl),
1490          "#openDrawer_": (drawerId) => this.$store.drawer.openDrawer(drawerId),
1491          "#openModal_": (modalId) => {
1492            const btnTextMap = { trial: "Start A Free Trial", demo: "Schedule A Demo" };
1493            const btnText = btnTextMap[modalId] || "";
1494            this.$store.ordantStore.openPopupForm((this._.provides[PageRouteSymbol] || this.$route).name, btnText);
1495          }
1496        }).find(([prefix]) => href.includes(prefix)) || [];
1497        if (action && id) {
1498          const value = href.split(action)[1];
1499          id(value);
1500        }
1501      },
1502      async fetchCmsPage() {
1503        var _a;
1504        if (!this.blog_id) return;
1505        const response = await this.$store.cmsPage.getPage(this.blog_id);
1506        let page = ((_a = response == null ? void 0 : response.data) == null ? void 0 : _a.data) || {};
1507        this.pageData = (page == null ? void 0 : page.parent_page) || page;
1508      },
1509      createStyleTag(styleCss) {
1510        const head = document.head || document.getElementsByTagName("head")[0];
1511        const style = document.createElement("style");
1512        head.appendChild(style);
1513        style.appendChild(document.createTextNode(styleCss));
1514      },
1515      async setBlogTopPage() {
1516        var _a, _b, _c, _d, _e, _f, _g, _h;
1517        if ((_b = (_a = this.blogTop) == null ? void 0 : _a.editorJsonData) == null ? void 0 : _b.html) {
1518          renderHtml(this.blogTop.editorJsonData.html, "ordant_customer_1");
1519          applyCustomerCSS(
1520            ((_d = (_c = this.pageData) == null ? void 0 : _c.editorJsonData) == null ? void 0 : _d.customCSS) || "",
1521            "ordant_customer_page_cssTop"
1522          );
1523          attachClickListener(this.$refs.htmlContainer1, this.onLinkClick);
1524          if ((_f = (_e = this.pageData) == null ? void 0 : _e.editorJsonData) == null ? void 0 : _f.customScript) {
1525            await applyCustomJSPlugins((_h = (_g = this.pageData) == null ? void 0 : _g.editorJsonData) == null ? void 0 : _h.customScript);
1526          }
1527        }
1528      },
1529      async setBlogBottomPage() {
1530        var _a, _b, _c, _d, _e, _f, _g, _h;
1531        if ((_b = (_a = this.blogBottom) == null ? void 0 : _a.editorJsonData) == null ? void 0 : _b.html) {
1532          renderHtml(this.blogBottom.editorJsonData.html, "ordant_customer_2");
1533          applyCustomerCSS(
1534            ((_d = (_c = this.pageData) == null ? void 0 : _c.editorJsonData) == null ? void 0 : _d.customCSS) || "",
1535            "ordant_customer_page_cssBot"
1536          );
1537          attachClickListener(this.$refs.htmlContainer2, this.onLinkClick);
1538          if ((_f = (_e = this.pageData) == null ? void 0 : _e.editorJsonData) == null ? void 0 : _f.customScript) {
1539            await applyCustomJSPlugins((_h = (_g = this.pageData) == null ? void 0 : _g.editorJsonData) == null ? void 0 : _h.customScript);
1540          }
1541        }
1542      }
1543    }
1544  },
1545  "$wsYobsZ5pU"
1546  /* nuxt-injected */
1547);
1548const _hoisted_1$2 = { class: "page blog-page mx-auto w-screen max-w-[1440px]" };
1549const _hoisted_2$2 = {
1550  key: 0,
1551  class: "mx-auto grid w-full max-w-[1440px] justify-items-center gap-8"
1552};
1553const _hoisted_3$1 = {
1554  id: "ordant_customer_1",
1555  ref: "htmlContainer1",
1556  class: "gap-page grid w-full"
1557};
1558const _hoisted_4$1 = ["innerHTML"];
1559const _hoisted_5 = { class: "relative mx-auto grid w-full max-w-[1440px] justify-items-center gap-8 lg:grid-cols-[1fr,387px]" };
1560const _hoisted_6 = { class: "gap-section mx-auto grid w-full max-w-[778px]" };
1561const _hoisted_7 = { class: "gap-section grid" };
1562const _hoisted_8 = ["src", "alt"];
1563const _hoisted_9 = {
1564  id: "ordant_customer",
1565  ref: "htmlContainer",
1566  class: ""
1567};
1568const _hoisted_10 = ["innerHTML"];
1569const _hoisted_11 = { class: "sticky top-0 hidden w-full lg:flex" };
1570const _hoisted_12 = {
1571  key: 1,
1572  class: "aspect-h-9 aspect-w-16 relative w-full"
1573};
1574const _hoisted_13 = ["src"];
1575const _hoisted_14 = {
1576  id: "ordant_customer_2",
1577  ref: "htmlContainer2",
1578  class: "gap-page grid w-full"
1579};
1580const _hoisted_15 = ["innerHTML"];
1581function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
1582  var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _A, _B, _C, _D, _E, _F, _G, _H, _I, _J, _K, _L, _M, _N;
1583  const _component_PageHeaderBlog = resolveComponent("PageHeaderBlog");
1584  const _component_RandomBlogCta = resolveComponent("RandomBlogCta");
1585  const _component_BlogList = resolveComponent("BlogList");
1586  return openBlock(), createElementBlock("div", _hoisted_1$2, [
1587    !_ctx.blog_id ? (openBlock(), createElementBlock("div", _hoisted_2$2, [
1588      createBaseVNode("div", _hoisted_3$1, [
1589        withDirectives(createBaseVNode("div", null, [
1590          createBaseVNode("div", {
1591            innerHTML: _ctx.$preserveEmptyPTags((_b = (_a = _ctx.blogTop) == null ? void 0 : _a.editorJsonData) == null ? void 0 : _b.html)
1592          }, null, 8, _hoisted_4$1)
1593        ], 512), [
1594          [vShow, _ctx.isServer && ((_d = (_c = _ctx.blogTop) == null ? void 0 : _c.editorJsonData) == null ? void 0 : _d.html)]
1595        ])
1596      ], 512)
1597    ])) : createCommentVNode("", true),
1598    withDirectives(createVNode(_component_PageHeaderBlog, {
1599      title: (_e = _ctx.pageData) == null ? void 0 : _e.title,
1600      subtitle: `${((_f = _ctx.pageData) == null ? void 0 : _f.author) ? ((_g = _ctx.pageData) == null ? void 0 : _g.author) + "," : ""} ${((_h = _ctx.pageData) == null ? void 0 : _h.type) === "page_category" ? "" : _ctx.$moment((_i = _ctx.pageData) == null ? void 0 : _i.date).format("DD-MMMM-YYYY")}`
1601    }, null, 8, ["title", "subtitle"]), [
1602      [vShow, ((_j = _ctx.pageData) == null ? void 0 : _j.title) && !((_l = (_k = _ctx.blogTop) == null ? void 0 : _k.editorJsonData) == null ? void 0 : _l.html)]
1603    ]),
1604    withDirectives(createBaseVNode("div", _hoisted_5, [
1605      withDirectives(createBaseVNode("div", _hoisted_6, [
1606        createBaseVNode("div", _hoisted_7, [
1607          createBaseVNode("h1", null, toDisplayString((_m = _ctx.pageData) == null ? void 0 : _m.title), 1),
1608          createBaseVNode("div", null, [
1609            createBaseVNode("img", {
1610              src: _ctx.$displayImage((_n = _ctx.pageData) == null ? void 0 : _n.thumbnail),
1611              alt: ((_o = _ctx.pageData) == null ? void 0 : _o.subtitle) || ((_p = _ctx.pageData) == null ? void 0 : _p.title)
1612            }, null, 8, _hoisted_8)
1613          ])
1614        ]),
1615        createBaseVNode("div", _hoisted_9, [
1616          withDirectives(createBaseVNode("div", null, [
1617            createBaseVNode("div", {
1618              innerHTML: _ctx.$preserveEmptyPTags((_r = (_q = _ctx.pageData) == null ? void 0 : _q.editorJsonData) == null ? void 0 : _r.html)
1619            }, null, 8, _hoisted_10)
1620          ], 512), [
1621            [vShow, _ctx.isServer && ((_t = (_s = _ctx.pageData) == null ? void 0 : _s.editorJsonData) == null ? void 0 : _t.html)]
1622          ])
1623        ], 512)
1624      ], 512), [
1625        [vShow, (_v = (_u = _ctx.pageData) == null ? void 0 : _u.editorJsonData) == null ? void 0 : _v.html]
1626      ]),
1627      withDirectives(createBaseVNode("div", _hoisted_11, [
1628        createVNode(_component_RandomBlogCta)
1629      ], 512), [
1630        [vShow, !_ctx.isServer && ((_x = (_w = _ctx.pageData) == null ? void 0 : _w.editorJsonData) == null ? void 0 : _x.html)]
1631      ])
1632    ], 512), [
1633      [vShow, (_z = (_y = _ctx.pageData) == null ? void 0 : _y.editorJsonData) == null ? void 0 : _z.html]
1634    ]),
1635    ((_C = (_B = (_A = _ctx.pageData) == null ? void 0 : _A.parent_page) == null ? void 0 : _B.editorJsonData) == null ? void 0 : _C.videoUrl) || ((_E = (_D = _ctx.pageData) == null ? void 0 : _D.editorJsonData) == null ? void 0 : _E.videoUrl) ? (openBlock(), createElementBlock("div", _hoisted_12, [
1636      createBaseVNode("iframe", {
1637        src: _ctx.computedVideoUrl,
1638        allow: "fullscreen;",
1639        class: "absolute left-0 top-0 h-full w-full"
1640      }, null, 8, _hoisted_13)
1641    ])) : createCommentVNode("", true),
1642    ((_F = _ctx.blogList) == null ? void 0 : _F.length) || ((_G = _ctx.blogCategories) == null ? void 0 : _G.length) ? (openBlock(), createBlock(_component_BlogList, {
1643      key: 2,
1644      showTitle: !!((_I = (_H = _ctx.pageData) == null ? void 0 : _H.parent_page) == null ? void 0 : _I.editorJsonData) || !!((_J = _ctx.pageData) == null ? void 0 : _J.editorJsonData),
1645      blogCategories: _ctx.blogCategories,
1646      blogs: _ctx.blogList
1647    }, null, 8, ["showTitle", "blogCategories", "blogs"])) : createCommentVNode("", true),
1648    createBaseVNode("div", _hoisted_14, [
1649      withDirectives(createBaseVNode("div", null, [
1650        createBaseVNode("div", {
1651          innerHTML: _ctx.$preserveEmptyPTags((_L = (_K = _ctx.blogBottom) == null ? void 0 : _K.editorJsonData) == null ? void 0 : _L.html)
1652        }, null, 8, _hoisted_15)
1653      ], 512), [
1654        [vShow, _ctx.isServer && ((_N = (_M = _ctx.blogBottom) == null ? void 0 : _M.editorJsonData) == null ? void 0 : _N.html)]
1655      ])
1656    ], 512)
1657  ]);
1658}
1659const __nuxt_component_0 = /* @__PURE__ */ Object.assign(_export_sfc(_sfc_main$2, [["render", _sfc_render$2], ["__scopeId", "data-v-cf1413c1"]]), { __name: "BlogPage" });
1660const _sfc_main$1 = defineNuxtComponent(
1661  {
1662    name: "FAQPage",
1663    components: { SFButton, PageHeader, FAQList },
1664    props: {
1665      FAQ_id: { type: String }
1666    },
1667    // Reactive data fetching that cooperates with Nuxt prefetching
1668    setup(props) {
1669      var _a;
1670      const route = useRoute();
1671      const { $store } = useNuxtApp();
1672      const faqId = computed(() => {
1673        var _a2;
1674        return (_a2 = props.FAQ_id) != null ? _a2 : route.params.pageId;
1675      });
1676      const pagesKey = computed(() => {
1677        var _a2, _b, _c;
1678        return ((_c = (_b = (_a2 = $store.config) == null ? void 0 : _a2.getStoreConfig) == null ? void 0 : _b.pages) == null ? void 0 : _c.length) || 0;
1679      });
1680      const pageData = ref(null);
1681      const { data, pending, error } = useAsyncData(
1682        () => `faq:${faqId.value}:${pagesKey.value}`,
1683        async () => {
1684          var _a2, _b;
1685          const cfg = ((_a2 = $store.config) == null ? void 0 : _a2.getStoreConfig) || {};
1686          const pages = cfg.pages || [];
1687          const id = faqId.value;
1688          let page = null;
1689          if (pages.length && id) {
1690            page = pages.find(
1691              (p) => {
1692                var _a3, _b2, _c, _d, _e, _f, _g;
1693                return (((_b2 = (_a3 = p == null ? void 0 : p.parent_page) == null ? void 0 : _a3.type) == null ? void 0 : _b2.includes("kb")) || ((_d = (_c = p == null ? void 0 : p.parent_page) == null ? void 0 : _c.type) == null ? void 0 : _d.includes("knowledge-base"))) && ((p == null ? void 0 : p._id) === id || ((_f = (_e = p == null ? void 0 : p.parent_page) == null ? void 0 : _e.seo) == null ? void 0 : _f.slug) === id || ((_g = p == null ? void 0 : p.seo) == null ? void 0 : _g.slug) === id);
1694              }
1695            );
1696          }
1697          if (!page) {
1698            const kb_menu = (_b = cfg.menus) == null ? void 0 : _b.knowledgeBases;
1699            page = findDeep(kb_menu, (c) => (c == null ? void 0 : c.link) === id);
1700          }
1701          return { pageData: (page == null ? void 0 : page.parent_page) || page || null, seoSource: page || null };
1702        },
1703        { watch: [faqId, pagesKey] }
1704      );
1705      watchEffect(() => {
1706        var _a2;
1707        pageData.value = ((_a2 = data.value) == null ? void 0 : _a2.pageData) || null;
1708      });
1709      const siteSeo = ((_a = useRuntimeConfig().public) == null ? void 0 : _a.seo) || {};
1710      const kbSeo = computed(() => {
1711        var _a2;
1712        const source = ((_a2 = data.value) == null ? void 0 : _a2.seoSource) || pageData.value;
1713        const seo = source ? pickPageSeo(source) : null;
1714        if (seo == null ? void 0 : seo.title) {
1715          return seo;
1716        }
1717        if (!faqId.value) {
1718          const site = siteSeo.siteName ? ` | ${siteSeo.siteName}` : "";
1719          return {
1720            title: `Knowledge Base${site}`,
1721            description: siteSeo.siteName ? `Help articles, answers and product guides from ${siteSeo.siteName}.` : "Help articles, answers and product guides.",
1722            keywords: ""
1723          };
1724        }
1725        return seo;
1726      });
1727      useHead(() => {
1728        const seo = kbSeo.value;
1729        if (!seo) {
1730          return {};
1731        }
1732        return {
1733          title: seo.title,
1734          meta: [
1735            { hid: "description", name: "description", content: seo.description },
1736            { hid: "keywords", name: "keywords", content: seo.keywords },
1737            ...buildSocialMeta({
1738              title: seo.title,
1739              description: seo.description,
1740              siteName: siteSeo.siteName,
1741              type: "article"
1742            })
1743          ]
1744        };
1745      });
1746      const isServer = false;
1747      return { pageData, pending, error, isServer };
1748    },
1749    data() {
1750      return {};
1751    },
1752    computed: {
1753      computedVideoUrl() {
1754        var _a, _b, _c, _d, _e;
1755        const v = ((_c = (_b = (_a = this.pageData) == null ? void 0 : _a.parent_page) == null ? void 0 : _b.editorJsonData) == null ? void 0 : _c.videoUrl) || ((_e = (_d = this.pageData) == null ? void 0 : _d.editorJsonData) == null ? void 0 : _e.videoUrl);
1756        const videoId = this.$extractYoutubeVideoId(v);
1757        return videoId ? `https://www.youtube.com/embed/${videoId}?rel=0` : v;
1758      },
1759      // Preserve original FAQ aggregation logic
1760      FAQList() {
1761        var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j;
1762        let faqs = [];
1763        if ((_a = this.pageData) == null ? void 0 : _a._id) {
1764          const pages = ((_c = (_b = this.$store.config) == null ? void 0 : _b.getStoreConfig) == null ? void 0 : _c.pages) || [];
1765          for (const page of pages) {
1766            if (!this.$store.auth.loggedIn && (page == null ? void 0 : page.forGuest) === false) continue;
1767            const categories = ((_d = page == null ? void 0 : page.parent_page) == null ? void 0 : _d.contentCategories) || page.contentCategories || [];
1768            if (categories && categories.includes((_e = this.pageData) == null ? void 0 : _e._id)) {
1769              faqs.push(page);
1770            }
1771          }
1772          const contentCategories = ((_f = this.pageData) == null ? void 0 : _f.contentCategories) || ((_h = (_g = this.pageData) == null ? void 0 : _g.parent_page) == null ? void 0 : _h.contentCategories);
1773          if (!(contentCategories == null ? void 0 : contentCategories.length)) return faqs;
1774          const faqPages = ((_j = (_i = this.$store.config) == null ? void 0 : _i.getStoreConfig) == null ? void 0 : _j.pages) || [];
1775          if (!faqPages.length) return faqs;
1776          const faqCategoryPages = findDeepAll(
1777            faqPages,
1778            (c) => {
1779              var _a2, _b2, _c2;
1780              return ((_a2 = c == null ? void 0 : c.parent_page) == null ? void 0 : _a2.contentCategories) && ((_c2 = c == null ? void 0 : c.parent_page) == null ? void 0 : _c2.contentCategories.includes((_b2 = this.$store.kbStore.currentCategory) == null ? void 0 : _b2._id));
1781            }
1782          );
1783          faqs = faqCategoryPages;
1784        }
1785        return faqs;
1786      },
1787      faqCategories() {
1788        var _a, _b, _c, _d, _e;
1789        const faqChildren = (_d = (_c = (_b = (_a = this.$store.config) == null ? void 0 : _a.getStoreConfig) == null ? void 0 : _b.menus) == null ? void 0 : _c.knowledgeBases) == null ? void 0 : _d.children;
1790        const currentPage = this.$findDeep(faqChildren, (c) => {
1791          var _a2;
1792          return (c == null ? void 0 : c.parentPageId) === ((_a2 = this.pageData) == null ? void 0 : _a2._id);
1793        });
1794        const nestedChildren = (currentPage == null ? void 0 : currentPage.children) || faqChildren || [];
1795        return ((_e = this.pageData) == null ? void 0 : _e.children) || nestedChildren;
1796      },
1797      template() {
1798        var _a, _b;
1799        if ((_b = (_a = this.pageData) == null ? void 0 : _a.editorJsonData) == null ? void 0 : _b.html) {
1800          return "<div class='temp_wrapper'>" + this.pageData.editorJsonData.html.replace(
1801            "<script>",
1802            '<script type="application/javascript">'
1803          ) + "</div>";
1804        }
1805        return null;
1806      }
1807    },
1808    watch: {
1809      // Keep prop-driven client-side rendering
1810      FAQ_id: {
1811        handler(page_id) {
1812          if (page_id) {
1813            this.$nextTick(() => this.setFAQPage());
1814          }
1815        },
1816        immediate: true
1817      },
1818      // Also render when data resolves
1819      pageData: {
1820        handler() {
1821          {
1822            this.$nextTick(() => this.setFAQPage());
1823          }
1824        },
1825        immediate: true
1826      }
1827    },
1828    mounted() {
1829      var _a;
1830      if (!this.$store.auth.loggedIn && ((_a = this.pageData) == null ? void 0 : _a.forGuest) === false) {
1831        return this.$router.push("/login");
1832      }
1833    },
1834    methods: {
1835      async setFAQPage() {
1836        var _a, _b;
1837        if (!((_b = (_a = this.pageData) == null ? void 0 : _a.editorJsonData) == null ? void 0 : _b.html)) return;
1838        {
1839          renderHtml(this.pageData.editorJsonData.html);
1840          renderStyles(this.pageData.editorJsonData.mainCss, this.pageData.editorJsonData.sectionCss);
1841        }
1842      },
1843      // kept for parity in case you need manual fetch
1844      async fetchCmsPage() {
1845        var _a;
1846        if (!this.FAQ_id) return;
1847        const response = await this.$store.cmsPage.getPage(this.FAQ_id);
1848        const page = ((_a = response == null ? void 0 : response.data) == null ? void 0 : _a.data) || {};
1849        this.pageData = (page == null ? void 0 : page.parent_page) || page;
1850      },
1851      createStyleTag(styleCss) {
1852        const head = document.head || document.getElementsByTagName("head")[0];
1853        const style = document.createElement("style");
1854        head.appendChild(style);
1855        style.appendChild(document.createTextNode(styleCss));
1856      }
1857    }
1858  },
1859  "$Mbue1yZ8Mo"
1860  /* nuxt-injected */
1861);
1862const _hoisted_1$1 = {
1863  id: "ordant_customer",
1864  class: "ordant-customer p-4"
1865};
1866const _hoisted_2$1 = ["innerHTML"];
1867const _hoisted_3 = {
1868  key: 0,
1869  class: "aspect-h-9 aspect-w-16 relative w-full"
1870};
1871const _hoisted_4 = ["src"];
1872function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
1873  var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t;
1874  const _component_PageHeader = resolveComponent("PageHeader");
1875  const _component_SFButton = resolveComponent("SFButton");
1876  const _component_FAQList = resolveComponent("FAQList");
1877  return openBlock(), createElementBlock("div", null, [
1878    createVNode(_component_PageHeader, {
1879      title: ((_a = _ctx.pageData) == null ? void 0 : _a.title) || "Help",
1880      hideSubtitle: "",
1881      subtitle: `${_ctx.$moment((_b = _ctx.pageData) == null ? void 0 : _b.date).format("DD-MMMM-YYYY")}`
1882    }, null, 8, ["title", "subtitle"]),
1883    createVNode(_component_SFButton, {
1884      class: "!ml-0 max-w-[150px] !py-0",
1885      iconClass: "fal fa-arrow-left",
1886      showIcon: "",
1887      btnClass: "default",
1888      btnText: "Back",
1889      onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$router.go(-1))
1890    }),
1891    createBaseVNode("div", _hoisted_1$1, [
1892      withDirectives(createBaseVNode("div", null, [
1893        createBaseVNode("div", {
1894          innerHTML: (_d = (_c = _ctx.pageData) == null ? void 0 : _c.editorJsonData) == null ? void 0 : _d.html
1895        }, null, 8, _hoisted_2$1)
1896      ], 512), [
1897        [vShow, _ctx.isServer && ((_f = (_e = _ctx.pageData) == null ? void 0 : _e.editorJsonData) == null ? void 0 : _f.html)]
1898      ])
1899    ]),
1900    ((_i = (_h = (_g = _ctx.pageData) == null ? void 0 : _g.parent_page) == null ? void 0 : _h.editorJsonData) == null ? void 0 : _i.videoUrl) || ((_k = (_j = _ctx.pageData) == null ? void 0 : _j.editorJsonData) == null ? void 0 : _k.videoUrl) ? (openBlock(), createElementBlock("div", _hoisted_3, [
1901      createBaseVNode("iframe", {
1902        src: _ctx.computedVideoUrl,
1903        allow: "fullscreen;",
1904        class: "absolute left-0 top-0 h-full w-full"
1905      }, null, 8, _hoisted_4)
1906    ])) : createCommentVNode("", true),
1907    ((_m = (_l = _ctx.pageData) == null ? void 0 : _l.editorJsonData) == null ? void 0 : _m.html) ? (openBlock(), createBlock(_component_SFButton, {
1908      key: 1,
1909      class: "!ml-0 max-w-[150px]",
1910      iconClass: "fal fa-arrow-left",
1911      showIcon: "",
1912      btnClass: "default",
1913      btnText: "Back",
1914      onClick: _cache[1] || (_cache[1] = ($event) => _ctx.$router.go(-1))
1915    })) : createCommentVNode("", true),
1916    ((_n = _ctx.FAQList) == null ? void 0 : _n.length) || ((_o = _ctx.faqCategories) == null ? void 0 : _o.length) ? (openBlock(), createBlock(_component_FAQList, {
1917      key: 2,
1918      pageData: _ctx.pageData,
1919      showTitle: !!((_q = (_p = _ctx.pageData) == null ? void 0 : _p.parent_page) == null ? void 0 : _q.editorJsonData) || !!((_r = _ctx.pageData) == null ? void 0 : _r.editorJsonData),
1920      faqCategories: _ctx.faqCategories,
1921      faqs: _ctx.FAQList
1922    }, null, 8, ["pageData", "showTitle", "faqCategories", "faqs"])) : createCommentVNode("", true),
1923    ((_t = (_s = _ctx.pageData) == null ? void 0 : _s.editorJsonData) == null ? void 0 : _t.html) ? (openBlock(), createBlock(_component_SFButton, {
1924      key: 3,
1925      class: "!ml-0 max-w-[150px]",
1926      iconClass: "fal fa-arrow-left",
1927      showIcon: "",
1928      btnClass: "default",
1929      btnText: "Back",
1930      onClick: _cache[2] || (_cache[2] = ($event) => _ctx.$router.go(-1))
1931    })) : createCommentVNode("", true)
1932  ]);
1933}
1934const __nuxt_component_1 = /* @__PURE__ */ Object.assign(_export_sfc(_sfc_main$1, [["render", _sfc_render$1], ["__scopeId", "data-v-ed8349a2"]]), { __name: "FAQPage" });
1935const _sfc_main = defineNuxtComponent(
1936  {
1937    name: "CustomPageCMS",
1938    components: { CmsPage: __nuxt_component_2, BlogPage: __nuxt_component_0, FAQPage: __nuxt_component_1 },
1939    // NEW: use setup()+useAsyncData so route params are the target ones during prefetch
1940    setup() {
1941      const route = useRoute();
1942      const { $store } = useNuxtApp();
1943      const cmsPage = computed(() => {
1944        var _a;
1945        return (_a = route.params.cmsPage) != null ? _a : "home";
1946      });
1947      const pageId = computed(() => route.params.pageId);
1948      const { data, pending, error } = useAsyncData(
1949        () => {
1950          var _a;
1951          return `cms:${cmsPage.value}:${(_a = pageId.value) != null ? _a : ""}`;
1952        },
1953        async () => {
1954          var _a, _b;
1955          const pages = (_b = (_a = $store.config) == null ? void 0 : _a.getStoreConfig) == null ? void 0 : _b.pages;
1956          let page = null;
1957          if (pages) {
1958            page = pages.find(
1959              (p) => {
1960                var _a2, _b2, _c;
1961                return ((_a2 = p == null ? void 0 : p.seo) == null ? void 0 : _a2.slug) === cmsPage.value || ((_c = (_b2 = p == null ? void 0 : p.parent_page) == null ? void 0 : _b2.seo) == null ? void 0 : _c.slug) === cmsPage.value;
1962              }
1963            );
1964          }
1965          return { pageData: (page == null ? void 0 : page.parent_page) || page || {} };
1966        },
1967        { watch: [cmsPage, pageId] }
1968      );
1969      const applyCurrentType = () => {
1970        var _a, _b, _c, _d;
1971        const pages = (_b = (_a = $store.config) == null ? void 0 : _a.getStoreConfig) == null ? void 0 : _b.pages;
1972        if (pages == null ? void 0 : pages.length) {
1973          const p = pages.find(
1974            (p2) => {
1975              var _a2, _b2, _c2, _d2, _e, _f;
1976              return ((_a2 = p2 == null ? void 0 : p2.seo) == null ? void 0 : _a2.slug) === cmsPage.value || ((_c2 = (_b2 = p2 == null ? void 0 : p2.parent_page) == null ? void 0 : _b2.seo) == null ? void 0 : _c2.slug) === cmsPage.value || pageId.value && (((_d2 = p2 == null ? void 0 : p2.seo) == null ? void 0 : _d2.slug) === pageId.value || ((_f = (_e = p2 == null ? void 0 : p2.parent_page) == null ? void 0 : _e.seo) == null ? void 0 : _f.slug) === pageId.value);
1977            }
1978          );
1979          (_d = (_c = $store.config).setCurrentPageType) == null ? void 0 : _d.call(_c, p == null ? void 0 : p.type);
1980        }
1981      };
1982      watch(() => {
1983        var _a, _b;
1984        return (_b = (_a = $store.config) == null ? void 0 : _a.getStoreConfig) == null ? void 0 : _b.pages;
1985      }, applyCurrentType, { immediate: true });
1986      watch([cmsPage, pageId], applyCurrentType);
1987      const pageData = computed(() => {
1988        var _a;
1989        return (_a = data.value) == null ? void 0 : _a.pageData;
1990      });
1991      return { pageData, pending, error };
1992    },
1993    // Keep your existing computed intact
1994    computed: {
1995      isBlog() {
1996        var _a, _b, _c, _d;
1997        if ((_b = (_a = this.$store.config) == null ? void 0 : _a.getStoreConfig) == null ? void 0 : _b.pages) {
1998          let page = (_d = (_c = this.$store.config) == null ? void 0 : _c.getStoreConfig) == null ? void 0 : _d.pages.find(
1999            (p) => {
2000              var _a2, _b2, _c2;
2001              return ((_a2 = p == null ? void 0 : p.seo) == null ? void 0 : _a2.slug) === (this._.provides[PageRouteSymbol] || this.$route).params.cmsPage || ((_c2 = (_b2 = p == null ? void 0 : p.parent_page) == null ? void 0 : _b2.seo) == null ? void 0 : _c2.slug) === (this._.provides[PageRouteSymbol] || this.$route).params.cmsPage;
2002            }
2003          );
2004          if ((page == null ? void 0 : page.isActive) && (page == null ? void 0 : page.type) === "blog") {
2005            return true;
2006          }
2007        }
2008        return (this._.provides[PageRouteSymbol] || this.$route).params.cmsPage === "blog";
2009      }
2010    }
2011  },
2012  "$Fucq-Z7iPl"
2013  /* nuxt-injected */
2014);
2015const _hoisted_1 = { class: "grid w-screen max-w-full" };
2016const _hoisted_2 = { key: 0 };
2017function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
2018  var _a, _b, _c, _d, _e;
2019  const _component_BlogPage = __nuxt_component_0;
2020  const _component_FAQPage = __nuxt_component_1;
2021  const _component_CmsPage = __nuxt_component_2;
2022  return openBlock(), createElementBlock("div", _hoisted_1, [
2023    ((_b = (_a = _ctx.$store.config) == null ? void 0 : _a.getStoreConfig) == null ? void 0 : _b.pages) ? (openBlock(), createElementBlock("div", _hoisted_2, [
2024      (_ctx._.provides[PageRouteSymbol] || _ctx.$route).params.cmsPage === "blog" || _ctx.isBlog || ((_c = _ctx.pageData) == null ? void 0 : _c.type) === "blog" ? (openBlock(), createBlock(_component_BlogPage, {
2025        key: 0,
2026        blog_id: (_ctx._.provides[PageRouteSymbol] || _ctx.$route).params.cmsPage !== "blog" ? (_ctx._.provides[PageRouteSymbol] || _ctx.$route).params.cmsPage : (_d = (_ctx._.provides[PageRouteSymbol] || _ctx.$route).params) == null ? void 0 : _d.pageId
2027      }, null, 8, ["blog_id"])) : (_ctx._.provides[PageRouteSymbol] || _ctx.$route).params.cmsPage === "kb" ? (openBlock(), createBlock(_component_FAQPage, {
2028        key: 1,
2029        FAQ_id: (_ctx._.provides[PageRouteSymbol] || _ctx.$route).params.pageId
2030      }, null, 8, ["FAQ_id"])) : (openBlock(), createBlock(_component_CmsPage, {
2031        key: 2,
2032        slug: ["feature", "module", "features", "modules"].includes((_ctx._.provides[PageRouteSymbol] || _ctx.$route).params.cmsPage) ? ((_e = (_ctx._.provides[PageRouteSymbol] || _ctx.$route).params) == null ? void 0 : _e.pageId) || (_ctx._.provides[PageRouteSymbol] || _ctx.$route).params.cmsPage : (_ctx._.provides[PageRouteSymbol] || _ctx.$route).params.cmsPage
2033      }, null, 8, ["slug"]))
2034    ])) : createCommentVNode("", true)
2035  ]);
2036}
2037const __pageId__ = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
2038export {
2039  __pageId__ as default
2040};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.