PageSourceSearch

https://www.rheem.com/vike/assets/chunks/chunk-CN9EOSmQ.js

js rheem.com collected 2026-09-24 10:19:40 UTC 6,774 bytes, 131 lines download raw bytes

1import { u as useData } from "./chunk-Ch88nc1G.js";
2import { c as getProTypeIcon, p as proTypeDescription, d as proTypeTitle, g as getCityFromUrlPart } from "./chunk-C7rJt6qV.js";
3import { R as RmcIcon } from "./chunk-Bov-RE3A.js";
4import { j as defineComponent, _ as _export_sfc, o as openBlock, e as createElementBlock, f as createBaseVNode, q as createVNode, h as toDisplayString, I as createTextVNode, u as usePageContext, l as toValue, c as computed, v as normalizeClass, F as Fragment, x as renderList } from "./chunk-Cy-M6TJt.js";
5import { R as RmcSecondaryHeader } from "./chunk-nsB1MyoB.js";
6const _sfc_main$1 = /* @__PURE__ */ defineComponent({
7  __name: "ProTypeCard",
8  props: {
9    data: {},
10    city: {},
11    state: {}
12  },
13  setup(__props, { expose: __expose }) {
14    __expose();
15    const { type, title, link } = __props.data;
16    const __returned__ = { type, title, link, get getProTypeIcon() {
17      return getProTypeIcon;
18    }, get proTypeDescription() {
19      return proTypeDescription;
20    }, get proTypeTitle() {
21      return proTypeTitle;
22    }, RmcIcon };
23    Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true });
24    return __returned__;
25  }
26});
27const _hoisted_1$1 = { class: "rmc-card-one rmc-card-one_type-tool rmc-card-one_layout-vertical rmc-card-one_device-desktop position-relative" };
28const _hoisted_2$1 = { class: "rmc-card-one__header" };
29const _hoisted_3$1 = { class: "rmc-card-one__header-icon" };
30const _hoisted_4$1 = { class: "rmc-card-one__body" };
31const _hoisted_5 = { class: "rmc-card-one__body-title" };
32const _hoisted_6 = { class: "rmc-card-one__body-desc" };
33const _hoisted_7 = ["href"];
34const _hoisted_8 = { class: "rmc-card-one__footer" };
35const _hoisted_9 = { class: "rmc-card-one__footer-icon" };
36function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
37  return openBlock(), createElementBlock("div", _hoisted_1$1, [
38    createBaseVNode("div", _hoisted_2$1, [
39      createBaseVNode("div", _hoisted_3$1, [
40        createVNode($setup["RmcIcon"], {
41          "icon-name": $setup.getProTypeIcon($setup.type),
42          class: "rmc-svg-icon--inherit-size"
43        }, null, 8, ["icon-name"])
44      ])
45    ]),
46    createBaseVNode("div", _hoisted_4$1, [
47      createBaseVNode("div", _hoisted_5, toDisplayString($setup.proTypeTitle($setup.type)) + " " + toDisplayString($setup.title), 1),
48      createBaseVNode("div", _hoisted_6, [
49        createTextVNode(toDisplayString($setup.proTypeDescription($setup.type)) + " ", 1),
50        createBaseVNode("a", {
51          class: "rmc-color-brand-500 stretched-link",
52          href: `/${$setup.link}/`
53        }, null, 8, _hoisted_7)
54      ]),
55      _cache[0] || (_cache[0] = createBaseVNode("div", { class: "rmc-card-one__body-icon" }, [
56        createBaseVNode("span", { class: "rmc-svg-icon" }, [
57          createBaseVNode("svg", {
58            xmlns: "http://www.w3.org/2000/svg",
59            width: "20",
60            height: "16",
61            viewBox: "0 0 20 16"
62          }, [
63            createBaseVNode("path", {
64              d: "M16.7847 8.80172H0.837667C0.596111 8.80172 0.396111 8.7225 0.237667 8.56405C0.0792224 8.40561 0 8.20561 0 7.96405C0 7.7225 0.0792224 7.5225 0.237667 7.36405C0.396111 7.20583 0.596111 7.12672 0.837667 7.12672H16.7847L11.8443 2.18639C11.6792 2.02105 11.5979 1.82661 11.6003 1.60305C11.603 1.3795 11.6889 1.18083 11.858 1.00705C12.0262 0.838831 12.2226 0.753607 12.447 0.751385C12.6714 0.749163 12.8678 0.834941 13.036 1.00872L19.2693 7.23339C19.3791 7.34916 19.4589 7.46572 19.5087 7.58305C19.5582 7.70039 19.583 7.82739 19.583 7.96405C19.583 8.1065 19.5582 8.2365 19.5087 8.35405C19.4589 8.47139 19.3791 8.58505 19.2693 8.69505L13.058 14.9147C12.8929 15.0798 12.6973 15.1634 12.4713 15.1654C12.2453 15.1674 12.0454 15.0815 11.8717 14.9077C11.7026 14.7339 11.6169 14.5351 11.6147 14.3111C11.6122 14.0873 11.6979 13.8885 11.8717 13.7147L16.7847 8.80172Z",
65              stroke: "unset",
66              fill: "currentColor"
67            })
68          ])
69        ])
70      ], -1))
71    ]),
72    createBaseVNode("div", _hoisted_8, [
73      createBaseVNode("div", _hoisted_9, [
74        createVNode($setup["RmcIcon"], { "icon-name": "arrow-right" })
75      ])
76    ])
77  ]);
78}
79const ProTypeCard = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render$1], ["__file", "ProTypeCard.vue"]]);
80const _sfc_main = /* @__PURE__ */ defineComponent({
81  __name: "+Page",
82  setup(__props, { expose: __expose }) {
83    __expose();
84    const {
85      routeParams: { city, state }
86    } = usePageContext();
87    const initialData = useData();
88    const { types } = toValue(initialData);
89    const cityState = computed(
90      () => `${getCityFromUrlPart(city)}, ${state.toUpperCase()}`
91    );
92    const __returned__ = { city, state, initialData, types, cityState, ProTypeCard, RmcSecondaryHeader };
93    Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true });
94    return __returned__;
95  }
96});
97const _hoisted_1 = { class: "rmc-container" };
98const _hoisted_2 = { class: "rmc-my-3xl" };
99const _hoisted_3 = { class: "row row-cols-1 row-cols-1 row-cols-lg-3" };
100const _hoisted_4 = { class: "rmc-p-md" };
101function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
102  return openBlock(), createElementBlock(Fragment, null, [
103    createVNode($setup["RmcSecondaryHeader"], {
104      class: normalizeClass("rmc-header-grid rmc-border-bottom-double"),
105      code: "all",
106      title: `find a pro in ${$setup.cityState}`
107    }, null, 8, ["title"]),
108    createBaseVNode("div", _hoisted_1, [
109      createBaseVNode("div", _hoisted_2, " Whether you’re looking for a master plumber to install a new water heater, a pool and spa expert to install or repair your pool heater, or you need an expert HVAC contractor to service your air conditioner or furnace, you’ve come to the right spot. Browse the entire directory of " + toDisplayString($setup.city) + ", " + toDisplayString($setup.state) + " independent Rheem pros below. ", 1),
110      createBaseVNode("div", _hoisted_3, [
111        (openBlock(true), createElementBlock(Fragment, null, renderList($setup.types, (item) => {
112          return openBlock(), createElementBlock("div", _hoisted_4, [
113            createVNode($setup["ProTypeCard"], {
114              data: item,
115              city: $setup.city,
116              state: $setup.state
117            }, null, 8, ["data", "city", "state"])
118          ]);
119        }), 256))
120      ])
121    ])
122  ], 64);
123}
124const _Page = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "+Page.vue"]]);
125const import4 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
126  __proto__: null,
127  default: _Page
128}, Symbol.toStringTag, { value: "Module" }));
129export {
130  import4 as i
131};

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.