@asantemedia-org/edwardsvacuum-design-system 1.6.54 → 1.6.55

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../node_modules/tslib/tslib.es6.js","../node_modules/classnames/index.js","../src/stories/components/AccordionSection/AccordionSection.tsx","../src/stories/components/Card/card.tsx","../src/stories/components/Button/Button.tsx","../src/stories/experiences/Algolia-dynamic-search/algolia-dynamic-search-base.tsx","../src/stories/experiences/Algolia-dynamic-search/algolia-dynamic-search.tsx","../src/stories/experiences/QRFormJourney/FormFieldType.tsx","../src/stories/experiences/QRFormJourney/Qr-form-field/Qr-form-field.tsx","../src/utils/helpers/isMobile.ts","../src/stories/experiences/QRFormJourney/Qr-form/i18n.ts","../src/stories/experiences/QRFormJourney/Qr-form/Qr-form.tsx"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nvar ownKeys = function(o) {\r\n ownKeys = Object.getOwnPropertyNames || function (o) {\r\n var ar = [];\r\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\r\n return ar;\r\n };\r\n return ownKeys(o);\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\r\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\r\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\r\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\r\n });\r\n }\r\n return path;\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __esDecorate: __esDecorate,\r\n __runInitializers: __runInitializers,\r\n __propKey: __propKey,\r\n __setFunctionName: __setFunctionName,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,\r\n};\r\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React, { useState, useCallback, useRef, ReactNode } from 'react';\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faChevronDown } from \"@fortawesome/pro-solid-svg-icons\";\nimport './AccordionSection.scss';\n\ninterface AccordionSectionProps {\n title: string;\n children: ReactNode;\n className?: string;\n defaultOpen?: boolean;\n lazyLoad?: boolean;\n}\n\nexport const AccordionSection = ({\n title,\n children,\n className = '',\n defaultOpen = false,\n lazyLoad = false\n}: AccordionSectionProps) => {\n const [isOpen, setIsOpen] = useState(defaultOpen);\n const [hasBeenOpened, setHasBeenOpened] = useState(defaultOpen);\n \n // Prevent rapid clicks\n const isToggling = useRef(false);\n\n const toggleAccordion = useCallback((e: React.MouseEvent | React.KeyboardEvent) => {\n // Stop event propagation to prevent AEM handlers\n e.stopPropagation();\n e.preventDefault();\n \n // Prevent multiple rapid toggles\n if (isToggling.current) return;\n isToggling.current = true;\n \n // Use requestAnimationFrame to defer state update\n requestAnimationFrame(() => {\n setIsOpen(prev => !prev);\n if (!hasBeenOpened) {\n setHasBeenOpened(true);\n }\n \n // Reset toggle lock\n setTimeout(() => {\n isToggling.current = false;\n }, 300);\n });\n }, [hasBeenOpened]);\n\n const handleKeyDown = useCallback((e: React.KeyboardEvent) => {\n if (e.key === 'Enter' || e.key === ' ') {\n toggleAccordion(e);\n }\n }, [toggleAccordion]);\n\n // Only render children if not lazy loading, or if accordion has been opened\n const shouldRenderChildren = !lazyLoad || hasBeenOpened;\n\n return (\n <div className={`accordion-section ${className} ${isOpen ? 'open' : ''}`}>\n <h4 \n className=\"accordion-section__header\"\n onClick={toggleAccordion}\n role=\"button\"\n tabIndex={0}\n onKeyDown={handleKeyDown}\n aria-expanded={isOpen}\n >\n <span className=\"accordion-section__title\">{title}</span>\n <span \n className=\"accordion-section__icon\"\n style={{ \n transform: isOpen ? 'rotate(180deg)' : 'rotate(0deg)',\n transition: 'transform 0.2s ease'\n }}\n >\n <FontAwesomeIcon icon={faChevronDown} color=\"#C4262E\" />\n </span>\n </h4>\n {/* Override CSS max-height with inline styles to avoid layout thrashing */}\n <div \n className=\"accordion-section__content\"\n style={{ \n display: isOpen ? 'block' : 'none',\n maxHeight: isOpen ? 'none' : '0',\n overflow: isOpen ? 'visible' : 'hidden'\n }}\n >\n {shouldRenderChildren ? children : null}\n </div>\n </div>\n );\n};\n\n","import React, { MouseEventHandler, useRef } from \"react\";\nimport styles from \"./card.module.scss\"; // Importing SCSS Module\nimport classnames from \"classnames\"; // For managing class names dynamically\nimport { CardProps } from \"./card.types\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport {\n faArrowRight,\n faChevronDown,\n faChevronRight,\n faPause,\n faPlay,\n} from \"@fortawesome/pro-solid-svg-icons\";\nimport { AccordionSection } from \"../AccordionSection\";\n\nif (process.env.STORYBOOK === \"true\") {\n require(\"./card.scss\");\n}\n\n// Utility function to retrieve correct SCSS module class names\nconst getStyle = (className: string) => {\n if (styles[className]) return styles[className];\n const nestedMatch = Object.keys(styles).find((key) =>\n key.includes(className)\n );\n return nestedMatch ? styles[nestedMatch] : \"\";\n};\n\nconst cardSizeMapping = (size: any) => {\n let classSrting;\n if (size === \"small\") {\n classSrting = \"col-3\";\n } else if (size === \"medium\") {\n classSrting = \"col-4\";\n } else if (size === \"large\") {\n classSrting = \"col-6\";\n } else {\n classSrting = \"\";\n }\n return classSrting;\n};\n\nconst getImageUrl = (imageUrl?: string): string => {\n if (imageUrl) {\n return imageUrl; // If an image URL is provided, use it.\n }\n try {\n // Try loading from local assets (works in Storybook)\n return require(\"../../../assets/edwards-webshop-placeholder.png\").default\n .src;\n } catch (error) {\n // If that fails, load from node_modules (works in host app)\n try {\n return require(\"@asantemedia-org/edwardsvacuum-design-system/dist/assets/edwards-webshop-placeholder.png\")\n .default;\n } catch (error) {\n console.error(\n \"Placeholder image not found in either local assets or node_modules.\",\n error\n );\n return \"\"; // Fallback empty string if no image is found\n }\n }\n};\n\nexport const Card = ({\n contentCategoryLabel,\n className,\n colour,\n date,\n size,\n title,\n cta,\n imageUrl,\n imageAlt,\n cardStyle,\n cardLink,\n city,\n country,\n placeholder,\n onClick,\n usePlainClasses = false,\n}: CardProps) => {\n // Helper to get class name - plain or CSS module\n const getClassName = (name: string) => usePlainClasses ? name : getStyle(name);\n \n const mode = usePlainClasses ? `cmp-card--${cardStyle}` : getStyle(`cmp-card--${cardStyle}`);\n const width = cardSizeMapping(size);\n const categoryColour = colour\n ? (usePlainClasses ? `cmp-card__content-category-wrapper__colour-${colour}` : getStyle(`cmp-card__content-category-wrapper__colour-${colour}`))\n : \"\";\n const cardFooterColour = colour\n ? (usePlainClasses ? `cmp-card__footer--color-${colour}` : getStyle(`cmp-card__footer--color-${colour}`))\n : \"\";\n\n const contentImage = getImageUrl(imageUrl);\n\n return (\n <div\n className={classnames(\n getClassName(\"cmp-card\"),\n mode,\n width,\n className && (usePlainClasses ? className : getStyle(className))\n )}\n >\n <a\n className={getClassName(\"cmp-card__link\")}\n href={cardLink}\n onClick={onClick}\n >\n <div className={getClassName(\"cmp-card__content-wrapper\")}>\n {cardStyle !== \"type-card-panel\" &&\n cardStyle !== \"type-card-no-image\" && (\n <div\n className={`${getClassName(\"cmp-card__image-wrapper\")} ${\n !imageUrl || placeholder ? getClassName(\"placeholderImage\") : \"\"\n }`}\n >\n <picture>\n <img src={contentImage} alt={imageAlt} />\n </picture>\n </div>\n )}\n {cardStyle === \"type-card-label\" && (\n <div\n className={classnames(\n getClassName(\"cmp-card__content-category-wrapper\"),\n categoryColour\n )}\n >\n {contentCategoryLabel && <p>{contentCategoryLabel}</p>}\n </div>\n )}\n\n <div className={getClassName(\"cmp-card__title-wrapper\")}>\n {date && <div className={getClassName(\"cmp-card__date\")}>{date}</div>}\n {title && <h4 className={getClassName(\"cmp-card__title\")}>{title}</h4>}\n {(city || country) && (\n <p className={getClassName(\"cmp-card__city-country\")}>\n {city} {city && country ? \", \" : \"\"} {country}\n </p>\n )}\n\n {cardStyle === \"type-card-panel\" ? (\n <span\n className={classnames(\n getClassName(\"cmp-card__footer\"),\n cardFooterColour\n )}\n >\n <FontAwesomeIcon icon={faChevronRight} />\n </span>\n ) : cardStyle === \"label\" ? (\n <span className={getClassName(\"cmp-card__footer\")}>\n <FontAwesomeIcon icon={faArrowRight} />\n </span>\n ) : (\n <span className={getClassName(\"cmp-card__footer\")}>\n <span>{cta}</span>\n </span>\n )}\n </div>\n </div>\n </a>\n </div>\n );\n};\n\nexport const ProductCard = ({\n className,\n size,\n title,\n imageUrl,\n imageAlt,\n showImage = true,\n productPrice,\n showProductPrice,\n cardLink,\n cta,\n cardStyle,\n placeholder,\n onClick,\n usePlainClasses = false,\n}: CardProps) => {\n // Helper to get class name - plain or CSS module\n const getClassName = (name: string) => usePlainClasses ? name : getStyle(name);\n \n const width = cardSizeMapping(size);\n const mode = usePlainClasses ? `cmp-card--${cardStyle}` : getStyle(`cmp-card--${cardStyle}`);\n const productImage = getImageUrl(imageUrl);\n\n return (\n <div className={classnames(getClassName(\"cmp-card\"), mode, width, className)}>\n <a\n href={cardLink}\n className={getClassName(\"cmp-card__link\")}\n onClick={onClick}\n target=\"_blank\"\n >\n <div className={classnames(getClassName(\"cmp-card--type-card-product__wrapper\"), showImage ? \"\" : getClassName(\"cmp-card--type-card-product-no-image__wrapper\"))}>\n {showImage && (\n <div className={getClassName(\"cmp-card--type-card-product__image\")}>\n <figure>\n <img\n src={productImage}\n alt={imageAlt}\n className={\n !imageUrl || placeholder ? \"placeholderImage\" : undefined\n }\n />\n </figure>\n </div>\n )}\n <div className={getClassName(\"cmp-card--type-card-product__meta\")}>\n <p className={getClassName(\"cmp-card--type-card-product__title\")}>\n {title}\n </p>\n {productPrice && showProductPrice !== false ? (\n <p className={getClassName(\"cmp-card--type-card-product__prices\")}>\n {productPrice}\n </p>\n ) : (\n \"\"\n )}\n <p className={getClassName(\"cmp-card--type-card-product__cta\")}>\n {cta ? cta : <FontAwesomeIcon icon={faArrowRight} />}\n </p>\n </div>\n </div>\n </a>\n </div>\n );\n};\n\nexport const VideoCard = ({\n className,\n title,\n imageUrl,\n imageAlt,\n cardStyle,\n duration,\n videoSrc,\n videoTitle,\n videoThumbnail,\n onClick,\n}: CardProps) => {\n return (\n <div\n className={classnames(\n className,\n getStyle(\"cmp-video-playlist__card\"),\n getStyle(`cmp-video-playlist__card--${cardStyle}`)\n )}\n data-videothumbnail={videoThumbnail}\n data-videosrc={videoSrc}\n data-videotitle={videoTitle}\n tabIndex={0}\n onClick={onClick}\n >\n <div className={getStyle(\"cmp-video-playlist__card__thumbnail\")}>\n <img src={imageUrl} alt={imageAlt} loading=\"lazy\" />\n </div>\n\n <div className={getStyle(\"cmp-video-playlist__card__info\")}>\n <div className={getStyle(\"cmp-video-playlist__card__info__title\")}>\n <h6>{title}</h6>\n </div>\n\n <div className={getStyle(\"cmp-video-playlist__card__info__bottom\")}>\n <div className={getStyle(\"cmp-video-playlist__card__info__duration\")}>\n <span\n className={getStyle(\n \"cmp-video-playlist__card__info__duration-current\"\n )}\n ></span>\n <span\n className={getStyle(\n \"cmp-video-playlist__card__info__duration-total\"\n )}\n >\n {duration}\n </span>\n </div>\n <div className={getStyle(\"cmp-video-playlist__card__info__icons\")}>\n <div\n className={getStyle(\n \"cmp-video-playlist__card__info__icons--play\"\n )}\n >\n <FontAwesomeIcon icon={faPlay} />\n </div>\n <div\n className={getStyle(\n \"cmp-video-playlist__card__info__icons--pause\"\n )}\n >\n <FontAwesomeIcon icon={faPause} />\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\n// Maximum spares to render to prevent browser freeze\nconst MAX_SPARES_TO_RENDER = 20;\n\nexport const ProductDetailsCard = ({\n className,\n title,\n imageUrl,\n imageAlt,\n placeholder,\n onClick,\n hit,\n facets,\n usePlainClasses = false,\n ProductCardComponent,\n}: CardProps) => {\n // Helper to get class name - plain or CSS module\n const getClassName = (name: string) => usePlainClasses ? name : getStyle(name);\n \n // Use custom ProductCard if provided, otherwise use default\n const SpareCard = ProductCardComponent || ProductCard;\n\n // Memoize spares rendering with a limit to prevent freeze\n const renderSpares = () => {\n if (!hit?.spares || !Array.isArray(hit.spares) || hit.spares.length === 0) return null;\n \n // Limit the number of spares to prevent freeze\n const sparesToRender = hit.spares.slice(0, MAX_SPARES_TO_RENDER);\n \n return (\n <ul className={getClassName(\"folding-spares-list\")}>\n {sparesToRender.map((spare: any, index: number) => {\n // Safety check - skip if spare is not a valid object\n if (!spare || typeof spare !== 'object') return null;\n \n return (\n <li key={spare.objectID || spare.code || `spare-${index}`}>\n <SpareCard\n cardStyle=\"type-card-product\"\n className={getClassName(\"cmp-card\")}\n title={spare.name || 'Spare Part'}\n imageUrl={spare['img-product'] || spare.image || ''}\n imageAlt={spare.name || 'Spare Part'}\n productPrice={spare.priceValue || spare.price || '$450.00'}\n showProductPrice={true}\n cardLink={spare.url || spare.link || '#'}\n cta=\"Go to webshop\"\n showImage={false}\n usePlainClasses={usePlainClasses}\n spare={spare}\n />\n </li>\n );\n })}\n {hit.spares.length > MAX_SPARES_TO_RENDER && (\n <li className={getClassName(\"folding-spares-list__more\")}>\n +{hit.spares.length - MAX_SPARES_TO_RENDER} more items\n </li>\n )}\n </ul>\n );\n };\n\n return (\n <div className={getClassName(\"cmp-card--type-product_details\")}>\n <div className={getClassName(\"cmp-card--type-product_details__product-info\")}>\n <div className={getClassName(\"cmp-card--type-product_details__header\")}>\n <h3 className={getClassName(\"cmp-card--type-product_details__header__title\")}>\n {title}\n </h3>\n <p className={getClassName(\"cmp-card--type-product_details__header__product-code\")}>\n Product: {hit?.code}\n </p>\n <img\n src={hit?.image}\n alt={imageAlt}\n className={getClassName(\"cmp-card--type-product_details__header__product-image\")}\n />\n </div>\n {facets && (\n <AccordionSection\n title=\"Specifications\"\n className={getClassName(\"folding-specification-holder\")}\n defaultOpen={true}\n >\n <ul className={getClassName(\"folding-specification-list\")}>\n {facets &&\n facets.map((facet) => {\n return (\n hit[facet.name] && (\n <li key={facet.name}>\n <strong>{facet.label}</strong>\n <br />\n {facet.returnsHTML ? (\n <span\n dangerouslySetInnerHTML={{\n __html: hit[facet.name],\n }}\n />\n ) : (\n hit[facet.name]\n )}\n </li>\n )\n );\n })}\n </ul>\n </AccordionSection>\n )}\n </div>\n <div className={getClassName(\"cmp-card--type-product_details__spares-list\")}>\n {hit?.spares && hit.spares.length > 0 && (\n <AccordionSection\n title=\"Spares & Parts\"\n className={getClassName(\"folding-spares-holder\")}\n lazyLoad={true}\n defaultOpen={true}\n >\n {renderSpares()}\n </AccordionSection>\n )}\n </div>\n </div>\n );\n};\n","import React from 'react';\nimport styles from './Button.module.scss';\n\nif (process.env.STORYBOOK === 'true') {\n require('./button.scss');\n}\n\ninterface ButtonProps extends React.HTMLAttributes<HTMLElement> {\n className?: string;\n style?: React.CSSProperties;\n buttonStyle?: string;\n label?: string;\n element?: 'button' | 'a';\n onClick?: (() => void) | ((ev: any) => void);\n href?: string;\n target?: string;\n rel?: string;\n type?: string;\n ['data-target-selector']?: string;\n}\n\n// Utility to safely retrieve SCSS class names\nconst getStyle = (className: string) => {\n if (styles[className]) return styles[className];\n const nestedMatch = Object.keys(styles).find((key) => key.includes(className));\n return nestedMatch ? styles[nestedMatch] : '';\n};\n\nexport const Button = ({\n className = '',\n buttonStyle,\n label,\n element,\n onClick,\n href,\n target,\n rel,\n type = 'button',\n ['data-target-selector']: dataTargetSelector,\n ...props\n }: ButtonProps) => {\n const mode = buttonStyle ? getStyle(`cmp-button--style-${buttonStyle}`) : '';\n const baseClass = getStyle('cmp-button');\n\n // Add js-modal class if data-target-selector is present\n const conditionalClasses = [\n baseClass,\n mode,\n className,\n dataTargetSelector ? 'js-modal' : ''\n ].filter(Boolean).join(' ').trim();\n\n // Infer element type\n const inferredElement: 'a' | 'button' = element\n || (href || dataTargetSelector ? 'a' : 'button');\n\n if (inferredElement === 'a') {\n return (\n <a\n className={conditionalClasses}\n href={href}\n target={target}\n rel={rel}\n data-target-selector={dataTargetSelector}\n {...props}\n >\n {label}\n </a>\n );\n }\n\n return (\n <button\n className={conditionalClasses}\n type={type as 'button' | 'submit' | 'reset'}\n onClick={onClick}\n {...props}\n >\n {label}\n </button>\n );\n};","import React, {HTMLAttributes, ReactNode, useCallback, useMemo} from 'react';\nimport { AlgoliaDynamicSearchProps } from './algolia-dynamic-search.types';\nimport { Card as DefaultCard, ProductCard as DefaultProductCard, ProductDetailsCard as DefaultProductDetailsCard } from '../../components/Card/card';\nimport { Button as DefaultButton } from '../../components/Button/Button';\n\nif (process.env.STORYBOOK === 'true') {\n require('./algolia-dynamic-search.scss');\n}\n\nconst PRODUCT_DETAILS = 'productDetails';\n\nexport interface DynamicHeadingProps extends HTMLAttributes<HTMLHeadingElement> {\n titleSize?: \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\";\n children?: ReactNode;\n}\n\nconst DynamicHeading: React.FC<DynamicHeadingProps> = ({titleSize = \"h2\", children, ...props}: DynamicHeadingProps) => {\n const Tag = [\"h2\", \"h3\", \"h4\", \"h5\", \"h6\"].includes(titleSize) ? titleSize : \"h2\";\n return <Tag {...props}>{children}</Tag>;\n};\n\nconst getCallToActionProps = (type: string | undefined, url: string) => {\n const callType = type?.toLowerCase();\n let finalUrl = url || '';\n let target = '';\n\n switch (callType) {\n case 'external':\n target = '_blank';\n break;\n case 'email':\n finalUrl = `mailto:${url}`;\n break;\n case 'phone':\n finalUrl = `tel:${url}`;\n break;\n case 'internal':\n default:\n // target remains empty, for same-window navigation\n break;\n }\n\n return {finalUrl, target};\n};\n\nexport const AlgoliaDynamicSearch = ({\n className = '',\n heading,\n titleSize,\n subtext,\n callToActionType,\n callToActionText,\n callToActionUrl,\n callToActionTargetSelector,\n queryType = 'unknown',\n hits,\n hitCta,\n showProductPrice,\n query,\n backgroundColour = '',\n maxResults = 10,\n isLoading = false,\n placeholder,\n analytics,\n facets,\n innerComponents\n }: AlgoliaDynamicSearchProps,\n useScopedStyles?: boolean,\n styles?: Record<string, string>) => {\n\n // Extract components from innerComponents with defaults\n const Card = innerComponents?.Card || DefaultCard;\n const ProductCard = innerComponents?.ProductCard || DefaultProductCard;\n const ProductDetailsCard = innerComponents?.ProductDetailsCard || DefaultProductDetailsCard;\n const Button = innerComponents?.Button || DefaultButton;\n\n // Helper to resolve CSS module class names properly\n const getClass = useCallback((suffix: string) => {\n const fullClassName = `cmpAlgoliaDynamicSearchWidget${suffix}`;\n return useScopedStyles && styles ? styles[fullClassName] : fullClassName;\n }, [useScopedStyles, styles]);\n\n // Helper for modifier classes (without the base prefix)\n const getModifierClass = useCallback((modifier: string) => {\n return useScopedStyles && styles ? styles[modifier] : modifier;\n }, [useScopedStyles, styles]);\n\n // Memoize background styling to prevent re-renders\n const widgetStyleProps = useMemo(() => {\n const backgroundStyles: { [key: string]: { buttonStyle: string; containerBackground: string; textColour: string } } = {\n \"dark-grey\": {\n buttonStyle: \"outlineWhite\",\n containerBackground: getModifierClass('hasStyleGreyBackground'),\n textColour: \"white\"\n },\n \"silver\": {\n buttonStyle: \"primary\",\n containerBackground: getModifierClass('hasStyleSilverGradientBackground'),\n textColour: \"black\"\n }\n };\n return backgroundStyles[backgroundColour.toLowerCase()] || {\n buttonStyle: \"primary\",\n containerBackground: \"\",\n textColour: \"black\"\n };\n }, [backgroundColour, getModifierClass]);\n\n if (!hits || hits.length === 0) {\n return null;\n }\n\n const baseClass = getClass('');\n\n // Memoize wrapper class names\n const wrapperClasses = useMemo(() => [\n baseClass,\n widgetStyleProps.containerBackground,\n isLoading ? getModifierClass('isLoading') : '',\n queryType === 'content' ? getModifierClass('isQueryContent') : ''\n ].filter(Boolean).join(' '), [baseClass, widgetStyleProps.containerBackground, isLoading, queryType, getModifierClass]);\n\n return (\n <div className={wrapperClasses}>\n\n {isLoading && (\n <div className={getClass('__placeholder')}>\n <div className={getClass('__placeholder__loading')}></div>\n </div>\n )}\n\n <div className={getClass('__container')}>\n {queryType != PRODUCT_DETAILS &&\n <>\n <div className={getClass('__header')}>\n\n <div className={getClass('__header__text')}>\n <DynamicHeading titleSize={titleSize}>{heading}</DynamicHeading>\n <p>{subtext}</p>\n </div>\n {callToActionUrl && (\n <div className={getClass('__header__cta')}>\n\n {(() => {\n const {\n finalUrl,\n target\n } = getCallToActionProps(callToActionType, callToActionUrl);\n const isAnchor = !!callToActionTargetSelector || callToActionType?.toLowerCase() !== 'internal';\n\n return (\n <Button\n element={isAnchor ? 'a' : 'button'}\n buttonStyle={widgetStyleProps?.buttonStyle}\n label={callToActionText}\n href={isAnchor ? finalUrl : undefined}\n target={target}\n rel={target === '_blank' ? 'noopener noreferrer' : undefined}\n data-target-selector={callToActionTargetSelector}\n onClick={\n !isAnchor\n ? () => {\n if (finalUrl) {\n window.open(finalUrl, target || '_self', target === '_blank' ? 'noopener,noreferrer' : undefined);\n }\n }\n : undefined\n }\n />\n );\n })()}\n </div>\n )}\n </div>\n </>}\n <div\n className={queryType == PRODUCT_DETAILS ? getClass('__cards__cardSingle') : getClass('__cards')}>\n {hits.slice(0, maxResults).map((hit: any, index: number) => {\n let Component = Card;\n let title = hit.title;\n let cardStyle = \"\";\n let imageUrl = hit.imageUrl || placeholder;\n\n const hitUtm = new URLSearchParams({\n utm_source: \"web\",\n utm_medium: \"alg\",\n utm_campaign: query || \"dynamic search\"\n }).toString();\n\n let separator = hit.link.includes(\"?\") ? \"&\" : \"?\";\n let cardLink = `${hit.link}${separator}${hitUtm}`;\n\n let contentCategoryLabel = hit.contentCategoryLabel || \"\";\n let contentCategoryColour = hit.contentCategoryColour || \"\";\n let price = showProductPrice ? hit.price : \"\";\n\n let cardClassName = styles?.cmpCard;\n\n switch (queryType) {\n case \"products\":\n Component = ProductCard;\n cardStyle = \"type-card-product\";\n break;\n case \"content\":\n cardStyle = \"type-card-label\";\n break;\n case \"careers\":\n cardStyle = \"type-card-panel\";\n cardClassName = `cmp-card--type-careers`;\n imageUrl = \"\";\n break;\n case PRODUCT_DETAILS:\n cardStyle = \"type-card-panel\";\n Component = ProductDetailsCard;\n break;\n default:\n return null;\n }\n\n // Only create onClick handler if analytics is provided\n const handleClick = analytics ? () => {\n const { objectID, __position, __queryID } = hit;\n analytics(objectID, __queryID, __position);\n } : undefined;\n\n return (\n <Component\n key={hit.objectID || index}\n className={cardClassName}\n title={title}\n imageUrl={imageUrl}\n placeholder={hit.image ? false : true}\n hit={hit}\n cta={hitCta}\n size=\"\"\n cardStyle={cardStyle}\n facets={facets}\n contentCategoryLabel={contentCategoryLabel}\n colour={contentCategoryColour}\n productPrice={price}\n showProductPrice={showProductPrice}\n cardLink={cardLink}\n city={hit.city}\n country={hit.country}\n onClick={handleClick}\n />\n );\n })}\n </div>\n </div>\n </div>\n );\n};\n\nexport default AlgoliaDynamicSearch;","import AlgoBase from \"./algolia-dynamic-search-base\";\nimport styles from './algolia-dynamic-search.module.scss';\nimport { AlgoliaDynamicSearchProps, InnerComponents } from \"./algolia-dynamic-search.types\";\nimport { Card, ProductCard, ProductDetailsCard } from \"../../components/Card/card\";\nimport { Button } from \"../../components/Button/Button\";\n\n// Edwards-specific components\nconst edwardsComponents: InnerComponents = {\n Card,\n ProductCard,\n ProductDetailsCard,\n Button,\n};\n\nexport const AlgoliaDynamicSearchEdwards = (props: AlgoliaDynamicSearchProps) => {\n return AlgoBase({...props, innerComponents: edwardsComponents}, true, styles);\n};\n\nexport const AlgoliaDynamicSearchRaw = (props: AlgoliaDynamicSearchProps) => {\n return AlgoBase(props, false);\n};\n","import React from 'react';\nimport { PhoneInput } from 'react-international-phone';\n// Note: Consumer apps need to import 'react-international-phone/style.css' \n// or include equivalent styles for the phone input to display correctly\n\ninterface FormFieldBase {\n name: string;\n label?: string;\n id?: string;\n required?: boolean;\n hasError?: boolean;\n value?: string;\n placeholder?: string;\n errorMessage?: string;\n isDisabled?: boolean;\n onChange?: (e: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement>) => void; // Add onChange\n checked?: boolean; // For checkboxes\n}\n\ninterface TextField extends FormFieldBase {\n type: \"text\" | \"email\" | \"textarea\";\n placeholder?: string;\n maxLength?: number;\n regex?: string;\n}\n\ninterface TelField extends FormFieldBase {\n type: \"tel\";\n placeholder?: string;\n defaultCountry?: string;\n onPhoneChange?: (phone: string) => void;\n regex?: string;\n}\n\ninterface HiddenField extends FormFieldBase {\n type: \"hidden\";\n}\n\ninterface SelectField extends FormFieldBase {\n type: \"select\";\n options?: option[];\n}\ninterface InfoField extends FormFieldBase {\n type: \"info\";\n}\n\ninterface option {\n value: string;\n label: string;\n disabled?: boolean;\n selected?: boolean;\n}\n\ninterface NumberField extends FormFieldBase {\n type: \"number\";\n min?: number;\n max?: number;\n step?: number;\n regex?: string;\n}\n\ninterface CheckboxField extends FormFieldBase {\n type: \"checkbox\";\n checked?: boolean; // Make checked explicit for checkbox\n}\n\nexport type FormFieldType = TextField | TelField | NumberField | CheckboxField | HiddenField | SelectField | InfoField;\n\nfunction RenderField(field: FormFieldType & {\n onChange?: (e: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement>) => void;\n onPhoneChange?: (phone: string) => void;\n id?: string; // Add id prop here to pass to input\n}) {\n switch (field.type) {\n case \"text\":\n case \"email\":\n return <input\n value={field.value}\n name={field.name}\n type={field.type}\n placeholder={field.placeholder}\n disabled={field.isDisabled}\n onChange={field.onChange}\n id={field.id}\n maxLength={field.maxLength}\n />;\n case \"tel\":\n return <PhoneInput\n value={field.value || ''}\n onChange={(phone) => {\n if (field.onPhoneChange) {\n field.onPhoneChange(phone);\n } else if (field.onChange) {\n // Create a synthetic event for backwards compatibility\n const syntheticEvent = {\n target: { name: field.name, value: phone }\n } as React.ChangeEvent<HTMLInputElement>;\n field.onChange(syntheticEvent);\n }\n }}\n defaultCountry={field.defaultCountry || 'gb'}\n disabled={field.isDisabled}\n placeholder={field.placeholder}\n inputProps={{\n id: field.id,\n name: field.name\n }}\n />;\n case \"textarea\":\n return <textarea\n value={field.value}\n name={field.name}\n placeholder={field.placeholder}\n disabled={field.isDisabled}\n onChange={field.onChange as React.ChangeEventHandler<HTMLTextAreaElement>} // Cast for textarea\n id={field.id}\n maxLength={field.maxLength}\n />;\n case \"number\":\n return <input\n value={field.value}\n name={field.name}\n type={field.type}\n min={field.min}\n max={field.max}\n step={field.step}\n disabled={field.isDisabled}\n onChange={field.onChange}\n id={field.id}\n />;\n case \"checkbox\":\n return <input\n type=\"checkbox\"\n name={field.name}\n checked={field.checked}\n disabled={field.isDisabled}\n onChange={field.onChange}\n id={field.id}\n />;\n case \"info\":\n return <>\n <p>{field.label}</p>\n </>\n case \"hidden\":\n return <input value={field.value} type={field.type} name={field.name} id={field.id}/>;\n case \"select\":\n return (\n <>\n <select\n name={field.name}\n onChange={field.onChange}\n disabled={field.isDisabled}\n value={field.value}\n id={field.id}\n >\n {field.options && field.options.length > 0 && field.options?.map((o: option) => (\n <option disabled={o.disabled} selected={o.selected} key={o.value}\n value={o.value}>{o.label}</option>\n ))}\n </select>\n <span className=\"select-custom-arrow\"></span>\n </>\n );\n default:\n return null;\n }\n}\n\nexport const FormFieldRenderer = (props: FormFieldType & {\n onChange?: (e: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement>) => void;\n onPhoneChange?: (phone: string) => void;\n id?: string;\n checked?: boolean;\n}) => {\n return RenderField(props)\n}","import React, {useEffect, useState} from 'react'\nimport {v4 as uuidv4} from 'uuid';\nimport {FormFieldRenderer, FormFieldType} from \"@stories/experiences/QRFormJourney/FormFieldType\";\n\n\nexport const QrFormField = (props: FormFieldType & {\n onChange?: (e: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement>) => void;\n errorMessage?: string;\n required?: boolean;\n}) => {\n\n const [inputId, setInputId] = useState('');\n\n useEffect(() => {\n setInputId(uuidv4());\n }, []);\n\n const supportsValue = props.type !== \"checkbox\";\n\n return (props.type ?\n <div\n className={(props.hasError ? \"error\" : \"\") + \" qr-form-filed-wrapper\" + (props.isDisabled ? \" disabled\" : \"\") + \" \" + props.type}>\n <label htmlFor={inputId}>\n <span className=\"label\">{props.label} {props.required &&\n <span className=\"required-asterisk\">*</span>}</span>\n <FormFieldRenderer\n key={props.name}\n type={props.type}\n value={supportsValue ? props.value : undefined}\n {...(props.type === \"checkbox\" ? {checked: props.checked} : {})}\n name={props.name}\n isDisabled={props.isDisabled}\n {...(props.type === \"text\" || props.type === \"email\" || props.type === \"tel\" || props.type === \"textarea\" || props.type === \"number\"\n ? {regex: props.regex}\n : {})}\n id={inputId}\n onChange={props.onChange}\n {...(props.type === \"number\" ? {\n min: (props as any).min,\n max: (props as any).max,\n step: (props as any).step\n } : {})}\n {...(props.type === \"select\" ? {options: (props as any).options} : {})}\n placeholder={`${props.placeholder} ${props.required ? \"*\" : \"\"}`}\n maxLength={(props as any).maxLength}\n />\n </label>\n {props.errorMessage && props.hasError &&\n <span className=\"formfield-error\"> {props.errorMessage}</span>}\n </div> : <></>\n )\n}","import { useEffect, useState } from \"react\";\n\nexport function useIsMobile() {\n const query = \"(max-width: 960px)\";\n const media = typeof window !== \"undefined\" ? window.matchMedia(query) : null;\n\n const [isMobile, setIsMobile] = useState(media ? media.matches : false);\n\n useEffect(() => {\n if (!media) return;\n\n const handler = () => setIsMobile(media.matches);\n media.addEventListener(\"change\", handler);\n return () => media.removeEventListener(\"change\", handler);\n }, [media]);\n\n return isMobile;\n}\n","export type qrFormTranslations = {\n next?: string\n previous?: string\n submit?: string\n validationError?: string\n\n pageTitle_productInformation?: string,\n pageTitle_aboutYou?: string,\n pageTitle_contactDetails?: string,\n pageTitle_consents?: string,\n\n label_howMayWeHelpYou?: string,\n label_customerSupport?: string,\n label_technicalSupport?: string,\n label_ProductDetails?: string,\n label_warrantyClaim?: string,\n label_serviceRequest?: string,\n label_oilAndSpares?: string,\n label_other?: string,\n\n label_tellUsMore?: string,\n label_tellUsMoreOptional?: string,\n section_scannedProductDetails?: string,\n\n label_title?: string,\n label_lastName?: string,\n label_firstName?: string,\n label_company?: string,\n\n label_country?: string,\n label_email?: string,\n label_phone?: string,\n label_city?: string,\n label_postcodeOrZip?: string,\n\n consent_acceptPolicy?: string,\n consent_default?: string,\n consent_requiredMessage?: string\n}\n\nexport const defaultQrFormTranslations: Required<qrFormTranslations> = {\n next: \"Next\",\n previous: \"Previous\",\n submit: \"Submit\",\n validationError: \"Please ensure the information provided in this field is valid and complete.\",\n\n pageTitle_productInformation: \"Product information\",\n pageTitle_aboutYou: \"About you\",\n pageTitle_contactDetails: \"Your contact details\",\n pageTitle_consents: \"Consents\",\n\n label_howMayWeHelpYou: \"How may we help you?\",\n label_customerSupport: \"Customer support\",\n label_technicalSupport: \"Technical support\",\n label_ProductDetails: \"Product information\",\n label_warrantyClaim: \"Warranty claim\",\n label_serviceRequest: \"Service request\",\n label_oilAndSpares: \"Oil and spares\",\n label_other: \"Other\",\n label_tellUsMore: \"Tell us more\",\n label_tellUsMoreOptional: \"Tell us more about your issue (optional)\",\n section_scannedProductDetails: \"Scanned Product Details\",\n\n label_title: \"Title\",\n label_lastName: \"Last Name\",\n label_firstName: \"First Name\",\n label_company: \"Company\",\n\n label_country: \"Country\",\n label_email: \"Email\",\n label_phone: \"Phone\",\n label_city: \"City\",\n label_postcodeOrZip: \"Postcode or ZIP\",\n\n consent_acceptPolicy: \"I accept the policy\",\n consent_default: \"Consent\",\n consent_requiredMessage: \"Please acknowledge this consent\"\n}\n","import React, {useEffect, useState} from \"react\";\nimport {FormFieldType as FormFieldDefinition} from \"../FormFieldType\";\nimport './qr-form.scss';\nimport {QrFormField} from \"@stories/experiences/QRFormJourney/Qr-form-field/Qr-form-field\";\nimport {Button as DefaultButton} from \"@stories/components/Button/Button\";\nimport {useIsMobile} from \"../../../../utils/helpers/isMobile\";\nimport {defaultQrFormTranslations, qrFormTranslations} from \"./i18n\"\n\n\ntype FormValues = {\n [key: string]: any;\n};\n\ntype FormErrors = {\n [key: string]: boolean;\n};\n\n\nexport type qrCodeFormProps = {\n hubspotId: string\n hubspotAppId: string\n formAction: string\n fields: FormFieldDefinition[]\n formHeader?: string\n validate?: (values: FormValues, currentPage: number) => FormErrors | null;\n onSubmit?: (values: FormValues) => void | boolean;\n thankYouTitle?: string\n thankYouText?: string\n thankYouButtonLabel?: string\n noThankYou?: boolean\n showThankYou?: boolean\n consentTypeId?: string\n consents?: consentProps[]\n /** Custom Button component - defaults to Edwards Button if not provided */\n ButtonComponent?: React.ComponentType<any>;\n};\n\nexport type consentProps = {\n policyMandatory?: boolean\n policyText?: string\n policyLink?: string\n type?: string | null\n}\n\nexport type qrFormButtonProps = {\n buttonText: string\n linkType: string\n url: string\n newTab: boolean\n};\n\nexport type allQrFromProps = qrCodeFormProps & qrFormTranslations & qrFormButtonProps;\n\nexport const QrForm = (props: allQrFromProps) => {\n const [currentPage, setCurrentPage] = useState(0);\n const [formValues, setFormValues] = useState<FormValues>({});\n const [errors, setErrors] = useState<FormErrors>({});\n const [showErrors, setShowErrors] = useState<boolean>(false);\n const isMobile: boolean = useIsMobile();\n const [countryOptions, setCountryOptions] = useState<{ value: string; label: string }[] | null>(null);\n const [isLoadingCountries, setIsLoadingCountries] = useState(true);\n\n // Use custom Button component if provided, otherwise use default\n const Button = props.ButtonComponent || DefaultButton;\n\n const i18n = {...defaultQrFormTranslations, ...props} as Required<qrFormTranslations>;\n const buttonProps = props as qrFormButtonProps;\n\n const consentFields: FormFieldDefinition[] =\n props.consents?.map((consent, index) => ({\n type: consent.type === \"info\" ? \"info\" : \"checkbox\",\n name: `consent_${index + 1}`,\n label: consent.policyText\n ? consent.policyText\n : consent.policyLink\n ? `${i18n.consent_acceptPolicy}: ${consent.policyLink}`\n : `${i18n.consent_default}${index + 1}`,\n value: \"true\",\n required: !!consent.policyMandatory,\n errorMessage: consent.policyMandatory\n ? i18n.consent_requiredMessage\n : \"\",\n })) || [];\n\n useEffect(() => {\n const initialValues: FormValues = {};\n props.fields.forEach(field => {\n initialValues[field.name] = field.value || '';\n });\n\n setFormValues(initialValues);\n }, [props.fields]);\n\n useEffect(() => {\n async function loadCountries() {\n const fallbackCountries = [\n {value: \"us\", label: \"United States\"},\n {value: \"gb\", label: \"United Kingdom\"},\n {value: \"de\", label: \"Germany\"},\n {value: \"fr\", label: \"France\"},\n {value: \"cn\", label: \"China\"},\n {value: \"other\", label: \"Other\"},\n ];\n\n try {\n const res = await fetch(\"/etc.clientlibs/vtba/clientlibs/resources/countries.json\");\n if (!res.ok) throw new Error(`HTTP ${res.status}`);\n const data = await res.json();\n setCountryOptions(data?.options || fallbackCountries);\n } catch (err) {\n console.warn(\"Could not fetch countries.json, using fallback:\", err);\n setCountryOptions(fallbackCountries);\n } finally {\n setIsLoadingCountries(false);\n }\n }\n\n loadCountries();\n }, []);\n\n\n useEffect(() => {\n async function fetchCity() {\n try {\n const res = await fetch('https://ipapi.co/json/');\n if (!res.ok) throw new Error('IP lookup failed');\n const data = await res.json();\n if (data.city) {\n setFormValues(prev => ({...prev, ip_location: data.city}));\n }\n } catch (err) {\n console.warn('Could not resolve city from IP:', err);\n }\n }\n\n fetchCity();\n }, []);\n\n const pageTitles: string[] = [\n i18n.pageTitle_productInformation,\n i18n.pageTitle_aboutYou,\n i18n.pageTitle_contactDetails,\n i18n.pageTitle_consents\n ]\n\n const pages: (FormFieldDefinition[])[] = [\n /*page 1*/\n [...props.fields, {\n type: \"select\",\n name: \"how_can_we_help\",\n options: [\n {label: i18n.label_howMayWeHelpYou, value: \"\", selected: true, disabled: true},\n {label: i18n.label_technicalSupport, value: \"technical support\"},\n {label: i18n.label_warrantyClaim, value: \"warranty claim\"},\n {label: i18n.label_serviceRequest, value: \"service request\"},\n {label: i18n.label_oilAndSpares, value: \"oil and spares\"},\n {label: i18n.label_other, value: \"other\"}\n ]\n },\n {\n type: \"textarea\",\n name: \"tell_us_more\",\n placeholder: i18n.label_tellUsMoreOptional,\n label: i18n.label_tellUsMoreOptional\n }\n ],\n /*page 2*/\n [\n {type: \"text\", name: \"title\", label: i18n.label_title, placeholder: i18n.label_title},\n {type: \"text\", name: \"lastname\", label: i18n.label_lastName, placeholder: i18n.label_lastName},\n {type: \"text\", name: \"firstname\", label: i18n.label_firstName, placeholder: i18n.label_firstName},\n {type: \"text\", name: \"company\", label: i18n.label_company, placeholder: i18n.label_company},\n\n ],\n /*page 3*/\n [\n {type: \"select\", name: \"country\", label: i18n.label_country, options: countryOptions || []},\n {\n type: \"email\",\n name: \"email\",\n label: i18n.label_email,\n placeholder: i18n.label_email,\n required: true,\n errorMessage: i18n.validationError\n },\n {\n type: \"tel\",\n name: \"phone\",\n label: i18n.label_phone,\n placeholder: i18n.label_phone,\n required: false,\n }, {\n type: \"text\",\n name: \"city\",\n label: i18n.label_city,\n placeholder: i18n.label_city,\n required: false,\n }, {\n type: \"text\",\n name: \"postcodeOrZip\",\n label: i18n.label_postcodeOrZip,\n placeholder: i18n.label_postcodeOrZip,\n required: false,\n },\n\n ],\n /*Page 4*/\n [...consentFields]\n ]\n\n const handleChange = (name: string, value: any) => {\n setFormValues(prevValues => ({\n ...prevValues,\n [name]: value\n }));\n // When a field changes, we might want to clear its error IF errors are currently shown\n // but for now, we'll only show errors AFTER a navigation/submit attempt.\n // So, we don't clear individual errors here to maintain the \"show all errors on validation\" behavior.\n };\n\n const validatePage = (page: number): boolean => {\n let pageIsValid = true;\n const newErrors: FormErrors = {};\n\n const getFieldsForPage = (pageNumber: number): FormFieldDefinition[] => {\n return pages[pageNumber] ? pages[pageNumber] : []\n };\n\n const fieldsToValidate = getFieldsForPage(page);\n\n fieldsToValidate.forEach(field => {\n const value = formValues[field.name];\n\n if (field.required) {\n if (!value || (typeof value === 'string' && value.trim() === '')) {\n newErrors[field.name] = true;\n pageIsValid = false;\n }\n }\n\n // Regex Validation\n const fieldWithRegex = field as (FormFieldDefinition & { regex?: string });\n if (fieldWithRegex.regex && value && typeof value === 'string' && value.trim() !== '') {\n try {\n const regex = new RegExp(fieldWithRegex.regex);\n if (!regex.test(value)) {\n newErrors[field.name] = true;\n pageIsValid = false;\n }\n } catch (e) {\n console.error(`Invalid regex for field ${field.name}:`, fieldWithRegex.regex, e);\n }\n }\n\n });\n\n if (props.validate) {\n const customErrors = props.validate(formValues, page);\n if (customErrors) {\n Object.assign(newErrors, customErrors);\n if (Object.keys(customErrors).some(key => customErrors[key] !== undefined)) {\n pageIsValid = false;\n }\n }\n }\n setErrors(newErrors); // Set the errors for the *current* validation run\n return pageIsValid;\n };\n\n const handleSubmit = async (ev: React.FormEvent) => {\n ev.preventDefault();\n setShowErrors(true); // Attempting to submit, so show errors\n if (validatePage(currentPage)) {\n if (props.onSubmit) {\n props.onSubmit(formValues);\n } else {\n console.log(\"Form submitted with values:\", formValues);\n }\n } else {\n console.log(\"Form has errors on the current page, cannot submit.\");\n }\n };\n\n function formNavigate(ev: React.MouseEvent<HTMLButtonElement>): void {\n ev.preventDefault();\n const el = ev.target as HTMLButtonElement;\n const pageTarget = el.dataset.page_target;\n let pageTargetInt = currentPage;\n if (pageTarget) {\n pageTargetInt = parseInt(pageTarget, 10)\n }\n setShowErrors(true); // Attempting to navigate, so show errors\n if (pageTargetInt > -1) {\n\n if (currentPage > pageTargetInt || validatePage(currentPage)) {\n setCurrentPage(pageTargetInt);\n setShowErrors(false); // Hide errors when successfully navigated to a new page\n setErrors({}); // Clear errors from previous page as well\n\n } else {\n console.log(\"Validation failed on current page, cannot navigate.\");\n }\n }\n }\n\n const renderQrFormField = (field: FormFieldDefinition) => (\n // if no label, don't render the field\n field.value ? <QrFormField\n {...field}\n key={field.name}\n label={field.label}\n value={formValues[field.name]}\n onChange={(e) => handleChange(field.name, e.target.value)}\n isDisabled={field.isDisabled}\n errorMessage={field.errorMessage}\n hasError={errors[field.name] || false}\n required={field.required}\n {...(field.type === \"text\" || field.type === \"email\" || field.type === \"tel\" || field.type === \"textarea\" || field.type === \"number\"\n ? {regex: (field as any).regex}\n : {})}\n /> : null\n );\n\n interface FormSectionProps {\n pageIndex: number,\n startFromFieldIndex?: number,\n endFieldIndex?: number,\n generateButtons?: boolean,\n sectionTitle?: string\n }\n\n const renderProgressBar = (pageIndex: number) => {\n\n return isMobile ? (<div className=\"progress-indicator\">\n <span className=\"progress-text\">{pageIndex + 1} / {pages.length}</span>\n\n <span className=\"progress-visual\"\n // @ts-ignore --percent is a css variable I used it to manipulate the chart i.e. its pure css but ts set for style pros doesnt include variables yet\n style={{'--percent': `${(100 / pages.length) * (pageIndex + 1)}%`}}></span>\n </div>) : <></>\n }\n const renderFormSection = (fsp: FormSectionProps) => {\n\n const {\n pageIndex,\n startFromFieldIndex,\n endFieldIndex,\n generateButtons = true,\n sectionTitle\n } = fsp;\n\n const fields = pages[pageIndex] || [];\n\n\n if (currentPage !== pageIndex) return null;\n\n const from = startFromFieldIndex ?? 0;\n const to = endFieldIndex ?? fields.length;\n const fieldsSubset = fields.slice(from, to);\n\n const isPartial = startFromFieldIndex !== undefined || endFieldIndex !== undefined;\n const isFirstPage = pageIndex === 0;\n const isLastPage = pageIndex === pages.length - 1;\n\n\n const navButtons = generateButtons && (\n <div className=\"qr-form-navigation\">\n {!isFirstPage ? (\n <Button label={i18n?.previous} onClick={formNavigate}\n data-page_target={pageIndex - 1} buttonStyle=\"secondary\"/>\n ) : <div></div>}\n {!isLastPage ? (\n <Button label={i18n?.next} onClick={formNavigate}\n data-page_target={pageIndex + 1} buttonStyle=\"primary\"/>\n ) : (\n <Button label={i18n?.submit} onClick={handleSubmit} buttonStyle=\"primary\" element=\"button\" type=\"submit\"/>\n )}\n </div>\n );\n\n if (isPartial) {\n return (\n <>\n <div className=\"qr-form-fields\">\n {fieldsSubset.map((field) => renderQrFormField(field))}\n </div>\n {generateButtons && navButtons}\n </>\n );\n }\n\n return (\n <section\n key={pageIndex}\n className=\"qr-form-page-section active\"\n data-page={pageIndex + 1}\n >\n {isMobile && <div className=\"header-wrapper\">\n {renderProgressBar(pageIndex)}\n <h2>{sectionTitle}</h2>\n </div>}\n <div className=\"qr-form-fields\">\n {fieldsSubset.map((field) => renderQrFormField(field))}\n </div>\n {navButtons}\n </section>\n );\n };\n\n\n return (\n <div className={`qr-journey-form-wrapper desktop-${!isMobile}`}>\n {!props.showThankYou ?\n (<>\n {!isMobile && <div className={\"form-progress\"}>\n {props.formHeader && currentPage === 0 && <h1>{props.formHeader}</h1>}\n <ul className={`progress-indicator-desktop current-page-${currentPage} ${currentPage === 0 ? \"first-page\" : \"\"}` }>\n {pages.map((_, index) => (\n <li className={`${currentPage >= index ? \"checked\" : \"\"} ${index === currentPage ? \"current-page\" : \"\"}`} key={index}>\n <div className=\"bullet-point\">\n <span>{index + 1}</span>\n </div>\n <h3>{pageTitles[index]}</h3>\n </li>\n ))}\n </ul>\n </div>}\n <form action={`${props.formAction}/${props.hubspotAppId}/${props.hubspotId}`}\n onSubmit={handleSubmit}>\n {currentPage === 0 && (\n <section\n key={1}\n className=\"qr-form-page-section\"\n data-page={1}>\n {isMobile && props.formHeader && <h1>{props.formHeader}</h1>}\n {isMobile &&\n <div className=\"header-wrapper\">\n <h2>{i18n.pageTitle_productInformation}</h2>\n {renderProgressBar(0)}\n </div>}\n <div className=\"disabled-product-fields-section\">\n <h2>{i18n.section_scannedProductDetails}</h2>\n {renderFormSection({\n pageIndex: 0,\n startFromFieldIndex: 0,\n endFieldIndex: 4,\n generateButtons: false\n })}\n </div>\n {renderFormSection({\n pageIndex: 0,\n startFromFieldIndex: 4,\n endFieldIndex: 6,\n generateButtons: true\n })}\n\n </section>\n )}\n\n {renderFormSection({pageIndex: 1, sectionTitle: pageTitles[1]})}\n {renderFormSection({pageIndex: 2, sectionTitle: pageTitles[2]})}\n {renderFormSection({pageIndex: 3, sectionTitle: pageTitles[3]})}\n <input type=\"hidden\" name=\"ip_location\" value={formValues.ip_location || ''}/>\n </form>\n </>) : (\n <div className=\"qr-form-thank-you-page\">\n <div className=\"title-wrapper\">\n <div className=\"submitted-checked\"></div>\n <h2>{props.thankYouTitle}</h2>\n </div>\n <p>{props.thankYouText}</p>\n <Button label={buttonProps.buttonText} href={buttonProps.url}\n target={buttonProps.newTab ? '_blank' : ''} buttonStyle='primary'/>\n </div>\n )}\n </div>\n );\n};"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","__rest","e","indexOf","getOwnPropertySymbols","propertyIsEnumerable","__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","rejected","result","done","then","__generator","body","_","label","sent","trys","ops","f","y","g","create","Iterator","verb","Symbol","iterator","v","op","TypeError","pop","push","__spreadArray","to","from","pack","l","ar","Array","slice","concat","SuppressedError","error","suppressed","message","Error","name","hasOwn","classNames","classes","arg","appendClass","parseValue","isArray","toString","includes","key","newClass","module","exports","default","window","AccordionSection","_a","title","children","_b","className","_c","defaultOpen","_d","lazyLoad","_e","useState","isOpen","setIsOpen","_f","hasBeenOpened","setHasBeenOpened","isToggling","useRef","toggleAccordion","useCallback","stopPropagation","preventDefault","current","requestAnimationFrame","prev","setTimeout","handleKeyDown","shouldRenderChildren","React","createElement","onClick","role","tabIndex","onKeyDown","style","transform","transition","FontAwesomeIcon","icon","faChevronDown","color","display","maxHeight","overflow","getStyle","styles","nestedMatch","keys","find","cardSizeMapping","size","classSrting","getImageUrl","imageUrl","require","src","console","Card","contentCategoryLabel","colour","date","cta","imageAlt","cardStyle","cardLink","city","country","placeholder","usePlainClasses","getClassName","mode","width","categoryColour","cardFooterColour","contentImage","classnames","href","alt","faChevronRight","faArrowRight","ProductCard","showImage","productPrice","showProductPrice","productImage","target","undefined","MAX_SPARES_TO_RENDER","ProductDetailsCard","hit","facets","ProductCardComponent","SpareCard","renderSpares","spares","sparesToRender","map","spare","index","objectID","code","image","priceValue","price","url","link","facet","returnsHTML","dangerouslySetInnerHTML","__html","Button","buttonStyle","element","rel","type","dataTargetSelector","props","baseClass","conditionalClasses","filter","Boolean","join","trim","inferredElement","_extends","PRODUCT_DETAILS","DynamicHeading","titleSize","Tag","getCallToActionProps","callType","toLowerCase","finalUrl","AlgoliaDynamicSearch","useScopedStyles","heading","subtext","callToActionType","callToActionText","callToActionUrl","callToActionTargetSelector","queryType","hits","hitCta","query","backgroundColour","maxResults","isLoading","analytics","innerComponents","DefaultCard","DefaultProductCard","DefaultProductDetailsCard","DefaultButton","getClass","suffix","fullClassName","getModifierClass","modifier","widgetStyleProps","useMemo","backgroundStyles","containerBackground","textColour","wrapperClasses","Fragment","isAnchor","open","Component","hitUtm","URLSearchParams","utm_source","utm_medium","utm_campaign","separator","contentCategoryColour","cardClassName","cmpCard","handleClick","__position","__queryID","edwardsComponents","AlgoliaDynamicSearchEdwards","AlgoBase","AlgoliaDynamicSearchRaw","RenderField","field","disabled","isDisabled","onChange","id","maxLength","PhoneInput","phone","onPhoneChange","syntheticEvent","defaultCountry","inputProps","min","max","checked","options","o","selected","FormFieldRenderer","QrFormField","inputId","setInputId","useEffect","uuidv4","supportsValue","hasError","htmlFor","required","regex","errorMessage","useIsMobile","media","matchMedia","matches","isMobile","setIsMobile","handler","addEventListener","removeEventListener","defaultQrFormTranslations","previous","submit","validationError","pageTitle_productInformation","pageTitle_aboutYou","pageTitle_contactDetails","pageTitle_consents","label_howMayWeHelpYou","label_customerSupport","label_technicalSupport","label_ProductDetails","label_warrantyClaim","label_serviceRequest","label_oilAndSpares","label_other","label_tellUsMore","label_tellUsMoreOptional","section_scannedProductDetails","label_title","label_lastName","label_firstName","label_company","label_country","label_email","label_phone","label_city","label_postcodeOrZip","consent_acceptPolicy","consent_default","consent_requiredMessage","QrForm","currentPage","setCurrentPage","formValues","setFormValues","errors","setErrors","showErrors","setShowErrors","countryOptions","setCountryOptions","_g","isLoadingCountries","setIsLoadingCountries","ButtonComponent","i18n","buttonProps","consentFields","consents","consent","policyText","policyLink","policyMandatory","initialValues","fields","forEach","loadCountries","fallbackCountries","fetch","res","ok","status","json","data","warn","err_1","fetchCity","data_1","ip_location","err_2","pageTitles","pages","handleChange","prevValues","validatePage","page","pageIsValid","newErrors","getFieldsForPage","pageNumber","fieldsToValidate","fieldWithRegex","RegExp","test","validate","customErrors_1","some","handleSubmit","ev","onSubmit","log","formNavigate","el","pageTarget","dataset","page_target","pageTargetInt","parseInt","renderQrFormField","renderProgressBar","pageIndex","renderFormSection","fsp","startFromFieldIndex","endFieldIndex","generateButtons","sectionTitle","fieldsSubset","isPartial","isFirstPage","isLastPage","navButtons","showThankYou","formHeader","action","formAction","hubspotAppId","hubspotId","thankYouTitle","thankYouText","buttonText","newTab"],"mappings":"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","x_google_ignoreList":[0,1]}
1
+ {"version":3,"file":"index.esm.js","sources":["../node_modules/tslib/tslib.es6.js","../node_modules/classnames/index.js","../src/stories/components/AccordionSection/AccordionSection.tsx","../src/stories/components/Card/card.tsx","../src/stories/components/Button/Button.tsx","../src/stories/experiences/Algolia-dynamic-search/algolia-dynamic-search-base.tsx","../src/stories/experiences/Algolia-dynamic-search/algolia-dynamic-search.tsx","../src/stories/experiences/QRFormJourney/FormFieldType.tsx","../src/stories/experiences/QRFormJourney/Qr-form-field/Qr-form-field.tsx","../src/utils/helpers/isMobile.ts","../src/stories/experiences/QRFormJourney/Qr-form/i18n.ts","../src/stories/experiences/QRFormJourney/Qr-form/Qr-form.tsx"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nvar ownKeys = function(o) {\r\n ownKeys = Object.getOwnPropertyNames || function (o) {\r\n var ar = [];\r\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\r\n return ar;\r\n };\r\n return ownKeys(o);\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\r\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\r\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\r\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\r\n });\r\n }\r\n return path;\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __esDecorate: __esDecorate,\r\n __runInitializers: __runInitializers,\r\n __propKey: __propKey,\r\n __setFunctionName: __setFunctionName,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,\r\n};\r\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React, { useState, useCallback, useRef, ReactNode } from 'react';\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faChevronDown } from \"@fortawesome/pro-solid-svg-icons\";\nimport './AccordionSection.scss';\n\ninterface AccordionSectionProps {\n title: string;\n children: ReactNode;\n className?: string;\n defaultOpen?: boolean;\n lazyLoad?: boolean;\n}\n\nexport const AccordionSection = ({\n title,\n children,\n className = '',\n defaultOpen = false,\n lazyLoad = false\n}: AccordionSectionProps) => {\n const [isOpen, setIsOpen] = useState(defaultOpen);\n const [hasBeenOpened, setHasBeenOpened] = useState(defaultOpen);\n \n // Prevent rapid clicks\n const isToggling = useRef(false);\n\n const toggleAccordion = useCallback((e: React.MouseEvent | React.KeyboardEvent) => {\n // Stop event propagation to prevent AEM handlers\n e.stopPropagation();\n e.preventDefault();\n \n // Prevent multiple rapid toggles\n if (isToggling.current) return;\n isToggling.current = true;\n \n // Use requestAnimationFrame to defer state update\n requestAnimationFrame(() => {\n setIsOpen(prev => !prev);\n if (!hasBeenOpened) {\n setHasBeenOpened(true);\n }\n \n // Reset toggle lock\n setTimeout(() => {\n isToggling.current = false;\n }, 300);\n });\n }, [hasBeenOpened]);\n\n const handleKeyDown = useCallback((e: React.KeyboardEvent) => {\n if (e.key === 'Enter' || e.key === ' ') {\n toggleAccordion(e);\n }\n }, [toggleAccordion]);\n\n // Only render children if not lazy loading, or if accordion has been opened\n const shouldRenderChildren = !lazyLoad || hasBeenOpened;\n\n return (\n <div className={`accordion-section ${className} ${isOpen ? 'open' : ''}`}>\n <h4 \n className=\"accordion-section__header\"\n onClick={toggleAccordion}\n role=\"button\"\n tabIndex={0}\n onKeyDown={handleKeyDown}\n aria-expanded={isOpen}\n >\n <span className=\"accordion-section__title\">{title}</span>\n <span \n className=\"accordion-section__icon\"\n style={{ \n transform: isOpen ? 'rotate(180deg)' : 'rotate(0deg)',\n transition: 'transform 0.2s ease'\n }}\n >\n <FontAwesomeIcon icon={faChevronDown} color=\"#C4262E\" />\n </span>\n </h4>\n {/* Override CSS max-height with inline styles to avoid layout thrashing */}\n <div \n className=\"accordion-section__content\"\n style={{ \n display: isOpen ? 'block' : 'none',\n maxHeight: isOpen ? 'none' : '0',\n overflow: isOpen ? 'visible' : 'hidden'\n }}\n >\n {shouldRenderChildren ? children : null}\n </div>\n </div>\n );\n};\n\n","import React, { MouseEventHandler, useRef } from \"react\";\nimport styles from \"./card.module.scss\"; // Importing SCSS Module\nimport classnames from \"classnames\"; // For managing class names dynamically\nimport { CardProps } from \"./card.types\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport {\n faArrowRight,\n faChevronDown,\n faChevronRight,\n faPause,\n faPlay,\n} from \"@fortawesome/pro-solid-svg-icons\";\nimport { AccordionSection } from \"../AccordionSection\";\n\nif (process.env.STORYBOOK === \"true\") {\n require(\"./card.scss\");\n}\n\n// Utility function to retrieve correct SCSS module class names\nconst getStyle = (className: string) => {\n if (styles[className]) return styles[className];\n const nestedMatch = Object.keys(styles).find((key) =>\n key.includes(className)\n );\n return nestedMatch ? styles[nestedMatch] : \"\";\n};\n\nconst cardSizeMapping = (size: any) => {\n let classSrting;\n if (size === \"small\") {\n classSrting = \"col-3\";\n } else if (size === \"medium\") {\n classSrting = \"col-4\";\n } else if (size === \"large\") {\n classSrting = \"col-6\";\n } else {\n classSrting = \"\";\n }\n return classSrting;\n};\n\nconst getImageUrl = (imageUrl?: string): string => {\n if (imageUrl) {\n return imageUrl; // If an image URL is provided, use it.\n }\n try {\n // Try loading from local assets (works in Storybook)\n return require(\"../../../assets/edwards-webshop-placeholder.png\").default\n .src;\n } catch (error) {\n // If that fails, load from node_modules (works in host app)\n try {\n return require(\"@asantemedia-org/edwardsvacuum-design-system/dist/assets/edwards-webshop-placeholder.png\")\n .default;\n } catch (error) {\n console.error(\n \"Placeholder image not found in either local assets or node_modules.\",\n error\n );\n return \"\"; // Fallback empty string if no image is found\n }\n }\n};\n\nexport const Card = ({\n contentCategoryLabel,\n className,\n colour,\n date,\n size,\n title,\n cta,\n imageUrl,\n imageAlt,\n cardStyle,\n cardLink,\n city,\n country,\n placeholder,\n onClick,\n usePlainClasses = false,\n}: CardProps) => {\n // Helper to get class name - plain or CSS module\n const getClassName = (name: string) => usePlainClasses ? name : getStyle(name);\n \n const mode = usePlainClasses ? `cmp-card--${cardStyle}` : getStyle(`cmp-card--${cardStyle}`);\n const width = cardSizeMapping(size);\n const categoryColour = colour\n ? (usePlainClasses ? `cmp-card__content-category-wrapper__colour-${colour}` : getStyle(`cmp-card__content-category-wrapper__colour-${colour}`))\n : \"\";\n const cardFooterColour = colour\n ? (usePlainClasses ? `cmp-card__footer--color-${colour}` : getStyle(`cmp-card__footer--color-${colour}`))\n : \"\";\n\n const contentImage = getImageUrl(imageUrl);\n\n return (\n <div\n className={classnames(\n getClassName(\"cmp-card\"),\n mode,\n width,\n className && (usePlainClasses ? className : getStyle(className))\n )}\n >\n <a\n className={getClassName(\"cmp-card__link\")}\n href={cardLink}\n onClick={onClick}\n >\n <div className={getClassName(\"cmp-card__content-wrapper\")}>\n {cardStyle !== \"type-card-panel\" &&\n cardStyle !== \"type-card-no-image\" && (\n <div\n className={`${getClassName(\"cmp-card__image-wrapper\")} ${\n !imageUrl || placeholder ? getClassName(\"placeholderImage\") : \"\"\n }`}\n >\n <picture>\n <img src={contentImage} alt={imageAlt} />\n </picture>\n </div>\n )}\n {cardStyle === \"type-card-label\" && (\n <div\n className={classnames(\n getClassName(\"cmp-card__content-category-wrapper\"),\n categoryColour\n )}\n >\n {contentCategoryLabel && <p>{contentCategoryLabel}</p>}\n </div>\n )}\n\n <div className={getClassName(\"cmp-card__title-wrapper\")}>\n {date && <div className={getClassName(\"cmp-card__date\")}>{date}</div>}\n {title && <h4 className={getClassName(\"cmp-card__title\")}>{title}</h4>}\n {(city || country) && (\n <p className={getClassName(\"cmp-card__city-country\")}>\n {city} {city && country ? \", \" : \"\"} {country}\n </p>\n )}\n\n {cardStyle === \"type-card-panel\" ? (\n <span\n className={classnames(\n getClassName(\"cmp-card__footer\"),\n cardFooterColour\n )}\n >\n <FontAwesomeIcon icon={faChevronRight} />\n </span>\n ) : cardStyle === \"label\" ? (\n <span className={getClassName(\"cmp-card__footer\")}>\n <FontAwesomeIcon icon={faArrowRight} />\n </span>\n ) : (\n <span className={getClassName(\"cmp-card__footer\")}>\n <span>{cta}</span>\n </span>\n )}\n </div>\n </div>\n </a>\n </div>\n );\n};\n\nexport const ProductCard = ({\n className,\n size,\n title,\n imageUrl,\n imageAlt,\n showImage = true,\n productPrice,\n showProductPrice,\n cardLink,\n cta,\n cardStyle,\n placeholder,\n onClick,\n usePlainClasses = false,\n}: CardProps) => {\n // Helper to get class name - plain or CSS module\n const getClassName = (name: string) => usePlainClasses ? name : getStyle(name);\n \n const width = cardSizeMapping(size);\n const mode = usePlainClasses ? `cmp-card--${cardStyle}` : getStyle(`cmp-card--${cardStyle}`);\n const productImage = getImageUrl(imageUrl);\n\n return (\n <div className={classnames(getClassName(\"cmp-card\"), mode, width, className)}>\n <a\n href={cardLink}\n className={getClassName(\"cmp-card__link\")}\n onClick={onClick}\n target=\"_blank\"\n >\n <div className={classnames(getClassName(\"cmp-card--type-card-product__wrapper\"), showImage ? \"\" : getClassName(\"cmp-card--type-card-product-no-image__wrapper\"))}>\n {showImage && (\n <div className={getClassName(\"cmp-card--type-card-product__image\")}>\n <figure>\n <img\n src={productImage}\n alt={imageAlt}\n className={\n !imageUrl || placeholder ? \"placeholderImage\" : undefined\n }\n />\n </figure>\n </div>\n )}\n <div className={getClassName(\"cmp-card--type-card-product__meta\")}>\n <p className={getClassName(\"cmp-card--type-card-product__title\")}>\n {title}\n </p>\n {productPrice && showProductPrice !== false ? (\n <p className={getClassName(\"cmp-card--type-card-product__prices\")}>\n {productPrice}\n </p>\n ) : (\n \"\"\n )}\n <p className={getClassName(\"cmp-card--type-card-product__cta\")}>\n {cta ? cta : <FontAwesomeIcon icon={faArrowRight} />}\n </p>\n </div>\n </div>\n </a>\n </div>\n );\n};\n\nexport const VideoCard = ({\n className,\n title,\n imageUrl,\n imageAlt,\n cardStyle,\n duration,\n videoSrc,\n videoTitle,\n videoThumbnail,\n onClick,\n}: CardProps) => {\n return (\n <div\n className={classnames(\n className,\n getStyle(\"cmp-video-playlist__card\"),\n getStyle(`cmp-video-playlist__card--${cardStyle}`)\n )}\n data-videothumbnail={videoThumbnail}\n data-videosrc={videoSrc}\n data-videotitle={videoTitle}\n tabIndex={0}\n onClick={onClick}\n >\n <div className={getStyle(\"cmp-video-playlist__card__thumbnail\")}>\n <img src={imageUrl} alt={imageAlt} loading=\"lazy\" />\n </div>\n\n <div className={getStyle(\"cmp-video-playlist__card__info\")}>\n <div className={getStyle(\"cmp-video-playlist__card__info__title\")}>\n <h6>{title}</h6>\n </div>\n\n <div className={getStyle(\"cmp-video-playlist__card__info__bottom\")}>\n <div className={getStyle(\"cmp-video-playlist__card__info__duration\")}>\n <span\n className={getStyle(\n \"cmp-video-playlist__card__info__duration-current\"\n )}\n ></span>\n <span\n className={getStyle(\n \"cmp-video-playlist__card__info__duration-total\"\n )}\n >\n {duration}\n </span>\n </div>\n <div className={getStyle(\"cmp-video-playlist__card__info__icons\")}>\n <div\n className={getStyle(\n \"cmp-video-playlist__card__info__icons--play\"\n )}\n >\n <FontAwesomeIcon icon={faPlay} />\n </div>\n <div\n className={getStyle(\n \"cmp-video-playlist__card__info__icons--pause\"\n )}\n >\n <FontAwesomeIcon icon={faPause} />\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\n// Maximum spares to render to prevent browser freeze\nconst MAX_SPARES_TO_RENDER = 20;\n\nexport const ProductDetailsCard = ({\n className,\n title,\n imageUrl,\n imageAlt,\n placeholder,\n onClick,\n hit,\n facets,\n usePlainClasses = false,\n ProductCardComponent,\n}: CardProps) => {\n // Helper to get class name - plain or CSS module\n const getClassName = (name: string) => usePlainClasses ? name : getStyle(name);\n \n // Use custom ProductCard if provided, otherwise use default\n const SpareCard = ProductCardComponent || ProductCard;\n\n // Memoize spares rendering with a limit to prevent freeze\n const renderSpares = () => {\n if (!hit?.spares || !Array.isArray(hit.spares) || hit.spares.length === 0) return null;\n \n // Limit the number of spares to prevent freeze\n const sparesToRender = hit.spares.slice(0, MAX_SPARES_TO_RENDER);\n \n return (\n <ul className={getClassName(\"folding-spares-list\")}>\n {sparesToRender.map((spare: any, index: number) => {\n // Safety check - skip if spare is not a valid object\n if (!spare || typeof spare !== 'object') return null;\n \n return (\n <li key={spare.objectID || spare.code || `spare-${index}`}>\n <SpareCard\n cardStyle=\"type-card-product\"\n className={getClassName(\"cmp-card\")}\n title={spare.name || 'Spare Part'}\n imageUrl={spare['img-product'] || spare.image || ''}\n imageAlt={spare.name || 'Spare Part'}\n productPrice={spare.priceValue || spare.price || '$450.00'}\n showProductPrice={true}\n cardLink={spare.url || spare.link || '#'}\n cta=\"Go to webshop\"\n showImage={false}\n usePlainClasses={usePlainClasses}\n spare={spare}\n />\n </li>\n );\n })}\n {hit.spares.length > MAX_SPARES_TO_RENDER && (\n <li className={getClassName(\"folding-spares-list__more\")}>\n +{hit.spares.length - MAX_SPARES_TO_RENDER} more items\n </li>\n )}\n </ul>\n );\n };\n\n return (\n <div className={getClassName(\"cmp-card--type-product_details\")}>\n <div className={getClassName(\"cmp-card--type-product_details__product-info\")}>\n <div className={getClassName(\"cmp-card--type-product_details__header\")}>\n <h3 className={getClassName(\"cmp-card--type-product_details__header__title\")}>\n {title}\n </h3>\n <p className={getClassName(\"cmp-card--type-product_details__header__product-code\")}>\n Product: {hit?.code}\n </p>\n <img\n src={hit?.image}\n alt={imageAlt}\n className={getClassName(\"cmp-card--type-product_details__header__product-image\")}\n />\n </div>\n {facets && (\n <AccordionSection\n title=\"Specifications\"\n className={getClassName(\"folding-specification-holder\")}\n defaultOpen={true}\n >\n <ul className={getClassName(\"folding-specification-list\")}>\n {facets &&\n facets.map((facet) => {\n return (\n hit[facet.name] && (\n <li key={facet.name}>\n <strong>{facet.label}</strong>\n <br />\n {facet.returnsHTML ? (\n <span\n dangerouslySetInnerHTML={{\n __html: hit[facet.name],\n }}\n />\n ) : (\n hit[facet.name]\n )}\n </li>\n )\n );\n })}\n </ul>\n </AccordionSection>\n )}\n </div>\n <div className={getClassName(\"cmp-card--type-product_details__spares-list\")}>\n {hit?.spares && hit.spares.length > 0 && (\n <AccordionSection\n title=\"Spares & Parts\"\n className={getClassName(\"folding-spares-holder\")}\n lazyLoad={true}\n defaultOpen={true}\n >\n {renderSpares()}\n </AccordionSection>\n )}\n </div>\n </div>\n );\n};\n","import React from 'react';\nimport styles from './Button.module.scss';\n\nif (process.env.STORYBOOK === 'true') {\n require('./button.scss');\n}\n\ninterface ButtonProps extends React.HTMLAttributes<HTMLElement> {\n className?: string;\n style?: React.CSSProperties;\n buttonStyle?: string;\n label?: string;\n element?: 'button' | 'a';\n onClick?: (() => void) | ((ev: any) => void);\n href?: string;\n target?: string;\n rel?: string;\n type?: string;\n ['data-target-selector']?: string;\n}\n\n// Utility to safely retrieve SCSS class names\nconst getStyle = (className: string) => {\n if (styles[className]) return styles[className];\n const nestedMatch = Object.keys(styles).find((key) => key.includes(className));\n return nestedMatch ? styles[nestedMatch] : '';\n};\n\nexport const Button = ({\n className = '',\n buttonStyle,\n label,\n element,\n onClick,\n href,\n target,\n rel,\n type = 'button',\n ['data-target-selector']: dataTargetSelector,\n ...props\n }: ButtonProps) => {\n const mode = buttonStyle ? getStyle(`cmp-button--style-${buttonStyle}`) : '';\n const baseClass = getStyle('cmp-button');\n\n // Add js-modal class if data-target-selector is present\n const conditionalClasses = [\n baseClass,\n mode,\n className,\n dataTargetSelector ? 'js-modal' : ''\n ].filter(Boolean).join(' ').trim();\n\n // Infer element type\n const inferredElement: 'a' | 'button' = element\n || (href || dataTargetSelector ? 'a' : 'button');\n\n if (inferredElement === 'a') {\n return (\n <a\n className={conditionalClasses}\n href={href}\n target={target}\n rel={rel}\n data-target-selector={dataTargetSelector}\n {...props}\n >\n {label}\n </a>\n );\n }\n\n return (\n <button\n className={conditionalClasses}\n type={type as 'button' | 'submit' | 'reset'}\n onClick={onClick}\n {...props}\n >\n {label}\n </button>\n );\n};","import React, {HTMLAttributes, ReactNode, useCallback, useMemo} from 'react';\nimport { AlgoliaDynamicSearchProps } from './algolia-dynamic-search.types';\nimport { Card as DefaultCard, ProductCard as DefaultProductCard, ProductDetailsCard as DefaultProductDetailsCard } from '../../components/Card/card';\nimport { Button as DefaultButton } from '../../components/Button/Button';\n\nif (process.env.STORYBOOK === 'true') {\n require('./algolia-dynamic-search.scss');\n}\n\nconst PRODUCT_DETAILS = 'productDetails';\n\nexport interface DynamicHeadingProps extends HTMLAttributes<HTMLHeadingElement> {\n titleSize?: \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\";\n children?: ReactNode;\n}\n\nconst DynamicHeading: React.FC<DynamicHeadingProps> = ({titleSize = \"h2\", children, ...props}: DynamicHeadingProps) => {\n const Tag = [\"h2\", \"h3\", \"h4\", \"h5\", \"h6\"].includes(titleSize) ? titleSize : \"h2\";\n return <Tag {...props}>{children}</Tag>;\n};\n\nconst getCallToActionProps = (type: string | undefined, url: string) => {\n const callType = type?.toLowerCase();\n let finalUrl = url || '';\n let target = '';\n\n switch (callType) {\n case 'external':\n target = '_blank';\n break;\n case 'email':\n finalUrl = `mailto:${url}`;\n break;\n case 'phone':\n finalUrl = `tel:${url}`;\n break;\n case 'internal':\n default:\n // target remains empty, for same-window navigation\n break;\n }\n\n return {finalUrl, target};\n};\n\nexport const AlgoliaDynamicSearch = ({\n className = '',\n heading,\n titleSize,\n subtext,\n callToActionType,\n callToActionText,\n callToActionUrl,\n callToActionTargetSelector,\n queryType = 'unknown',\n hits,\n hitCta,\n showProductPrice,\n query,\n backgroundColour = '',\n maxResults = 10,\n isLoading = false,\n placeholder,\n analytics,\n facets,\n innerComponents\n }: AlgoliaDynamicSearchProps,\n useScopedStyles?: boolean,\n styles?: Record<string, string>) => {\n\n // Extract components from innerComponents with defaults\n const Card = innerComponents?.Card || DefaultCard;\n const ProductCard = innerComponents?.ProductCard || DefaultProductCard;\n const ProductDetailsCard = innerComponents?.ProductDetailsCard || DefaultProductDetailsCard;\n const Button = innerComponents?.Button || DefaultButton;\n\n // Helper to resolve CSS module class names properly\n const getClass = useCallback((suffix: string) => {\n const fullClassName = `cmpAlgoliaDynamicSearchWidget${suffix}`;\n return useScopedStyles && styles ? styles[fullClassName] : fullClassName;\n }, [useScopedStyles, styles]);\n\n // Helper for modifier classes (without the base prefix)\n const getModifierClass = useCallback((modifier: string) => {\n return useScopedStyles && styles ? styles[modifier] : modifier;\n }, [useScopedStyles, styles]);\n\n // Memoize background styling to prevent re-renders\n const widgetStyleProps = useMemo(() => {\n const backgroundStyles: { [key: string]: { buttonStyle: string; containerBackground: string; textColour: string } } = {\n \"dark-grey\": {\n buttonStyle: \"outlineWhite\",\n containerBackground: getModifierClass('hasStyleGreyBackground'),\n textColour: \"white\"\n },\n \"silver\": {\n buttonStyle: \"primary\",\n containerBackground: getModifierClass('hasStyleSilverGradientBackground'),\n textColour: \"black\"\n }\n };\n return backgroundStyles[backgroundColour.toLowerCase()] || {\n buttonStyle: \"primary\",\n containerBackground: \"\",\n textColour: \"black\"\n };\n }, [backgroundColour, getModifierClass]);\n\n if (!hits || hits.length === 0) {\n return null;\n }\n\n const baseClass = getClass('');\n\n // Memoize wrapper class names\n const wrapperClasses = useMemo(() => [\n baseClass,\n widgetStyleProps.containerBackground,\n isLoading ? getModifierClass('isLoading') : '',\n queryType === 'content' ? getModifierClass('isQueryContent') : ''\n ].filter(Boolean).join(' '), [baseClass, widgetStyleProps.containerBackground, isLoading, queryType, getModifierClass]);\n\n return (\n <div className={wrapperClasses}>\n\n {isLoading && (\n <div className={getClass('__placeholder')}>\n <div className={getClass('__placeholder__loading')}></div>\n </div>\n )}\n\n <div className={getClass('__container')}>\n {queryType != PRODUCT_DETAILS &&\n <>\n <div className={getClass('__header')}>\n\n <div className={getClass('__header__text')}>\n <DynamicHeading titleSize={titleSize}>{heading}</DynamicHeading>\n <p>{subtext}</p>\n </div>\n {callToActionUrl && (\n <div className={getClass('__header__cta')}>\n\n {(() => {\n const {\n finalUrl,\n target\n } = getCallToActionProps(callToActionType, callToActionUrl);\n const isAnchor = !!callToActionTargetSelector || callToActionType?.toLowerCase() !== 'internal';\n\n return (\n <Button\n element={isAnchor ? 'a' : 'button'}\n buttonStyle={widgetStyleProps?.buttonStyle}\n label={callToActionText}\n href={isAnchor ? finalUrl : undefined}\n target={target}\n rel={target === '_blank' ? 'noopener noreferrer' : undefined}\n data-target-selector={callToActionTargetSelector}\n onClick={\n !isAnchor\n ? () => {\n if (finalUrl) {\n window.open(finalUrl, target || '_self', target === '_blank' ? 'noopener,noreferrer' : undefined);\n }\n }\n : undefined\n }\n />\n );\n })()}\n </div>\n )}\n </div>\n </>}\n <div\n className={queryType == PRODUCT_DETAILS ? getClass('__cards__cardSingle') : getClass('__cards')}>\n {hits.slice(0, maxResults).map((hit: any, index: number) => {\n let Component = Card;\n let title = hit.title;\n let cardStyle = \"\";\n let imageUrl = hit.imageUrl || placeholder;\n\n const hitUtm = new URLSearchParams({\n utm_source: \"web\",\n utm_medium: \"alg\",\n utm_campaign: query || \"dynamic search\"\n }).toString();\n\n let separator = hit.link.includes(\"?\") ? \"&\" : \"?\";\n let cardLink = `${hit.link}${separator}${hitUtm}`;\n\n let contentCategoryLabel = hit.contentCategoryLabel || \"\";\n let contentCategoryColour = hit.contentCategoryColour || \"\";\n let price = showProductPrice ? hit.price : \"\";\n\n let cardClassName = styles?.cmpCard;\n\n switch (queryType) {\n case \"products\":\n Component = ProductCard;\n cardStyle = \"type-card-product\";\n break;\n case \"content\":\n cardStyle = \"type-card-label\";\n break;\n case \"careers\":\n cardStyle = \"type-card-panel\";\n cardClassName = `cmp-card--type-careers`;\n imageUrl = \"\";\n break;\n case PRODUCT_DETAILS:\n cardStyle = \"type-card-panel\";\n Component = ProductDetailsCard;\n break;\n default:\n return null;\n }\n\n // Only create onClick handler if analytics is provided\n const handleClick = analytics ? () => {\n const { objectID, __position, __queryID } = hit;\n analytics(objectID, __queryID, __position);\n } : undefined;\n\n return (\n <Component\n key={hit.objectID || index}\n className={cardClassName}\n title={title}\n imageUrl={imageUrl}\n placeholder={hit.image ? false : true}\n hit={hit}\n cta={hitCta}\n size=\"\"\n cardStyle={cardStyle}\n facets={facets}\n contentCategoryLabel={contentCategoryLabel}\n colour={contentCategoryColour}\n productPrice={price}\n showProductPrice={showProductPrice}\n cardLink={cardLink}\n city={hit.city}\n country={hit.country}\n onClick={handleClick}\n />\n );\n })}\n </div>\n </div>\n </div>\n );\n};\n\nexport default AlgoliaDynamicSearch;","import AlgoBase from \"./algolia-dynamic-search-base\";\nimport styles from './algolia-dynamic-search.module.scss';\nimport { AlgoliaDynamicSearchProps, InnerComponents } from \"./algolia-dynamic-search.types\";\nimport { Card, ProductCard, ProductDetailsCard } from \"../../components/Card/card\";\nimport { Button } from \"../../components/Button/Button\";\n\n// Edwards-specific components\nconst edwardsComponents: InnerComponents = {\n Card,\n ProductCard,\n ProductDetailsCard,\n Button,\n};\n\nexport const AlgoliaDynamicSearchEdwards = (props: AlgoliaDynamicSearchProps) => {\n return AlgoBase({...props, innerComponents: edwardsComponents}, true, styles);\n};\n\nexport const AlgoliaDynamicSearchRaw = (props: AlgoliaDynamicSearchProps) => {\n return AlgoBase(props, false);\n};\n","import React from 'react';\nimport { PhoneInput } from 'react-international-phone';\n// Note: Consumer apps need to import 'react-international-phone/style.css' \n// or include equivalent styles for the phone input to display correctly\n\ninterface FormFieldBase {\n name: string;\n label?: string;\n id?: string;\n required?: boolean;\n hasError?: boolean;\n value?: string;\n placeholder?: string;\n errorMessage?: string;\n isDisabled?: boolean;\n onChange?: (e: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement>) => void; // Add onChange\n checked?: boolean; // For checkboxes\n}\n\ninterface TextField extends FormFieldBase {\n type: \"text\" | \"email\" | \"textarea\";\n placeholder?: string;\n maxLength?: number;\n regex?: string;\n}\n\ninterface TelField extends FormFieldBase {\n type: \"tel\";\n placeholder?: string;\n defaultCountry?: string;\n onPhoneChange?: (phone: string) => void;\n regex?: string;\n}\n\ninterface HiddenField extends FormFieldBase {\n type: \"hidden\";\n}\n\ninterface SelectField extends FormFieldBase {\n type: \"select\";\n options?: option[];\n}\ninterface InfoField extends FormFieldBase {\n type: \"info\";\n}\n\ninterface option {\n value: string;\n label: string;\n disabled?: boolean;\n selected?: boolean;\n}\n\ninterface NumberField extends FormFieldBase {\n type: \"number\";\n min?: number;\n max?: number;\n step?: number;\n regex?: string;\n}\n\ninterface CheckboxField extends FormFieldBase {\n type: \"checkbox\";\n checked?: boolean; // Make checked explicit for checkbox\n}\n\nexport type FormFieldType = TextField | TelField | NumberField | CheckboxField | HiddenField | SelectField | InfoField;\n\nfunction RenderField(field: FormFieldType & {\n onChange?: (e: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement>) => void;\n onPhoneChange?: (phone: string) => void;\n id?: string; // Add id prop here to pass to input\n}) {\n switch (field.type) {\n case \"text\":\n case \"email\":\n return <input\n value={field.value}\n name={field.name}\n type={field.type}\n placeholder={field.placeholder}\n disabled={field.isDisabled}\n onChange={field.onChange}\n id={field.id}\n maxLength={field.maxLength}\n />;\n case \"tel\":\n return <PhoneInput\n value={field.value || ''}\n onChange={(phone) => {\n if (field.onPhoneChange) {\n field.onPhoneChange(phone);\n } else if (field.onChange) {\n // Create a synthetic event for backwards compatibility\n const syntheticEvent = {\n target: { name: field.name, value: phone }\n } as React.ChangeEvent<HTMLInputElement>;\n field.onChange(syntheticEvent);\n }\n }}\n defaultCountry={field.defaultCountry || 'gb'}\n disabled={field.isDisabled}\n placeholder={field.placeholder}\n inputProps={{\n id: field.id,\n name: field.name\n }}\n />;\n case \"textarea\":\n return <textarea\n value={field.value}\n name={field.name}\n placeholder={field.placeholder}\n disabled={field.isDisabled}\n onChange={field.onChange as React.ChangeEventHandler<HTMLTextAreaElement>} // Cast for textarea\n id={field.id}\n maxLength={field.maxLength}\n />;\n case \"number\":\n return <input\n value={field.value}\n name={field.name}\n type={field.type}\n min={field.min}\n max={field.max}\n step={field.step}\n disabled={field.isDisabled}\n onChange={field.onChange}\n id={field.id}\n />;\n case \"checkbox\":\n return <input\n type=\"checkbox\"\n name={field.name}\n checked={field.checked}\n disabled={field.isDisabled}\n onChange={field.onChange}\n id={field.id}\n />;\n case \"info\":\n return <>\n <p>{field.label}</p>\n </>\n case \"hidden\":\n return <input value={field.value} type={field.type} name={field.name} id={field.id}/>;\n case \"select\":\n return (\n <>\n <select\n name={field.name}\n onChange={field.onChange}\n disabled={field.isDisabled}\n value={field.value}\n id={field.id}\n >\n {field.options && field.options.length > 0 && field.options?.map((o: option) => (\n <option disabled={o.disabled} selected={o.selected} key={o.value}\n value={o.value}>{o.label}</option>\n ))}\n </select>\n <span className=\"select-custom-arrow\"></span>\n </>\n );\n default:\n return null;\n }\n}\n\nexport const FormFieldRenderer = (props: FormFieldType & {\n onChange?: (e: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement>) => void;\n onPhoneChange?: (phone: string) => void;\n id?: string;\n checked?: boolean;\n}) => {\n return RenderField(props)\n}","import React, {useEffect, useState} from 'react'\nimport {v4 as uuidv4} from 'uuid';\nimport {FormFieldRenderer, FormFieldType} from \"@stories/experiences/QRFormJourney/FormFieldType\";\n\n\nexport const QrFormField = (props: FormFieldType & {\n onChange?: (e: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement>) => void;\n errorMessage?: string;\n required?: boolean;\n}) => {\n\n const [inputId, setInputId] = useState('');\n\n useEffect(() => {\n setInputId(uuidv4());\n }, []);\n\n const supportsValue = props.type !== \"checkbox\";\n\n return (props.type ?\n <div\n className={(props.hasError ? \"error\" : \"\") + \" qr-form-filed-wrapper\" + (props.isDisabled ? \" disabled\" : \"\") + \" \" + props.type}>\n <label htmlFor={inputId}>\n <span className=\"label\">{props.label} {props.required &&\n <span className=\"required-asterisk\">*</span>}</span>\n <FormFieldRenderer\n key={props.name}\n type={props.type}\n value={supportsValue ? props.value : undefined}\n {...(props.type === \"checkbox\" ? {checked: props.checked} : {})}\n name={props.name}\n isDisabled={props.isDisabled}\n {...(props.type === \"text\" || props.type === \"email\" || props.type === \"tel\" || props.type === \"textarea\" || props.type === \"number\"\n ? {regex: props.regex}\n : {})}\n id={inputId}\n onChange={props.onChange}\n {...(props.type === \"number\" ? {\n min: (props as any).min,\n max: (props as any).max,\n step: (props as any).step\n } : {})}\n {...(props.type === \"select\" ? {options: (props as any).options} : {})}\n placeholder={`${props.placeholder} ${props.required ? \"*\" : \"\"}`}\n maxLength={(props as any).maxLength}\n />\n </label>\n {props.errorMessage && props.hasError &&\n <span className=\"formfield-error\"> {props.errorMessage}</span>}\n </div> : <></>\n )\n}","import { useEffect, useState } from \"react\";\n\nexport function useIsMobile() {\n const query = \"(max-width: 960px)\";\n const media = typeof window !== \"undefined\" ? window.matchMedia(query) : null;\n\n const [isMobile, setIsMobile] = useState(media ? media.matches : false);\n\n useEffect(() => {\n if (!media) return;\n\n const handler = () => setIsMobile(media.matches);\n media.addEventListener(\"change\", handler);\n return () => media.removeEventListener(\"change\", handler);\n }, [media]);\n\n return isMobile;\n}\n","export type qrFormTranslations = {\n next?: string\n previous?: string\n submit?: string\n validationError?: string\n\n pageTitle_productInformation?: string,\n pageTitle_aboutYou?: string,\n pageTitle_contactDetails?: string,\n pageTitle_consents?: string,\n\n label_howMayWeHelpYou?: string,\n label_customerSupport?: string,\n label_technicalSupport?: string,\n label_ProductDetails?: string,\n label_warrantyClaim?: string,\n label_serviceRequest?: string,\n label_oilAndSpares?: string,\n label_other?: string,\n\n label_tellUsMore?: string,\n label_tellUsMoreOptional?: string,\n section_scannedProductDetails?: string,\n\n label_title?: string,\n label_lastName?: string,\n label_firstName?: string,\n label_company?: string,\n\n label_country?: string,\n label_email?: string,\n label_phone?: string,\n label_city?: string,\n label_postcodeOrZip?: string,\n\n consent_acceptPolicy?: string,\n consent_default?: string,\n consent_requiredMessage?: string\n}\n\nexport const defaultQrFormTranslations: Required<qrFormTranslations> = {\n next: \"Next\",\n previous: \"Previous\",\n submit: \"Submit\",\n validationError: \"Please ensure the information provided in this field is valid and complete.\",\n\n pageTitle_productInformation: \"Product information\",\n pageTitle_aboutYou: \"About you\",\n pageTitle_contactDetails: \"Your contact details\",\n pageTitle_consents: \"Consents\",\n\n label_howMayWeHelpYou: \"How may we help you?\",\n label_customerSupport: \"Customer support\",\n label_technicalSupport: \"Technical support\",\n label_ProductDetails: \"Product information\",\n label_warrantyClaim: \"Warranty claim\",\n label_serviceRequest: \"Service request\",\n label_oilAndSpares: \"Oil and spares\",\n label_other: \"Other\",\n label_tellUsMore: \"Tell us more\",\n label_tellUsMoreOptional: \"Tell us more about your issue (optional)\",\n section_scannedProductDetails: \"Scanned Product Details\",\n\n label_title: \"Title\",\n label_lastName: \"Last Name\",\n label_firstName: \"First Name\",\n label_company: \"Company\",\n\n label_country: \"Country\",\n label_email: \"Email\",\n label_phone: \"Phone\",\n label_city: \"City\",\n label_postcodeOrZip: \"Postcode or ZIP\",\n\n consent_acceptPolicy: \"I accept the policy\",\n consent_default: \"Consent\",\n consent_requiredMessage: \"Please acknowledge this consent\"\n}\n","import React, {useEffect, useState} from \"react\";\nimport {FormFieldType as FormFieldDefinition} from \"../FormFieldType\";\nimport './qr-form.scss';\nimport {QrFormField} from \"@stories/experiences/QRFormJourney/Qr-form-field/Qr-form-field\";\nimport {Button as DefaultButton} from \"@stories/components/Button/Button\";\nimport {useIsMobile} from \"../../../../utils/helpers/isMobile\";\nimport {defaultQrFormTranslations, qrFormTranslations} from \"./i18n\"\n\n\ntype FormValues = {\n [key: string]: any;\n};\n\ntype FormErrors = {\n [key: string]: boolean;\n};\n\n\nexport type qrCodeFormProps = {\n hubspotId: string\n hubspotAppId: string\n formAction: string\n fields: FormFieldDefinition[]\n formHeader?: string\n validate?: (values: FormValues, currentPage: number) => FormErrors | null;\n onSubmit?: (values: FormValues) => void | boolean;\n thankYouTitle?: string\n thankYouText?: string\n thankYouButtonLabel?: string\n noThankYou?: boolean\n showThankYou?: boolean\n consentTypeId?: string\n consents?: consentProps[]\n /** Custom Button component - defaults to Edwards Button if not provided */\n ButtonComponent?: React.ComponentType<any>;\n};\n\nexport type consentProps = {\n policyMandatory?: boolean\n policyText?: string\n policyLink?: string\n type?: string | null\n}\n\nexport type qrFormButtonProps = {\n buttonText: string\n linkType: string\n url: string\n newTab: boolean\n};\n\nexport type allQrFromProps = qrCodeFormProps & qrFormTranslations & qrFormButtonProps;\n\nexport const QrForm = (props: allQrFromProps) => {\n const [currentPage, setCurrentPage] = useState(0);\n const [formValues, setFormValues] = useState<FormValues>({});\n const [errors, setErrors] = useState<FormErrors>({});\n const [showErrors, setShowErrors] = useState<boolean>(false);\n const isMobile: boolean = useIsMobile();\n const [countryOptions, setCountryOptions] = useState<{ value: string; label: string }[] | null>(null);\n const [isLoadingCountries, setIsLoadingCountries] = useState(true);\n\n // Use custom Button component if provided, otherwise use default\n const Button = props.ButtonComponent || DefaultButton;\n\n const i18n = {...defaultQrFormTranslations, ...props} as Required<qrFormTranslations>;\n const buttonProps = props as qrFormButtonProps;\n\n const consentFields: FormFieldDefinition[] =\n props.consents?.map((consent, index) => ({\n type: consent.type === \"info\" ? \"info\" : \"checkbox\",\n name: `consent_${index + 1}`,\n label: consent.policyText\n ? consent.policyText\n : consent.policyLink\n ? `${i18n.consent_acceptPolicy}: ${consent.policyLink}`\n : `${i18n.consent_default}${index + 1}`,\n value: \"true\",\n required: !!consent.policyMandatory,\n errorMessage: consent.policyMandatory\n ? i18n.consent_requiredMessage\n : \"\",\n })) || [];\n\n useEffect(() => {\n const initialValues: FormValues = {};\n props.fields.forEach(field => {\n initialValues[field.name] = field.value || '';\n });\n\n setFormValues(initialValues);\n }, [props.fields]);\n\n useEffect(() => {\n async function loadCountries() {\n const fallbackCountries = [\n {value: \"us\", label: \"United States\"},\n {value: \"gb\", label: \"United Kingdom\"},\n {value: \"de\", label: \"Germany\"},\n {value: \"fr\", label: \"France\"},\n {value: \"cn\", label: \"China\"},\n {value: \"other\", label: \"Other\"},\n ];\n\n try {\n const res = await fetch(\"/etc.clientlibs/vtba/clientlibs/resources/countries.json\");\n if (!res.ok) throw new Error(`HTTP ${res.status}`);\n const data = await res.json();\n setCountryOptions(data?.options || fallbackCountries);\n } catch (err) {\n console.warn(\"Could not fetch countries.json, using fallback:\", err);\n setCountryOptions(fallbackCountries);\n } finally {\n setIsLoadingCountries(false);\n }\n }\n\n loadCountries();\n }, []);\n\n\n useEffect(() => {\n async function fetchCity() {\n try {\n const res = await fetch('https://ipapi.co/json/');\n if (!res.ok) throw new Error('IP lookup failed');\n const data = await res.json();\n if (data.city) {\n setFormValues(prev => ({...prev, ip_location: data.city}));\n }\n } catch (err) {\n console.warn('Could not resolve city from IP:', err);\n }\n }\n\n fetchCity();\n }, []);\n\n const pageTitles: string[] = [\n i18n.pageTitle_productInformation,\n i18n.pageTitle_aboutYou,\n i18n.pageTitle_contactDetails,\n i18n.pageTitle_consents\n ]\n\n const pages: (FormFieldDefinition[])[] = [\n /*page 1*/\n [...props.fields, {\n type: \"select\",\n name: \"how_can_we_help\",\n options: [\n {label: i18n.label_howMayWeHelpYou, value: \"\", selected: true, disabled: true},\n {label: i18n.label_technicalSupport, value: \"technical support\"},\n {label: i18n.label_warrantyClaim, value: \"warranty claim\"},\n {label: i18n.label_serviceRequest, value: \"service request\"},\n {label: i18n.label_oilAndSpares, value: \"oil and spares\"},\n {label: i18n.label_other, value: \"other\"}\n ]\n },\n {\n type: \"textarea\",\n name: \"tell_us_more\",\n placeholder: i18n.label_tellUsMoreOptional,\n label: i18n.label_tellUsMoreOptional\n }\n ],\n /*page 2*/\n [\n {type: \"text\", name: \"title\", label: i18n.label_title, placeholder: i18n.label_title},\n {type: \"text\", name: \"lastname\", label: i18n.label_lastName, placeholder: i18n.label_lastName},\n {type: \"text\", name: \"firstname\", label: i18n.label_firstName, placeholder: i18n.label_firstName},\n {type: \"text\", name: \"company\", label: i18n.label_company, placeholder: i18n.label_company},\n\n ],\n /*page 3*/\n [\n {type: \"select\", name: \"country\", label: i18n.label_country, options: countryOptions || []},\n {\n type: \"email\",\n name: \"email\",\n label: i18n.label_email,\n placeholder: i18n.label_email,\n required: true,\n errorMessage: i18n.validationError\n },\n {\n type: \"tel\",\n name: \"phone\",\n label: i18n.label_phone,\n placeholder: i18n.label_phone,\n required: false,\n }, {\n type: \"text\",\n name: \"city\",\n label: i18n.label_city,\n placeholder: i18n.label_city,\n required: false,\n }, {\n type: \"text\",\n name: \"postcodeOrZip\",\n label: i18n.label_postcodeOrZip,\n placeholder: i18n.label_postcodeOrZip,\n required: false,\n },\n\n ],\n /*Page 4*/\n [...consentFields]\n ]\n\n const handleChange = (name: string, value: any) => {\n setFormValues(prevValues => ({\n ...prevValues,\n [name]: value\n }));\n // When a field changes, we might want to clear its error IF errors are currently shown\n // but for now, we'll only show errors AFTER a navigation/submit attempt.\n // So, we don't clear individual errors here to maintain the \"show all errors on validation\" behavior.\n };\n\n const validatePage = (page: number): boolean => {\n let pageIsValid = true;\n const newErrors: FormErrors = {};\n\n const getFieldsForPage = (pageNumber: number): FormFieldDefinition[] => {\n return pages[pageNumber] ? pages[pageNumber] : []\n };\n\n const fieldsToValidate = getFieldsForPage(page);\n\n fieldsToValidate.forEach(field => {\n const value = formValues[field.name];\n\n if (field.required) {\n if (!value || (typeof value === 'string' && value.trim() === '')) {\n newErrors[field.name] = true;\n pageIsValid = false;\n }\n }\n\n // Regex Validation\n const fieldWithRegex = field as (FormFieldDefinition & { regex?: string });\n if (fieldWithRegex.regex && value && typeof value === 'string' && value.trim() !== '') {\n try {\n const regex = new RegExp(fieldWithRegex.regex);\n if (!regex.test(value)) {\n newErrors[field.name] = true;\n pageIsValid = false;\n }\n } catch (e) {\n console.error(`Invalid regex for field ${field.name}:`, fieldWithRegex.regex, e);\n }\n }\n\n });\n\n if (props.validate) {\n const customErrors = props.validate(formValues, page);\n if (customErrors) {\n Object.assign(newErrors, customErrors);\n if (Object.keys(customErrors).some(key => customErrors[key] !== undefined)) {\n pageIsValid = false;\n }\n }\n }\n setErrors(newErrors); // Set the errors for the *current* validation run\n return pageIsValid;\n };\n\n const handleSubmit = async (ev: React.FormEvent) => {\n ev.preventDefault();\n setShowErrors(true); // Attempting to submit, so show errors\n if (validatePage(currentPage)) {\n if (props.onSubmit) {\n props.onSubmit(formValues);\n } else {\n console.log(\"Form submitted with values:\", formValues);\n }\n } else {\n console.log(\"Form has errors on the current page, cannot submit.\");\n }\n };\n\n function formNavigate(ev: React.MouseEvent<HTMLButtonElement>): void {\n ev.preventDefault();\n const el = ev.target as HTMLButtonElement;\n const pageTarget = el.dataset.page_target;\n let pageTargetInt = currentPage;\n if (pageTarget) {\n pageTargetInt = parseInt(pageTarget, 10)\n }\n setShowErrors(true); // Attempting to navigate, so show errors\n if (pageTargetInt > -1) {\n\n if (currentPage > pageTargetInt || validatePage(currentPage)) {\n setCurrentPage(pageTargetInt);\n setShowErrors(false); // Hide errors when successfully navigated to a new page\n setErrors({}); // Clear errors from previous page as well\n\n } else {\n console.log(\"Validation failed on current page, cannot navigate.\");\n }\n }\n }\n\n const renderQrFormField = (field: FormFieldDefinition) => {\n // if field name is equal to \"serial-number\", \"product-number\", \"software-version\", or \"running-time\", don't render the field if the value is empty\n if (field.name === \"serial-number\" || field.name === \"product-number\" || field.name === \"software-version\" || field.name === \"running-time\") {\n if (!formValues[field.name]) {\n return null;\n }\n }\n return (\n <QrFormField\n {...field}\n key={field.name}\n label={field.label}\n value={formValues[field.name]}\n onChange={(e) => handleChange(field.name, e.target.value)}\n isDisabled={field.isDisabled}\n errorMessage={field.errorMessage}\n hasError={errors[field.name] || false}\n required={field.required}\n {...(field.type === \"text\" || field.type === \"email\" || field.type === \"tel\" || field.type === \"textarea\" || field.type === \"number\"\n ? {regex: (field as any).regex}\n : {})}\n /> \n );\n }\n\n interface FormSectionProps {\n pageIndex: number,\n startFromFieldIndex?: number,\n endFieldIndex?: number,\n generateButtons?: boolean,\n sectionTitle?: string\n }\n\n const renderProgressBar = (pageIndex: number) => {\n\n return isMobile ? (<div className=\"progress-indicator\">\n <span className=\"progress-text\">{pageIndex + 1} / {pages.length}</span>\n\n <span className=\"progress-visual\"\n // @ts-ignore --percent is a css variable I used it to manipulate the chart i.e. its pure css but ts set for style pros doesnt include variables yet\n style={{'--percent': `${(100 / pages.length) * (pageIndex + 1)}%`}}></span>\n </div>) : <></>\n }\n const renderFormSection = (fsp: FormSectionProps) => {\n\n const {\n pageIndex,\n startFromFieldIndex,\n endFieldIndex,\n generateButtons = true,\n sectionTitle\n } = fsp;\n\n const fields = pages[pageIndex] || [];\n\n\n if (currentPage !== pageIndex) return null;\n\n const from = startFromFieldIndex ?? 0;\n const to = endFieldIndex ?? fields.length;\n const fieldsSubset = fields.slice(from, to);\n\n const isPartial = startFromFieldIndex !== undefined || endFieldIndex !== undefined;\n const isFirstPage = pageIndex === 0;\n const isLastPage = pageIndex === pages.length - 1;\n\n\n const navButtons = generateButtons && (\n <div className=\"qr-form-navigation\">\n {!isFirstPage ? (\n <Button label={i18n?.previous} onClick={formNavigate}\n data-page_target={pageIndex - 1} buttonStyle=\"secondary\"/>\n ) : <div></div>}\n {!isLastPage ? (\n <Button label={i18n?.next} onClick={formNavigate}\n data-page_target={pageIndex + 1} buttonStyle=\"primary\"/>\n ) : (\n <Button label={i18n?.submit} onClick={handleSubmit} buttonStyle=\"primary\" element=\"button\" type=\"submit\"/>\n )}\n </div>\n );\n\n if (isPartial) {\n return (\n <>\n <div className=\"qr-form-fields\">\n {fieldsSubset.map((field) => renderQrFormField(field))}\n </div>\n {generateButtons && navButtons}\n </>\n );\n }\n\n return (\n <section\n key={pageIndex}\n className=\"qr-form-page-section active\"\n data-page={pageIndex + 1}\n >\n {isMobile && <div className=\"header-wrapper\">\n {renderProgressBar(pageIndex)}\n <h2>{sectionTitle}</h2>\n </div>}\n <div className=\"qr-form-fields\">\n {fieldsSubset.map((field) => renderQrFormField(field))}\n </div>\n {navButtons}\n </section>\n );\n };\n\n\n return (\n <div className={`qr-journey-form-wrapper desktop-${!isMobile}`}>\n {!props.showThankYou ?\n (<>\n {!isMobile && <div className={\"form-progress\"}>\n {props.formHeader && currentPage === 0 && <h1>{props.formHeader}</h1>}\n <ul className={`progress-indicator-desktop current-page-${currentPage} ${currentPage === 0 ? \"first-page\" : \"\"}` }>\n {pages.map((_, index) => (\n <li className={`${currentPage >= index ? \"checked\" : \"\"} ${index === currentPage ? \"current-page\" : \"\"}`} key={index}>\n <div className=\"bullet-point\">\n <span>{index + 1}</span>\n </div>\n <h3>{pageTitles[index]}</h3>\n </li>\n ))}\n </ul>\n </div>}\n <form action={`${props.formAction}/${props.hubspotAppId}/${props.hubspotId}`}\n onSubmit={handleSubmit}>\n {currentPage === 0 && (\n <section\n key={1}\n className=\"qr-form-page-section\"\n data-page={1}>\n {isMobile && props.formHeader && <h1>{props.formHeader}</h1>}\n {isMobile &&\n <div className=\"header-wrapper\">\n <h2>{i18n.pageTitle_productInformation}</h2>\n {renderProgressBar(0)}\n </div>}\n <div className=\"disabled-product-fields-section\">\n <h2>{i18n.section_scannedProductDetails}</h2>\n {renderFormSection({\n pageIndex: 0,\n startFromFieldIndex: 0,\n endFieldIndex: 4,\n generateButtons: false\n })}\n </div>\n {renderFormSection({\n pageIndex: 0,\n startFromFieldIndex: 4,\n endFieldIndex: 6,\n generateButtons: true\n })}\n\n </section>\n )}\n\n {renderFormSection({pageIndex: 1, sectionTitle: pageTitles[1]})}\n {renderFormSection({pageIndex: 2, sectionTitle: pageTitles[2]})}\n {renderFormSection({pageIndex: 3, sectionTitle: pageTitles[3]})}\n <input type=\"hidden\" name=\"ip_location\" value={formValues.ip_location || ''}/>\n </form>\n </>) : (\n <div className=\"qr-form-thank-you-page\">\n <div className=\"title-wrapper\">\n <div className=\"submitted-checked\"></div>\n <h2>{props.thankYouTitle}</h2>\n </div>\n <p>{props.thankYouText}</p>\n <Button label={buttonProps.buttonText} href={buttonProps.url}\n target={buttonProps.newTab ? '_blank' : ''} buttonStyle='primary'/>\n </div>\n )}\n </div>\n );\n};"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","__rest","e","indexOf","getOwnPropertySymbols","propertyIsEnumerable","__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","rejected","result","done","then","__generator","body","_","label","sent","trys","ops","f","y","g","create","Iterator","verb","Symbol","iterator","v","op","TypeError","pop","push","__spreadArray","to","from","pack","l","ar","Array","slice","concat","SuppressedError","error","suppressed","message","Error","name","hasOwn","classNames","classes","arg","appendClass","parseValue","isArray","toString","includes","key","newClass","module","exports","default","window","AccordionSection","_a","title","children","_b","className","_c","defaultOpen","_d","lazyLoad","_e","useState","isOpen","setIsOpen","_f","hasBeenOpened","setHasBeenOpened","isToggling","useRef","toggleAccordion","useCallback","stopPropagation","preventDefault","current","requestAnimationFrame","prev","setTimeout","handleKeyDown","shouldRenderChildren","React","createElement","onClick","role","tabIndex","onKeyDown","style","transform","transition","FontAwesomeIcon","icon","faChevronDown","color","display","maxHeight","overflow","getStyle","styles","nestedMatch","keys","find","cardSizeMapping","size","classSrting","getImageUrl","imageUrl","require","src","console","Card","contentCategoryLabel","colour","date","cta","imageAlt","cardStyle","cardLink","city","country","placeholder","usePlainClasses","getClassName","mode","width","categoryColour","cardFooterColour","contentImage","classnames","href","alt","faChevronRight","faArrowRight","ProductCard","showImage","productPrice","showProductPrice","productImage","target","undefined","MAX_SPARES_TO_RENDER","ProductDetailsCard","hit","facets","ProductCardComponent","SpareCard","renderSpares","spares","sparesToRender","map","spare","index","objectID","code","image","priceValue","price","url","link","facet","returnsHTML","dangerouslySetInnerHTML","__html","Button","buttonStyle","element","rel","type","dataTargetSelector","props","baseClass","conditionalClasses","filter","Boolean","join","trim","inferredElement","_extends","PRODUCT_DETAILS","DynamicHeading","titleSize","Tag","getCallToActionProps","callType","toLowerCase","finalUrl","AlgoliaDynamicSearch","useScopedStyles","heading","subtext","callToActionType","callToActionText","callToActionUrl","callToActionTargetSelector","queryType","hits","hitCta","query","backgroundColour","maxResults","isLoading","analytics","innerComponents","DefaultCard","DefaultProductCard","DefaultProductDetailsCard","DefaultButton","getClass","suffix","fullClassName","getModifierClass","modifier","widgetStyleProps","useMemo","backgroundStyles","containerBackground","textColour","wrapperClasses","Fragment","isAnchor","open","Component","hitUtm","URLSearchParams","utm_source","utm_medium","utm_campaign","separator","contentCategoryColour","cardClassName","cmpCard","handleClick","__position","__queryID","edwardsComponents","AlgoliaDynamicSearchEdwards","AlgoBase","AlgoliaDynamicSearchRaw","RenderField","field","disabled","isDisabled","onChange","id","maxLength","PhoneInput","phone","onPhoneChange","syntheticEvent","defaultCountry","inputProps","min","max","checked","options","o","selected","FormFieldRenderer","QrFormField","inputId","setInputId","useEffect","uuidv4","supportsValue","hasError","htmlFor","required","regex","errorMessage","useIsMobile","media","matchMedia","matches","isMobile","setIsMobile","handler","addEventListener","removeEventListener","defaultQrFormTranslations","previous","submit","validationError","pageTitle_productInformation","pageTitle_aboutYou","pageTitle_contactDetails","pageTitle_consents","label_howMayWeHelpYou","label_customerSupport","label_technicalSupport","label_ProductDetails","label_warrantyClaim","label_serviceRequest","label_oilAndSpares","label_other","label_tellUsMore","label_tellUsMoreOptional","section_scannedProductDetails","label_title","label_lastName","label_firstName","label_company","label_country","label_email","label_phone","label_city","label_postcodeOrZip","consent_acceptPolicy","consent_default","consent_requiredMessage","QrForm","currentPage","setCurrentPage","formValues","setFormValues","errors","setErrors","showErrors","setShowErrors","countryOptions","setCountryOptions","_g","isLoadingCountries","setIsLoadingCountries","ButtonComponent","i18n","buttonProps","consentFields","consents","consent","policyText","policyLink","policyMandatory","initialValues","fields","forEach","loadCountries","fallbackCountries","fetch","res","ok","status","json","data","warn","err_1","fetchCity","data_1","ip_location","err_2","pageTitles","pages","handleChange","prevValues","validatePage","page","pageIsValid","newErrors","getFieldsForPage","pageNumber","fieldsToValidate","fieldWithRegex","RegExp","test","validate","customErrors_1","some","handleSubmit","ev","onSubmit","log","formNavigate","el","pageTarget","dataset","page_target","pageTargetInt","parseInt","renderQrFormField","renderProgressBar","pageIndex","renderFormSection","fsp","startFromFieldIndex","endFieldIndex","generateButtons","sectionTitle","fieldsSubset","isPartial","isFirstPage","isLastPage","navButtons","showThankYou","formHeader","action","formAction","hubspotAppId","hubspotId","thankYouTitle","thankYouText","buttonText","newTab"],"mappings":"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","x_google_ignoreList":[0,1]}