@local-civics/hub-ui 0.1.178 → 0.1.179
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.
- package/dist/index.js.map +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../node_modules/style-inject/dist/style-inject.es.js","../src/utils/classname/classname.ts","../src/components/Icon/v0/data/icons.ts","../src/components/Icon/v0/Icon.tsx","../src/components/Logo/Logo.tsx","../src/components/Button/Button.tsx","../src/components/Loader/Loader.tsx","../src/components/Modal/Modal.tsx","../src/components/Activity/ActivityCard/ActivityCard.tsx","../src/components/Activity/ActivityItem/ActivityItem.tsx","../src/components/Activity/TagFilter/TagFilter.tsx","../src/components/Activity/Gallery/Gallery.tsx","../src/utils/search.ts","../src/components/Activity/ActivityList/ActivityList.tsx","../src/components/Activity/ActivityReflection/ActivityReflection.tsx","../assets/14-point-star.svg","../assets/award-ribbon.svg","../assets/up-down-arrow.svg","../assets/check-circle.svg","../assets/check-circle-dark.svg","../assets/circle.svg","../assets/lock.svg","../assets/progress.svg","../assets/party-popper.svg","../assets/plus-circle.svg","../assets/x-circle.svg","../assets/x-square.svg","../assets/pen-paper.svg","../assets/caret-left.svg","../assets/formal-backpack.svg","../assets/formal-ballot-box.svg","../assets/formal-bar-graph.svg","../assets/formal-bolt.svg","../assets/formal-briefcase.svg","../assets/formal-bullseye.svg","../assets/formal-burger.svg","../assets/formal-camera-lens.svg","../assets/formal-design-bulb.svg","../assets/formal-double-pan-balance.svg","../assets/formal-easel.svg","../assets/formal-eye.svg","../assets/formal-gavel.svg","../assets/formal-group.svg","../assets/formal-handshake.svg","../assets/formal-heart.svg","../assets/formal-magnifying-glass.svg","../assets/formal-medicine.svg","../assets/formal-microphone.svg","../assets/formal-molecule.svg","../assets/formal-moneybag.svg","../assets/formal-mortarboard.svg","../assets/formal-parthenon.svg","../assets/formal-pencil.svg","../assets/formal-pie-chart.svg","../assets/formal-pin.svg","../assets/formal-rocket.svg","../assets/formal-scholar.svg","../assets/formal-stopwatch.svg","../src/components/Icon/icons.tsx","../src/components/Icon/Icon.tsx","../src/components/Progress/Progress.tsx","../src/features/badges/BadgeEmblem/BadgeEmblem.tsx","../src/utils/date.ts","../src/features/badges/BadgeButton/BadgeButton.tsx","../src/components/Card/Card.tsx","../src/features/badges/BadgeCard/BadgeCard.tsx","../src/components/Overlay/Overlay.tsx","../src/features/badges/Badge/Badge.tsx","../src/features/badges/BadgeActivity/BadgeActivity.tsx","../src/features/badges/BadgeActivityMenu/BadgeActivityMenu.tsx","../src/components/Widget/WidgetBody/WidgetBody.tsx","../src/components/Widget/WidgetHeader/WidgetHeader.tsx","../src/components/Widget/WidgetHeaderLink/WidgetHeaderLink.tsx","../src/components/Widget/WidgetTitle/WidgetTitle.tsx","../src/components/Widget/Widget.tsx","../src/features/badges/BadgeSection/BadgeSection.tsx","../src/features/badges/BadgeSuccessDialog/BadgeSuccessDialog.tsx","../src/components/Board/Tab/Tab.tsx","../src/components/Board/Board.tsx","../src/components/Calendar/DateSelection/DateSelection.tsx","../src/utils/colors.ts","../src/components/Calendar/EventItem/EventItem.tsx","../src/components/Calendar/EventList/EventList.tsx","../src/components/Home/Home.tsx","../src/features/learning-forms/FormExitDialog/FormExitDialog.tsx","../src/utils/url.tsx","../src/features/learning-forms/FormItem/FormItem.tsx","../src/features/learning-forms/FormSubmitDialog/FormSubmitDialog.tsx","../src/features/learning-forms/LearningForm/LearningForm.tsx","../src/components/NavBar/NavLink/NavLink.tsx","../src/components/NavBar/NavBar.tsx","../src/components/NotFound/NotFound.tsx","../src/components/Search/SearchButton/SearchButton.tsx","../src/components/Search/SearchResult/SearchResult.tsx","../src/components/Search/Search.tsx","../src/components/Onboarding/LegalAgreement/LegalAgreement.tsx","../src/components/Onboarding/CommunitySearch/CommunitySearch.tsx","../src/components/Onboarding/Registration/Registration.tsx","../src/components/Onboarding/Welcome/Welcome.tsx","../src/components/Onboarding/Onboarding.tsx","../src/components/Pathway/PathwayButton/PathwayButton.tsx","../src/components/Pathway/PathwayFilter/PathwayFilter.tsx","../src/utils/numbers.ts","../src/components/Pathway/PathwayProgress/PathwayProgress.tsx","../src/components/Pathway/PathwayWidget/PathwayWidget.tsx","../src/components/Profile/AboutWidget/AboutWidget.tsx","../src/components/Profile/AchievementWidget/AchievementWidget.tsx","../src/components/Profile/SettingsCard/SettingsCard.tsx","../src/components/Profile/ImpactWidget/ImpactWidget.tsx","../src/components/Profile/ProfileWidget/ProfileWidget.tsx","../src/features/service-tracking/FormInput/FormInput.tsx","../src/features/service-tracking/FormExitDialog/FormExitDialog.tsx","../src/features/service-tracking/FormSubmitDialog/FormSubmitDialog.tsx","../src/features/service-tracking/Form/Form.tsx","../src/features/service-tracking/LogServiceButton/LogServiceButton.tsx","../src/components/Stopwatch/Stopwatch.tsx","../src/components/Task/TaskItem/TaskItem.tsx","../src/components/Task/TaskList/TaskList.tsx","../src/features/pathways/PathwayProgressBarChart/PathwayProgressBarChart.tsx","../src/features/pathways/PathwayCard/PathwayCard.tsx","../src/features/pathways/Pathway/Pathway.tsx","../src/features/pathways/PathwayButton/PathwayButton.tsx","../src/features/pathways/PathwaySection/PathwaySection.tsx","../src/layouts/AuthLayout/AuthLayout.tsx","../src/layouts/HomeLayout/HomeLayout.tsx"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","/**\n * A utility to build builders conditionally.\n * @param base\n * @param precondition\n */\nexport const builder = (base: string = \"\", precondition?: boolean) => {\n const append = (prefix: string, ...suffix: string[]) => {\n return [prefix, ...suffix]\n .map((s) => s.trim())\n .filter((s) => s)\n .join(\" \");\n };\n\n return {\n append: (...suffix: string[]) => {\n return builder(append(base, ...suffix));\n },\n if: (condition: boolean, ...suffix: string[]) => {\n if (condition) {\n return builder(append(base, ...suffix), condition);\n }\n return builder(base, precondition);\n },\n else: (...suffix: string[]) => {\n if (!precondition) {\n return builder(append(base, ...suffix));\n }\n return builder(base);\n },\n build: () => base,\n };\n};\n\n/**\n * A utility to recursively parse a configuration of classes and build a class name.\n * @param config\n */\nexport const classname = (config: any) => {\n const classes = flatten(config);\n return classes\n .map((name) => name.trim())\n .filter((name) => name)\n .join(\" \");\n};\n\n/**\n * A utility to flatten a config of classnames\n * @param config\n * @param values\n */\nconst flatten = (config?: any, values: string[] = []) => {\n Object.keys(config).map((k) => {\n if (typeof config[k] === \"string\") {\n values.push(config[k]);\n } else {\n flatten(config[k], values);\n }\n });\n return values;\n};\n","/**\n * List of icons available\n */\nexport const icons = [\n \"default\",\n \"calendar\",\n \"positive\",\n \"negative\",\n \"circle\",\n \"college & career\",\n \"arts & culture\",\n \"explore\",\n \"goal\",\n \"help\",\n \"leftArrow\",\n \"rightArrow\",\n \"policy & government\",\n \"recreation\",\n \"send\",\n \"shield\",\n \"profile\",\n \"volunteer\",\n \"clock\",\n \"sponsored\",\n \"globe\",\n \"pin\",\n \"milestone\",\n \"citizen\",\n \"cohort\",\n \"builder\",\n \"advocate\",\n \"leader\",\n \"representative\",\n \"bolt\",\n \"accept\",\n \"close\",\n \"menu-close\",\n \"pathway\",\n \"edit\",\n \"settings\",\n \"objective\",\n \"achievements\",\n \"badges\",\n \"milestones\",\n \"activity\",\n \"reflection\",\n \"registrations\",\n \"lock\",\n \"unlock\",\n \"badge\",\n \"waypoint\",\n \"apple\",\n \"guest speaker\",\n \"search\",\n \"menu\",\n \"todo\",\n \"done\",\n \"review\",\n \"contingent\",\n \"unqualified\",\n \"materials\",\n \"asynchronous\",\n \"synchronous\",\n \"export\",\n \"service-tracking\",\n] as const;\n\n/**\n * The icon.\n */\ninterface Icon {\n viewBox: string;\n contents: {\n d?: string;\n fill?: string;\n stroke?: string;\n strokeWidth?: string;\n strokeLinecap?: string;\n strokeLinejoin?: string;\n strokeMiterlimit?: string;\n cx?: string;\n cy?: string;\n r?: string;\n }[];\n}\n\n/**\n * Sprite for icons.\n */\nexport const sprite: {\n [key in typeof icons[number]]: Icon;\n} = {\n default: {\n viewBox: \"0 0 111.577 111.577\",\n contents: [\n {\n d: `M78.962,99.536l-1.559,6.373c-4.677,1.846-8.413,3.251-11.195,4.217c-2.785,0.969-6.021,1.451-9.708,1.451\n\t\tc-5.662,0-10.066-1.387-13.207-4.142c-3.141-2.766-4.712-6.271-4.712-10.523c0-1.646,0.114-3.339,0.351-5.064\n\t\tc0.239-1.727,0.619-3.672,1.139-5.846l5.845-20.688c0.52-1.981,0.962-3.858,1.316-5.633c0.359-1.764,0.532-3.387,0.532-4.848\n\t\tc0-2.642-0.547-4.49-1.636-5.529c-1.089-1.036-3.167-1.562-6.252-1.562c-1.511,0-3.064,0.242-4.647,0.71\n\t\tc-1.59,0.47-2.949,0.924-4.09,1.346l1.563-6.378c3.829-1.559,7.489-2.894,10.99-4.002c3.501-1.111,6.809-1.667,9.938-1.667\n\t\tc5.623,0,9.962,1.359,13.009,4.077c3.047,2.72,4.57,6.246,4.57,10.591c0,0.899-0.1,2.483-0.315,4.747\n\t\tc-0.21,2.269-0.601,4.348-1.171,6.239l-5.82,20.605c-0.477,1.655-0.906,3.547-1.279,5.676c-0.385,2.115-0.569,3.731-0.569,4.815\n\t\tc0,2.736,0.61,4.604,1.833,5.597c1.232,0.993,3.354,1.487,6.368,1.487c1.415,0,3.025-0.251,4.814-0.744\n\t\tC76.854,100.348,78.155,99.915,78.962,99.536z M80.438,13.03c0,3.59-1.353,6.656-4.072,9.177c-2.712,2.53-5.98,3.796-9.803,3.796\n\t\tc-3.835,0-7.111-1.266-9.854-3.796c-2.738-2.522-4.11-5.587-4.11-9.177c0-3.583,1.372-6.654,4.11-9.207\n\t\tC59.447,1.274,62.729,0,66.563,0c3.822,0,7.091,1.277,9.803,3.823C79.087,6.376,80.438,9.448,80.438,13.03z`,\n },\n ],\n },\n profile: {\n viewBox: \"0 0 24 24\",\n contents: [\n {\n d: \"M12 6C11.2583 6 10.5333 6.21993 9.91661 6.63199C9.29993 7.04404 8.81928 7.62971 8.53545 8.31494C8.25162 9.00016 8.17736 9.75416 8.32206 10.4816C8.46675 11.209 8.8239 11.8772 9.34835 12.4017C9.8728 12.9261 10.541 13.2833 11.2684 13.4279C11.9958 13.5726 12.7498 13.4984 13.4351 13.2145C14.1203 12.9307 14.706 12.4501 15.118 11.8334C15.5301 11.2167 15.75 10.4917 15.75 9.75C15.75 8.75544 15.3549 7.80161 14.6517 7.09835C13.9484 6.39509 12.9946 6 12 6ZM12 12C11.555 12 11.12 11.868 10.75 11.6208C10.38 11.3736 10.0916 11.0222 9.92127 10.611C9.75098 10.1999 9.70642 9.7475 9.79323 9.31105C9.88005 8.87459 10.0943 8.47368 10.409 8.15901C10.7237 7.84434 11.1246 7.63005 11.561 7.54323C11.9975 7.45642 12.4499 7.50097 12.861 7.67127C13.2722 7.84157 13.6236 8.12996 13.8708 8.49997C14.118 8.86998 14.25 9.30499 14.25 9.75C14.2494 10.3466 14.0122 10.9185 13.5903 11.3403C13.1685 11.7622 12.5966 11.9994 12 12Z\",\n stroke: \"none\",\n },\n {\n d: \"M12 1.5C9.9233 1.5 7.89323 2.11581 6.16652 3.26957C4.4398 4.42332 3.09399 6.0632 2.29927 7.98182C1.50455 9.90045 1.29661 12.0116 1.70176 14.0484C2.1069 16.0852 3.10693 17.9562 4.57538 19.4246C6.04383 20.8931 7.91476 21.8931 9.95156 22.2982C11.9884 22.7034 14.0996 22.4955 16.0182 21.7007C17.9368 20.906 19.5767 19.5602 20.7304 17.8335C21.8842 16.1068 22.5 14.0767 22.5 12C22.4968 9.2162 21.3896 6.54733 19.4211 4.57889C17.4527 2.61044 14.7838 1.50318 12 1.5ZM7.5 19.7828V18.75C7.5006 18.1534 7.73784 17.5815 8.15967 17.1597C8.5815 16.7378 9.15345 16.5006 9.75 16.5H14.25C14.8466 16.5006 15.4185 16.7378 15.8403 17.1597C16.2622 17.5815 16.4994 18.1534 16.5 18.75V19.7828C15.1344 20.5802 13.5814 21.0004 12 21.0004C10.4186 21.0004 8.86563 20.5802 7.5 19.7828ZM17.994 18.6945C17.9791 17.7107 17.5782 16.7722 16.8779 16.0812C16.1776 15.3901 15.2339 15.0019 14.25 15H9.75C8.76614 15.0019 7.82238 15.3901 7.12207 16.0812C6.42176 16.7722 6.02095 17.7107 6.006 18.6945C4.64593 17.4801 3.6868 15.8812 3.25563 14.1095C2.82446 12.3378 2.94158 10.477 3.59148 8.77339C4.24139 7.06978 5.39342 5.60375 6.89503 4.56942C8.39665 3.5351 10.177 2.98127 12.0004 2.98127C13.8237 2.98127 15.6041 3.5351 17.1057 4.56942C18.6073 5.60375 19.7594 7.06978 20.4093 8.77339C21.0592 10.477 21.1763 12.3378 20.7451 14.1095C20.314 15.8812 19.3541 17.4801 17.994 18.6945Z\",\n stroke: \"none\",\n },\n ],\n },\n shield: {\n viewBox: \"0 0 32 32\",\n contents: [\n {\n d: \"M29.9786 4.99963C29.9765 4.88196 29.948 4.766 29.8952 4.65919C29.8423 4.55239 29.7661 4.45711 29.6716 4.37947C29.5726 4.30274 29.4575 4.24624 29.3338 4.21361C29.2101 4.18097 29.0804 4.17292 28.9532 4.18997C28.8795 4.18997 21.4563 5.15468 16.2311 0.245016C16.0562 0.0878015 15.8229 0 15.5803 0C15.3377 0 15.1044 0.0878015 14.9295 0.245016C9.70434 5.15468 2.2811 4.20146 2.20742 4.18997C2.08061 4.17352 1.95155 4.18133 1.82807 4.21291C1.70458 4.2445 1.58924 4.29921 1.48904 4.37372C1.38926 4.45032 1.30769 4.54556 1.24953 4.65334C1.19138 4.76112 1.15794 4.87907 1.15134 4.99963C0.819781 11.2071 0.752241 19.9296 4.01257 24.1272C7.37114 28.4339 14.0269 31.5922 15.1259 31.9367C15.4221 32.0211 15.7385 32.0211 16.0347 31.9367C17.1337 31.6152 23.7895 28.4339 27.148 24.1272C30.3777 19.9411 30.2856 11.2071 29.9786 4.99963ZM25.6253 23.1108C22.8132 26.7227 16.925 29.7776 15.5496 30.26C14.1742 29.8006 8.286 26.7285 5.47389 23.1108C2.66178 19.4932 2.65564 11.8387 2.91352 5.98157C5.20373 6.09641 10.8955 5.93563 15.5496 2.04235C20.1853 5.93563 25.8955 6.09641 28.1857 5.98157C28.4436 11.8387 28.4006 19.5506 25.6253 23.1108Z\",\n },\n {\n d: \"M11 15.5L14.75 19L21 12\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n },\n ],\n },\n \"policy & government\": {\n viewBox: \"0 0 36 36\",\n contents: [\n {\n d: \"M6 18.5156V27.8059\",\n fill: \"none\",\n strokeWidth: \"2.5\",\n strokeLinecap: \"round\",\n strokeMiterlimit: \"10\",\n },\n {\n d: \"M13.668 18.5156V27.8059\",\n fill: \"none\",\n strokeWidth: \"2.5\",\n strokeLinecap: \"round\",\n strokeMiterlimit: \"10\",\n },\n {\n d: \"M21.332 18.5156V27.8059\",\n fill: \"none\",\n strokeWidth: \"2.5\",\n strokeLinecap: \"round\",\n strokeMiterlimit: \"10\",\n },\n {\n d: \"M29 18.5156V27.8059\",\n fill: \"none\",\n strokeWidth: \"2.5\",\n strokeLinecap: \"round\",\n strokeMiterlimit: \"10\",\n },\n {\n d: \"M34 34L2.00047 34\",\n fill: \"none\",\n strokeWidth: \"2.5\",\n strokeLinecap: \"round\",\n strokeMiterlimit: \"10\",\n },\n {\n d: \"M33.6863 13.3548H2.3137C2.21626 13.3548 2.17636 13.2297 2.25582 13.1733L17.9421 2.04107C17.9768 2.01647 18.0232 2.01647 18.0579 2.04107L33.7442 13.1733C33.8236 13.2297 33.7837 13.3548 33.6863 13.3548Z\",\n fill: \"none\",\n strokeWidth: \"2.5\",\n strokeLinecap: \"round\",\n strokeMiterlimit: \"10\",\n },\n ],\n },\n recreation: {\n viewBox: \"0 0 36 36\",\n contents: [\n {\n d: \"M2 14.9121L21.4286 33.9998\",\n strokeWidth: \"2.5\",\n strokeMiterlimit: \"10\",\n strokeLinecap: \"round\",\n fill: \"none\",\n },\n {\n d: \"M2 14.9132L10.5714 6.49219L21.4286 17.1589L12.8571 25.5799\",\n strokeWidth: \"2.5\",\n fill: \"none\",\n },\n {\n d: \"M14.5703 10.4211L23.1417 2L33.9989 12.6667L23.1417 23.3333L19.1417 19.4035\",\n strokeWidth: \"2.5\",\n fill: \"none\",\n },\n ],\n },\n \"college & career\": {\n viewBox: \"0 0 34 34\",\n contents: [\n {\n d: \"M32.6335 10.0283L17.3608 1.09811C17.1371 0.967297 16.8629 0.967297 16.6392 1.09811L1.36648 10.0283C1.13991 10.1606 1 10.4077 1 10.6744C1 10.9411 1.13991 11.1882 1.36648 11.3205L5.36364 13.6577L5.36364 21.8372C5.36364 22.0988 5.49751 22.3408 5.71662 22.4753L16.6257 29.173C16.7411 29.2435 16.8704 29.2791 17 29.2791C17.1296 29.2791 17.2589 29.2435 17.3743 29.173L28.2834 22.4753C28.5021 22.3408 28.6364 22.0988 28.6364 21.8372L28.6364 13.6577L31.5455 11.9567L31.5455 33L33 33L33 10.6744C33 10.4077 32.8601 10.1606 32.6335 10.0283ZM27.1818 21.4157L17 27.6672L6.81818 21.4157L6.81818 14.5082L16.6392 20.2507C16.7511 20.3161 16.8754 20.3488 17 20.3488C17.1246 20.3488 17.2489 20.3161 17.3608 20.2507L27.1818 14.5082L27.1818 21.4157ZM17 18.7478L3.19318 10.6744L17 2.60102L30.8068 10.6744L17 18.7478Z\",\n strokeWidth: \"0.5\",\n },\n ],\n },\n\n volunteer: {\n viewBox: \"0 0 22 22\",\n contents: [\n {\n d: \"M6.19813 0.900057C4.83194 0.900115 3.47628 1.50443 2.44584 2.71071C0.38909 5.11832 0.383099 8.97775 2.43762 11.3874L10.5387 20.8906C10.5387 20.8906 10.5387 20.8907 10.5388 20.8907C10.7749 21.1698 11.2203 21.1698 11.4563 20.8906L11.3801 20.8262L11.456 20.891C12.8073 19.3092 14.157 17.7265 15.5067 16.1438L15.5125 16.137C16.8603 14.5565 18.2081 12.9761 19.5574 11.3966C21.6142 8.98886 21.6142 5.12767 19.5574 2.71991C17.4927 0.302892 14.1091 0.302772 12.0443 2.71972C12.0443 2.71978 12.0442 2.71984 12.0442 2.71991L11.0019 3.92862L9.95924 2.71085C9.95922 2.71082 9.9592 2.7108 9.95917 2.71077C8.84792 1.40498 7.46716 0.893771 6.19813 0.900057ZM6.19813 0.900057C6.19819 0.900057 6.19826 0.900057 6.19832 0.900057H6.19837V1.00001L6.19832 0.989539L6.19787 0.900058C6.19796 0.900058 6.19804 0.900058 6.19813 0.900057ZM3.35459 3.65941L3.35459 3.65941C4.15471 2.72275 5.17755 2.25926 6.19832 2.25926C7.21932 2.25926 8.25031 2.72294 9.0503 3.65941L10.5469 5.41624C10.5469 5.41628 10.5469 5.41632 10.547 5.41636C10.7831 5.69538 11.2284 5.69536 11.4645 5.41629C11.4645 5.41627 11.4645 5.41625 11.4645 5.41624L12.9528 3.66861C13.7529 2.73201 14.7791 2.26823 15.8007 2.26823C16.8223 2.26824 17.8485 2.73203 18.6486 3.66861C20.2515 5.54509 20.2515 8.58064 18.6486 10.4571C17.3681 11.956 16.0881 13.4552 14.8081 14.9543C13.5394 16.4401 12.2707 17.926 11.0016 19.4117L3.35465 10.448C3.35464 10.448 3.35464 10.448 3.35463 10.448C1.75266 8.56906 1.75167 5.53579 3.35459 3.65941Z\",\n strokeWidth: \"0.2\",\n },\n ],\n },\n positive: {\n viewBox: \"0 0 36 36\",\n contents: [\n {\n d: \"M11.5996 18.8L16.3996 23.6L24.3996 14\",\n strokeWidth: \"3\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n fill: \"none\",\n },\n {\n d: \"M18 34C26.8366 34 34 26.8366 34 18C34 9.16344 26.8366 2 18 2C9.16344 2 2 9.16344 2 18C2 26.8366 9.16344 34 18 34Z\",\n strokeWidth: \"3\",\n fill: \"none\",\n },\n ],\n },\n negative: {\n viewBox: \"0 0 512 512\",\n contents: [\n {\n d: \"M256,0C114.508,0,0,114.497,0,256c0,141.493,114.497,256,256,256c141.492,0,256-114.497,256-256C512,114.507,397.503,0,256,0z M256,472c-119.384,0-216-96.607-216-216c0-119.385,96.607-216,216-216c119.384,0,216,96.607,216,216C472,375.385,375.393,472,256,472z\",\n },\n {\n d: \"M343.586,315.302L284.284,256l59.302-59.302c7.81-7.81,7.811-20.473,0.001-28.284c-7.812-7.811-20.475-7.81-28.284,0L256,227.716l-59.303-59.302c-7.809-7.811-20.474-7.811-28.284,0c-7.81,7.811-7.81,20.474,0.001,28.284L227.716,256l-59.302,59.302c-7.811,7.811-7.812,20.474-0.001,28.284c7.813,7.812,20.476,7.809,28.284,0L256,284.284l59.303,59.302c7.808,7.81,20.473,7.811,28.284,0C351.398,335.775,351.397,323.112,343.586,315.302z\",\n },\n ],\n },\n close: {\n viewBox: \"0 0 33 32\",\n contents: [\n {\n d: \"M24.6974 7.61314C24.5726 7.48954 24.4243 7.39148 24.261 7.32457C24.0978 7.25766 23.9228 7.22322 23.746 7.22322C23.5693 7.22322 23.3942 7.25766 23.231 7.32457C23.0677 7.39148 22.9194 7.48954 22.7946 7.61314L16.1952 14.1198L9.59582 7.59981C9.47087 7.47637 9.32254 7.37845 9.15929 7.31164C8.99604 7.24483 8.82107 7.21045 8.64437 7.21045C8.46767 7.21045 8.2927 7.24483 8.12945 7.31164C7.96621 7.37845 7.81787 7.47637 7.69293 7.59981C7.56798 7.72325 7.46887 7.8698 7.40125 8.03109C7.33363 8.19237 7.29883 8.36524 7.29883 8.53981C7.29883 8.71438 7.33363 8.88725 7.40125 9.04853C7.46887 9.20982 7.56798 9.35637 7.69293 9.47981L14.2923 15.9998L7.69293 22.5198C7.56798 22.6433 7.46887 22.7898 7.40125 22.9511C7.33363 23.1124 7.29883 23.2852 7.29883 23.4598C7.29883 23.6344 7.33363 23.8072 7.40125 23.9685C7.46887 24.1298 7.56798 24.2764 7.69293 24.3998C7.81787 24.5233 7.96621 24.6212 8.12945 24.688C8.2927 24.7548 8.46767 24.7892 8.64437 24.7892C8.82107 24.7892 8.99604 24.7548 9.15929 24.688C9.32254 24.6212 9.47087 24.5233 9.59582 24.3998L16.1952 17.8798L22.7946 24.3998C22.9195 24.5233 23.0678 24.6212 23.2311 24.688C23.3943 24.7548 23.5693 24.7892 23.746 24.7892C23.9227 24.7892 24.0977 24.7548 24.2609 24.688C24.4242 24.6212 24.5725 24.5233 24.6974 24.3998C24.8224 24.2764 24.9215 24.1298 24.9891 23.9685C25.0567 23.8072 25.0916 23.6344 25.0916 23.4598C25.0916 23.2852 25.0567 23.1124 24.9891 22.9511C24.9215 22.7898 24.8224 22.6433 24.6974 22.5198L18.0981 15.9998L24.6974 9.47981C25.2103 8.97314 25.2103 8.11981 24.6974 7.61314Z\",\n stroke: \"none\",\n },\n {\n d: \"M0 0V-1H-1V0H0ZM32.3896 0H33.3896V-1H32.3896V0ZM32.3896 32V33H33.3896V32H32.3896ZM0 32H-1V33H0V32ZM0 1H32.3896V-1H0V1ZM31.3896 0V32H33.3896V0H31.3896ZM32.3896 31H0V33H32.3896V31ZM1 32V0H-1V32H1Z\",\n stroke: \"none\",\n },\n ],\n },\n \"menu-close\": {\n viewBox: \"0 0 50 50\",\n contents: [\n {\n d: \"M 9.15625 6.3125 L 6.3125 9.15625 L 22.15625 25 L 6.21875 40.96875 L 9.03125 43.78125 L 25 27.84375 L 40.9375 43.78125 L 43.78125 40.9375 L 27.84375 25 L 43.6875 9.15625 L 40.84375 6.3125 L 25 22.15625 Z\",\n stroke: \"none\",\n },\n ],\n },\n \"arts & culture\": {\n viewBox: \"0 0 32 32\",\n contents: [\n {\n d: \"M26.9097 1H5.09031C3.93586 1 3 1.85181 3 2.90258V22.7624C3 23.8131 3.93586 24.6649 5.09031 24.6649H26.9097C28.0641 24.6649 29 23.8131 29 22.7624V2.90258C29 1.85181 28.0641 1 26.9097 1Z\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeMiterlimit: \"10\",\n strokeLinecap: \"round\",\n },\n {\n d: \"M9.10938 24.6641V30.0764\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeMiterlimit: \"10\",\n strokeLinecap: \"round\",\n },\n {\n d: \"M22.8906 24.6641V30.0764\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeMiterlimit: \"10\",\n strokeLinecap: \"round\",\n },\n ],\n },\n circle: {\n viewBox: \"0 0 26 26\",\n contents: [{ cx: \"12.5\", cy: \"12.5\", r: \"12.5\", stroke: \"none\" }],\n },\n explore: {\n viewBox: \"0 0 32 32\",\n contents: [\n {\n d: \"M15.9993 14.5327C15.186 14.5327 14.5327 15.186 14.5327 15.9993C14.5327 16.8127 15.186 17.466 15.9993 17.466C16.8127 17.466 17.466 16.8127 17.466 15.9993C17.466 15.186 16.8127 14.5327 15.9993 14.5327ZM15.9993 2.66602C8.63935 2.66602 2.66602 8.63935 2.66602 15.9993C2.66602 23.3593 8.63935 29.3327 15.9993 29.3327C23.3593 29.3327 29.3327 23.3593 29.3327 15.9993C29.3327 8.63935 23.3593 2.66602 15.9993 2.66602ZM18.9193 18.9193L7.99935 23.9993L13.0793 13.0793L23.9993 7.99935L18.9193 18.9193Z\",\n fill: \"none\",\n strokeWidth: \"2\",\n },\n ],\n },\n leftArrow: {\n viewBox: \"0 0 21 36\",\n contents: [\n {\n d: \"M1.40634 20.3075L1.40788 20.3091L14.8217 34.4729L14.8219 34.4731C15.4274 35.1117 16.2598 35.4817 17.1365 35.4993C18.0132 35.517 18.8595 35.1808 19.4897 34.5669C20.1197 33.9532 20.4821 33.1124 20.4994 32.2299C20.5166 31.3475 20.1875 30.4929 19.5823 29.8546L8.36283 18L19.5823 6.14545C19.5823 6.14542 19.5823 6.1454 19.5823 6.14538C20.1875 5.507 20.5166 4.65248 20.4994 3.77006C20.4821 2.88759 20.1197 2.0468 19.4897 1.43312C18.8595 0.819209 18.0132 0.483008 17.1365 0.500661C16.2598 0.518314 15.4274 0.888294 14.8219 1.52691L14.8217 1.52711L1.40788 15.6909L1.4065 15.6924C1.10192 16.0166 0.865215 16.3992 0.710099 16.8174C0.55523 17.2348 0.48475 17.6793 0.502746 18.1246C0.529843 18.9387 0.850751 19.7155 1.40634 20.3075Z\",\n },\n ],\n },\n rightArrow: {\n viewBox: \"0 0 21 36\",\n contents: [\n {\n d: \"M19.5937 15.6925L19.5921 15.6909L6.17829 1.52711L6.1781 1.52691C5.57264 0.888298 4.74023 0.51831 3.86354 0.50066C2.98683 0.483005 2.14046 0.81921 1.51028 1.43312C0.880334 2.04681 0.51794 2.88758 0.500647 3.77006C0.483355 4.65251 0.812493 5.50706 1.41774 6.14545L12.6372 18L1.41774 29.8546C1.41772 29.8546 1.41769 29.8546 1.41767 29.8546C0.81247 30.493 0.483356 31.3475 0.500648 32.2299C0.517941 33.1124 0.880335 33.9532 1.51028 34.5669C2.14046 35.1808 2.98683 35.517 3.86354 35.4993C4.74023 35.4817 5.57264 35.1117 6.1781 34.4731L6.17829 34.4729L19.5921 20.3091L19.5935 20.3076C19.8981 19.9834 20.1348 19.6008 20.2899 19.1826C20.4448 18.7652 20.5152 18.3207 20.4973 17.8754C20.4702 17.0613 20.1492 16.2845 19.5937 15.6925Z\",\n },\n ],\n },\n calendar: {\n viewBox: \"0 0 32 32\",\n contents: [\n {\n d: \"M25.3333 5.33398H6.66667C5.19391 5.33398 4 6.52789 4 8.00065V26.6673C4 28.1401 5.19391 29.334 6.66667 29.334H25.3333C26.8061 29.334 28 28.1401 28 26.6673V8.00065C28 6.52789 26.8061 5.33398 25.3333 5.33398Z\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n },\n {\n d: \"M21.334 2.66602V7.99935\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n },\n {\n d: \"M10.666 2.66602V7.99935\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n },\n {\n d: \"M4 13.334H28\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n },\n ],\n },\n goal: {\n viewBox: \"0 0 32 32\",\n contents: [\n {\n d: \"M15.9993 23.026L24.2393 27.9993L22.0527 18.626L29.3327 12.3193L19.746 11.506L15.9993 2.66602L12.2527 11.506L2.66602 12.3193L9.94602 18.626L7.75935 27.9993L15.9993 23.026Z\",\n strokeWidth: \"2\",\n fill: \"none\",\n },\n ],\n },\n\n help: {\n viewBox: \"2 -4 50 50\",\n contents: [\n {\n d: \"M27.0847 9.80713C23.6286 9.80713 20.7773 12.615 20.7773 16.1145C20.7773 17.0218 21.5117 17.7128 22.3757 17.7128C23.2396 17.7128 23.974 16.9784 23.974 16.1145C23.974 14.4297 25.3565 13.0471 27.0413 13.0471C28.8126 13.0471 30.1087 14.2998 30.1087 15.9846V16.1142C30.1087 17.0646 29.8495 19.311 26.7822 19.7863C26.0048 19.9159 25.3997 20.5638 25.3997 21.3846V25.7478C25.3997 26.6551 26.134 27.3461 26.998 27.3461C27.8619 27.3461 28.5963 26.6117 28.5963 25.7478V22.6804C32.6572 21.4278 33.305 17.9282 33.305 15.9843C33.3918 12.5286 30.5409 9.80718 27.0848 9.80718L27.0847 9.80713Z\",\n stroke: \"none\",\n },\n {\n d: \"M27.0852 29.29C25.9188 29.29 25.0117 30.2404 25.0117 31.3635C25.0117 32.4866 25.9621 33.437 27.0852 33.437C28.2084 33.437 29.1588 32.4866 29.1588 31.3635C29.1588 30.2404 28.2084 29.29 27.0852 29.29Z\",\n stroke: \"none\",\n },\n {\n d: \"M27.0865 0.345703C15.4657 0.345703 6.00488 9.8065 6.00488 21.4273C6.00488 33.0481 15.4657 42.5089 27.0865 42.5089C38.7073 42.5086 48.1681 33.0481 48.1681 21.4273C48.1681 9.8065 38.7073 0.345703 27.0865 0.345703ZM27.0865 39.3121C17.2369 39.3121 9.20168 31.2769 9.20168 21.4273C9.20168 11.5777 17.2369 3.5425 27.0865 3.5425C36.9361 3.5425 44.9713 11.5777 44.9713 21.4273C44.9279 31.2769 36.9361 39.3121 27.0865 39.3121Z\",\n stroke: \"none\",\n },\n ],\n },\n send: {\n viewBox: \"0 0 64 64\",\n contents: [\n {\n d: \"M63.5773 19.8454C62.7018 17.889 60.7488 16.7874 58.6129 17.0343L4.01412 23.1978C2.56136 23.3592 1.41646 24.3754 1.08935 25.7809C0.76224 27.1865 1.34912 28.592 2.59022 29.3707C6.04413 31.5265 11.7686 33.6538 15.184 34.9264C15.7613 35.1448 16.3866 35.3728 16.8677 35.5627L20.2061 52.4482L20.2639 52.6761C20.7545 54.2146 21.986 55.3827 23.5639 55.8196C23.9968 55.943 24.4394 56 24.8723 56C26.0172 56 27.1428 55.5916 28.0376 54.8319L62.3458 25.3821C63.9525 23.9575 64.4432 21.7922 63.5773 19.8454ZM16.6272 31.1277C13.9237 30.121 9.72895 28.5635 6.59253 26.9585L58.459 21.1085L19.8117 32.4762C19.2056 32.0963 18.2146 31.726 16.6272 31.1277ZM25.3341 51.7549C25.0743 51.9828 24.7953 51.9448 24.651 51.9068C24.5163 51.8689 24.295 51.7739 24.1796 51.508L20.7257 34.0337C20.7161 33.8818 20.7064 33.7488 20.6776 33.6253L59.7963 22.1246C59.7578 22.1911 59.7097 22.2481 59.6423 22.3146L25.3341 51.7549Z\",\n stroke: \"none\",\n },\n ],\n },\n clock: {\n viewBox: \"0 0 32 32\",\n contents: [\n {\n d: \"M15.5 0C6.9404 0 0 6.9404 0 15.5C0 24.0596 6.9404 31 15.5 31C24.0596 31 31 24.0596 31 15.5C31 6.9404 24.0596 0 15.5 0ZM15.5 28.3705C8.39353 28.3705 2.62946 22.6065 2.62946 15.5C2.62946 8.39353 8.39353 2.62946 15.5 2.62946C22.6065 2.62946 28.3705 8.39353 28.3705 15.5C28.3705 22.6065 22.6065 28.3705 15.5 28.3705Z\",\n stroke: \"none\",\n },\n {\n d: \"M21.5616 19.8737L16.6279 16.3066V7.74358C16.6279 7.59135 16.5033 7.4668 16.3511 7.4668H14.6869C14.5347 7.4668 14.4102 7.59135 14.4102 7.74358V17.2719C14.4102 17.3619 14.4517 17.4449 14.5243 17.4968L20.2469 21.6693C20.3714 21.7593 20.5444 21.7316 20.6344 21.6105L21.6239 20.2612C21.7138 20.1332 21.6861 19.9602 21.5616 19.8737Z\",\n stroke: \"none\",\n },\n ],\n },\n sponsored: {\n viewBox: \"0 0 28 34\",\n contents: [\n {\n d: \"M10.6977 0.0805753L10.5835 0.161099V5.22601C10.5835 9.76147 10.5919 10.2994 10.6642 10.3723C10.7334 10.4419 10.932 10.4536 12.0485 10.4536C13.3372 10.4536 13.3529 10.4523 13.4319 10.3385C13.503 10.2364 13.5119 9.66547 13.5119 5.22679C13.5119 0.788106 13.503 0.217196 13.4319 0.115041C13.353 0.00144902 13.3361 0 12.0819 0C11.0156 0 10.7936 0.0129376 10.6977 0.0805753ZM0.0799927 0.270292C0.00847707 0.373069 0.000102752 1.1782 0.000770642 7.86466C0.00133578 13.7906 0.0150018 15.3708 0.0664807 15.4734L0.131472 15.6027L4.18428 15.616C7.90068 15.6282 8.24489 15.6221 8.33141 15.5433C8.42204 15.4606 8.42569 15.1656 8.42569 7.89193C8.42569 0.628405 8.42194 0.323129 8.33172 0.240898C8.24597 0.162755 7.885 0.155251 4.19887 0.155251H0.159934L0.0799927 0.270292ZM10.6451 12.7927C10.598 12.8401 10.5835 14.0534 10.5835 17.9382C10.5835 22.4904 10.5919 23.03 10.6642 23.1029C10.7332 23.1724 10.9278 23.1842 12.0023 23.1842H13.2597L13.3858 23.0571L13.5119 22.9301V17.9305C13.5119 14.5831 13.4944 12.8977 13.4588 12.8307C13.4082 12.7356 13.3377 12.7306 12.0562 12.7306C11.0752 12.7306 10.6899 12.7476 10.6451 12.7927ZM0.102752 18.2679C0.000924774 18.3705 0 18.4404 0 25.9413C0 32.7089 0.00847707 33.5234 0.0799927 33.6262L0.159934 33.7412H1.92661H3.69328L3.77322 33.6262C3.84473 33.5234 3.85321 32.7072 3.85321 25.9234C3.85321 18.6383 3.84946 18.3323 3.75924 18.25C3.67576 18.1739 3.47298 18.1644 1.93539 18.1644C0.273989 18.1644 0.201446 18.1685 0.102752 18.2679ZM5.88622 18.2457C5.81521 18.3173 5.8055 18.609 5.8055 20.6699C5.8055 22.874 5.81105 23.0179 5.89947 23.0985C5.98142 23.1733 6.15178 23.1842 7.23525 23.1842C8.40858 23.1842 8.48271 23.1785 8.57982 23.0807C8.67954 22.9802 8.68257 22.9082 8.68257 20.6564C8.68257 18.4739 8.67697 18.3306 8.5886 18.25C8.50655 18.1752 8.33475 18.1644 7.23083 18.1644C6.15039 18.1644 5.95527 18.1762 5.88622 18.2457ZM5.91853 24.747C5.82919 24.837 5.82919 33.5892 5.91853 33.6791C5.96297 33.7239 6.31469 33.7412 7.17725 33.7412C8.30583 33.7412 8.38017 33.7353 8.47706 33.6377C8.57817 33.5359 8.57982 33.4653 8.57982 29.1717C8.57982 25.8476 8.56512 24.7943 8.51816 24.747C8.43057 24.6588 6.00613 24.6588 5.91853 24.747ZM10.7927 25.5975C10.6872 25.7327 10.6862 25.7668 10.6862 29.6243C10.6862 33.468 10.6875 33.5161 10.791 33.628L10.8958 33.7412H19.3628C27.5004 33.7412 27.8332 33.7376 27.915 33.6466C27.9925 33.5603 28 33.206 28 29.6191V25.6862L27.8811 25.5737L27.7622 25.4612H19.3307H10.8992L10.7927 25.5975Z\",\n stroke: \"none\",\n },\n ],\n },\n globe: {\n viewBox: \"0 0 30 30\",\n contents: [\n {\n d: \"M14.0236 0.0300206C9.01069 0.345861 4.49132 3.16375 1.97367 7.54335C-0.229151 11.3753 -0.609814 16.0489 0.941365 20.2184C1.44503 21.5723 2.24758 23.0101 3.13511 24.1487C3.94703 25.1903 4.9889 26.213 6.02447 26.9851C8.14475 28.5658 10.6535 29.56 13.2736 29.8578C14.5128 29.9986 15.945 29.9748 17.2046 29.7925C22.0047 29.0978 26.2484 26.0125 28.4154 21.6422C29.2996 19.859 29.8051 17.9963 29.9436 16.0109C29.9833 15.4405 29.9611 13.9447 29.9055 13.451C29.8471 12.9322 29.7937 12.5769 29.7056 12.1202C28.9413 8.16121 26.5972 4.67404 23.2046 2.44923C20.4973 0.673743 17.2765 -0.174941 14.0236 0.0300206ZM12.3653 1.97163C11.1345 3.22719 10.1778 4.55083 9.35393 6.13831C9.12202 6.58513 8.75951 7.38138 8.60687 7.77914C8.56053 7.89994 8.517 8.00795 8.51018 8.01916C8.48643 8.05813 7.79478 7.64534 7.31263 7.30449C6.68737 6.86244 5.94352 6.19117 5.49414 5.66342L5.3098 5.44693L5.59346 5.17246C7.21045 3.60765 9.3059 2.43083 11.515 1.84687C11.8148 1.76762 12.6435 1.58473 12.7281 1.57912C12.7411 1.57827 12.5778 1.75488 12.3653 1.97163ZM17.6365 1.65576C19.751 2.07367 21.7635 3.00701 23.4429 4.34859C23.7769 4.61543 24.4108 5.17474 24.5596 5.33391L24.6215 5.40009L24.4729 5.58151C23.9374 6.23552 23.1523 6.92968 22.3253 7.48045C21.9553 7.72684 21.5162 7.98586 21.4684 7.98586C21.4538 7.98586 21.3971 7.8725 21.3425 7.73392C20.7976 6.35151 19.9965 4.9212 19.0815 3.69698C18.6084 3.06406 17.821 2.16809 17.386 1.7677C17.2723 1.66313 17.1932 1.57757 17.2101 1.57757C17.227 1.57757 17.4189 1.61276 17.6365 1.65576ZM14.2952 5.85407V9.58793L14.224 9.5878C14.0898 9.58757 13.2735 9.51028 12.9762 9.46966C12.291 9.37607 11.5293 9.21131 10.8814 9.01651C10.5648 8.92134 9.82451 8.66475 9.79674 8.64056C9.7611 8.60955 10.1881 7.60867 10.5169 6.95226C11.3942 5.2013 12.5171 3.70654 13.9072 2.43925C14.0992 2.26421 14.2651 2.1208 14.2758 2.12059C14.2864 2.12039 14.2952 3.80044 14.2952 5.85407ZM16.1028 2.49106C17.5733 3.82039 18.8806 5.63766 19.7396 7.54658C19.903 7.90976 20.1658 8.55436 20.1658 8.59188C20.1658 8.62529 19.4388 8.89281 18.9762 9.02961C18.016 9.31356 17.1184 9.47173 15.8792 9.57537L15.6917 9.59105V5.86727C15.6917 2.68587 15.697 2.14649 15.7279 2.16414C15.7477 2.1755 15.9164 2.32261 16.1028 2.49106ZM25.8595 6.82986C26.4095 7.56405 26.7992 8.20431 27.2158 9.05821C27.8149 10.2861 28.1979 11.4963 28.4141 12.8446C28.4714 13.2022 28.5385 13.8188 28.5504 14.097L28.5581 14.2779H25.6357H22.7132L22.682 13.7998C22.5922 12.427 22.407 11.2487 22.0888 10.0272C22.0093 9.72165 21.9394 9.44258 21.9337 9.40705C21.9241 9.34816 21.9502 9.32785 22.2277 9.17744C22.8605 8.83454 23.5437 8.36749 24.1785 7.84374C24.5352 7.54942 25.2381 6.86221 25.4417 6.60872C25.5057 6.52903 25.5639 6.4634 25.571 6.46291C25.5781 6.46239 25.7079 6.62753 25.8595 6.82986ZM4.89303 7.07733C5.70034 7.90521 6.72875 8.67534 7.79455 9.25012L8.05459 9.39038L8.01831 9.50852C7.9514 9.72643 7.73023 10.6311 7.6641 10.9574C7.4661 11.9343 7.30958 13.2088 7.28013 14.0841L7.27361 14.2779L4.3414 14.2844L1.40916 14.291L1.42698 14.0519C1.56009 12.2633 1.98604 10.659 2.74635 9.08294C3.15686 8.23193 3.79276 7.20908 4.26875 6.63404L4.37173 6.50965L4.48951 6.64696C4.55429 6.72249 4.7359 6.91616 4.89303 7.07733ZM20.6314 9.96025C20.6314 9.96607 20.6834 10.1725 20.747 10.4189C20.9548 11.2238 21.117 12.1193 21.2119 12.9859C21.2555 13.384 21.3035 14.0093 21.3037 14.181L21.3038 14.2908H18.4977H15.6917V12.6394V10.9879L15.918 10.971C17.5752 10.8469 18.9983 10.5527 20.2848 10.0683C20.5921 9.95258 20.6314 9.94036 20.6314 9.96025ZM10.015 10.2022C11.2733 10.6295 12.6054 10.8863 14.0044 10.9713L14.2955 10.989L14.2889 12.6334L14.2822 14.2779L11.4786 14.2844L8.675 14.291L8.69173 13.9049C8.73621 12.8782 8.91101 11.708 9.19125 10.5611C9.31363 10.0603 9.34185 9.97323 9.3778 9.98566C9.4011 9.99369 9.68783 10.0912 10.015 10.2022ZM7.29624 16.0802C7.32657 16.7572 7.43695 17.7131 7.57299 18.4768C7.67486 19.0488 7.92003 20.0973 8.05159 20.5236C8.06209 20.5576 8.02288 20.5891 7.88129 20.6603C7.36888 20.9182 6.4964 21.4887 5.95464 21.9202C5.41852 22.3472 4.93607 22.8029 4.51178 23.2831C4.42542 23.3808 4.35539 23.44 4.34434 23.4248C4.3339 23.4103 4.21659 23.2541 4.08368 23.0776C2.54773 21.0376 1.62001 18.5391 1.42793 15.9252L1.41037 15.6861H4.34447H7.27857L7.29624 16.0802ZM14.2952 17.327C14.2952 18.6223 14.2884 18.9678 14.2628 18.9679C14.178 18.9682 13.4787 19.0231 13.2607 19.0467C12.0083 19.1819 10.7163 19.4774 9.65462 19.8714C9.49909 19.9291 9.36336 19.9675 9.35302 19.9566C9.32439 19.9265 9.08369 18.9291 8.99594 18.4768C8.84651 17.7069 8.72941 16.7651 8.69305 16.0408L8.67523 15.6861H11.4852H14.2952V17.327ZM21.2932 15.9898C21.2431 16.8579 21.1323 17.7315 20.9663 18.5673C20.8722 19.0411 20.6484 19.9672 20.6214 19.9941C20.6152 20.0003 20.4839 19.9594 20.3298 19.903C19.0497 19.4352 17.7594 19.1468 16.4288 19.0312C16.1727 19.009 15.9022 18.9848 15.8275 18.9774L15.6917 18.9641V17.3251V15.6861H18.5013H21.3108L21.2932 15.9898ZM28.5563 15.8476C28.4708 16.8419 28.3733 17.464 28.1809 18.2428C27.7348 20.0489 26.8976 21.786 25.7677 23.2498C25.6666 23.3807 25.5773 23.4854 25.5692 23.4823C25.5612 23.4793 25.4681 23.3782 25.3623 23.2577C24.5698 22.3539 23.448 21.4592 22.3147 20.8272C21.9538 20.6259 21.9238 20.6035 21.9341 20.544C21.9402 20.5085 22.0206 20.1829 22.1128 19.8205C22.4331 18.5613 22.6181 17.3408 22.6896 16.0156L22.7073 15.6861H25.6388H28.5702L28.5563 15.8476ZM14.2952 24.0865V27.8098L14.1723 27.7067C13.7137 27.3218 12.9819 26.5773 12.518 26.0237C11.4374 24.7344 10.4435 23.0386 9.8631 21.4939C9.78574 21.288 9.7477 21.3239 10.2219 21.156C10.8945 20.9179 11.664 20.7122 12.3555 20.5856C12.8677 20.4918 13.7674 20.3857 14.2111 20.3667L14.2952 20.3632V24.0865ZM16.4158 20.4296C17.4477 20.5275 18.5602 20.7702 19.5653 21.1169C20.0121 21.2709 20.1658 21.3352 20.1658 21.368C20.1658 21.3816 20.103 21.5481 20.0262 21.7381C19.2338 23.6974 18.1143 25.4327 16.7174 26.8668C16.3853 27.2077 15.7705 27.7809 15.7156 27.8007C15.7011 27.806 15.6917 26.352 15.6917 24.0867V20.364L15.8404 20.3765C15.9222 20.3834 16.1811 20.4073 16.4158 20.4296ZM8.64254 22.2131C9.2796 23.8037 10.1776 25.3541 11.2003 26.6293C11.5778 27.0999 11.8456 27.3992 12.3274 27.889C12.6508 28.2177 12.7881 28.3734 12.7543 28.3733C12.6613 28.3729 11.9302 28.2172 11.5279 28.1122C9.33931 27.5407 7.22543 26.3593 5.63287 24.8176L5.30952 24.5045L5.53415 24.2468C6.07754 23.6234 6.81251 22.9833 7.54516 22.4953C7.90981 22.2524 8.46458 21.917 8.50583 21.9146C8.51501 21.914 8.57654 22.0484 8.64254 22.2131ZM21.7677 22.1239C22.8027 22.725 23.8285 23.5838 24.5227 24.4302L24.6223 24.5516L24.5212 24.6561C24.3806 24.8014 23.8155 25.3066 23.5667 25.5095C21.8696 26.893 19.8215 27.859 17.6633 28.2939C17.4462 28.3377 17.2519 28.3735 17.2317 28.3735C17.2115 28.3735 17.3176 28.2543 17.4675 28.1087C18.349 27.2522 19.253 26.1128 19.9688 24.9557C20.4639 24.1553 21.0101 23.0685 21.345 22.2172C21.3995 22.0786 21.4555 21.9652 21.4693 21.9652C21.4831 21.9652 21.6174 22.0366 21.7677 22.1239Z\",\n stroke: \"none\",\n },\n ],\n },\n pin: {\n viewBox: \"0 0 24 31\",\n contents: [\n {\n d: \"M10.3075 0.162061C5.80833 0.80736 2.10848 3.89877 0.679624 8.20662C0.254302 9.48908 0.021147 11.0952 0.0900958 12.2684C0.208993 14.2924 1.47282 17.1176 3.89772 20.7801C5.47547 23.1631 8.7758 27.4399 10.9876 29.9678L11.8505 30.954L12.127 30.6403C12.5912 30.1135 14.2268 28.088 15.1993 26.8359C20.1396 20.4745 22.9963 15.7677 23.6125 12.9735C23.7715 12.2526 23.7135 10.6523 23.4893 9.5701C22.4906 4.75089 18.7396 1.0977 13.8886 0.219769C13.0763 0.0727755 11.1471 0.0416475 10.3075 0.162061ZM13.5487 1.7893C15.7884 2.17712 17.6129 3.13133 19.1948 4.74231C20.5697 6.14243 21.5597 8.00704 21.9533 9.93768C22.1167 10.7392 22.1955 11.9041 22.1189 12.3871C21.8548 14.0531 20.242 17.1044 17.6499 20.8421C16.3003 22.7881 13.7573 26.1584 12.2943 27.9399L11.8292 28.5063L11.0327 27.568C9.28557 25.5096 6.44419 21.7585 5.16028 19.8153C3.45848 17.2398 2.28133 14.9189 1.83409 13.2574C1.63004 12.4993 1.63302 10.984 1.84057 9.99085C2.60282 6.34348 5.13905 3.41386 8.57302 2.21421C9.17996 2.0022 10.1437 1.77169 10.6795 1.71033C11.3776 1.63046 12.8682 1.67145 13.5487 1.7893ZM11.1443 6.46863C9.08724 6.77178 7.37376 8.29911 6.79154 10.3486C6.58431 11.0779 6.58431 12.4265 6.79154 13.1559C7.19862 14.5887 8.08574 15.7203 9.35109 16.4208C11.3642 17.5354 13.8586 17.2197 15.5199 15.6401C17.7343 13.5346 17.7343 9.96984 15.5199 7.86434C14.3608 6.7623 12.7146 6.23722 11.1443 6.46863ZM12.8094 8.13367C13.6977 8.36271 14.4448 8.89015 14.9605 9.65247C15.8342 10.9443 15.8328 12.5624 14.9567 13.8576C14.1045 15.1173 12.6009 15.7241 11.117 15.4071C10.4379 15.262 9.82763 14.9122 9.2789 14.3536C8.54328 13.6048 8.20114 12.7789 8.20114 11.7522C8.20114 10.7255 8.54328 9.89964 9.2789 9.15084C10.2543 8.15788 11.5052 7.79747 12.8094 8.13367Z\",\n stroke: \"none\",\n },\n ],\n },\n\n milestone: {\n viewBox: \"0 0 109 109\",\n contents: [\n {\n d: \"M91.5988 0.58652C90.2385 0.736228 89.1038 2.03211 89.1332 3.40234V16.0952L84.9807 20.2539V13.1061C85.0145 11.5333 83.4709 10.118 81.9096 10.2903C80.5493 10.44 79.4146 11.7358 79.444 13.1061V25.7989L78.8384 26.4054C70.5239 19.0027 59.5874 14.4923 47.6079 14.4923C21.6491 14.4923 0.545898 35.627 0.545898 61.6247C0.545898 87.6224 21.6491 108.757 47.6079 108.757C73.5668 108.757 94.67 87.6224 94.67 61.6247C94.67 51.5869 91.5132 42.2806 86.1486 34.6362L82.2124 38.535C82.2191 38.5453 82.2056 38.5681 82.2124 38.5784C86.5848 45.1722 89.1332 53.1018 89.1332 61.6247C89.1332 84.6256 70.5745 103.212 47.6079 103.212C24.6413 103.212 6.08261 84.6256 6.08261 61.6247C6.08261 38.6237 24.6413 20.0373 47.6079 20.0373C58.0864 20.0373 67.646 23.9121 74.9454 30.3042L68.0678 37.1921C62.5332 32.535 55.385 29.741 47.6079 29.741C30.0581 29.741 15.7718 44.0486 15.7718 61.6247C15.7718 79.2007 30.0581 93.5084 47.6079 93.5084C65.1577 93.5084 79.444 79.2007 79.444 61.6247C79.444 55.8101 77.8483 50.3788 75.1185 45.6829L71.0957 49.7117C72.8992 53.2856 73.9073 57.3312 73.9073 61.6247C73.9073 76.204 62.1655 87.9634 47.6079 87.9634C33.0504 87.9634 21.3086 76.204 21.3086 61.6247C21.3086 47.0454 33.0504 35.286 47.6079 35.286C53.8857 35.286 59.6154 37.476 64.1315 41.1343L56.2158 49.0619C53.7598 47.361 50.8029 46.376 47.6079 46.376C39.2317 46.376 32.382 53.2359 32.382 61.6247C32.382 70.0135 39.2317 76.8735 47.6079 76.8735C55.9842 76.8735 62.8339 70.0135 62.8339 61.6247C62.8339 60.5095 62.6767 59.4186 62.4446 58.3757L57.0376 63.7907C56.0602 68.12 52.2429 71.3285 47.6079 71.3285C42.2239 71.3285 37.9187 67.0167 37.9187 61.6247C37.9187 56.2326 42.2239 51.921 47.6079 51.921C49.2764 51.921 50.8282 52.3591 52.193 53.0906L45.6614 59.632C44.5856 60.6073 44.4929 62.4751 45.4668 63.5525C46.4407 64.6299 48.3056 64.7228 49.3814 63.7474C49.396 63.7331 83.337 29.741 83.337 29.741H96.0541C97.5167 29.7617 98.8619 28.4334 98.8619 26.9685C98.8619 25.5037 97.5167 24.1753 96.0541 24.196H88.8737L93.0262 20.0373H105.743C107.206 20.058 108.551 18.7297 108.551 17.2648C108.551 15.7999 107.206 14.4716 105.743 14.4923H94.67V3.40234C94.7038 1.82957 93.1601 0.414268 91.5988 0.58652Z\",\n stroke: \"none\",\n },\n ],\n },\n cohort: {\n viewBox: \"0 0 14 14\",\n contents: [\n {\n d: \"M2 2C2 1.46957 2.21071 0.960859 2.58579 0.585786C2.96086 0.210714 3.46957 0 4 0C4.53043 0 5.03914 0.210714 5.41421 0.585786C5.78929 0.960859 6 1.46957 6 2C6 2.53043 5.78929 3.03914 5.41421 3.41421C5.03914 3.78929 4.53043 4 4 4C3.46957 4 2.96086 3.78929 2.58579 3.41421C2.21071 3.03914 2 2.53043 2 2Z\",\n stroke: \"none\",\n },\n {\n d: \"M8.77875 3.5845L8.82075 3.6165C9.24504 3.931 9.77651 4.06492 10.2992 3.98901C10.8218 3.9131 11.2933 3.63354 11.6106 3.21133C11.9279 2.78913 12.0653 2.25855 11.9928 1.7354C11.9204 1.21225 11.6439 0.738989 11.2238 0.41891C10.8037 0.0988305 10.2741 -0.0420853 9.75043 0.0269153C9.22681 0.0959159 8.75174 0.369231 8.4289 0.787213C8.10605 1.2052 7.96164 1.73391 8.02719 2.25797C8.09273 2.78204 8.3629 3.2589 8.77875 3.5845Z\",\n stroke: \"none\",\n },\n {\n d: \"M5.26663 4.99963C5.39223 4.76179 5.56451 4.55173 5.77317 4.38202C5.98183 4.2123 6.22258 4.08642 6.48101 4.0119C6.73945 3.93737 7.01026 3.91574 7.27725 3.9483C7.54423 3.98086 7.80191 4.06693 8.03486 4.20137C8.26782 4.33582 8.47126 4.51586 8.63302 4.73075C8.79478 4.94563 8.91154 5.19094 8.97631 5.45199C9.04107 5.71304 9.05252 5.98447 9.00997 6.25004C8.96741 6.51562 8.87172 6.76989 8.72863 6.99763C8.45334 7.43575 8.01897 7.75014 7.51677 7.87474C7.01456 7.99934 6.48361 7.92446 6.03545 7.66582C5.5873 7.40718 5.25683 6.98491 5.11346 6.48774C4.9701 5.99056 5.02499 5.45718 5.26663 4.99963Z\",\n stroke: \"none\",\n },\n {\n d: \"M1.5 5H4.17C4.06 5.313 4 5.65 4 6C4 6.768 4.289 7.47 4.764 8H4.5C3.98444 7.99993 3.48145 8.15919 3.05988 8.45598C2.63832 8.75278 2.31878 9.17261 2.145 9.658C1.80933 9.52316 1.49505 9.34025 1.212 9.115C0.46 8.51 0 7.616 0 6.5C0 6.10218 0.158035 5.72064 0.43934 5.43934C0.720644 5.15804 1.10218 5 1.5 5Z\",\n stroke: \"none\",\n },\n {\n d: \"M9.49837 8C10.5834 8 11.5074 8.691 11.8524 9.658C12.1924 9.519 12.5074 9.338 12.7864 9.115C13.5384 8.51 13.9984 7.616 13.9984 6.5C13.9984 6.10218 13.8403 5.72064 13.559 5.43934C13.2777 5.15804 12.8962 5 12.4984 5H9.82837C9.93837 5.313 9.99837 5.65 9.99837 6C9.9993 6.73812 9.72717 7.45049 9.23438 8H9.49837Z\",\n stroke: \"none\",\n },\n {\n d: \"M10.887 9.92801C10.96 10.104 11 10.298 11 10.5C11 11.616 10.541 12.51 9.78801 13.115C9.04701 13.71 8.05301 14 7.00001 14C5.94701 14 4.95301 13.71 4.21201 13.115C3.46001 12.51 3.00001 11.616 3.00001 10.5C2.99948 10.3029 3.03792 10.1076 3.11311 9.92536C3.18831 9.74313 3.29878 9.57756 3.43817 9.43817C3.57756 9.29878 3.74313 9.18831 3.92536 9.11311C4.10758 9.03792 4.30287 8.99948 4.50001 9.00001H9.50001C9.79711 8.99994 10.0875 9.0881 10.3345 9.25331C10.5814 9.41853 10.7737 9.65335 10.887 9.92801Z\",\n stroke: \"none\",\n },\n ],\n },\n citizen: {\n viewBox: \"0 0 31 54\",\n contents: [\n {\n d: \"M30.0748 49.4999L20.2948 30.4199C19.8148 33.2999 18.9148 36.0599 17.7148 38.5799L24.6748 52.2599C25.2148 53.2799 26.2348 53.8799 27.3748 53.8799C27.8548 53.8799 28.2748 53.7599 28.7548 53.5799C30.2548 52.7999 30.7948 50.9999 30.0748 49.4999Z\",\n stroke: \"none\",\n },\n {\n d: \"M14.0556 10.08C16.8391 10.08 19.0956 7.82352 19.0956 5.04C19.0956 2.25648 16.8391 0 14.0556 0C11.2721 0 9.01562 2.25648 9.01562 5.04C9.01562 7.82352 11.2721 10.08 14.0556 10.08Z\",\n stroke: \"none\",\n },\n {\n d: \"M26.1155 21.2991C20.5955 18.9591 16.9955 13.0191 16.9355 12.8991C16.0355 11.3391 13.9955 10.7991 12.4355 11.7591C12.1955 11.8791 12.0155 12.0591 11.8355 12.1791C9.79554 13.4991 4.51554 17.5791 1.81554 26.4591C1.27554 28.1391 2.23554 29.9391 3.97554 30.4791C5.65554 31.0191 7.45554 30.0591 7.99554 28.3191C9.13554 24.5391 10.8155 21.8991 12.3155 20.2191C12.6755 22.4391 12.8555 25.3791 12.3155 28.6791C10.6355 38.9991 1.09554 48.3591 0.975535 48.4791C-0.284465 49.7391 -0.344464 51.7191 0.915536 53.0391C1.57554 53.6991 2.35554 53.9991 3.19554 53.9991C3.97554 53.9991 4.81554 53.6991 5.41554 53.0991C5.89554 52.6791 16.6955 42.1191 18.5555 29.7591C18.8555 28.0191 18.9155 26.3391 18.9755 24.7791C20.3555 25.7991 21.8555 26.6991 23.5355 27.4191C23.9555 27.5991 24.3755 27.6591 24.7955 27.6591C26.0555 27.6591 27.3155 26.8791 27.8555 25.6791C28.5755 23.9391 27.7955 22.0191 26.1155 21.2991Z\",\n stroke: \"none\",\n },\n ],\n },\n builder: {\n viewBox: \"0 0 41 54\",\n contents: [\n {\n d: \"M39.9146 5.56518L38.5514 5.39479C38.3811 5.39479 38.2675 5.45159 38.1539 5.56518C38.0403 5.84917 37.6995 6.01956 37.4155 5.96276L36.7907 5.84917C36.45 5.79237 36.2228 5.56518 36.166 5.2812C36.166 5.11081 35.9956 4.99722 35.882 4.99722C35.2004 4.88362 34.6893 4.82683 33.7237 4.71323C32.7014 4.54284 30.5999 4.25886 27.3625 7.26908C26.9649 7.60986 27.3625 8.23463 27.8169 8.06424C31.1111 6.9283 32.9286 7.66666 32.7014 9.25696L32.5878 10.0521L35.3708 10.4497L35.598 8.91618C35.6548 8.5754 36.0524 8.29142 36.3932 8.34822L37.0179 8.46181C37.3587 8.51861 37.5859 8.74579 37.6427 9.02978C37.6427 9.20017 37.8131 9.31376 37.9267 9.31376L39.2898 9.48415C39.5738 9.54095 39.8578 9.31376 39.9146 9.02978L40.3121 6.18995C40.4257 5.84917 40.1985 5.56518 39.9146 5.56518Z\",\n stroke: \"none\",\n },\n {\n d: \"M15.3206 11.5865C18.5201 11.5865 21.1139 8.99278 21.1139 5.79326C21.1139 2.59373 18.5201 0 15.3206 0C12.1211 0 9.52734 2.59373 9.52734 5.79326C9.52734 8.99278 12.1211 11.5865 15.3206 11.5865Z\",\n stroke: \"none\",\n },\n {\n d: \"M34.2351 19.9361L35.2575 11.587L32.4744 11.1895L30.9977 19.5386C29.7482 19.3682 28.2147 19.0274 26.7948 18.5162C25.886 18.1754 25.0909 17.4939 24.1253 16.6987C22.1375 15.0516 19.6952 13.0637 15.3219 13.0637C5.26886 13.0637 0.668327 19.7657 0.441141 20.0497C-0.183622 20.9585 -0.126826 22.1512 0.497937 23.0599L5.04167 29.1372C5.55284 29.8187 6.34799 30.1595 7.14314 30.1595C7.65431 30.1595 8.22228 29.9891 8.67665 29.6484C8.79025 29.5348 8.96064 29.4212 9.07423 29.3076V31.2955L5.21206 50.4359C4.87128 52.0262 5.89362 53.5029 7.48392 53.8437C7.65431 53.9005 7.8815 53.9005 8.05189 53.9005C9.41501 53.9005 10.6077 52.935 10.8917 51.5719L14.6971 32.6586H15.833L16.0034 51.0039C16.0034 52.5942 17.2529 53.9005 18.9 53.8437C20.4904 53.8437 21.7967 52.5374 21.7399 50.9471L21.5695 21.2993C22.535 22.0944 23.671 22.8896 25.0341 23.4007C26.7948 24.0823 28.6691 24.4231 30.2026 24.707L29.9754 26.1838C29.9186 26.6949 30.2026 27.1493 30.7137 27.2061L32.4744 27.4333C32.9856 27.4901 33.44 27.1493 33.4968 26.6381L33.6672 24.991C34.9735 24.8774 36.0526 23.8551 36.0526 22.492C36.0526 21.2993 35.3143 20.2769 34.2351 19.9361ZM6.00721 21.6968C6.74557 21.0721 7.76791 20.2769 9.18782 19.5954L9.13102 25.8998L6.00721 21.6968Z\",\n stroke: \"none\",\n },\n ],\n },\n advocate: {\n viewBox: \"0 0 34 60\",\n contents: [\n {\n d: \"M28.7634 15.4257C27.4754 14.7438 25.9602 15.2742 25.2783 16.4864L22.3992 21.9414L15.8078 19.4412C15.429 19.2897 14.9744 19.2139 14.5198 19.2139L10.7316 19.0624C9.51938 18.9866 7.17069 19.5927 6.71611 21.9414C6.33729 23.8355 3.83708 34.5182 3.83708 34.5182C3.45826 36.1093 3.91284 37.7761 5.12507 38.9883L13.3833 47.2466C13.4591 47.3223 13.5349 47.3981 13.5349 47.4739L17.0958 57.9293C17.5504 59.1415 18.6868 59.8992 19.899 59.8992C20.2021 59.8992 20.5809 59.8234 20.884 59.7476C22.3992 59.2173 23.2327 57.5505 22.7023 55.9594L19.1414 45.6555C18.8383 44.7464 18.2322 43.8372 17.5504 43.1553L12.9288 38.5337L17.0958 25.5023L21.7174 27.2449C23.5357 27.9268 25.5813 27.1691 26.4147 25.4266L29.8241 18.9109C30.506 17.6229 30.0514 16.1076 28.7634 15.4257Z\",\n stroke: \"none\",\n },\n {\n d: \"M19.0606 12.4129C19.4054 9.25161 17.122 6.40939 13.9607 6.06467C10.7994 5.71995 7.95718 8.00326 7.61245 11.1646C7.26773 14.3259 9.55104 17.1681 12.7124 17.5128C15.8737 17.8576 18.7159 15.5743 19.0606 12.4129Z\",\n stroke: \"none\",\n },\n {\n d: \"M0.199136 55.961C-0.406976 57.4763 0.426427 59.2189 1.94171 59.7492C2.24476 59.9007 2.62358 59.9007 2.92664 59.9007C4.13886 59.9007 5.27532 59.1431 5.7299 57.9309L9.66963 47.1724L5.04803 42.5508L0.199136 55.961Z\",\n stroke: \"none\",\n },\n {\n d: \"M27.5452 0C23.9544 0 21 2.58232 21 5.7863C21 7.41221 21.7727 8.89465 22.9999 9.9467C22.909 10.664 22.4999 11.5726 22.0909 12.2421C21.8636 12.6247 22.2272 13.1507 22.6363 12.9594C23.7272 12.5768 25.2271 11.9552 25.9089 11.3335C26.4089 11.4291 26.9089 11.5248 27.4543 11.5248C31.045 11.5248 33.9995 8.94247 33.9995 5.73848C34.0449 2.58232 31.136 0 27.5452 0ZM23.9999 6.934C23.409 6.934 22.909 6.40797 22.909 5.7863C22.909 5.16464 23.409 4.63861 23.9999 4.63861C24.5908 4.63861 25.0907 5.16464 25.0907 5.7863C25.1362 6.40797 24.6362 6.934 23.9999 6.934ZM27.5452 6.934C26.9543 6.934 26.4543 6.40797 26.4543 5.7863C26.4543 5.16464 26.9543 4.63861 27.5452 4.63861C28.1361 4.63861 28.6361 5.16464 28.6361 5.7863C28.6361 6.40797 28.1361 6.934 27.5452 6.934ZM31.045 6.934C30.4542 6.934 29.9542 6.40797 29.9542 5.7863C29.9542 5.16464 30.4542 4.63861 31.045 4.63861C31.6359 4.63861 32.1359 5.16464 32.1359 5.7863C32.1359 6.40797 31.6359 6.934 31.045 6.934Z\",\n stroke: \"none\",\n },\n ],\n },\n leader: {\n viewBox: \"0 0 52 41\",\n contents: [\n {\n d: \"M48.1622 0H13.5755C11.9054 0 10.5586 1.34683 10.5586 3.0169V14.2764C11.5822 14.438 12.498 14.7074 13.36 15.1923V8.78135H48.3776V30.3307C48.3776 30.9233 47.8928 31.3543 47.3541 31.3543H20.7945C21.1716 32.2162 21.441 33.1321 21.5487 34.1018H47.3541C49.4551 34.1018 51.1791 32.3778 51.1791 30.2768V3.0169C51.1791 1.34683 49.8322 0 48.1622 0ZM15.7843 5.97993C14.9223 5.97993 14.1681 5.27958 14.1681 4.36374C14.1681 3.50176 14.8685 2.74754 15.7843 2.74754C16.6463 2.74754 17.4005 3.44789 17.4005 4.36374C17.3466 5.27958 16.6463 5.97993 15.7843 5.97993ZM20.6329 5.97993C19.7709 5.97993 19.0167 5.27958 19.0167 4.36374C19.0167 3.50176 19.7171 2.74754 20.6329 2.74754C21.5487 2.74754 22.2491 3.44789 22.2491 4.36374C22.2491 5.27958 21.5487 5.97993 20.6329 5.97993ZM25.5354 5.97993C24.6734 5.97993 23.9192 5.27958 23.9192 4.36374C23.9192 3.50176 24.6195 2.74754 25.5354 2.74754C26.3973 2.74754 27.1516 3.44789 27.1516 4.36374C27.0977 5.27958 26.3973 5.97993 25.5354 5.97993Z\",\n stroke: \"none\",\n },\n {\n d: \"M14.9229 29.1992C13.4144 30.4922 11.5289 31.2464 9.37395 31.2464C7.21902 31.2464 5.33346 30.4922 3.825 29.1992C1.67007 30.3306 0 32.27 0 35.4485V39.0042C0 39.6506 0.538733 40.1894 1.18521 40.1894H17.5627C18.2092 40.1894 18.7479 39.6506 18.7479 39.0042V35.4485C18.7479 32.27 17.0778 30.3306 14.9229 29.1992Z\",\n stroke: \"none\",\n },\n {\n d: \"M9.37545 28.3915C12.4996 28.3915 15.0321 25.8589 15.0321 22.7348C15.0321 19.6107 12.4996 17.0781 9.37545 17.0781C6.25134 17.0781 3.71875 19.6107 3.71875 22.7348C3.71875 25.8589 6.25134 28.3915 9.37545 28.3915Z\",\n stroke: \"none\",\n },\n ],\n },\n representative: {\n viewBox: \"0 0 35 56\",\n contents: [\n {\n d: \"M17.9032 12.9783C21.4871 12.9783 24.3924 10.073 24.3924 6.48917C24.3924 2.9053 21.4871 0 17.9032 0C14.3194 0 11.4141 2.9053 11.4141 6.48917C11.4141 10.073 14.3194 12.9783 17.9032 12.9783Z\",\n stroke: \"none\",\n },\n {\n d: \"M15.1797 25.8991H27.7525L27.1731 19.9893C26.9413 18.3091 26.1881 16.8027 24.9714 15.7598C22.8856 18.8305 19.7569 22.7704 15.1797 25.8991Z\",\n stroke: \"none\",\n },\n {\n d: \"M22.4783 14.4264C21.1457 15.1796 19.5813 15.6431 17.9011 15.6431C16.1629 15.6431 14.5406 15.1796 13.1501 14.3105C10.7746 15.1796 8.97846 17.3234 8.68877 19.9886L8.10938 25.8983H9.55785C15.8153 23.0014 20.0448 18.1345 22.4783 14.4264Z\",\n stroke: \"none\",\n },\n {\n d: \"M33.4875 28.6211H2.31632C1.56311 28.6211 0.925781 29.2584 0.925781 30.0116V34.3571C0.925781 35.1103 1.56311 35.7476 2.31632 35.7476H5.8506V53.7087C5.8506 54.4619 6.48793 55.0992 7.24113 55.0992H28.6206C29.3738 55.0992 30.0112 54.4619 30.0112 53.7087V35.7476H33.5454C34.2987 35.7476 34.936 35.1103 34.936 34.3571V30.0116C34.878 29.2584 34.2407 28.6211 33.4875 28.6211Z\",\n stroke: \"none\",\n },\n ],\n },\n bolt: {\n viewBox: \"0 0 52 76\",\n contents: [\n {\n d: \"M51.4535 31.6851C50.5277 29.95 48.5841 28.9539 46.1168 28.9539H32.7942V5.13147C32.7942 1.64209 31.3852 0.484631 30.1985 0.132083C29.0269 -0.218341 27.2137 -0.0441906 25.2788 2.83141L16.8161 15.3129C15.4349 17.3623 13.4272 20.2825 11.6676 22.8375L1.31056 37.7337C-0.57097 40.4755 -0.0172003 42.4506 0.478841 43.3829C0.98771 44.3408 2.36893 45.9485 5.87543 45.9485H19.9634V70.9029C19.9634 71.9521 19.9634 75.1462 22.3773 75.8726C22.6638 75.9596 22.9418 76 23.2091 76C25.1783 76 26.6001 73.889 27.1282 73.1032L35.1974 60.5856L35.7405 59.7807C37.7119 56.852 40.5555 52.6299 42.3708 49.9837L50.688 37.7422C52.112 35.6566 52.3921 33.4521 51.4535 31.6851ZM47.1495 35.355L38.8301 47.5965C37.0148 50.2427 34.1626 54.4776 32.1891 57.4148L24.2396 69.7009V43.8204C24.2396 42.646 23.286 41.6966 22.1015 41.6966H5.8797C4.79568 41.6966 4.32102 41.4524 4.27612 41.4333C4.25688 41.3356 4.32316 40.8811 4.8363 40.1378L15.1997 25.231C16.9679 22.6633 18.9863 19.7282 20.3697 17.6745L28.5201 5.65604V31.0777C28.5201 32.2522 29.4759 33.2015 30.6582 33.2015H46.1189C47.0169 33.2015 47.5557 33.4458 47.6776 33.6751C47.8037 33.9194 47.6989 34.5501 47.1495 35.355Z\",\n stroke: \"none\",\n },\n ],\n },\n accept: {\n viewBox: \"0 0 24 25\",\n contents: [\n {\n d: \"M17 3.5H7C4.79086 3.5 3 5.29086 3 7.5V17.5C3 19.7091 4.79086 21.5 7 21.5H17C19.2091 21.5 21 19.7091 21 17.5V7.5C21 5.29086 19.2091 3.5 17 3.5Z\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n },\n {\n d: \"M9 12.5L11.25 14.5L15 10.5\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n },\n ],\n },\n pathway: {\n viewBox: \"0 0 115 101\",\n contents: [\n {\n d: \"M14.3756 42.0263V73.6458C14.3831 79.9205 17.3073 85.8309 22.2834 89.6307C27.2595 93.4296 33.7182 94.6819 39.7471 93.0182C45.7772 91.3546 50.6868 86.9634 53.0256 81.1451L75.3071 25.2607V25.2619C75.9689 23.6184 77.3539 22.3773 79.0561 21.9044C80.7582 21.4315 82.5831 21.7799 83.9934 22.8475C85.4034 23.9151 86.2369 25.58 86.2507 27.353V58.9724C79.8045 61.2585 74.821 66.4769 72.8195 73.0362C70.819 79.5952 72.0361 86.7176 76.102 92.233C80.168 97.747 86.6005 101 93.4376 101C100.275 101 106.707 97.747 110.773 92.233C114.839 86.7176 116.056 79.5952 114.056 73.0362C112.054 66.4772 107.07 61.2587 100.624 58.9724V27.353C100.617 21.0782 97.6927 15.1679 92.7166 11.368C87.7405 7.56909 81.2818 6.31683 75.2529 7.98049C69.2228 9.64414 64.3132 14.0354 61.9744 19.8537L39.6929 75.7381C39.0311 77.3816 37.6461 78.6227 35.9439 79.0956C34.2417 79.5685 32.4169 79.2201 31.0066 78.1525C29.5966 77.0849 28.7631 75.42 28.7493 73.647V42.0276C35.1955 39.7415 40.179 34.5231 42.1805 27.9638C44.181 21.4048 42.9639 14.2824 38.898 8.76702C34.832 3.25295 28.3995 0 21.5624 0C14.7253 0 8.29286 3.25295 4.22681 8.76702C0.160748 14.2824 -1.05631 21.4048 0.944313 27.9638C2.94599 34.5228 7.92964 39.7413 14.3756 42.0276V42.0263ZM93.4378 86.5536C91.5314 86.5536 89.7039 85.794 88.3553 84.441C87.0079 83.0892 86.2508 81.2546 86.2508 79.3432C86.2508 77.4305 87.0079 75.5957 88.3553 74.244C89.7039 72.891 91.5314 72.1315 93.4378 72.1315C95.3443 72.1315 97.1718 72.891 98.5204 74.244C99.8678 75.5958 100.625 77.4305 100.625 79.3432C100.625 81.2545 99.8678 83.0893 98.5204 84.441C97.1718 85.794 95.3443 86.5536 93.4378 86.5536ZM21.5631 14.4447C23.4695 14.4447 25.297 15.2042 26.6456 16.5572C27.993 17.909 28.7501 19.7437 28.7501 21.6551C28.7501 23.5677 27.993 25.4025 26.6456 26.7542C25.297 28.1072 23.4695 28.8668 21.5631 28.8668C19.6566 28.8668 17.8291 28.1072 16.4805 26.7542C15.1331 25.4024 14.376 23.5678 14.376 21.6551C14.376 19.7437 15.1331 17.9089 16.4805 16.5572C17.8291 15.2042 19.6566 14.4447 21.5631 14.4447Z\",\n stroke: \"none\",\n },\n ],\n },\n\n edit: {\n viewBox: \"0 0 60 60\",\n contents: [\n {\n d: \"M43.3618 0.0668254C42.7844 -0.102826 42.1605 0.0559355 41.735 0.481798L2.20533 40.0054H2.20476C1.95188 40.2594 1.78847 40.5889 1.74029 40.9443L0.0148971 53.1362C-0.0539118 53.6435 0.11811 54.1542 0.479935 54.5164C0.841176 54.8792 1.35151 55.0529 1.85955 54.9858L14.0771 53.2606H14.0765C14.4274 53.2073 14.7514 53.0422 15.0008 52.79L54.5306 13.2664C55.163 12.6204 55.1556 11.5852 54.5133 10.949L44.071 0.49556C43.8755 0.294377 43.6312 0.146501 43.3617 0.0662534L43.3618 0.0668254ZM42.8973 3.98324L51.0356 12.1178L13.0722 50.0655L3.58399 51.4319L4.92748 41.9557L42.8973 3.98324Z\",\n stroke: \"none\",\n },\n ],\n },\n\n settings: {\n viewBox: \"0 0 123 112\",\n contents: [\n {\n d: \"M61.0902 37.3325C55.6893 37.3325 50.5102 39.2992 46.6911 42.8001C42.8721 46.3009 40.7266 51.0484 40.7266 55.9993C40.7266 60.9501 42.872 65.6976 46.6911 69.1985C50.5102 72.6993 55.6893 74.666 61.0902 74.666C66.4911 74.666 71.6703 72.6993 75.4893 69.1985C79.3084 65.6976 81.4539 60.9501 81.4539 55.9993C81.4476 51.0501 79.3003 46.3058 75.4821 42.8067C71.6649 39.3067 66.4893 37.3383 61.0902 37.3325ZM61.0902 67.1993C57.8493 67.1993 54.7421 66.0193 52.4502 63.9193C50.1593 61.8184 48.872 58.9702 48.872 55.9993C48.872 53.0284 50.1593 50.1801 52.4502 48.0792C54.7421 45.9792 57.8493 44.7992 61.0902 44.7992C64.3312 44.7992 67.4384 45.9792 69.7303 48.0792C72.0212 50.1801 73.3084 53.0284 73.3084 55.9993C73.3048 58.9684 72.0166 61.8152 69.7256 63.915C67.4346 66.0149 64.3291 67.1959 61.0902 67.1993Z\",\n stroke: \"none\",\n },\n {\n d: \"M114.036 44.8001L104.156 44.6834C103.208 41.6592 101.868 38.7501 100.166 36.0167L107.165 29.6009C108.692 28.2009 109.55 26.3017 109.55 24.3217C109.55 22.3418 108.692 20.4425 107.165 19.0426L101.406 13.7634H101.406C99.8774 12.3659 97.8064 11.581 95.6465 11.581C93.4874 11.581 91.4164 12.366 89.8874 13.7634L82.7955 20.1035H82.7964C79.801 18.5652 76.6147 17.3617 73.3065 16.5193V7.46668C73.3037 5.48752 72.4446 3.58913 70.9182 2.19008C69.3909 0.790082 67.3209 0.00256 65.161 0H57.0155C54.8564 0.00250006 52.7864 0.789996 51.2592 2.19008C49.732 3.58925 48.8728 5.48758 48.8701 7.46668L48.7455 16.5233C45.4464 17.3925 42.2729 18.6208 39.2909 20.1816L32.2919 13.7658C30.7628 12.3683 28.6918 11.5834 26.5328 11.5834C24.3737 11.5834 22.3028 12.3684 20.7737 13.7658L15.0147 19.0449V19.0441C13.4874 20.4449 12.6292 22.3433 12.6292 24.3241C12.6292 26.3041 13.4874 28.2025 15.0147 29.6033L21.9311 36.1042V36.1034C20.2529 38.8492 18.9401 41.7699 18.021 44.8025H8.14547C5.98638 44.805 3.91541 45.5925 2.38918 46.9917C0.861907 48.3917 0.00279273 50.2892 0 52.2691V59.7358C0.00272734 61.715 0.861814 63.6125 2.38918 65.0124C3.91555 66.4124 5.98645 67.2 8.14547 67.2025L18.0255 67.3192V67.3183C18.9736 70.3434 20.3136 73.2524 22.0163 75.985L15.0172 82.4008V82.4017C13.4899 83.8017 12.6318 85.7009 12.6318 87.6808C12.6318 89.6608 13.4899 91.5601 15.0172 92.96L20.7763 98.2391H20.7754C22.3045 99.6366 24.3755 100.421 26.5354 100.421C28.6945 100.421 30.7655 99.6367 32.2945 98.2391L39.3864 91.8991H39.3855C42.3809 93.4374 45.5672 94.6408 48.8754 95.4833V104.533C48.8781 106.512 49.7372 108.411 51.2637 109.81C52.7909 111.21 54.8609 111.997 57.0209 112H65.1664C67.3254 111.998 69.3955 111.21 70.9226 109.81C72.4499 108.411 73.309 106.512 73.3118 104.533L73.4391 95.4767H73.4382C76.7383 94.6075 79.9117 93.3792 82.8927 91.8184L89.8918 98.2342H89.8927C91.4218 99.6317 93.4928 100.417 95.6518 100.417C97.8108 100.417 99.8818 99.6316 101.411 98.2342L107.17 92.9551V92.9559C108.697 91.5551 109.555 89.6567 109.555 87.6759C109.555 85.6959 108.697 83.7975 107.17 82.3967L100.254 75.8958V75.8966C101.932 73.1508 103.245 70.2301 104.164 67.1975H114.036C116.195 67.195 118.266 66.4075 119.793 65.0083C121.32 63.6083 122.179 61.7108 122.182 59.7309V52.2642C122.178 50.285 121.319 48.3883 119.792 46.9891C118.265 45.5899 116.195 44.8024 114.036 44.7998L114.036 44.8001ZM114.036 59.7334H104.161C102.376 59.7417 100.645 60.2859 99.2298 61.2826C97.8153 62.2801 96.7962 63.6751 96.3298 65.2534C95.5616 67.6935 94.4916 70.0442 93.1398 72.2601C92.2434 73.6801 91.8816 75.331 92.1107 76.9583C92.3398 78.585 93.1471 80.0975 94.408 81.2617L101.408 87.6784L95.6489 92.9575L88.6433 86.5357L88.6442 86.5366C87.3751 85.3807 85.7251 84.6407 83.9506 84.4307C82.176 84.2216 80.3752 84.5541 78.8278 85.3774C76.4079 86.6174 73.8404 87.5991 71.1759 88.3016C69.4559 88.7307 67.9359 89.6657 66.8495 90.9616C65.764 92.2583 65.1713 93.845 65.1622 95.48V104.533H57.0168V95.4809C57.0086 93.845 56.414 92.2576 55.3268 90.9608C54.2386 89.6641 52.7177 88.7299 50.995 88.3024C48.334 87.5983 45.7696 86.6174 43.3513 85.3783C42.0922 84.7274 40.6721 84.3832 39.2267 84.3791C37.0894 84.3766 35.0404 85.1541 33.5311 86.5408L26.5311 92.9575L20.7721 87.6783L27.7776 81.2565L27.7767 81.2574C29.0367 80.0932 29.8422 78.5807 30.0713 76.9548C30.2995 75.3282 29.9376 73.6783 29.0413 72.2589C27.6885 70.0407 26.6176 67.6872 25.8513 65.2447C25.3831 63.6681 24.3631 62.2747 22.9494 61.2797C21.5348 60.2839 19.8038 59.7406 18.0202 59.7331H8.14464V52.2664H18.0202C19.8048 52.258 21.5365 51.7139 22.9512 50.7172C24.3658 49.7197 25.3849 48.3247 25.8513 46.7464C26.6194 44.3063 27.6894 41.9556 29.0413 39.7397C29.9385 38.3197 30.3004 36.6688 30.0722 35.0421C29.8431 33.4146 29.0358 31.902 27.7758 30.7379L20.7702 24.3204L26.5293 19.0412L33.5349 25.463H33.534C34.8058 26.6163 36.4549 27.3538 38.2286 27.563C40.0022 27.773 41.8021 27.4422 43.3504 26.6221C45.7703 25.3821 48.3378 24.4005 51.0023 23.698C52.7232 23.2688 54.2432 22.3347 55.3296 21.0379C56.416 19.7413 57.0096 18.1537 57.0178 16.5187V7.46606H65.1633V16.5187C65.1724 18.1545 65.766 19.7419 66.8533 21.0388C67.9415 22.3354 69.4633 23.2696 71.185 23.6971C73.847 24.4013 76.4114 25.3821 78.8287 26.6213C80.3787 27.4405 82.1789 27.7713 83.9525 27.5613C85.727 27.3513 87.3771 26.6138 88.6489 25.4613L95.6489 19.0446L101.408 24.3238L94.4024 30.7455L94.4033 30.7447C93.1433 31.9089 92.3379 33.4214 92.1088 35.0472C91.8806 36.6739 92.2424 38.3238 93.1388 39.7423C94.4915 41.9605 95.5624 44.3149 96.3288 46.7565C96.7969 48.334 97.8169 49.7274 99.2306 50.7223C100.645 51.7182 102.376 52.2615 104.16 52.2699H114.036L114.036 59.7334Z\",\n stroke: \"none\",\n },\n ],\n },\n objective: {\n viewBox: \"0 0 52 76\",\n contents: [\n {\n d: \"M51.4535 31.6851C50.5277 29.95 48.5841 28.9539 46.1168 28.9539H32.7942V5.13147C32.7942 1.64209 31.3852 0.484631 30.1985 0.132083C29.0269 -0.218341 27.2137 -0.0441906 25.2788 2.83141L16.8161 15.3129C15.4349 17.3623 13.4272 20.2825 11.6676 22.8375L1.31056 37.7337C-0.57097 40.4755 -0.0172003 42.4506 0.478841 43.3829C0.98771 44.3408 2.36893 45.9485 5.87543 45.9485H19.9634V70.9029C19.9634 71.9521 19.9634 75.1462 22.3773 75.8726C22.6638 75.9596 22.9418 76 23.2091 76C25.1783 76 26.6001 73.889 27.1282 73.1032L35.1974 60.5856L35.7405 59.7807C37.7119 56.852 40.5555 52.6299 42.3708 49.9837L50.688 37.7422C52.112 35.6566 52.3921 33.4521 51.4535 31.6851ZM47.1495 35.355L38.8301 47.5965C37.0148 50.2427 34.1626 54.4776 32.1891 57.4148L24.2396 69.7009V43.8204C24.2396 42.646 23.286 41.6966 22.1015 41.6966H5.8797C4.79568 41.6966 4.32102 41.4524 4.27612 41.4333C4.25688 41.3356 4.32316 40.8811 4.8363 40.1378L15.1997 25.231C16.9679 22.6633 18.9863 19.7282 20.3697 17.6745L28.5201 5.65604V31.0777C28.5201 32.2522 29.4759 33.2015 30.6582 33.2015H46.1189C47.0169 33.2015 47.5557 33.4458 47.6776 33.6751C47.8037 33.9194 47.6989 34.5501 47.1495 35.355Z\",\n stroke: \"none\",\n },\n ],\n },\n\n achievements: {\n viewBox: \"0 0 27 27\",\n contents: [\n {\n d: \"M26.0989 7.19999C26.3379 7.19999 26.5672 7.10517 26.7361 6.93642C26.9051 6.76767 27 6.53865 27 6.29999V0.899999C27 0.66134 26.9051 0.432318 26.7361 0.263571C26.5672 0.0948239 26.3379 0 26.0989 0H17.9892C17.7502 0 17.5209 0.0948239 17.352 0.263571C17.183 0.432318 17.0881 0.66134 17.0881 0.899999V10.5747L12.1862 19.8L8.8253 14.7781H8.82509C8.65775 14.5292 8.37737 14.3799 8.0773 14.3799C7.77723 14.3799 7.49684 14.5292 7.3295 14.7781L0.120831 25.5781C-0.0402772 25.8565 -0.0402772 26.1994 0.120831 26.4781C0.187609 26.6235 0.292197 26.7487 0.42374 26.8405C0.555082 26.9323 0.70875 26.9873 0.868649 27H26.099C26.415 26.9992 26.7074 26.8331 26.8698 26.5623C27.0321 26.2915 27.0405 25.9556 26.8919 25.6769L18.8903 10.5749V7.19993L26.0989 7.19999ZM18.8902 1.8H25.1978V5.39999H18.8902V1.8ZM17.9892 12.726L18.8183 14.2919C18.275 14.436 17.7034 14.436 17.1601 14.2919L17.9892 12.726ZM8.07724 16.92L9.25771 18.72C8.49241 18.9812 7.66212 18.9812 6.89677 18.72L8.07724 16.92ZM5.87865 20.2231C6.56996 20.5343 7.31899 20.6968 8.07724 20.7001C8.83832 20.6964 9.59039 20.5339 10.2849 20.2231L11.186 21.6362L9.33876 25.2001H2.55386L5.87865 20.2231ZM11.3753 25.2L13.0692 22.005L16.304 15.903C17.3924 16.2992 18.5859 16.2992 19.6742 15.903L24.6031 25.1998L11.3753 25.2Z\",\n stroke: \"none\",\n },\n ],\n },\n\n milestones: {\n viewBox: \"0 0 19 22\",\n contents: [\n {\n d: \"M6.09474 20.2105C8.90849 20.2105 11.1895 18.2263 11.1895 15.7787C11.1895 13.3311 8.90849 11.3469 6.09474 11.3469C3.28099 11.3469 1 13.3311 1 15.7787C1 18.2263 3.28099 20.2105 6.09474 20.2105Z\",\n fill: \"none\",\n strokeWidth: \"2\",\n },\n {\n d: \"M4.95117 3.99451V8.44276C4.95117 8.94522 5.35849 9.35254 5.86095 9.35254C6.36341 9.35254 6.77073 8.94522 6.77073 8.44276V3.99451C6.77073 3.49205 6.36341 3.08473 5.86095 3.08473C5.35849 3.08473 4.95117 3.49205 4.95117 3.99451Z\",\n stroke: \"none\",\n },\n {\n d: \"M16.1542 8.2941L12.3392 11.6127C11.9857 11.9202 11.9857 12.4187 12.3392 12.7261C12.6926 13.0336 13.2657 13.0336 13.6191 12.7261L17.4341 9.40748C17.7876 9.10003 17.7876 8.60155 17.4341 8.2941C17.0807 7.98665 16.5077 7.98665 16.1542 8.2941Z\",\n stroke: \"none\",\n },\n {\n d: \"M12.8848 1.26069L8.87023 9.10422C8.64634 9.54164 8.83631 10.0401 9.29453 10.2176C9.75276 10.395 10.3057 10.1843 10.5296 9.74688L14.5442 1.90335C14.768 1.46593 14.5781 0.967464 14.1198 0.789997C13.6616 0.61253 13.1087 0.823265 12.8848 1.26069Z\",\n stroke: \"none\",\n },\n ],\n },\n\n reflection: {\n viewBox: \"0 0 41 40\",\n contents: [\n {\n d: \"M8.86672 8.9274e-06C8.46555 8.9274e-06 8.08089 0.159282 7.79713 0.44303C7.51375 0.726418 7.35446 1.11108 7.35446 1.51226V3.80086H5.54481C4.0744 3.80086 2.66412 4.38487 1.62405 5.42455C0.584347 6.46462 0 7.8749 0 9.34531V33.9631C0 35.4339 0.584365 36.8441 1.62405 37.8839C2.66412 38.9236 4.0744 39.5079 5.54481 39.5079H35.4552C36.9256 39.5079 38.3359 38.9235 39.376 37.8839C40.4157 36.8441 41 35.4339 41 33.9631V9.34531C41 7.8749 40.4156 6.46462 39.376 5.42455C38.3359 4.38485 36.9256 3.80086 35.4552 3.80086H33.6455V1.51226C33.6455 0.971849 33.3576 0.472914 32.8896 0.202523C32.4216 -0.0675076 31.8453 -0.0675076 31.3773 0.202523C30.9094 0.472905 30.6214 0.971831 30.6214 1.51226V3.80086H22.0121V1.51226C22.0121 0.971849 21.7238 0.472914 21.2558 0.202523C20.7882 -0.0675076 20.2115 -0.0675076 19.7439 0.202523C19.2759 0.472905 18.9876 0.971831 18.9876 1.51226V3.80086H10.3783V1.51226C10.3783 1.11109 10.219 0.726427 9.93565 0.44303C9.65191 0.159291 9.26725 8.9274e-06 8.86642 8.9274e-06H8.86672ZM37.976 33.9636C37.976 34.632 37.7106 35.2729 37.2377 35.7458C36.7651 36.2184 36.1241 36.4839 35.4557 36.4839H5.54534C4.87694 36.4839 4.23596 36.2184 3.76341 35.7458C3.2905 35.2729 3.02504 34.632 3.02504 33.9636V16.957H37.976L37.976 33.9636ZM18.9884 6.82548V9.11408C18.9884 9.65414 19.2767 10.1534 19.7447 10.4235C20.2123 10.6938 20.789 10.6938 21.2566 10.4235C21.7245 10.1534 22.0129 9.65415 22.0129 9.11408V6.82548H30.6222V9.11408C30.6222 9.65414 30.9101 10.1534 31.3781 10.4235C31.8461 10.6938 32.4224 10.6938 32.8904 10.4235C33.3583 10.1534 33.6463 9.65415 33.6463 9.11408V6.82548H35.456C36.1244 6.82548 36.7653 7.09094 37.2379 7.56385C37.7108 8.0364 37.9762 8.67736 37.9762 9.34578V13.9328H3.02529V9.34578C3.02529 8.67738 3.29075 8.0364 3.76365 7.56385C4.2362 7.09094 4.87717 6.82548 5.54558 6.82548H7.35524V9.11408C7.35524 9.65414 7.6432 10.1534 8.11118 10.4235C8.57916 10.6938 9.15548 10.6938 9.62344 10.4235C10.0914 10.1534 10.3794 9.65415 10.3794 9.11408V6.82548H18.9884Z\",\n stroke: \"none\",\n },\n {\n d: \"M16.8211 32.2242C17.1037 32.5013 17.4838 32.6567 17.8794 32.6567C18.2753 32.6567 18.6554 32.5013 18.9381 32.2242L30.4153 21.2664C30.718 20.9921 30.897 20.6071 30.9114 20.1989C30.9258 19.7907 30.7743 19.3941 30.4919 19.0991C30.2093 18.8044 29.8193 18.6364 29.4107 18.6332C29.0025 18.6304 28.6101 18.7928 28.3232 19.0836L17.9145 29.0387L12.7125 23.8417C12.3264 23.4824 11.7811 23.3498 11.2731 23.4922C10.765 23.6346 10.368 24.0316 10.2256 24.5397C10.0832 25.0478 10.2158 25.5931 10.5751 25.9791L16.8211 32.2242Z\",\n stroke: \"none\",\n },\n ],\n },\n\n registrations: {\n viewBox: \"0 0 23 29\",\n contents: [\n {\n d: \"M18.0698 15.0088H11.9475C11.5018 15.0088 11.1748 15.3654 11.1748 15.7815C11.1748 16.1976 11.5314 16.5541 11.9475 16.5541H18.0698C18.5156 16.5541 18.8425 16.1976 18.8425 15.7815C18.8425 15.3654 18.5156 15.0088 18.0698 15.0088Z\",\n stroke: \"none\",\n },\n {\n d: \"M18.0698 18.9023H11.9475C11.5018 18.9023 11.1748 19.2589 11.1748 19.675C11.1748 20.0911 11.5314 20.4477 11.9475 20.4477H18.0698C18.5156 20.4477 18.8425 20.0911 18.8425 19.675C18.8425 19.2589 18.5156 18.9023 18.0698 18.9023Z\",\n stroke: \"none\",\n },\n {\n d: \"M18.0698 22.7949H11.9475C11.5018 22.7949 11.1748 23.1515 11.1748 23.5676C11.1748 23.9837 11.5314 24.3403 11.9475 24.3403H18.0698C18.5156 24.3403 18.8425 23.9837 18.8425 23.5676C18.8425 23.1515 18.5156 22.7949 18.0698 22.7949Z\",\n stroke: \"none\",\n },\n {\n d: \"M9.18377 15.0088H8.47043C8.02471 15.0088 7.69775 15.3654 7.69775 15.7815C7.69775 16.1976 8.05433 16.5541 8.47043 16.5541H9.18377C9.62949 16.5541 9.95644 16.1976 9.95644 15.7815C9.95665 15.3654 9.62972 15.0088 9.18377 15.0088Z\",\n stroke: \"none\",\n },\n {\n d: \"M9.18377 18.9023H8.47043C8.02471 18.9023 7.69775 19.2589 7.69775 19.675C7.69775 20.0911 8.05433 20.4477 8.47043 20.4477H9.18377C9.62949 20.4477 9.95644 20.0911 9.95644 19.675C9.95665 19.2589 9.62972 18.9023 9.18377 18.9023Z\",\n stroke: \"none\",\n },\n {\n d: \"M9.18377 22.7949H8.47043C8.02471 22.7949 7.69775 23.1515 7.69775 23.5676C7.69775 23.9837 8.05433 24.3403 8.47043 24.3403H9.18377C9.62949 24.3403 9.95644 23.9837 9.95644 23.5676C9.95665 23.1515 9.62972 22.7949 9.18377 22.7949Z\",\n stroke: \"none\",\n },\n {\n d: \"M22.3496 10.6993L17.0297 5.37935C16.881 5.2307 16.6731 5.14156 16.4649 5.14156H12.8689C12.2449 2.22902 9.62943 0 6.50874 0C2.94236 0 0 2.91254 0 6.50874C0 9.18346 1.63467 11.5016 3.9528 12.4825V27.4615C3.9528 27.9073 4.30938 28.2342 4.72547 28.2342H21.7552C22.2009 28.2342 22.5279 27.8776 22.5279 27.4615L22.5281 11.264C22.5876 11.0561 22.4984 10.8479 22.3498 10.6995L22.3496 10.6993ZM16.6136 7.16251L20.5664 11.1153H16.6136V7.16251ZM1.57512 6.50866C1.57512 3.7744 3.77448 1.57504 6.50874 1.57504C9.24301 1.57504 11.4424 3.7744 11.4424 6.50866C11.4424 9.24293 9.24301 11.4423 6.50874 11.4423C3.77448 11.4423 1.57512 9.21326 1.57512 6.50866ZM5.5578 26.659V12.9282C5.88473 12.9877 6.18203 13.0174 6.53857 13.0174C10.0455 13.0174 12.8987 10.2236 13.0176 6.74641H15.0683V11.9475C15.0683 12.3932 15.4249 12.7201 15.841 12.7201H21.0421V26.6887H5.5578V26.659Z\",\n stroke: \"none\",\n },\n {\n d: \"M9.24289 4.51789C8.9456 4.2206 8.44039 4.2206 8.14329 4.51789L5.85478 6.8064L4.90362 5.85525C4.60633 5.55796 4.10112 5.55796 3.80402 5.85525C3.50673 6.15254 3.50673 6.65775 3.80402 6.95485L5.29004 8.44086C5.43868 8.5895 5.64662 8.67865 5.85478 8.67865C6.06293 8.67865 6.27085 8.5895 6.41952 8.44086L9.27277 5.58761C9.54021 5.32017 9.54021 4.81493 9.24292 4.51789H9.24289Z\",\n stroke: \"none\",\n },\n ],\n },\n\n lock: {\n viewBox: \"0 0 1309.443 1658.036\",\n contents: [\n {\n d: \"M1124.664,644.322H184.779c-80.353,0-145.493,65.139-145.493,145.493v693.711c0,80.354,65.139,145.493,145.493,145.493 h939.885c80.353,0,145.493-65.139,145.493-145.493V789.814C1270.157,709.461,1205.017,644.322,1124.664,644.322z M717.651,1149.325 c1.166,4.857,1.801,9.915,1.801,15.117v124.451c0,35.832-29.317,65.148-65.148,65.148c-35.832,0-65.149-29.317-65.149-65.148 v-124.451c0-5.356,0.668-10.562,1.902-15.551c-35.921-21.626-59.951-60.993-59.951-105.976 c0-68.271,55.345-123.615,123.615-123.615c68.271,0,123.615,55.344,123.615,123.615 C778.337,1088.203,753.978,1127.795,717.651,1149.325z\",\n },\n {\n d: \"M800.192,53.478c-46.481-16.909-94.021-24.534-142.199-24.459c-48.178-0.075-102.262,7.55-148.743,24.459 c-216.571,78.787-295.237,273.21-284.399,530.585h179.785c-10.095-177.358,35.728-296.867,147.728-347.915 c64.887-29.574,139.826-29.574,204.713,0c112,51.047,157.823,170.556,147.728,347.915h179.785 C1095.429,326.688,1016.764,132.265,800.192,53.478z\",\n },\n ],\n },\n\n unqualified: {\n viewBox: \"0 0 1309.443 1658.036\",\n contents: [\n {\n d: \"M1124.664,644.322H184.779c-80.353,0-145.493,65.139-145.493,145.493v693.711c0,80.354,65.139,145.493,145.493,145.493 h939.885c80.353,0,145.493-65.139,145.493-145.493V789.814C1270.157,709.461,1205.017,644.322,1124.664,644.322z M717.651,1149.325 c1.166,4.857,1.801,9.915,1.801,15.117v124.451c0,35.832-29.317,65.148-65.148,65.148c-35.832,0-65.149-29.317-65.149-65.148 v-124.451c0-5.356,0.668-10.562,1.902-15.551c-35.921-21.626-59.951-60.993-59.951-105.976 c0-68.271,55.345-123.615,123.615-123.615c68.271,0,123.615,55.344,123.615,123.615 C778.337,1088.203,753.978,1127.795,717.651,1149.325z\",\n },\n {\n d: \"M800.192,53.478c-46.481-16.909-94.021-24.534-142.199-24.459c-48.178-0.075-102.262,7.55-148.743,24.459 c-216.571,78.787-295.237,273.21-284.399,530.585h179.785c-10.095-177.358,35.728-296.867,147.728-347.915 c64.887-29.574,139.826-29.574,204.713,0c112,51.047,157.823,170.556,147.728,347.915h179.785 C1095.429,326.688,1016.764,132.265,800.192,53.478z\",\n },\n ],\n },\n\n unlock: {\n viewBox: \"796 729.37 200 200\",\n contents: [\n {\n d: \"M947.232,737.06c-26.891,0-48.769,21.876-48.769,48.769v21.623h-83.855c-10.277,0-18.609,8.332-18.609,18.609v57.775 c0,20.9,16.943,37.844,37.843,37.844h66.979c20.9,0,37.843-16.943,37.843-37.844V826.06c0-10.277-8.331-18.609-18.608-18.609h-3.955 v-21.623c0-17.166,13.965-31.131,31.131-31.131c17.165,0,31.131,13.965,31.131,31.131v31.413c0,4.871,3.947,8.819,8.817,8.819 s8.819-3.949,8.819-8.819v-31.413C996,758.937,974.123,737.06,947.232,737.06z M873.933,865.427v23.546 c0,3.836-3.109,6.942-6.942,6.942c-3.833,0-6.942-3.107-6.942-6.942v-23.546c-5.288-2.578-8.94-7.99-8.94-14.269 c0-8.772,7.111-15.883,15.882-15.883c8.772,0,15.884,7.11,15.884,15.883C882.875,857.437,879.22,862.85,873.933,865.427z\",\n },\n ],\n },\n\n contingent: {\n viewBox: \"796 729.37 200 200\",\n contents: [\n {\n d: \"M947.232,737.06c-26.891,0-48.769,21.876-48.769,48.769v21.623h-83.855c-10.277,0-18.609,8.332-18.609,18.609v57.775 c0,20.9,16.943,37.844,37.843,37.844h66.979c20.9,0,37.843-16.943,37.843-37.844V826.06c0-10.277-8.331-18.609-18.608-18.609h-3.955 v-21.623c0-17.166,13.965-31.131,31.131-31.131c17.165,0,31.131,13.965,31.131,31.131v31.413c0,4.871,3.947,8.819,8.817,8.819 s8.819-3.949,8.819-8.819v-31.413C996,758.937,974.123,737.06,947.232,737.06z M873.933,865.427v23.546 c0,3.836-3.109,6.942-6.942,6.942c-3.833,0-6.942-3.107-6.942-6.942v-23.546c-5.288-2.578-8.94-7.99-8.94-14.269 c0-8.772,7.111-15.883,15.882-15.883c8.772,0,15.884,7.11,15.884,15.883C882.875,857.437,879.22,862.85,873.933,865.427z\",\n },\n ],\n },\n\n badge: {\n viewBox: \"0 0 164 164\",\n contents: [\n {\n cy: \"82\",\n cx: \"82\",\n r: \"75\",\n strokeWidth: \"14\",\n fill: \"none\",\n },\n {\n d: \"M63.66 47.875L63.9659 51.5476L66.7189 52.7719V50.3234H97.3075L97.6134 52.7719C98.736 52.2546 99.4488 52.0067 100.061 50.9355L100.366 47.875L108.625 48.1811C108.69 60.7048 105.845 73.7549 98.837 79.3985L92.4134 83.3772C92.7529 84.2434 92.6795 83.821 92.7192 84.6015L90.578 85.8257C89.7185 85.284 90.058 85.3788 89.3545 85.2136C88.9201 86.4714 85.9897 93.7831 85.9897 93.7831C86.7483 97.0762 90.627 100.103 93.6369 101.128V103.577H95.4722V116.125H68.5542V103.577H70.3895V101.128C73.3994 100.134 77.2781 97.0517 78.0367 93.7831C77.4647 93.5015 76.284 87.0897 74.0602 84.9075L73.4484 85.8257L71.0013 84.2954C71.3775 83.3772 71.3989 83.7353 71.3072 82.7651C62.3019 80.283 52.2198 61.2251 55.707 47.875H63.66ZM58.7674 50.9355C58.4615 63.5082 62.5512 76.7726 71.9205 79.7046C68.9691 72.0762 67.3148 64.0073 67.0263 55.8324C63.3098 55.3672 61.7804 53.9655 60.6027 50.9355H58.7674ZM105.261 50.9355L103.12 51.2416C102.527 54.3021 100.211 55.4468 97.0026 55.8324C97.0026 64.6284 94.7849 73.1489 92.1084 79.7046C101.612 76.6196 105.359 63.6276 105.261 50.9355Z\",\n stroke: \"none\",\n },\n ],\n },\n\n waypoint: {\n viewBox: \"0 0 33 29\",\n contents: [\n {\n d: \"M16.4728 0C11.4744 0 7.41541 4.09351 7.41541 9.09947C7.41541 11.1808 8.20387 13.4207 9.35984 15.696H6.55398C6.36308 15.6967 6.17653 15.7531 6.01702 15.8582C5.85751 15.9633 5.73193 16.1125 5.65556 16.2878L0.720823 27.619C0.655173 27.7698 0.628191 27.9346 0.642331 28.0985C0.656472 28.2624 0.711286 28.4201 0.801787 28.5573C0.892288 28.6946 1.0156 28.8069 1.16051 28.8843C1.30542 28.9616 1.46732 29.0013 1.63149 29H31.3388C31.5019 28.9993 31.6623 28.958 31.8056 28.8799C31.9489 28.8017 32.0705 28.6891 32.1596 28.5522C32.2487 28.4153 32.3024 28.2583 32.3159 28.0954C32.3295 27.9326 32.3024 27.7689 32.2372 27.619L27.3147 16.2878C27.2375 16.1106 27.11 15.96 26.9481 15.8548C26.7862 15.7496 26.597 15.6943 26.404 15.696H23.6843C24.8335 13.4319 25.5549 11.242 25.5549 9.09947C25.5549 4.09351 21.4836 0 16.4728 0V0ZM16.4728 1.97278C20.4202 1.97278 23.5858 5.15799 23.5858 9.09947C23.5858 11.1236 22.7373 13.46 21.26 16.0536C20.0207 18.2381 18.3481 20.6003 16.4728 23.1063C14.8616 20.9305 13.1797 18.5212 11.858 16.1892C10.3621 13.5457 9.38446 10.9878 9.38446 9.09947C9.38446 5.15799 12.541 1.97278 16.4728 1.97278V1.97278ZM7.19383 17.6688H10.4427C12.0119 20.352 13.9434 23.0245 15.6853 25.338C15.777 25.4605 15.8959 25.5599 16.0326 25.6283C16.1693 25.6968 16.32 25.7325 16.4728 25.7325C16.6256 25.7325 16.7764 25.6968 16.9131 25.6283C17.0498 25.5599 17.1687 25.4605 17.2604 25.338C19.2936 22.6563 21.1436 20.106 22.589 17.6688H25.7641L29.8375 27.0272H3.13277L7.19383 17.6688V17.6688Z\",\n stroke: \"none\",\n },\n {\n d: \"M16.4735 4.96875C14.3475 4.96875 12.6006 6.7189 12.6006 8.84908C12.6006 10.9886 14.3475 12.7434 16.4735 12.7434C18.6088 12.7434 20.3604 10.9886 20.3604 8.84908C20.3604 6.7189 18.6088 4.96875 16.4735 4.96875ZM16.4735 6.94168C17.5473 6.94168 18.3912 7.7918 18.3912 8.84908C18.3912 9.925 17.5473 10.7705 16.4735 10.7705C15.4182 10.7705 14.5697 9.925 14.5697 8.84908C14.5697 7.7918 15.4182 6.94168 16.4735 6.94168Z\",\n stroke: \"none\",\n },\n ],\n },\n\n apple: {\n viewBox: \"0 0 24 33\",\n contents: [\n {\n d: \"M23.9966 18.0144C23.9966 18.0141 23.9966 18.0137 23.9966 18.0137C23.9966 18.0133 23.9966 18.0133 23.9966 18.013C24.0886 14.2266 22.2926 10.751 19.5255 9.36297C17.336 8.26458 15.0368 8.82309 13.3762 10.8577C13.3714 10.8638 13.3681 10.8709 13.3632 10.877C13.3578 10.8842 13.3515 10.8892 13.3463 10.8964C13.192 11.1137 13.0165 11.2866 12.8293 11.4169C12.8534 10.2988 13.1495 9.32538 13.7112 8.56961C14.3838 7.66419 15.3733 7.16583 16.4967 7.16583C16.853 7.16583 17.1422 6.82249 17.1422 6.39932C17.1422 5.97615 16.853 5.63281 16.4967 5.63281C15.2349 5.63281 14.0944 6.1215 13.2143 7.01368C13.1226 5.11333 12.5082 3.41526 11.4297 2.13428C10.092 0.545766 8.21341 -0.196401 6.13943 0.0445436C6.00737 0.0581482 5.88467 0.119727 5.78638 0.217107C5.78276 0.220687 5.77975 0.225341 5.77613 0.228922C5.74869 0.257205 5.72246 0.287278 5.69925 0.320932C5.6902 0.334178 5.68327 0.349573 5.67483 0.363535C5.65915 0.389313 5.64287 0.414732 5.6299 0.443015C5.5898 0.530729 5.56418 0.628467 5.55543 0.731217C5.55543 0.731933 5.55513 0.732292 5.55513 0.73265C5.35072 3.19759 5.97572 5.43089 7.31465 7.02083C8.48716 8.41316 10.0748 9.15532 11.8458 9.15532C11.8693 9.15532 11.8931 9.15353 11.9167 9.15318C11.664 9.89534 11.5392 10.7191 11.5398 11.5884C11.2229 11.4652 10.9187 11.2257 10.6431 10.8713L10.6428 10.8709C10.6428 10.8709 10.6428 10.8709 10.6428 10.8706C9.09437 8.88144 6.83799 8.37485 4.60693 9.51549C2.16453 10.7639 -0.190141 14.077 0.0121618 18.003C0.0121618 18.0058 0.0115588 18.008 0.0115588 18.0108C0.0118603 18.0219 0.0124632 18.0327 0.0127647 18.0438C0.0127647 18.0449 0.0127647 18.0459 0.0127647 18.0474C0.0127647 18.0477 0.0127647 18.0477 0.0127647 18.0481C0.122207 24.1855 2.10634 28.0843 6.85729 31.4969C7.18712 31.7339 7.86669 32.2219 8.8378 32.2219C9.3826 32.2219 10.0197 32.068 10.7375 31.6301C11.4466 31.1973 11.8232 31.1432 11.9661 31.1493C12.4545 31.1998 12.7153 31.3118 13.2842 31.6383C14.0015 32.0497 14.6241 32.1965 15.1589 32.1965C16.0535 32.1965 16.6999 31.7851 17.1217 31.5166C20.6012 29.303 23.842 26.1356 23.9963 18.0209C23.9963 18.0201 23.9966 18.0194 23.9966 18.0187C23.9966 18.0173 23.9966 18.0159 23.9966 18.0144ZM8.22758 5.93748C7.2845 4.81761 6.79337 3.27313 6.81206 1.53854C8.2728 1.51742 9.57345 2.09884 10.5168 3.21907C11.4602 4.33894 11.9513 5.88378 11.9323 7.61836C10.4728 7.64092 9.17065 7.05735 8.22758 5.93748ZM16.5078 30.168C15.944 30.5274 15.1713 31.0175 13.8462 30.2578C13.1754 29.873 12.7581 29.6893 12.0584 29.6191C12.0523 29.6184 12.0466 29.6199 12.0406 29.6195C12.0351 29.6191 12.03 29.6173 12.0246 29.617C11.5178 29.5948 10.8855 29.8164 10.1481 30.2661C8.79167 31.0942 7.96799 30.5027 7.5257 30.1852C3.86797 27.5577 1.40989 24.477 1.30256 17.9811C1.30256 17.975 1.30105 17.9693 1.30075 17.9632C1.30045 17.9568 1.30165 17.9511 1.30135 17.9446C1.12045 14.7439 3.13263 11.9385 5.11736 10.9239C6.84854 10.0389 8.51671 10.3987 9.69435 11.9106C9.69435 11.9106 9.69435 11.9106 9.69465 11.911L9.69495 11.9113C10.3516 12.7562 11.1777 13.2184 12.0276 13.2184C12.0478 13.2184 12.0683 13.2181 12.0885 13.2177C12.1301 13.2167 12.1711 13.2095 12.2124 13.2063C12.2166 13.2063 12.2206 13.2077 12.2245 13.2077C12.251 13.2077 12.2782 13.2059 12.3053 13.2016C12.3128 13.2005 12.3198 13.197 12.3273 13.1955C13.0741 13.101 13.7657 12.6589 14.3006 11.9267C14.3015 11.9256 14.3024 11.9253 14.303 11.9242C15.5976 10.3382 17.3185 9.91969 19.0229 10.7746C21.2687 11.9009 22.7834 14.861 22.7062 17.9732C22.7062 17.9743 22.7065 17.9754 22.7065 17.9765C22.7065 17.9772 22.7062 17.9779 22.7062 17.9783C22.5757 24.9055 20.1357 27.8598 16.5078 30.168Z\",\n stroke: \"none\",\n },\n ],\n },\n\n \"guest speaker\": {\n viewBox: \"0 0 36 30\",\n contents: [\n {\n d: \"M15.6201 26.8136V26.8134V17.9746C15.6201 17.5128 15.2485 17.1357 14.7854 17.1357H10.4393C9.97635 17.1357 9.60449 17.5127 9.60449 17.9746V26.8134C9.60449 28.1559 10.6891 29.2505 12.0266 29.2505H13.198C14.5346 29.2505 15.6191 28.1559 15.6201 26.8136ZM11.2731 26.8134V18.8135H13.9497V26.8134C13.9497 27.2338 13.6105 27.5729 13.1972 27.5729H12.0257C11.6124 27.5729 11.2731 27.2338 11.2731 26.8134Z\",\n strokeWidth: \"0.5\",\n },\n {\n d: \"M4.49313 7.79479H4.74313V7.79392H17.1654V17.1348H4.49313C3.35244 17.1348 2.4204 16.1996 2.4204 15.046V9.88364C2.4204 8.73083 3.35167 7.79479 4.49313 7.79479ZM4.49313 18.8135H18.0002C18.4634 18.8135 18.835 18.4353 18.835 17.9746V6.95592C18.835 6.49391 18.4631 6.11719 18.0002 6.11719H4.49313C2.42759 6.11719 0.75 7.80783 0.75 9.88364V15.046C0.75 17.1217 2.42749 18.8135 4.49313 18.8135Z\",\n strokeWidth: \"0.5\",\n },\n {\n d: \"M34.6609 23.7171C35.1979 23.3314 35.5166 22.7052 35.5166 22.0431V2.80552C35.5166 2.14113 35.1967 1.51565 34.6575 1.13008C34.119 0.74437 33.4246 0.645508 32.7996 0.864352L32.7993 0.864431L17.7257 6.15823C17.3891 6.27601 17.166 6.59461 17.166 6.95016V17.9743C17.166 18.332 17.3921 18.6499 17.7287 18.7672L17.7292 18.7674L32.8085 23.9882C32.8085 23.9882 32.8085 23.9882 32.8086 23.9882C33.0251 24.0633 33.2489 24.0999 33.4724 24.0999C33.8933 24.0999 34.3106 23.9696 34.6609 23.7171ZM34.6609 23.7171C34.6608 23.7172 34.6607 23.7173 34.6606 23.7173L34.5149 23.5145L34.661 23.7171C34.6609 23.7171 34.6609 23.7171 34.6609 23.7171ZM33.6891 2.49752L33.6898 2.49803C33.79 2.56933 33.8471 2.67954 33.8471 2.80642V22.0441C33.8471 22.1697 33.7902 22.2805 33.6897 22.3531C33.5894 22.4246 33.468 22.4422 33.3514 22.402L18.8355 17.3766V7.54613L33.3498 2.44893C33.3498 2.44891 33.3499 2.44889 33.35 2.44887C33.4667 2.40809 33.5885 2.42542 33.6891 2.49752Z\",\n strokeWidth: \"0.5\",\n },\n ],\n },\n search: {\n viewBox: \"0 0 19 19\",\n contents: [\n {\n d: \"M7.25 0C3.246 0 0 3.246 0 7.25C0 11.254 3.246 14.5 7.25 14.5C8.91425 14.5026 10.5283 13.9301 11.819 12.8795L16.7195 17.78C16.7887 17.8516 16.8714 17.9088 16.9629 17.9481C17.0544 17.9874 17.1529 18.0081 17.2524 18.0089C17.352 18.0098 17.4508 17.9908 17.543 17.9531C17.6351 17.9154 17.7189 17.8597 17.7893 17.7893C17.8597 17.7189 17.9154 17.6351 17.9531 17.543C17.9908 17.4508 18.0098 17.352 18.0089 17.2524C18.0081 17.1529 17.9874 17.0544 17.9481 16.9629C17.9088 16.8714 17.8516 16.7887 17.78 16.7195L12.88 11.819C13.9304 10.5282 14.5027 8.91419 14.5 7.25C14.5 3.246 11.254 0 7.25 0ZM1.5 7.25C1.5 4.0745 4.0745 1.5 7.25 1.5C10.4255 1.5 13 4.0745 13 7.25C13 10.4255 10.4255 13 7.25 13C4.0745 13 1.5 10.4255 1.5 7.25Z\",\n stroke: \"none\",\n },\n ],\n },\n menu: {\n viewBox: \"0 0 24 24\",\n contents: [\n {\n d: \"M4 6h16M4 12h16M4 18h16\",\n fill: \"none\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n strokeWidth: \"2\",\n },\n ],\n },\n todo: {\n viewBox: \"0 0 24 25\",\n contents: [\n {\n d: \"M17 3.5H7C4.79086 3.5 3 5.29086 3 7.5V17.5C3 19.7091 4.79086 21.5 7 21.5H17C19.2091 21.5 21 19.7091 21 17.5V7.5C21 5.29086 19.2091 3.5 17 3.5Z\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n },\n ],\n },\n done: {\n viewBox: \"0 0 24 25\",\n contents: [\n {\n d: \"M17 3.5H7C4.79086 3.5 3 5.29086 3 7.5V17.5C3 19.7091 4.79086 21.5 7 21.5H17C19.2091 21.5 21 19.7091 21 17.5V7.5C21 5.29086 19.2091 3.5 17 3.5Z\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n },\n {\n d: \"M9 12.5L11.25 14.5L15 10.5\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n },\n ],\n },\n review: {\n viewBox: \"0 0 32 32\",\n contents: [\n {\n d: \"M15.5 0C6.9404 0 0 6.9404 0 15.5C0 24.0596 6.9404 31 15.5 31C24.0596 31 31 24.0596 31 15.5C31 6.9404 24.0596 0 15.5 0ZM15.5 28.3705C8.39353 28.3705 2.62946 22.6065 2.62946 15.5C2.62946 8.39353 8.39353 2.62946 15.5 2.62946C22.6065 2.62946 28.3705 8.39353 28.3705 15.5C28.3705 22.6065 22.6065 28.3705 15.5 28.3705Z\",\n stroke: \"none\",\n },\n {\n d: \"M21.5616 19.8737L16.6279 16.3066V7.74358C16.6279 7.59135 16.5033 7.4668 16.3511 7.4668H14.6869C14.5347 7.4668 14.4102 7.59135 14.4102 7.74358V17.2719C14.4102 17.3619 14.4517 17.4449 14.5243 17.4968L20.2469 21.6693C20.3714 21.7593 20.5444 21.7316 20.6344 21.6105L21.6239 20.2612C21.7138 20.1332 21.6861 19.9602 21.5616 19.8737Z\",\n stroke: \"none\",\n },\n ],\n },\n badges: {\n viewBox: \"0 0 15 20\",\n contents: [\n {\n d: \"M7.31704 0C5.87632 0.00156538 4.46811 0.3712 3.26855 1.06267C2.06898 1.75414 1.13132 2.73675 0.572838 3.8876C0.0143548 5.03844 -0.140155 6.30644 0.128633 7.53298C0.397421 8.75953 1.07758 9.89017 2.08402 10.7835V19.0457C2.08456 19.2003 2.1307 19.3522 2.21805 19.487C2.30541 19.6218 2.43108 19.735 2.58313 19.8159C2.73518 19.8968 2.90857 19.9426 3.08682 19.9491C3.26507 19.9556 3.44227 19.9224 3.6016 19.8529L7.31704 18.2476L11.0325 19.8529C11.1783 19.9176 11.3396 19.9518 11.5034 19.9526C11.6994 19.9532 11.8916 19.9061 12.0582 19.8166C12.209 19.7349 12.3333 19.6213 12.4194 19.4864C12.5054 19.3515 12.5504 19.1998 12.5501 19.0457V10.7835C13.5565 9.89017 14.2367 8.75953 14.5054 7.53298C14.7742 6.30644 14.6197 5.03844 14.0612 3.8876C13.5028 2.73675 12.5651 1.75414 11.3655 1.06267C10.166 0.3712 8.75776 0.00156538 7.31704 0ZM10.4568 17.5765L7.78801 16.4247C7.64193 16.3609 7.48062 16.3276 7.31704 16.3276C7.15346 16.3276 6.99215 16.3609 6.84607 16.4247L4.17723 17.5765V12.0804C4.83965 12.3515 5.54523 12.5349 6.27043 12.6246V13.6041C6.27043 13.8446 6.3807 14.0753 6.57698 14.2454C6.77325 14.4155 7.03946 14.511 7.31704 14.511C7.59461 14.511 7.86082 14.4155 8.0571 14.2454C8.25337 14.0753 8.36364 13.8446 8.36364 13.6041V12.6246C9.08885 12.5349 9.79443 12.3515 10.4568 12.0804V17.5765ZM7.31704 10.8833C6.28205 10.8833 5.2703 10.6173 4.40973 10.119C3.54917 9.62075 2.87844 8.91253 2.48236 8.08392C2.08629 7.25531 1.98266 6.34354 2.18457 5.46389C2.38649 4.58425 2.88489 3.77624 3.61674 3.14206C4.34859 2.50787 5.28102 2.07598 6.29613 1.90101C7.31123 1.72604 8.36342 1.81584 9.31963 2.15906C10.2758 2.50228 11.0931 3.0835 11.6681 3.82923C12.2431 4.57495 12.5501 5.45169 12.5501 6.34857C12.5501 7.55124 11.9987 8.70466 11.0173 9.55508C10.036 10.4055 8.70492 10.8833 7.31704 10.8833Z\",\n stroke: \"none\",\n },\n ],\n },\n materials: {\n viewBox: \"0 0 41 54\",\n contents: [\n {\n d: \"M39.9146 5.56518L38.5514 5.39479C38.3811 5.39479 38.2675 5.45159 38.1539 5.56518C38.0403 5.84917 37.6995 6.01956 37.4155 5.96276L36.7907 5.84917C36.45 5.79237 36.2228 5.56518 36.166 5.2812C36.166 5.11081 35.9956 4.99722 35.882 4.99722C35.2004 4.88362 34.6893 4.82683 33.7237 4.71323C32.7014 4.54284 30.5999 4.25886 27.3625 7.26908C26.9649 7.60986 27.3625 8.23463 27.8169 8.06424C31.1111 6.9283 32.9286 7.66666 32.7014 9.25696L32.5878 10.0521L35.3708 10.4497L35.598 8.91618C35.6548 8.5754 36.0524 8.29142 36.3932 8.34822L37.0179 8.46181C37.3587 8.51861 37.5859 8.74579 37.6427 9.02978C37.6427 9.20017 37.8131 9.31376 37.9267 9.31376L39.2898 9.48415C39.5738 9.54095 39.8578 9.31376 39.9146 9.02978L40.3121 6.18995C40.4257 5.84917 40.1985 5.56518 39.9146 5.56518Z\",\n stroke: \"none\",\n },\n {\n d: \"M15.3206 11.5865C18.5201 11.5865 21.1139 8.99278 21.1139 5.79326C21.1139 2.59373 18.5201 0 15.3206 0C12.1211 0 9.52734 2.59373 9.52734 5.79326C9.52734 8.99278 12.1211 11.5865 15.3206 11.5865Z\",\n stroke: \"none\",\n },\n {\n d: \"M34.2351 19.9361L35.2575 11.587L32.4744 11.1895L30.9977 19.5386C29.7482 19.3682 28.2147 19.0274 26.7948 18.5162C25.886 18.1754 25.0909 17.4939 24.1253 16.6987C22.1375 15.0516 19.6952 13.0637 15.3219 13.0637C5.26886 13.0637 0.668327 19.7657 0.441141 20.0497C-0.183622 20.9585 -0.126826 22.1512 0.497937 23.0599L5.04167 29.1372C5.55284 29.8187 6.34799 30.1595 7.14314 30.1595C7.65431 30.1595 8.22228 29.9891 8.67665 29.6484C8.79025 29.5348 8.96064 29.4212 9.07423 29.3076V31.2955L5.21206 50.4359C4.87128 52.0262 5.89362 53.5029 7.48392 53.8437C7.65431 53.9005 7.8815 53.9005 8.05189 53.9005C9.41501 53.9005 10.6077 52.935 10.8917 51.5719L14.6971 32.6586H15.833L16.0034 51.0039C16.0034 52.5942 17.2529 53.9005 18.9 53.8437C20.4904 53.8437 21.7967 52.5374 21.7399 50.9471L21.5695 21.2993C22.535 22.0944 23.671 22.8896 25.0341 23.4007C26.7948 24.0823 28.6691 24.4231 30.2026 24.707L29.9754 26.1838C29.9186 26.6949 30.2026 27.1493 30.7137 27.2061L32.4744 27.4333C32.9856 27.4901 33.44 27.1493 33.4968 26.6381L33.6672 24.991C34.9735 24.8774 36.0526 23.8551 36.0526 22.492C36.0526 21.2993 35.3143 20.2769 34.2351 19.9361ZM6.00721 21.6968C6.74557 21.0721 7.76791 20.2769 9.18782 19.5954L9.13102 25.8998L6.00721 21.6968Z\",\n stroke: \"none\",\n },\n ],\n },\n activity: {\n viewBox: \"0 0 22 17\",\n contents: [\n {\n d: \"M0 2.50936C0 1.96816 0.248101 1.44912 0.689723 1.06643C1.13135 0.683742 1.73031 0.46875 2.35486 0.46875H19.6238C20.2484 0.46875 20.8474 0.683742 21.289 1.06643C21.7306 1.44912 21.9787 1.96816 21.9787 2.50936V6.59058C21.9787 7.13179 21.7306 7.65083 21.289 8.03352C20.8474 8.4162 20.2484 8.6312 19.6238 8.6312H2.35486C1.73031 8.6312 1.13135 8.4162 0.689723 8.03352C0.248101 7.65083 0 7.13179 0 6.59058V2.50936ZM2.35486 1.82916C2.14668 1.82916 1.94702 1.90082 1.79982 2.02838C1.65261 2.15595 1.56991 2.32896 1.56991 2.50936V6.59058C1.56991 6.77099 1.65261 6.944 1.79982 7.07156C1.94702 7.19912 2.14668 7.27079 2.35486 7.27079H19.6238C19.832 7.27079 20.0317 7.19912 20.1789 7.07156C20.3261 6.944 20.4088 6.77099 20.4088 6.59058V2.50936C20.4088 2.32896 20.3261 2.15595 20.1789 2.02838C20.0317 1.90082 19.832 1.82916 19.6238 1.82916H2.35486ZM0 13.3926C0 12.8514 0.248101 12.3324 0.689723 11.9497C1.13135 11.567 1.73031 11.352 2.35486 11.352H7.06459C7.68913 11.352 8.2881 11.567 8.72972 11.9497C9.17135 12.3324 9.41945 12.8514 9.41945 13.3926V14.753C9.41945 15.2942 9.17135 15.8133 8.72972 16.196C8.2881 16.5786 7.68913 16.7936 7.06459 16.7936H2.35486C1.73031 16.7936 1.13135 16.5786 0.689723 16.196C0.248101 15.8133 0 15.2942 0 14.753V13.3926ZM2.35486 12.7124C2.14668 12.7124 1.94702 12.7841 1.79982 12.9116C1.65261 13.0392 1.56991 13.2122 1.56991 13.3926V14.753C1.56991 14.9334 1.65261 15.1064 1.79982 15.234C1.94702 15.3616 2.14668 15.4332 2.35486 15.4332H7.06459C7.27277 15.4332 7.47242 15.3616 7.61963 15.234C7.76684 15.1064 7.84954 14.9334 7.84954 14.753V13.3926C7.84954 13.2122 7.76684 13.0392 7.61963 12.9116C7.47242 12.7841 7.27277 12.7124 7.06459 12.7124H2.35486ZM14.9141 11.352C14.2896 11.352 13.6906 11.567 13.249 11.9497C12.8074 12.3324 12.5593 12.8514 12.5593 13.3926V14.753C12.5593 15.2942 12.8074 15.8133 13.249 16.196C13.6906 16.5786 14.2896 16.7936 14.9141 16.7936H19.6238C20.2484 16.7936 20.8474 16.5786 21.289 16.196C21.7306 15.8133 21.9787 15.2942 21.9787 14.753V13.3926C21.9787 12.8514 21.7306 12.3324 21.289 11.9497C20.8474 11.567 20.2484 11.352 19.6238 11.352H14.9141ZM14.1292 13.3926C14.1292 13.2122 14.2119 13.0392 14.3591 12.9116C14.5063 12.7841 14.7059 12.7124 14.9141 12.7124H19.6238C19.832 12.7124 20.0317 12.7841 20.1789 12.9116C20.3261 13.0392 20.4088 13.2122 20.4088 13.3926V14.753C20.4088 14.9334 20.3261 15.1064 20.1789 15.234C20.0317 15.3616 19.832 15.4332 19.6238 15.4332H14.9141C14.7059 15.4332 14.5063 15.3616 14.3591 15.234C14.2119 15.1064 14.1292 14.9334 14.1292 14.753V13.3926Z\",\n stroke: \"none\",\n },\n ],\n },\n\n asynchronous: {\n viewBox: \"0 0 109 109\",\n contents: [\n {\n d: \"M91.5988 0.58652C90.2385 0.736228 89.1038 2.03211 89.1332 3.40234V16.0952L84.9807 20.2539V13.1061C85.0145 11.5333 83.4709 10.118 81.9096 10.2903C80.5493 10.44 79.4146 11.7358 79.444 13.1061V25.7989L78.8384 26.4054C70.5239 19.0027 59.5874 14.4923 47.6079 14.4923C21.6491 14.4923 0.545898 35.627 0.545898 61.6247C0.545898 87.6224 21.6491 108.757 47.6079 108.757C73.5668 108.757 94.67 87.6224 94.67 61.6247C94.67 51.5869 91.5132 42.2806 86.1486 34.6362L82.2124 38.535C82.2191 38.5453 82.2056 38.5681 82.2124 38.5784C86.5848 45.1722 89.1332 53.1018 89.1332 61.6247C89.1332 84.6256 70.5745 103.212 47.6079 103.212C24.6413 103.212 6.08261 84.6256 6.08261 61.6247C6.08261 38.6237 24.6413 20.0373 47.6079 20.0373C58.0864 20.0373 67.646 23.9121 74.9454 30.3042L68.0678 37.1921C62.5332 32.535 55.385 29.741 47.6079 29.741C30.0581 29.741 15.7718 44.0486 15.7718 61.6247C15.7718 79.2007 30.0581 93.5084 47.6079 93.5084C65.1577 93.5084 79.444 79.2007 79.444 61.6247C79.444 55.8101 77.8483 50.3788 75.1185 45.6829L71.0957 49.7117C72.8992 53.2856 73.9073 57.3312 73.9073 61.6247C73.9073 76.204 62.1655 87.9634 47.6079 87.9634C33.0504 87.9634 21.3086 76.204 21.3086 61.6247C21.3086 47.0454 33.0504 35.286 47.6079 35.286C53.8857 35.286 59.6154 37.476 64.1315 41.1343L56.2158 49.0619C53.7598 47.361 50.8029 46.376 47.6079 46.376C39.2317 46.376 32.382 53.2359 32.382 61.6247C32.382 70.0135 39.2317 76.8735 47.6079 76.8735C55.9842 76.8735 62.8339 70.0135 62.8339 61.6247C62.8339 60.5095 62.6767 59.4186 62.4446 58.3757L57.0376 63.7907C56.0602 68.12 52.2429 71.3285 47.6079 71.3285C42.2239 71.3285 37.9187 67.0167 37.9187 61.6247C37.9187 56.2326 42.2239 51.921 47.6079 51.921C49.2764 51.921 50.8282 52.3591 52.193 53.0906L45.6614 59.632C44.5856 60.6073 44.4929 62.4751 45.4668 63.5525C46.4407 64.6299 48.3056 64.7228 49.3814 63.7474C49.396 63.7331 83.337 29.741 83.337 29.741H96.0541C97.5167 29.7617 98.8619 28.4334 98.8619 26.9685C98.8619 25.5037 97.5167 24.1753 96.0541 24.196H88.8737L93.0262 20.0373H105.743C107.206 20.058 108.551 18.7297 108.551 17.2648C108.551 15.7999 107.206 14.4716 105.743 14.4923H94.67V3.40234C94.7038 1.82957 93.1601 0.414268 91.5988 0.58652Z\",\n stroke: \"none\",\n },\n ],\n },\n\n synchronous: {\n viewBox: \"0 0 30 30\",\n contents: [\n {\n d: \"M14.0236 0.0300206C9.01069 0.345861 4.49132 3.16375 1.97367 7.54335C-0.229151 11.3753 -0.609814 16.0489 0.941365 20.2184C1.44503 21.5723 2.24758 23.0101 3.13511 24.1487C3.94703 25.1903 4.9889 26.213 6.02447 26.9851C8.14475 28.5658 10.6535 29.56 13.2736 29.8578C14.5128 29.9986 15.945 29.9748 17.2046 29.7925C22.0047 29.0978 26.2484 26.0125 28.4154 21.6422C29.2996 19.859 29.8051 17.9963 29.9436 16.0109C29.9833 15.4405 29.9611 13.9447 29.9055 13.451C29.8471 12.9322 29.7937 12.5769 29.7056 12.1202C28.9413 8.16121 26.5972 4.67404 23.2046 2.44923C20.4973 0.673743 17.2765 -0.174941 14.0236 0.0300206ZM12.3653 1.97163C11.1345 3.22719 10.1778 4.55083 9.35393 6.13831C9.12202 6.58513 8.75951 7.38138 8.60687 7.77914C8.56053 7.89994 8.517 8.00795 8.51018 8.01916C8.48643 8.05813 7.79478 7.64534 7.31263 7.30449C6.68737 6.86244 5.94352 6.19117 5.49414 5.66342L5.3098 5.44693L5.59346 5.17246C7.21045 3.60765 9.3059 2.43083 11.515 1.84687C11.8148 1.76762 12.6435 1.58473 12.7281 1.57912C12.7411 1.57827 12.5778 1.75488 12.3653 1.97163ZM17.6365 1.65576C19.751 2.07367 21.7635 3.00701 23.4429 4.34859C23.7769 4.61543 24.4108 5.17474 24.5596 5.33391L24.6215 5.40009L24.4729 5.58151C23.9374 6.23552 23.1523 6.92968 22.3253 7.48045C21.9553 7.72684 21.5162 7.98586 21.4684 7.98586C21.4538 7.98586 21.3971 7.8725 21.3425 7.73392C20.7976 6.35151 19.9965 4.9212 19.0815 3.69698C18.6084 3.06406 17.821 2.16809 17.386 1.7677C17.2723 1.66313 17.1932 1.57757 17.2101 1.57757C17.227 1.57757 17.4189 1.61276 17.6365 1.65576ZM14.2952 5.85407V9.58793L14.224 9.5878C14.0898 9.58757 13.2735 9.51028 12.9762 9.46966C12.291 9.37607 11.5293 9.21131 10.8814 9.01651C10.5648 8.92134 9.82451 8.66475 9.79674 8.64056C9.7611 8.60955 10.1881 7.60867 10.5169 6.95226C11.3942 5.2013 12.5171 3.70654 13.9072 2.43925C14.0992 2.26421 14.2651 2.1208 14.2758 2.12059C14.2864 2.12039 14.2952 3.80044 14.2952 5.85407ZM16.1028 2.49106C17.5733 3.82039 18.8806 5.63766 19.7396 7.54658C19.903 7.90976 20.1658 8.55436 20.1658 8.59188C20.1658 8.62529 19.4388 8.89281 18.9762 9.02961C18.016 9.31356 17.1184 9.47173 15.8792 9.57537L15.6917 9.59105V5.86727C15.6917 2.68587 15.697 2.14649 15.7279 2.16414C15.7477 2.1755 15.9164 2.32261 16.1028 2.49106ZM25.8595 6.82986C26.4095 7.56405 26.7992 8.20431 27.2158 9.05821C27.8149 10.2861 28.1979 11.4963 28.4141 12.8446C28.4714 13.2022 28.5385 13.8188 28.5504 14.097L28.5581 14.2779H25.6357H22.7132L22.682 13.7998C22.5922 12.427 22.407 11.2487 22.0888 10.0272C22.0093 9.72165 21.9394 9.44258 21.9337 9.40705C21.9241 9.34816 21.9502 9.32785 22.2277 9.17744C22.8605 8.83454 23.5437 8.36749 24.1785 7.84374C24.5352 7.54942 25.2381 6.86221 25.4417 6.60872C25.5057 6.52903 25.5639 6.4634 25.571 6.46291C25.5781 6.46239 25.7079 6.62753 25.8595 6.82986ZM4.89303 7.07733C5.70034 7.90521 6.72875 8.67534 7.79455 9.25012L8.05459 9.39038L8.01831 9.50852C7.9514 9.72643 7.73023 10.6311 7.6641 10.9574C7.4661 11.9343 7.30958 13.2088 7.28013 14.0841L7.27361 14.2779L4.3414 14.2844L1.40916 14.291L1.42698 14.0519C1.56009 12.2633 1.98604 10.659 2.74635 9.08294C3.15686 8.23193 3.79276 7.20908 4.26875 6.63404L4.37173 6.50965L4.48951 6.64696C4.55429 6.72249 4.7359 6.91616 4.89303 7.07733ZM20.6314 9.96025C20.6314 9.96607 20.6834 10.1725 20.747 10.4189C20.9548 11.2238 21.117 12.1193 21.2119 12.9859C21.2555 13.384 21.3035 14.0093 21.3037 14.181L21.3038 14.2908H18.4977H15.6917V12.6394V10.9879L15.918 10.971C17.5752 10.8469 18.9983 10.5527 20.2848 10.0683C20.5921 9.95258 20.6314 9.94036 20.6314 9.96025ZM10.015 10.2022C11.2733 10.6295 12.6054 10.8863 14.0044 10.9713L14.2955 10.989L14.2889 12.6334L14.2822 14.2779L11.4786 14.2844L8.675 14.291L8.69173 13.9049C8.73621 12.8782 8.91101 11.708 9.19125 10.5611C9.31363 10.0603 9.34185 9.97323 9.3778 9.98566C9.4011 9.99369 9.68783 10.0912 10.015 10.2022ZM7.29624 16.0802C7.32657 16.7572 7.43695 17.7131 7.57299 18.4768C7.67486 19.0488 7.92003 20.0973 8.05159 20.5236C8.06209 20.5576 8.02288 20.5891 7.88129 20.6603C7.36888 20.9182 6.4964 21.4887 5.95464 21.9202C5.41852 22.3472 4.93607 22.8029 4.51178 23.2831C4.42542 23.3808 4.35539 23.44 4.34434 23.4248C4.3339 23.4103 4.21659 23.2541 4.08368 23.0776C2.54773 21.0376 1.62001 18.5391 1.42793 15.9252L1.41037 15.6861H4.34447H7.27857L7.29624 16.0802ZM14.2952 17.327C14.2952 18.6223 14.2884 18.9678 14.2628 18.9679C14.178 18.9682 13.4787 19.0231 13.2607 19.0467C12.0083 19.1819 10.7163 19.4774 9.65462 19.8714C9.49909 19.9291 9.36336 19.9675 9.35302 19.9566C9.32439 19.9265 9.08369 18.9291 8.99594 18.4768C8.84651 17.7069 8.72941 16.7651 8.69305 16.0408L8.67523 15.6861H11.4852H14.2952V17.327ZM21.2932 15.9898C21.2431 16.8579 21.1323 17.7315 20.9663 18.5673C20.8722 19.0411 20.6484 19.9672 20.6214 19.9941C20.6152 20.0003 20.4839 19.9594 20.3298 19.903C19.0497 19.4352 17.7594 19.1468 16.4288 19.0312C16.1727 19.009 15.9022 18.9848 15.8275 18.9774L15.6917 18.9641V17.3251V15.6861H18.5013H21.3108L21.2932 15.9898ZM28.5563 15.8476C28.4708 16.8419 28.3733 17.464 28.1809 18.2428C27.7348 20.0489 26.8976 21.786 25.7677 23.2498C25.6666 23.3807 25.5773 23.4854 25.5692 23.4823C25.5612 23.4793 25.4681 23.3782 25.3623 23.2577C24.5698 22.3539 23.448 21.4592 22.3147 20.8272C21.9538 20.6259 21.9238 20.6035 21.9341 20.544C21.9402 20.5085 22.0206 20.1829 22.1128 19.8205C22.4331 18.5613 22.6181 17.3408 22.6896 16.0156L22.7073 15.6861H25.6388H28.5702L28.5563 15.8476ZM14.2952 24.0865V27.8098L14.1723 27.7067C13.7137 27.3218 12.9819 26.5773 12.518 26.0237C11.4374 24.7344 10.4435 23.0386 9.8631 21.4939C9.78574 21.288 9.7477 21.3239 10.2219 21.156C10.8945 20.9179 11.664 20.7122 12.3555 20.5856C12.8677 20.4918 13.7674 20.3857 14.2111 20.3667L14.2952 20.3632V24.0865ZM16.4158 20.4296C17.4477 20.5275 18.5602 20.7702 19.5653 21.1169C20.0121 21.2709 20.1658 21.3352 20.1658 21.368C20.1658 21.3816 20.103 21.5481 20.0262 21.7381C19.2338 23.6974 18.1143 25.4327 16.7174 26.8668C16.3853 27.2077 15.7705 27.7809 15.7156 27.8007C15.7011 27.806 15.6917 26.352 15.6917 24.0867V20.364L15.8404 20.3765C15.9222 20.3834 16.1811 20.4073 16.4158 20.4296ZM8.64254 22.2131C9.2796 23.8037 10.1776 25.3541 11.2003 26.6293C11.5778 27.0999 11.8456 27.3992 12.3274 27.889C12.6508 28.2177 12.7881 28.3734 12.7543 28.3733C12.6613 28.3729 11.9302 28.2172 11.5279 28.1122C9.33931 27.5407 7.22543 26.3593 5.63287 24.8176L5.30952 24.5045L5.53415 24.2468C6.07754 23.6234 6.81251 22.9833 7.54516 22.4953C7.90981 22.2524 8.46458 21.917 8.50583 21.9146C8.51501 21.914 8.57654 22.0484 8.64254 22.2131ZM21.7677 22.1239C22.8027 22.725 23.8285 23.5838 24.5227 24.4302L24.6223 24.5516L24.5212 24.6561C24.3806 24.8014 23.8155 25.3066 23.5667 25.5095C21.8696 26.893 19.8215 27.859 17.6633 28.2939C17.4462 28.3377 17.2519 28.3735 17.2317 28.3735C17.2115 28.3735 17.3176 28.2543 17.4675 28.1087C18.349 27.2522 19.253 26.1128 19.9688 24.9557C20.4639 24.1553 21.0101 23.0685 21.345 22.2172C21.3995 22.0786 21.4555 21.9652 21.4693 21.9652C21.4831 21.9652 21.6174 22.0366 21.7677 22.1239Z\",\n stroke: \"none\",\n },\n ],\n },\n\n export: {\n viewBox: \"0 0 32 32\",\n contents: [\n {\n d: \"M30.6654 15.9987L25.332 10.6654V14.6654H13.332V17.332H25.332V21.332L30.6654 15.9987ZM1.33203 23.9987V7.9987C1.33203 7.29145 1.61298 6.61318 2.11308 6.11308C2.61318 5.61298 3.29145 5.33203 3.9987 5.33203H19.9987C20.7059 5.33203 21.3842 5.61298 21.8843 6.11308C22.3844 6.61318 22.6654 7.29145 22.6654 7.9987V11.9987H19.9987V7.9987H3.9987V23.9987H19.9987V19.9987H22.6654V23.9987C22.6654 24.7059 22.3844 25.3842 21.8843 25.8843C21.3842 26.3844 20.7059 26.6654 19.9987 26.6654H3.9987C3.29145 26.6654 2.61318 26.3844 2.11308 25.8843C1.61298 25.3842 1.33203 24.7059 1.33203 23.9987Z\",\n stroke: \"none\",\n },\n ],\n },\n\n \"service-tracking\": {\n viewBox: \"0 0 89 89\",\n contents: [\n {\n d: \"M44.4987 7.41797V28.2773C44.4987 30.1214 45.2313 31.89 46.5352 33.1939C47.8392 34.4979 49.6077 35.2305 51.4518 35.2305H74.1654V74.168C74.1654 75.6432 73.5793 77.0581 72.5361 78.1012C71.493 79.1444 70.0781 79.7305 68.6029 79.7305H43.1044C46.4187 75.4971 48.2156 70.2735 48.207 64.8971C48.207 51.5842 37.4158 40.793 24.1029 40.793C20.8173 40.793 17.6874 41.4512 14.832 42.6397V12.9805C14.832 11.5052 15.4181 10.0904 16.4612 9.04719C17.5044 8.00402 18.9193 7.41797 20.3945 7.41797H44.4987ZM49.1341 8.2783V28.2773C49.1341 29.5567 50.1724 30.5951 51.4518 30.5951H73.1678L49.1341 8.2783ZM44.4987 64.8971C44.4987 76.1612 35.3669 85.293 24.1029 85.293C12.8388 85.293 3.70703 76.1612 3.70703 64.8971C3.70703 53.6331 12.8388 44.5013 24.1029 44.5013C35.3669 44.5013 44.4987 53.6331 44.4987 64.8971ZM25.957 51.918C25.957 51.4262 25.7617 50.9546 25.414 50.6069C25.0662 50.2591 24.5946 50.0638 24.1029 50.0638C23.6111 50.0638 23.1395 50.2591 22.7918 50.6069C22.444 50.9546 22.2487 51.4262 22.2487 51.918V63.043H11.1237C10.6319 63.043 10.1603 63.2383 9.8126 63.586C9.46488 63.9338 9.26953 64.4054 9.26953 64.8971C9.26953 65.3889 9.46488 65.8605 9.8126 66.2082C10.1603 66.556 10.6319 66.7513 11.1237 66.7513H22.2487V77.8763C22.2487 78.368 22.444 78.8397 22.7918 79.1874C23.1395 79.5351 23.6111 79.7305 24.1029 79.7305C24.5946 79.7305 25.0662 79.5351 25.414 79.1874C25.7617 78.8397 25.957 78.368 25.957 77.8763V66.7513H37.082C37.5738 66.7513 38.0454 66.556 38.3931 66.2082C38.7408 65.8605 38.9362 65.3889 38.9362 64.8971C38.9362 64.4054 38.7408 63.9338 38.3931 63.586C38.0454 63.2383 37.5738 63.043 37.082 63.043H25.957V51.918Z\",\n stroke: \"none\",\n },\n ],\n },\n};\n","import { sprite } from \"./data/icons\";\nimport React from \"react\";\nimport { icons } from \"./data/icons\";\n\n/**\n * The name of the icon.\n */\nexport type IconName = typeof icons[number];\n\n/**\n * The properties for the icon.\n */\nexport type IconProps = {\n name: IconName;\n};\n\n/**\n * A component for icons.\n */\nexport const Icon = (props: IconProps) => {\n const viewBox = sprite[props.name].viewBox;\n const contents = sprite[props.name].contents;\n\n if (!contents) {\n return null;\n }\n\n return (\n <svg\n className=\"fill-current stroke-current w-full h-full drop-shadow-[inherit]\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox={viewBox}\n >\n <title>{props.name}</title>\n {contents.map((v, k) => {\n return v.d && <path key={k} {...(v as React.SVGProps<SVGPathElement>)} />;\n })}\n\n {contents.map((v, k) => v.r && <circle key={k} {...(v as React.SVGProps<SVGCircleElement>)} />)}\n </svg>\n );\n};\n","import React from \"react\";\n\n/**\n * A component for Local Civics logo branding.\n */\nexport const Logo = () => {\n return (\n <img\n className=\"w-full overflow-hidden object-contain\"\n src={`https://cdn.localcivics.io/brand/localcivics.png`}\n alt=\"Logo\"\n />\n );\n};\n","import React from \"react\";\r\nimport { classname } from \"../../utils/classname/classname\";\r\nimport { Icon, IconName } from \"../Icon\";\r\nimport { Logo } from \"../Logo\";\r\n\r\n/**\r\n * The button color.\r\n */\r\nexport type ButtonColor =\r\n | \"slate\"\r\n | \"sky\"\r\n | \"green\"\r\n | \"rose\"\r\n | \"emerald\"\r\n | \"primary\"\r\n | \"secondary\"\r\n | \"slate:sky\"\r\n | \"slate:icon\"\r\n | \"blue\"\r\n | \"dark-blue\";\r\n\r\n/**\r\n * The button size.\r\n */\r\nexport type ButtonSize = \"tiny\" | \"xs\" | \"sm\" | \"md\" | \"md-small-text\" | \"lg\" | \"xl\" | \"full:sm\" | \"full:md\";\r\n\r\n/**\r\n * The button spacing.\r\n */\r\nexport type ButtonSpacing = \"none\" | \"xs\" | \"sm\" | \"md\" | \"lg\";\r\n\r\n/**\r\n * The button theme.\r\n */\r\nexport type ButtonTheme = \"light\" | \"dark\";\r\n\r\n/**\r\n * The button justify.\r\n */\r\nexport type ButtonJustify = \"center\" | \"start\";\r\n\r\n/**\r\n * The button border.\r\n */\r\nexport type ButtonBorder = \"none\" | \"rectangle\" | \"rounded\" | \"rounded-sm\" | \"circle\" | \"circle-sm\" | \"icon:circle\";\r\n\r\n/**\r\n * The button filter.\r\n */\r\nexport type ButtonFilter = \"shadow\" | \"none\";\r\n\r\n/**\r\n * The properties for the button.\r\n */\r\nexport type ButtonProps = {\r\n type?: \"submit\" | \"reset\" | \"button\";\r\n form?: boolean;\r\n theme?: ButtonTheme;\r\n active?: boolean;\r\n disabled?: boolean;\r\n color?: ButtonColor;\r\n size?: ButtonSize;\r\n spacing?: ButtonSpacing;\r\n icon?: IconName;\r\n logo?: boolean;\r\n justify?: ButtonJustify;\r\n border?: ButtonBorder;\r\n filter?: ButtonFilter;\r\n text?: string;\r\n footer?: string;\r\n wide?: boolean;\r\n onClick?: () => void;\r\n};\r\n\r\n/**\r\n * A component for buttons.\r\n * @param props\r\n * @constructor\r\n */\r\nexport const Button = (props: ButtonProps) => {\r\n const config = defaultConfig();\r\n withColor(config, props.color || \"slate\", props.theme);\r\n withSize(config, props.size || \"sm\");\r\n withActive(config, props.active);\r\n withDisabled(config, props.disabled);\r\n withFilter(config, props.filter);\r\n withJustify(config, props.justify);\r\n withBorder(config, props.border);\r\n withSpacing(config, props.spacing, props.wide);\r\n\r\n const onClick = () => !props.active && !props.disabled && props.onClick && props.onClick();\r\n\r\n return (\r\n <button disabled={props.disabled} type={props.type} className={classname(config.button)} onClick={onClick}>\r\n {props.icon && (\r\n <span className={classname(config.icon)}>\r\n <Icon name={props.icon} />\r\n </span>\r\n )}\r\n {props.logo && (\r\n <span className={classname(config.logo)}>\r\n <Logo />\r\n </span>\r\n )}\r\n\r\n {(props.text || props.footer) && (\r\n <div className=\"grid grid-cols-1 justify-items-center gap-4\">\r\n {props.text && <div className=\"text-center whitespace-nowrap\">{props.text}</div>}\r\n {props.footer && <div className=\"text-[0.5rem] font-semibold\">{props.footer}</div>}\r\n </div>\r\n )}\r\n </button>\r\n );\r\n};\r\n\r\ntype ButtonConfig = {\r\n icon: {\r\n base: string;\r\n size: string;\r\n border: string;\r\n };\r\n logo: {\r\n size: string;\r\n };\r\n button: {\r\n base: string;\r\n justify: string;\r\n spacing: string;\r\n color: {\r\n active: {\r\n text: string;\r\n border: string;\r\n bg: string;\r\n };\r\n interactive: {\r\n text: string;\r\n border: string;\r\n bg: string;\r\n };\r\n text: string;\r\n border: string;\r\n bg: string;\r\n };\r\n size: {\r\n text: string;\r\n container: string;\r\n };\r\n shadow: string;\r\n cursor: string;\r\n border: string;\r\n };\r\n};\r\n\r\nconst defaultConfig = () => {\r\n const config: ButtonConfig = {\r\n button: {\r\n base: \"transition-colors flex items-center gap-x-2 font-semibold\",\r\n justify: \"\",\r\n spacing: \"\",\r\n color: {\r\n active: {\r\n text: \"\",\r\n border: \"\",\r\n bg: \"\",\r\n },\r\n interactive: {\r\n text: \"\",\r\n border: \"\",\r\n bg: \"\",\r\n },\r\n text: \"\",\r\n border: \"\",\r\n bg: \"\",\r\n },\r\n size: {\r\n text: \"\",\r\n container: \"\",\r\n },\r\n shadow: \"\",\r\n cursor: \"\",\r\n border: \"\",\r\n },\r\n icon: {\r\n base: \"\",\r\n size: \"\",\r\n border: \"\",\r\n },\r\n logo: {\r\n size: \"\",\r\n },\r\n };\r\n return config;\r\n};\r\n\r\nconst withColor = (config: ButtonConfig, color?: ButtonColor, theme?: ButtonTheme) => {\r\n switch (color) {\r\n case \"slate\":\r\n config.button.color = {\r\n text: \"text-slate-500\",\r\n border: \"border-slate-500\",\r\n bg: \"bg-slate-500\",\r\n active: {\r\n text: \"text-slate-600\",\r\n border: \"border-slate-600\",\r\n bg: \"bg-slate-600\",\r\n },\r\n interactive: {\r\n text: \"focus:text-slate-600 active:text-slate-600 hover:text-slate-600\",\r\n border: \"focus:border-slate-600 active:border-slate-600 hover:border-slate-600\",\r\n bg: \"focus:bg-slate-600 active:bg-slate-600 hover:bg-slate-600\",\r\n },\r\n };\r\n break;\r\n case \"slate:icon\":\r\n config.button.color = {\r\n text: \"text-slate-500\",\r\n border: \"border-slate-500\",\r\n bg: \"bg-slate-500\",\r\n active: {\r\n text: \"text-sky-400\",\r\n border: \"border-sky-400\",\r\n bg: \"bg-sky-400\",\r\n },\r\n interactive: {\r\n text: \"focus:text-sky-600 active:text-sky-600 hover:text-sky-600\",\r\n border: \"focus:border-sky-600 active:border-sky-600 hover:border-sky-600\",\r\n bg: \"focus:bg-sky-600 active:bg-sky-600 hover:bg-sky-600\",\r\n },\r\n };\r\n break;\r\n case \"sky\":\r\n config.button.color = {\r\n active: {\r\n text: \"text-sky-600\",\r\n border: \"border-sky-600\",\r\n bg: \"bg-sky-600\",\r\n },\r\n text: \"text-sky-400\",\r\n border: \"border-sky-400\",\r\n bg: \"bg-sky-400\",\r\n interactive: {\r\n text: \"focus:text-sky-600 active:text-sky-600 hover:text-sky-600\",\r\n border: \"focus:border-sky-600 active:border-sky-600 hover:border-sky-600\",\r\n bg: \"focus:bg-sky-600 active:bg-sky-600 hover:bg-sky-600\",\r\n },\r\n };\r\n break;\r\n case \"green\":\r\n config.button.color = {\r\n active: {\r\n text: \"text-green-600\",\r\n border: \"border-green-600\",\r\n bg: \"bg-green-600\",\r\n },\r\n interactive: {\r\n text: \"focus:text-green-600 active:text-green-600 hover:text-green-600\",\r\n border: \"focus:border-green-600 active:border-green-600 hover:border-green-600\",\r\n bg: \"focus:bg-green-600 active:bg-green-600 hover:bg-green-600\",\r\n },\r\n text: \"text-green-400\",\r\n border: \"border-green-400\",\r\n bg: \"bg-green-400\",\r\n };\r\n break;\r\n case \"primary\":\r\n config.button.color = {\r\n active: {\r\n text: \"text-primary-600\",\r\n border: \"border-primary-600\",\r\n bg: \"bg-primary-600\",\r\n },\r\n interactive: {\r\n text: \"focus:text-primary-600 active:text-primary-600 hover:text-primary-600\",\r\n border: \"focus:border-primary-600 active:border-primary-600 hover:border-primary-600\",\r\n bg: \"focus:bg-primary-600 active:bg-primary-600 hover:bg-primary-600\",\r\n },\r\n text: \"text-primary-400\",\r\n border: \"border-primary-400\",\r\n bg: \"bg-primary-400\",\r\n };\r\n break;\r\n case \"secondary\":\r\n config.button.color = {\r\n active: {\r\n text: \"text-secondary-600\",\r\n border: \"border-secondary-600\",\r\n bg: \"bg-secondary-600\",\r\n },\r\n interactive: {\r\n text: \"focus:text-secondary-600 active:text-secondary-600 hover:text-secondary-600\",\r\n border: \"focus:border-secondary-600 active:border-secondary-600 hover:border-secondary-600\",\r\n bg: \"focus:bg-secondary-600 active:bg-secondary-600 hover:bg-secondary-600\",\r\n },\r\n text: \"text-secondary-400\",\r\n border: \"border-secondary-400\",\r\n bg: \"bg-secondary-400\",\r\n };\r\n break;\r\n case \"rose\":\r\n config.button.color = {\r\n active: {\r\n text: \"text-rose-600\",\r\n border: \"border-rose-600\",\r\n bg: \"bg-rose-600\",\r\n },\r\n interactive: {\r\n text: \"focus:text-rose-600 active:text-rose-600 hover:text-rose-600\",\r\n border: \"focus:border-rose-600 active:border-rose-600 hover:border-rose-600\",\r\n bg: \"focus:bg-rose-600 active:bg-rose-600 hover:bg-rose-600\",\r\n },\r\n text: \"text-rose-400\",\r\n border: \"border-rose-400\",\r\n bg: \"bg-rose-400\",\r\n };\r\n break;\r\n case \"emerald\":\r\n config.button.color = {\r\n active: {\r\n text: \"text-emerald-600\",\r\n border: \"border-emerald-600\",\r\n bg: \"bg-emerald-600\",\r\n },\r\n interactive: {\r\n text: \"focus:text-emerald-600 active:text-emerald-600 hover:text-emerald-600\",\r\n border: \"focus:border-emerald-600 active:border-emerald-600 hover:border-emerald-600\",\r\n bg: \"focus:bg-emerald-600 active:bg-emerald-600 hover:bg-emerald-600\",\r\n },\r\n text: \"text-emerald-400\",\r\n border: \"border-emerald-400\",\r\n bg: \"bg-emerald-400\",\r\n };\r\n break;\r\n case \"slate:sky\":\r\n config.button.color = {\r\n active: {\r\n text: \"text-sky-400\",\r\n border: \"border-sky-400/95\",\r\n bg: \"bg-sky-400/95\",\r\n },\r\n interactive: {\r\n text: \"focus:text-slate-600 active:text-slate-600 hover:text-sky-400\",\r\n border: \"focus:border-sky-300/95 active:border-sky-300/95 hover:border-sky-300/95\",\r\n bg: \"hover:bg-sky-400/95\",\r\n },\r\n text: \"text-slate-500\",\r\n border: \"border-slate-100\",\r\n bg: \"bg-slate-50/95\",\r\n };\r\n break;\r\n case \"blue\":\r\n config.button.color = {\r\n active: {\r\n text: \"text-blue-600\",\r\n border: \"border-blue-600\",\r\n bg: \"bg-blue-600\",\r\n },\r\n text: \"text-blue-400\",\r\n border: \"border-blue-400\",\r\n bg: \"bg-blue-400\",\r\n interactive: {\r\n text: \"focus:text-blue-600 active:text-blue-600 hover:text-blue-600\",\r\n border: \"focus:border-blue-600 active:border-blue-600 hover:border-blue-600\",\r\n bg: \"focus:bg-blue-600 active:bg-blue-600 hover:bg-blue-600\",\r\n },\r\n };\r\n break;\r\n case \"dark-blue\":\r\n config.button.color = {\r\n active: {\r\n text: \"text-dark-blue-600\",\r\n border: \"border-dark-blue-600\",\r\n bg: \"bg-dark-blue-600\",\r\n },\r\n text: \"text-dark-blue-400\",\r\n border: \"border-dark-blue-400\",\r\n bg: \"bg-dark-blue-400\",\r\n interactive: {\r\n text: \"focus:text-dark-blue-600 active:text-dark-blue-600 hover:text-dark-blue-600\",\r\n border: \"focus:border-dark-blue-600 active:border-dark-blue-600 hover:border-dark-blue-600\",\r\n bg: \"focus:bg-dark-blue-600 active:bg-dark-blue-600 hover:bg-dark-blue-600\",\r\n },\r\n };\r\n break;\r\n }\r\n\r\n switch (theme) {\r\n case \"dark\":\r\n config.button.color.text = \"text-white\";\r\n config.button.color.active.text = \"text-white\";\r\n config.button.color.interactive.text = \"hover:text-white focus:text-white active:text-white\";\r\n break;\r\n default:\r\n config.button.color.bg = \"\";\r\n config.button.color.active.bg = \"\";\r\n config.button.color.interactive.bg = \"\";\r\n }\r\n};\r\n\r\nconst withSize = (config: ButtonConfig, size?: ButtonSize) => {\r\n if (size?.startsWith(\"full:\")) {\r\n config.button.size.container = \"w-full\";\r\n }\r\n\r\n switch (size) {\r\n case \"tiny\":\r\n config.button.size.text = \"text-[0.5rem]\";\r\n config.icon.size = \"w-1 h-1\";\r\n config.logo.size = \"w-12 h-1\";\r\n break;\r\n case \"xs\":\r\n config.button.size.text = \"text-xs\";\r\n config.icon.size = \"w-3 h-3\";\r\n config.logo.size = \"w-18 h-3\";\r\n break;\r\n case \"sm\":\r\n config.button.size.text = \"text-sm\";\r\n config.icon.size = \"w-4 h-4\";\r\n config.logo.size = \"w-20 h-4\";\r\n break;\r\n case \"full:sm\":\r\n config.button.size.text = \"text-xs md:text-sm\";\r\n config.icon.size = \"w-5 h-5 scale-[0.9] p-1 md:scale-[1.2] md:w-6 md:h-6 md:p-1.5 overflow-hidden\";\r\n config.logo.size = \"w-20 h-4\";\r\n break;\r\n case \"md\":\r\n config.button.size.text = \"text-md\";\r\n config.icon.size = \"w-5 h-5\";\r\n config.logo.size = \"w-28 h-5 -ml-1\";\r\n break;\r\n case \"md-small-text\":\r\n config.button.size.text = \"text-sm\";\r\n config.icon.size = \"w-5 h-5\";\r\n config.logo.size = \"w-28 h-5 -ml-1\";\r\n case \"lg\":\r\n config.button.size.text = \"text-md\";\r\n config.icon.size = \"w-6 h-6\";\r\n config.logo.size = \"w-36 h-6\";\r\n break;\r\n case \"xl\":\r\n config.button.size.text = \"text-lg\";\r\n config.icon.size = \"w-7 h-7\";\r\n config.logo.size = \"w-28 h-7\";\r\n break;\r\n }\r\n};\r\n\r\nconst withActive = (config: ButtonConfig, active?: boolean) => {\r\n if (active) {\r\n config.button.cursor = \"cursor-default\";\r\n config.button.color.text = \"\";\r\n config.button.color.border = \"\";\r\n config.button.color.bg = \"\";\r\n } else {\r\n config.button.color.active = defaultConfig().button.color.active;\r\n }\r\n};\r\n\r\nconst withDisabled = (config: ButtonConfig, disabled?: boolean) => {\r\n if (disabled) {\r\n if (config.button.color.text === \"text-white\") {\r\n config.button.color.bg = \"bg-slate-200\";\r\n config.button.color.border = \"border-slate-200\";\r\n }\r\n\r\n config.button.cursor = \"cursor-default\";\r\n config.button.color.active.text = \"\";\r\n config.button.color.active.border = \"\";\r\n config.button.color.active.bg = \"\";\r\n config.button.color.interactive.text = \"\";\r\n config.button.color.interactive.border = \"\";\r\n config.button.color.interactive.bg = \"\";\r\n }\r\n};\r\n\r\nconst withFilter = (config: ButtonConfig, filter?: ButtonFilter) => {\r\n switch (filter) {\r\n case \"shadow\":\r\n config.button.shadow = \"shadow-md\";\r\n break;\r\n default:\r\n config.button.shadow = \"\";\r\n }\r\n};\r\n\r\nconst withJustify = (config: ButtonConfig, justify?: ButtonJustify) => {\r\n switch (justify) {\r\n case \"start\":\r\n config.button.justify = \"justify-start\";\r\n break;\r\n default:\r\n config.button.justify = \"justify-center\";\r\n break;\r\n }\r\n};\r\n\r\nconst withBorder = (config: ButtonConfig, border?: ButtonBorder) => {\r\n switch (border) {\r\n case \"rounded\":\r\n config.button.border = \"border-2 rounded-md\";\r\n break;\r\n case \"rounded-sm\":\r\n config.button.border = \"border rounded-md\";\r\n break;\r\n case \"rectangle\":\r\n config.button.border = \"border\";\r\n break;\r\n case \"circle\":\r\n config.button.border = \"border-2 rounded-full\";\r\n break;\r\n case \"circle-sm\":\r\n config.button.border = \"border rounded-full\";\r\n break;\r\n case \"icon:circle\":\r\n config.icon.border = \"border rounded-full\";\r\n break;\r\n default:\r\n config.button.border = \"\";\r\n break;\r\n }\r\n};\r\n\r\nconst withSpacing = (config: ButtonConfig, spacing?: ButtonSpacing, wide?: boolean) => {\r\n switch (spacing) {\r\n case \"xs\":\r\n config.button.spacing = \"py-0.5 px-3\";\r\n break;\r\n case \"sm\":\r\n config.button.spacing = \"py-1 px-5\";\r\n break;\r\n case \"md\":\r\n config.button.spacing = \"py-3 px-8\";\r\n break;\r\n case \"lg\":\r\n config.button.spacing = \"py-3 px-8\";\r\n break;\r\n default:\r\n config.button.spacing = \"\";\r\n break;\r\n }\r\n\r\n if (wide) {\r\n config.button.spacing = \"py-2.5 px-10\";\r\n }\r\n};\r\n","import React from \"react\";\nimport { builder } from \"../../utils/classname/classname\";\n\n/**\n * The properties for the loader.\n */\nexport type LoaderProps = {\n isLoading?: boolean;\n children: React.ReactNode;\n};\n\n/**\n * A component for content that is not ready to be displayed.\n */\nexport const Loader = (props: LoaderProps) => {\n const loaderClassName = builder(\"flex absolute top-0 left-0 h-full w-full m-auto transition ease-in-out duration-500\")\n .if(!!props.isLoading, \"visible opacity-full\")\n .else(\"invisible opacity-0\")\n .build();\n\n const contentClassName = builder(\"w-full transition ease-in-out duration-500\")\n .if(!!props.isLoading, \"invisible opacity-0\")\n .else(\"visible opacity-full\")\n .build();\n\n const containerClassName = builder(\"my-auto\").if(!!props.isLoading, \"relative\").build();\n\n return (\n <>\n <div className={containerClassName}>\n {/*<!-- By Sam Herbert (@sherb), for everyone. More @ http://goo.gl/7AJzbL -->*/}\n <div className={loaderClassName}>\n <svg\n className=\"m-auto stroke-sky-300\"\n width=\"35\"\n height=\"35\"\n viewBox=\"0 0 45 45\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g fill=\"none\" fillRule=\"evenodd\" transform=\"translate(1 1)\" strokeWidth=\"2\">\n <circle cx=\"22\" cy=\"22\" r=\"6\" strokeOpacity=\"0\">\n <animate\n attributeName=\"r\"\n begin=\"1.5s\"\n dur=\"3s\"\n values=\"6;22\"\n calcMode=\"linear\"\n repeatCount=\"indefinite\"\n />\n <animate\n attributeName=\"stroke-opacity\"\n begin=\"1.5s\"\n dur=\"3s\"\n values=\"1;0\"\n calcMode=\"linear\"\n repeatCount=\"indefinite\"\n />\n <animate\n attributeName=\"stroke-width\"\n begin=\"1.5s\"\n dur=\"3s\"\n values=\"2;0\"\n calcMode=\"linear\"\n repeatCount=\"indefinite\"\n />\n </circle>\n <circle cx=\"22\" cy=\"22\" r=\"6\" strokeOpacity=\"0\">\n <animate\n attributeName=\"r\"\n begin=\"3s\"\n dur=\"3s\"\n values=\"6;22\"\n calcMode=\"linear\"\n repeatCount=\"indefinite\"\n />\n <animate\n attributeName=\"stroke-opacity\"\n begin=\"3s\"\n dur=\"3s\"\n values=\"1;0\"\n calcMode=\"linear\"\n repeatCount=\"indefinite\"\n />\n <animate\n attributeName=\"stroke-width\"\n begin=\"3s\"\n dur=\"3s\"\n values=\"2;0\"\n calcMode=\"linear\"\n repeatCount=\"indefinite\"\n />\n </circle>\n <circle cx=\"22\" cy=\"22\" r=\"8\">\n <animate\n attributeName=\"r\"\n begin=\"0s\"\n dur=\"1.5s\"\n values=\"6;1;2;3;4;5;6\"\n calcMode=\"linear\"\n repeatCount=\"indefinite\"\n />\n </circle>\n </g>\n </svg>\n </div>\n <div className={contentClassName}>{props.children}</div>\n </div>\n </>\n );\n};\n","import React from \"react\";\nimport { builder } from \"../../utils/classname/classname\";\nimport { Button } from \"../Button\";\nimport { Loader } from \"../Loader\";\n\n/**\n * The properties for the modal.\n */\nexport type ModalProps = {\n isLoading?: boolean;\n visible?: boolean;\n inline?: boolean;\n top?: boolean;\n plain?: boolean;\n transparent?: boolean;\n stage?: boolean;\n children?: React.ReactNode;\n onClose?: () => void;\n};\n\n/**\n * A component for displaying modals\n */\nexport const Modal = (props: ModalProps) => {\n const className = builder(\"font-proxima grid grid-cols-1 overscroll-contain justify-items-center px-4 md:px-2\")\n .append(\"py-5\")\n .append(\"transition ease-in-out duration-400\")\n .if(!props.transparent && !props.stage, \"bg-gray-500/75\")\n .if(!!props.stage, \"bg-gray-100\")\n .if(!props.inline, \"fixed w-screen h-screen top-0 left-0\")\n .if(!!props.inline, \"w-full h-full\")\n .if(!props.transparent && !!props.visible, \"z-30\")\n .if(!!props.visible, \"visible opacity-full\")\n .if(!props.transparent && !props.visible, \"-z-30 invisible opacity-0\")\n .if(!props.top, \"content-center\")\n .if(!!props.top, \"content-start\")\n .build();\n\n const contentClassName = builder().if(!props.plain, \"shadow-md bg-white overflow-hidden rounded-md relative\").build();\n\n const close = () => {\n if (props.onClose) {\n props.onClose();\n }\n };\n\n return (\n <div className={className}>\n <div className={contentClassName}>\n <div className=\"grid grid-cols-1 gap-y-2\">\n {!props.isLoading && props.onClose && (\n <div className=\"justify-self-end mx-2 mt-2 z-30\">\n <Button size=\"xs\" filter=\"none\" icon=\"menu-close\" onClick={close} />\n </div>\n )}\n\n <Loader isLoading={props.isLoading}>{props.children}</Loader>\n </div>\n </div>\n </div>\n );\n};\n","import React from \"react\";\nimport { builder } from \"../../../utils/classname/classname\";\nimport { Button } from \"../../Button\";\nimport { Icon, IconName } from \"../../Icon\";\nimport { Modal } from \"../../Modal\";\n\n/**\n * ActivityCardProps\n */\nexport type ActivityCardProps = {\n headline?: string;\n imageURL?: string;\n pathway?: string;\n xp?: number;\n summary?: string;\n skills?: string[];\n tags?: string[];\n startTime?: string;\n endTime?: string;\n link?: string;\n formId?: string;\n address?: string;\n isBookmarked?: boolean;\n canReflect?: boolean;\n milestone?: boolean;\n\n onRegister?: () => void;\n onUnregister?: () => void;\n onLaunch?: () => void;\n onReflect?: () => void;\n onSkillClick?: (skill: string) => void;\n onClose?: () => void;\n};\n\n/**\n * ActivityCard\n * @param props\n * @constructor\n */\nexport const ActivityCard = (props: ActivityCardProps) => {\n const className = builder(\"w-full md:w-[40rem]\").if(!!props.headline, \"min-h-[20rem]\").build();\n const ActionButton = () => {\n const now = new Date();\n const inProgress = props.milestone || (props.startTime && now >= new Date(props.startTime));\n const status = inProgress ? \"in-progress\" : props.isBookmarked ? \"subscribed\" : \"unsubscribed\";\n switch (status) {\n case \"in-progress\":\n return (\n <Button\n onClick={props.onLaunch}\n theme=\"dark\"\n border=\"rounded\"\n size=\"md\"\n spacing=\"md\"\n color=\"green\"\n text=\"Launch\"\n />\n );\n case \"unsubscribed\":\n return (\n <Button\n onClick={props.onRegister}\n theme=\"dark\"\n border=\"rounded\"\n size=\"md\"\n spacing=\"md\"\n color=\"sky\"\n text=\"Register\"\n />\n );\n case \"subscribed\":\n return (\n <Button\n onClick={props.onUnregister}\n theme=\"dark\"\n border=\"rounded\"\n size=\"md\"\n spacing=\"md\"\n color=\"slate\"\n text=\"Registered\"\n />\n );\n }\n };\n\n return (\n <Modal onClose={props.onClose} visible isLoading={!props.headline}>\n <div className={className}>\n <img className=\"w-full h-60 object-cover\" alt={props.headline} src={props.imageURL} />\n <div className=\"w-full grid grid-cols-1 gap-2 sm:flex sm:place-content-between p-5 border-b border-gray-200\">\n <div className=\"flex items-start grow md:max-w-[22rem]\">\n <div className=\"inline-block min-w-6 w-6 h-6 text-slate-600\">\n <Icon name={(props.pathway as IconName) || \"explore\"} />\n </div>\n\n <div className=\"grow align-top ml-2 inline-block leading-none\">\n <p className=\"font-semibold capitalize text-slate-600 text-lg -mt-1.5\">{props.headline}</p>\n <div>\n <p className=\"text-sm inline-block capitalize text-slate-600\">{props.pathway}</p>\n {props.xp && <p className=\"ml-1 font-semibold inline-block text-sm text-green-500\">{props.xp} pts</p>}\n </div>\n </div>\n </div>\n\n <div className=\"flex shrink-0 items-center gap-2 max-h-[12rem]\">\n <ActionButton />\n {!props.formId && (\n <Button\n disabled={!props.canReflect}\n spacing=\"md\"\n border=\"rounded\"\n color=\"sky\"\n theme=\"dark\"\n text=\"Reflect\"\n size=\"md\"\n onClick={props.onReflect}\n />\n )}\n </div>\n </div>\n\n <div className=\"w-full max-h-[20rem] overflow-auto\">\n <div className=\"w-full p-5 border-b border-gray-200 grid grid-cols-1 gap-4\">\n {props.summary && (\n <div className=\"text-slate-600 grid grid-cols-1 gap-4\">\n <p className=\"font-semibold text-lg\">Summary</p>\n <p className=\"text-sm\">{props.summary}</p>\n </div>\n )}\n\n {props.skills && props.skills.length > 0 && (\n <div className=\"grid grid-cols-1 gap-4\">\n <p className=\"text-slate-600 font-semibold text-lg\">Skills</p>\n <div className=\"flex gap-2\">\n {props.skills.map((skill, i) => {\n return (\n <button\n onClick={() => props.onSkillClick && props.onSkillClick(skill)}\n key={skill + i}\n className=\"grow-0 cursor-pointer shadow-sm text-center font-semibold inline-block rounded-md bg-gray-100 hover:bg-gray-50 active:bg-gray-50 focus:bg-gray-50 px-4 py-2 text-sm text-gray-600\"\n >\n {skill}\n </button>\n );\n })}\n </div>\n </div>\n )}\n </div>\n <div className=\"w-full p-5 border-b border-gray-200 grid grid-cols-1 gap-4\">\n {(props.address || props.link || props.startTime) && (\n <div className=\"text-slate-600 grid grid-cols-1 gap-4\">\n <p className=\"font-semibold text-lg\">Details</p>\n <div className=\"grid grid-cols-1 gap-8\">\n {props.address && (\n <div className=\"flex gap-1 items-center\">\n <div className=\"grow-0 w-6 h-6 min-w-6 text-slate-600\">\n <Icon name=\"pin\" />\n </div>\n <div className=\"grow font-medium inline-block capitalize px-4 py-2 text-sm text-slate-600\">\n {props.address}\n </div>\n </div>\n )}\n\n {props.startTime && (\n <div className=\"flex gap-1 items-center\">\n <div className=\"grow-0 w-6 h-6 min-w-6 text-slate-600\">\n <Icon name=\"clock\" />\n </div>\n <div className=\"grow font-medium inline-block px-4 py-2 text-sm text-slate-600\">\n {new Intl.DateTimeFormat(\"en-US\", {\n dateStyle: \"full\",\n timeStyle: \"long\",\n }).format(new Date(props.startTime))}\n </div>\n </div>\n )}\n\n {props.link && (\n <div className=\"flex gap-1 items-center\">\n <div className=\"grow-0 w-6 h-6 min-w-6 text-slate-600\">\n <Icon name=\"globe\" />\n </div>\n <div className=\"grow font-medium inline-block px-4 py-2 text-sm text-slate-600 hover:underline\">\n <a href={props.link}>{props.link}</a>\n </div>\n </div>\n )}\n </div>\n </div>\n )}\n </div>\n </div>\n </div>\n </Modal>\n );\n};\n","import * as React from \"react\"\nimport { Icon, IconName } from \"../../Icon\";\n\n/**\n * ActivityItemProps\n */\nexport type ActivityItemProps = {\n headline?: string;\n pathway?: string;\n xp?: number;\n imageURL?: string;\n onClick?: () => void;\n};\n\n/**\n * ActivityItem\n * @param props\n * @constructor\n */\nexport const ActivityItem = (props: ActivityItemProps) => {\n return (\n <div onClick={props.onClick} className=\"grow cursor-pointer relative rounded-md min-w-64 h-[22rem] overflow-hidden\">\n <img className=\"h-full w-full object-cover\" alt={props.headline} src={props.imageURL} />\n <div className=\"absolute bottom-0 w-full\">\n <div className=\"p-5 bg-gray-800/75 w-full\">\n <div className=\"text-sm font-bold text-white w-full\">{props.headline}</div>\n <div className=\"mt-2 flex items-center gap-x-2 w-full\">\n <div className=\"flex-shrink-0 w-6 h-6 text-white fill-white\">\n <Icon name={(props.pathway as IconName) || \"globe\"} />\n </div>\n {props.pathway && (\n <span className=\"grow\">\n <div className=\"text-sm font-medium capitalize text-white w-full\">{props.pathway}</div>\n </span>\n )}\n {props.xp && (\n <div className=\"text-slate-600 shadow-md whitespace-nowrap font-bold rounded-md text-sm px-5 py-2 bg-cyan-400\">\n {props.xp} pts\n </div>\n )}\n </div>\n </div>\n </div>\n </div>\n );\n};\n","import React from \"react\";\nimport { Icon } from \"../../Icon\";\n\n/**\n * FilterProps\n */\nexport interface TagFilterProps {\n tags?: string[];\n onChange?: (tags: string[]) => void;\n}\n\n/**\n * Filter\n * @param props\n * @constructor\n */\nexport const TagFilter = (props: TagFilterProps) => {\n const timeTags = [\"15 min\", \"30 min\", \"45 min\", \"60 min\"];\n const skillTags = [\"Civic\", \"College\", \"Academic\", \"Personal\"];\n const formatTags = [\"Online\", \"Live\", \"In-Person\"];\n const init: Record<string, boolean> = {};\n props.tags &&\n props.tags.map((tag) => {\n init[tag] = true;\n });\n\n const [active, setActive] = React.useState(init);\n const onTagClick = (tag: string) => {\n if (active[tag]) {\n setActive({ ...active, [tag]: false });\n const tags = Object.entries({ ...active, [tag]: false })\n .filter(([, active]) => active)\n .map(([tag]) => tag);\n props.onChange && props.onChange(tags);\n } else {\n setActive({ ...active, [tag]: true });\n\n const tags = Object.entries({ ...active, [tag]: true })\n .filter(([, active]) => active)\n .map(([tag]) => tag);\n props.onChange && props.onChange(tags);\n }\n };\n\n React.useEffect(() => {\n props.tags &&\n props.tags.map((tag) => {\n init[tag] = true;\n });\n }, [props.tags]);\n\n return (\n <article className=\"w-full\">\n <div className=\"grow p-5 shadow-sm rounded-md bg-sky-100\">\n <div className=\"grid grid-cols-1 gap-2 md:grid-cols-3\">\n <div>\n <div className=\"inline-block w-4 h-4 max-w-4 stroke-gray-600 fill-gray-600\">\n <Icon name=\"clock\" />\n </div>\n <span className=\"ml-2 text-gray-600 font-semibold\">Duration</span>\n <div className=\"mt-5 grid grid-cols-2 gap-3\">\n {timeTags.map((tag, i) => {\n const base =\n \"cursor-pointer shadow-sm text-center font-semibold inline-block rounded-md hover:text-gray-600 hover:bg-gray-50 active:bg-gray-50 px-4 py-2 text-xs\";\n const bg = active[tag] ? \"bg-sky-500 text-white\" : \"bg-gray-100 text-gray-600\";\n const className = [base, bg].join(\" \");\n return (\n <button onClick={() => onTagClick(tag)} key={tag + i} className={className}>\n {tag}\n </button>\n );\n })}\n </div>\n </div>\n\n <div>\n <div className=\"inline-block w-4 h-4 max-w-4 stroke-gray-600 fill-gray-600\">\n <Icon name=\"clock\" />\n </div>\n <span className=\"ml-2 text-gray-600 font-semibold\">Skills</span>\n <div className=\"mt-5 grid grid-cols-2 gap-3\">\n {skillTags.map((tag, i) => {\n const base =\n \"cursor-pointer shadow-sm text-center font-semibold inline-block rounded-md hover:text-gray-600 hover:bg-gray-50 active:bg-gray-50 px-4 py-2 text-xs\";\n const bg = active[tag] ? \"bg-sky-500 text-white\" : \"bg-gray-100 text-gray-600\";\n const className = [base, bg].join(\" \");\n return (\n <button onClick={() => onTagClick(tag)} key={tag + i} className={className}>\n {tag}\n </button>\n );\n })}\n </div>\n </div>\n\n <div>\n <div className=\"inline-block w-4 h-4 max-w-4 stroke-gray-600 fill-gray-600\">\n <Icon name=\"pin\" />\n </div>\n <span className=\"ml-2 text-gray-600 font-semibold\">Format</span>\n <div className=\"mt-5 grid grid-cols-2 gap-3\">\n {formatTags.map((tag, i) => {\n const base =\n \"cursor-pointer shadow-sm text-center font-semibold inline-block rounded-md hover:text-gray-600 hover:bg-gray-50 active:bg-gray-50 px-4 py-2 text-xs\";\n const bg = active[tag] ? \"bg-sky-500 text-white\" : \"bg-gray-100 text-gray-600\";\n const className = [base, bg].join(\" \");\n return (\n <button onClick={() => onTagClick(tag)} key={tag + i} className={className}>\n {tag}\n </button>\n );\n })}\n </div>\n </div>\n </div>\n </div>\n </article>\n );\n};\n","import React from \"react\";\nimport { Loader } from \"../../Loader\";\n\n/**\n * GalleryProps\n */\nexport type GalleryProps = {\n isLoading?: boolean;\n primary?: React.ReactNode;\n top?: React.ReactNode;\n soonest?: React.ReactNode;\n milestones?: React.ReactNode;\n filteredCount?: number;\n filtered?: React.ReactNode;\n};\n\n/**\n * A component for displaying a gallery of activities\n * @param props\n * @constructor\n */\nexport const Gallery = (props: GalleryProps) => {\n const hasPrimary = !!props.primary;\n const hasTop = props.top && React.Children.count(props.top) > 0;\n const hasSoonest = props.soonest && React.Children.count(props.soonest) > 0;\n const hasMilestones = props.milestones && React.Children.count(props.milestones) > 0;\n const numFiltered = props.filtered ? React.Children.count(props.filtered) : 0;\n const hasFiltered = numFiltered > 0;\n const hasAny = hasPrimary || hasTop || hasSoonest || hasMilestones || hasFiltered;\n\n return (\n <Loader isLoading={props.isLoading}>\n {(hasPrimary || hasTop) && (\n <label className=\"mt-5 relative block grid grid-cols-1 gap-y-2\">\n <p className=\"text-gray-600 font-semibold\">Trending</p>\n {hasPrimary && props.primary}\n {hasTop && props.top}\n </label>\n )}\n\n {hasSoonest && (\n <label className=\"mt-5 relative block grid grid-cols-1 gap-y-2\">\n <p className=\"text-gray-600 font-semibold\">Upcoming</p>\n {props.soonest}\n </label>\n )}\n\n {hasMilestones && (\n <label className=\"mt-5 relative block grid grid-cols-1 gap-y-2\">\n <p className=\"text-gray-600 font-semibold\">Milestones</p>\n {props.milestones}\n </label>\n )}\n\n {hasFiltered && !!props.filteredCount && (\n <label className=\"mt-5 relative block grid grid-cols-1 gap-y-2\">\n <p className=\"text-gray-600 font-semibold\">Results</p>\n <p className=\"text-gray-600 text-sm\">\n {\" \"}\n We found {props.filteredCount >= 10 ? \"10+\" : props.filteredCount}{\" \"}\n {props.filteredCount === 1 ? \"activity\" : \"activities\"}.\n </p>\n {props.filtered}\n </label>\n )}\n\n {!hasAny && (\n <label className=\"mt-5 relative block\">\n <p className=\"text-gray-600 font-semibold\">Activities</p>\n <p className=\"text-gray-600 mt-5 text-sm\">No activities found.</p>\n </label>\n )}\n </Loader>\n );\n};\n","// A utility for debouncing search\nexport const debounce = (func: (search: string) => void, delay?: number) => {\n let timeout: NodeJS.Timeout;\n return (search: string) => {\n clearTimeout(timeout);\n timeout = setTimeout(() => func(search), delay || 300);\n };\n};\n","import React, { useCallback } from \"react\";\nimport { Button } from \"../../Button\";\nimport { TagFilter } from \"../TagFilter/TagFilter\";\nimport { Gallery } from \"../Gallery/Gallery\";\nimport { ActivityItem } from \"../ActivityItem/ActivityItem\";\nimport { debounce } from \"../../../utils/search\";\n\n/**\n * ActivityListProps\n */\nexport type ActivityListProps = {\n isLoading?: boolean;\n search?: string;\n onSearch?: (search?: string) => void;\n tags?: string[];\n onTagChange?: (tags: string[]) => void;\n activities?: any[];\n top?: any[];\n upcoming?: any[];\n milestones?: any[];\n onActivityClick?: (activityId: string) => void;\n};\n\n/**\n * A component for listing activities\n * @param props\n * @constructor\n */\nexport const ActivityList = (props: ActivityListProps) => {\n const primary = !props.top ? null : props.top.length > 0 ? props?.top[0] : null;\n const top = props.top ? props.top.filter((a) => !primary || a.activityId !== primary.activityId) : props.top;\n const topMap: any = {};\n if (top) {\n top.map((a) => (topMap[a.activityId] = true));\n }\n const upcoming = props.upcoming\n ? props.upcoming.filter(\n (a) => !topMap[a.activityId] && (!primary || (primary && a.activityId !== primary.activityId))\n )\n : props.upcoming;\n return (\n <>\n <Search value={props.search} send={(search?: string) => props.onSearch && props.onSearch(search)} />\n <TagFilter tags={props.tags} onChange={props.onTagChange} />\n <Gallery\n isLoading={props.isLoading}\n primary={\n !props.search &&\n primary && (\n <ActivityItem\n {...primary}\n onClick={() => props.onActivityClick && props.onActivityClick(primary.activityId)}\n />\n )\n }\n top={\n !props.search &&\n top &&\n top.length > 0 && (\n <article className=\"grid grid-cols-1 md:flex gap-2 overflow-auto\">\n {top.map((activity) => {\n return (\n <ActivityItem\n key={`${activity.activityId}`}\n {...activity}\n onClick={() => props.onActivityClick && props.onActivityClick(activity.activityId)}\n />\n );\n })}\n </article>\n )\n }\n soonest={\n !props.search &&\n upcoming &&\n upcoming.length > 0 && (\n <article className=\"grid grid-cols-1 md:flex gap-2 overflow-auto\">\n {upcoming.map((activity) => {\n return (\n <ActivityItem\n key={`${activity.activityId}`}\n {...activity}\n onClick={() => props.onActivityClick && props.onActivityClick(activity.activityId)}\n />\n );\n })}\n </article>\n )\n }\n milestones={\n !props.search &&\n props.milestones &&\n props.milestones.length > 0 && (\n <article className=\"grid grid-cols-1 md:flex gap-2 overflow-auto\">\n {props.milestones.map((activity) => {\n return (\n <ActivityItem\n key={`${activity.activityId}`}\n {...activity}\n onClick={() => props.onActivityClick && props.onActivityClick(activity.activityId)}\n />\n );\n })}\n </article>\n )\n }\n filteredCount={props.activities?.length}\n filtered={\n !!props.search &&\n props.activities &&\n props.activities.length > 0 && (\n <article className=\"grid grid-cols-1 md:flex gap-2 overflow-auto\">\n {props.activities.map((activity) => {\n return (\n <ActivityItem\n key={`${activity.activityId}`}\n {...activity}\n onClick={() => props.onActivityClick && props.onActivityClick(activity.activityId)}\n />\n );\n })}\n </article>\n )\n }\n />\n </>\n );\n};\n\n/**\n * A component for debouncing search\n * @param send\n * @param value\n * @constructor\n */\nconst Search = ({ send, value }: { value?: string; send: (search?: string) => void }) => {\n const handler = useCallback(debounce(send), []);\n return (\n <div className=\"foo relative block\">\n <label className=\"relative block\">\n <span className=\"absolute inset-y-0 left-0 top-0 flex items-center pl-2\">\n <Button icon=\"search\" />\n </span>\n <input\n autoFocus={true}\n defaultValue={value}\n onChange={(e) => handler(e.target.value)}\n className=\"placeholder:text-slate-400 text-slate-400 block bg-white w-full text-sm border border-slate-300 rounded-md py-3 px-8 shadow-sm cursor-pointer hover:bg-sky-50 hover:border-sky-100 hover:text-slate-500 hover:placeholder:text-slate-600 focus:outline-none hover:bg-sky-50 hover:border-sky-100\"\n type=\"text\"\n name=\"search\"\n placeholder=\"Search for activities...\"\n />\n </label>\n </div>\n );\n};\n","import React from \"react\";\nimport { builder } from \"../../../utils/classname/classname\";\nimport { Button } from \"../../Button\";\nimport { Icon, IconName } from \"../../Icon\";\nimport { Modal } from \"../../Modal\";\n\n/**\n * ActivityReflectionProps\n */\nexport type ActivityReflectionProps = {\n startTime?: string;\n reflection?: string;\n pathway?: string;\n rating?: number;\n xp?: number;\n headline?: string;\n imageURL?: string;\n canReflect?: boolean;\n hasChanges?: boolean;\n\n onClose?: () => void;\n onSave?: (reflection: string, rating: number) => Promise<void>;\n};\n\n/**\n * ActivityReflection\n * @param props\n * @constructor\n */\nexport const ActivityReflection = (props: ActivityReflectionProps) => {\n const className = builder(\"w-full md:w-[40rem]\").if(!!props.headline, \"min-h-[20rem]\").build();\n const [reaction, setReaction] = React.useState({\n rating: props.rating,\n reflection: props.reflection,\n });\n const hasChanges =\n props.hasChanges ||\n (props.canReflect && (props.rating !== reaction.rating || props.reflection !== reaction.reflection));\n const setFeedback = (feedback: string) => setReaction({ ...reaction, reflection: feedback });\n const setRating = (rating: number) => setReaction({ ...reaction, rating: rating });\n\n React.useEffect(() => {\n setReaction({\n rating: props.rating,\n reflection: props.reflection,\n });\n }, [props.reflection]);\n\n return (\n <Modal isLoading={!props.headline} visible onClose={props.onClose}>\n <div className={className}>\n <img className=\"w-full h-60 object-cover\" alt={props.headline} src={props.imageURL} />\n <div className=\"w-full grid grid-cols-1 gap-2 sm:flex p-5 border-b border-gray-200\">\n <div className=\"flex items-start grow\">\n <div className=\"inline-block min-w-6 w-6 h-6 text-slate-600\">\n <Icon name={(props.pathway as IconName) || \"explore\"} />\n </div>\n\n <div className=\"grow align-top ml-2 inline-block leading-none\">\n <p className=\"font-semibold capitalize text-slate-600 text-lg\">{props.headline}</p>\n <div>\n <p className=\"text-sm inline-block capitalize text-slate-600\">{props.pathway}</p>\n {props.xp && <p className=\"ml-1 font-semibold inline-block text-sm text-green-500\">{props.xp} pts</p>}\n </div>\n </div>\n </div>\n\n {hasChanges && (\n <Button\n onClick={() => props.onSave && props.onSave(reaction.reflection || \"\", reaction.rating || 0)}\n theme=\"dark\"\n border=\"rounded\"\n size=\"sm\"\n spacing=\"md\"\n color=\"slate\"\n text=\"Save\"\n />\n )}\n </div>\n\n <div className=\"w-full max-h-[20rem] overflow-auto\">\n <div className=\"w-full p-5 border-b border-gray-200 grid grid-cols-1 gap-4\">\n <div className=\"text-slate-600 grid grid-cols-1 gap-4\">\n <p className=\"font-semibold text-lg\">Almost there, share your reflection to earn your points!</p>\n <p className=\"font-semibold text-sm\">Write a short reflection on your experience.</p>\n\n <textarea\n disabled={!props.canReflect}\n onChange={(e) => setFeedback(e.target.value)}\n placeholder=\"Describe your experience in 20 words or more. Then rate your experience.\"\n defaultValue={props.reflection}\n className=\"resize-none text-slate-500 focus:text-slate-600 h-24 mt-1 block w-full px-3 py-2 bg-white border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\n invalid:border-pink-500 invalid:text-pink-600\n focus:invalid:border-pink-500 focus:invalid:ring-pink-500\"\n />\n\n {props.canReflect && <Rating {...props} {...reaction} setRating={setRating} />}\n </div>\n </div>\n </div>\n </div>\n </Modal>\n );\n};\n\n/**\n * Rating.\n * @param props\n * @constructor\n */\nconst Rating = (props: ActivityReflectionProps & { setRating?: (rating: number) => void }) => {\n /**\n * Max points for reflection.\n */\n const maxPoints = 5;\n const [rating, setRating] = React.useState(props.rating || -1);\n const buttons = Array.from({ length: maxPoints }, (_, i) => {\n const color = i < rating ? \"text-sky-200\" : \"text-slate-200\";\n return (\n <div key={i} onMouseEnter={() => setRating(i + 1)} onMouseLeave={() => setRating(props.rating || -1)}>\n <div className={`cursor-pointer h-4 w-4 ${color}`} onClick={() => props.setRating && props.setRating(i + 1)}>\n <Icon name=\"circle\" />\n </div>\n </div>\n );\n });\n const labels = Array.from({ length: maxPoints }, (_, i) => {\n if (i === 0) {\n return (\n <p key={i} className=\"inline-block text-sm text-monochrome-500\">\n Poor\n </p>\n );\n }\n\n if (i === maxPoints - 1) {\n return (\n <p key={i} className=\"inline-block text-sm text-monochrome-500\">\n Amazing\n </p>\n );\n }\n\n return <p key={i} className=\"inline-block text-monochrome-500\" />;\n });\n\n React.useEffect(() => {\n if (props.rating && props.rating !== rating) {\n setRating(props.rating);\n }\n }, [props.rating]);\n\n return (\n <div className=\"inline-block mt-2\">\n <h6 className=\"font-bold pb-2 text-md\"> Rate your experience from poor to amazing</h6>\n <div className={`w-[17.7rem] grid grid-cols-5 justify-self-center items-center gap-7 mb-2`}>{buttons}</div>\n <div className={`w-[16.7rem] text-[0.5rem] grid grid-cols-5 justify-self-center items-center`}>{labels}</div>\n </div>\n );\n};\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M30 16.5C29.9995 16.2037 29.8464 15.9279 29.5935 15.7685L26.858 14.0523L28.5697 11.3347C28.7282 11.0824 28.7451 10.7677 28.6145 10.5002C28.4837 10.2329 28.2235 10.05 27.9248 10.0157L24.7073 9.64584L25.0555 6.46528V6.46504C25.0874 6.17018 24.9644 5.87943 24.7296 5.69465C24.4947 5.50961 24.1803 5.45615 23.8961 5.55242L20.833 6.59372L19.7457 3.57738C19.645 3.29776 19.4064 3.08829 19.1133 3.02249C18.8203 2.9567 18.5133 3.0433 18.2999 3.25228L16 5.50499L13.7001 3.25129C13.4867 3.0423 13.1797 2.95571 12.8867 3.02174C12.5936 3.08754 12.355 3.29677 12.2543 3.57639L11.1686 6.59298L8.10386 5.55168C7.8199 5.4525 7.50408 5.50644 7.27035 5.69391C7.03514 5.87847 6.91215 6.16922 6.94449 6.46429L7.29264 9.64486L4.07519 10.0149C3.77653 10.0493 3.51633 10.2322 3.38575 10.4994C3.25492 10.7667 3.27182 11.0817 3.43034 11.334L5.14197 14.0516L2.40647 15.7685C2.15337 15.9277 2 16.2037 2 16.5C2 16.7963 2.15337 17.0721 2.40647 17.2314L5.14197 18.9474L3.43034 21.665C3.27183 21.9173 3.25492 22.2322 3.38575 22.4995C3.51634 22.7668 3.77654 22.9497 4.07519 22.984L7.29264 23.3541L6.94449 26.5347C6.91264 26.8298 7.03563 27.1203 7.27035 27.3053C7.50531 27.4901 7.81965 27.5438 8.10386 27.4473L11.167 26.406L12.2543 29.4226C12.355 29.7022 12.5936 29.9114 12.8867 29.9772C13.1797 30.0433 13.4867 29.9567 13.7001 29.7477L16 27.4947L18.2999 29.7484C18.4648 29.9095 18.6872 30 18.919 30C18.9849 30 19.0504 29.9927 19.1145 29.978C19.4073 29.9124 19.6457 29.703 19.7456 29.4233L20.8313 26.4068L23.8961 27.4481V27.4483C24.1803 27.5446 24.4946 27.4909 24.7296 27.3061C24.9643 27.121 25.0873 26.8305 25.0555 26.5357L24.7073 23.3549L27.9248 22.9848V22.985C28.2234 22.9507 28.4836 22.7678 28.6142 22.5005C28.745 22.233 28.7281 21.9183 28.5696 21.666L26.858 18.9484L29.5935 17.2314C29.8463 17.0718 29.9995 16.7963 30 16.5ZM25.1807 17.946C24.7745 18.2012 24.6522 18.7317 24.9063 19.1354L26.3469 21.4202L23.6389 21.7318V21.732C23.1601 21.7872 22.8156 22.2129 22.8671 22.686L23.1603 25.3647L20.5809 24.4886C20.1257 24.3328 19.6283 24.5691 19.4678 25.0178L18.5554 27.5553L16.6191 25.6579C16.2761 25.3226 15.7239 25.3226 15.3809 25.6579L13.4446 27.555L12.5305 25.0169C12.3707 24.5677 11.8726 24.3309 11.4174 24.4876L8.83965 25.3637L9.13292 22.6851V22.6853C9.18438 22.2122 8.83989 21.7864 8.36113 21.7311L5.65304 21.4195L7.09371 19.1344V19.1347C7.34778 18.731 7.22552 18.2005 6.8193 17.9451L4.51596 16.4998L6.8193 15.0538V15.054C7.22552 14.7988 7.34778 14.2683 7.09371 13.8646L5.65304 11.5795L8.36113 11.268C8.83987 11.2126 9.18436 10.7871 9.13292 10.3138L8.83965 7.63509L11.4191 8.51143C11.6376 8.58787 11.8782 8.5748 12.0872 8.47563C12.2962 8.37621 12.4562 8.19866 12.5321 7.98217L13.4446 5.44475L15.3809 7.34214C15.7239 7.6774 16.2761 7.6774 16.6191 7.34214L18.5554 5.44475L19.4695 7.98286V7.9831C19.629 8.43252 20.1273 8.66933 20.5826 8.51211L23.1603 7.63602L22.8671 10.3147C22.8156 10.7878 23.1601 11.2136 23.6388 11.2687L26.3469 11.5802L24.9063 13.8653C24.6522 14.269 24.7745 14.7995 25.1807 15.0547L27.484 16.4997L25.1807 17.946Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M27.7395 19.8411L24.7224 16.9388V12.8356C24.7224 12.3729 24.3322 12.01 23.8642 12.01H22.7587V0.826144C22.7587 0.363421 22.3685 0.000562624 21.9005 0.000562624C21.4322 0.000562624 21.0423 0.375958 21.0423 0.826144V12.0221H19.612L16.8551 9.3701L16.8548 0.825581C16.8548 0.362858 16.4645 0 15.9965 0C15.5282 0 15.1383 0.375396 15.1383 0.825581V9.3701L12.3814 12.0221H10.9638L11.1068 0.838207C11.1068 0.387732 10.7297 8.03748e-05 10.2486 8.03748e-05C9.78031 8.03748e-05 9.39037 0.362906 9.39037 0.813035L9.24733 12.0218H8.12885C7.64783 12.0218 7.27062 12.3972 7.27062 12.8474V16.9506L4.2535 19.853C3.9155 20.1781 3.9155 20.7036 4.2535 21.0288L7.27062 23.9311V28.0343C7.27062 28.497 7.66086 28.8599 8.12885 28.8599H12.3944L15.4115 31.7622C15.5806 31.9249 15.7887 32 16.0228 32C16.257 32 16.465 31.9124 16.6341 31.7622L19.6513 28.8599H23.9168C24.3978 28.8599 24.775 28.4845 24.775 28.0343V23.9311L27.7921 21.0288C28.0775 20.6911 28.0775 20.1659 27.7392 19.8404L27.7395 19.8411ZM19.7028 25.7208L15.9836 23.8319L12.2644 25.7208L12.9796 21.7303L9.97554 18.9031L14.1369 18.3151L15.9967 14.6874L17.8564 18.3151L22.0178 18.9031L19.0137 21.7303L19.7028 25.7208Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M9.27969 5.71875V26.7187M9.27969 5.71875L14.0047 10.3854M9.27969 5.71875L4.55469 10.3854M23.4547 26.7187V5.71875M23.4547 26.7187L28.1797 22.0521M23.4547 26.7187L18.7297 22.0521\" fill=\"none\" stroke=\"#232A3A\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle r=\"13\" transform=\"matrix(0 -1 -1 0 16 16)\" fill=\"none\" stroke=\"#232A3A\" stroke-width=\"4\"/>\n <path d=\"M19.7153 12.2116C19.8913 12.044 20.1257 11.9513 20.3688 11.9532C20.6119 11.955 20.8448 12.0512 21.0183 12.2215C21.1918 12.3918 21.2924 12.6228 21.2989 12.8658C21.3053 13.1089 21.217 13.3449 21.0528 13.5241L16.0653 19.7616C15.9795 19.854 15.876 19.9281 15.7609 19.9796C15.6459 20.031 15.5216 20.0588 15.3956 20.0611C15.2695 20.0634 15.1443 20.0403 15.0275 19.9932C14.9106 19.946 14.8044 19.8758 14.7153 19.7866L11.4078 16.4791C11.3157 16.3933 11.2418 16.2898 11.1905 16.1748C11.1393 16.0598 11.1117 15.9357 11.1095 15.8098C11.1073 15.6839 11.1305 15.5589 11.1776 15.4421C11.2248 15.3254 11.2949 15.2194 11.384 15.1303C11.473 15.0413 11.579 14.9711 11.6958 14.924C11.8125 14.8768 11.9375 14.8537 12.0634 14.8559C12.1893 14.8581 12.3134 14.8857 12.4284 14.9369C12.5434 14.9881 12.6469 15.062 12.7328 15.1541L15.3503 17.7704L19.6915 12.2391C19.6993 12.2295 19.7064 12.2203 19.7153 12.2116Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M15.9974 2.66406C13.3603 2.66406 10.7825 3.44605 8.5898 4.91113C6.39714 6.37622 4.68818 8.4586 3.67901 10.8949C2.66984 13.3313 2.4058 16.0122 2.92026 18.5986C3.43473 21.185 4.70461 23.5608 6.56931 25.4255C8.43401 27.2902 10.8098 28.5601 13.3962 29.0745C15.9826 29.589 18.6635 29.325 21.0998 28.3158C23.5362 27.3066 25.6186 25.5977 27.0837 23.405C28.5487 21.2123 29.3307 18.6345 29.3307 15.9974C29.3307 14.2464 28.9859 12.5126 28.3158 10.8949C27.6457 9.27727 26.6636 7.80742 25.4255 6.56931C24.1874 5.33119 22.7175 4.34906 21.0998 3.679C19.4822 3.00894 17.7484 2.66406 15.9974 2.66406V2.66406ZM21.7307 12.8107L15.6374 20.8107C15.5132 20.9721 15.3537 21.1028 15.1711 21.193C14.9885 21.2831 14.7877 21.3302 14.5841 21.3307C14.3815 21.3318 14.1814 21.2868 13.9989 21.199C13.8164 21.1112 13.6563 20.983 13.5307 20.8241L10.2774 16.6774C10.1697 16.5391 10.0903 16.3809 10.0438 16.2119C9.99723 16.0429 9.98442 15.8664 10.0061 15.6924C10.0278 15.5184 10.0835 15.3505 10.1701 15.198C10.2566 15.0456 10.3724 14.9117 10.5107 14.8041C10.7901 14.5866 11.1444 14.489 11.4957 14.5327C11.6697 14.5544 11.8377 14.6101 11.9901 14.6967C12.1425 14.7833 12.2764 14.8991 12.3841 15.0374L14.5574 17.8107L19.5974 11.1441C19.7042 11.004 19.8376 10.8863 19.9898 10.7978C20.1421 10.7092 20.3104 10.6516 20.4849 10.628C20.6595 10.6045 20.837 10.6156 21.0073 10.6607C21.1776 10.7057 21.3373 10.7839 21.4774 10.8907C21.6175 10.9975 21.7351 11.1309 21.8237 11.2832C21.9122 11.4355 21.9699 11.6037 21.9934 11.7783C22.017 11.9528 22.0059 12.1303 21.9608 12.3006C21.9157 12.4709 21.8375 12.6307 21.7307 12.7707V12.8107Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle r=\"13\" transform=\"matrix(0 -1 -1 0 16 16)\" fill=\"none\" stroke=\"#232A3A\" stroke-width=\"4\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M16.0001 2C11.8223 2 8.43754 5.44636 8.43754 9.7001V14.6H6.37489C5.61311 14.6 5 15.2246 5 15.9999V28.6001C5 29.3757 5.61337 30 6.37489 30H25.6251C26.3869 30 27 29.3755 27 28.6001V15.9999C27 15.2243 26.3866 14.6 25.6251 14.6H23.5625V9.7001C23.5625 5.44636 20.1777 2 15.9999 2H16.0001ZM16.0001 3.39989C19.4398 3.39989 22.1877 6.19756 22.1877 9.69998V14.5999H9.81255V9.69998C9.81255 6.19774 12.5603 3.39989 16.0001 3.39989ZM16.0001 18.8001C17.1394 18.8001 18.0628 19.7403 18.0628 20.9003C18.0628 21.5218 17.7969 22.0797 17.3753 22.4642V24.4003C17.3753 25.1759 16.762 25.8002 16.0004 25.8002C15.2386 25.8002 14.6255 25.1757 14.6255 24.4003V22.4642C14.204 22.0797 13.9381 21.5218 13.9381 20.9003C13.9381 19.7403 14.8615 18.8001 16.0007 18.8001H16.0001Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M16.0171 11.7659V9.31281C12.231 9.30656 8.85018 12.1268 8.13614 16.1618C7.42972 20.1487 9.53867 24.0827 13.1508 25.5172C14.1842 25.9278 14.7032 27.135 14.3117 28.2176C13.9636 29.179 13.0112 29.7157 12.0797 29.5352C11.9628 29.5133 11.8456 29.4792 11.7317 29.4341C6.30964 27.2843 3.14299 21.3811 4.20368 15.4016C5.27455 9.35214 10.3432 5.13816 16.0174 5.14566V3.11267C16.0174 2.13727 17.2009 1.63493 17.9179 2.30837L22.5286 6.63435C22.9951 7.07302 22.9951 7.8072 22.5286 8.24585L17.9179 12.572C17.2009 13.2439 16.0171 12.7428 16.0171 11.7659ZM18.6618 25.5841C18.3648 25.6962 18.0587 25.7893 17.7497 25.861C16.6713 26.1114 15.9888 27.23 16.2274 28.3593C16.4058 29.2054 17.0508 29.8167 17.8158 29.9661C18.0723 30.0144 18.3422 30.0128 18.6123 29.9505C19.0833 29.8401 19.5468 29.7001 19.9997 29.5321C21.0393 29.1448 21.5853 27.9454 21.2161 26.8565C20.8457 25.7661 19.6997 25.1968 18.6618 25.5841ZM22.6383 22.3626C22.5528 22.4964 22.4643 22.6271 22.3697 22.7546C21.6962 23.6708 21.8582 24.9852 22.7341 25.6915C22.9952 25.8999 23.2861 26.0321 23.5892 26.0897C24.3031 26.228 25.0651 25.9528 25.5407 25.3071C25.6831 25.1112 25.8226 24.9091 25.9562 24.702C26.5726 23.7423 26.3311 22.4419 25.4162 21.7948C24.4996 21.1522 23.2562 21.4029 22.6383 22.3626ZM26.0522 15.9381C24.9482 15.9068 24.0273 16.8605 23.9986 18.0178C23.9717 19.0583 24.6766 19.9263 25.6247 20.1099C25.7266 20.1303 25.8332 20.1426 25.9396 20.1441C27.0421 20.1785 27.9631 19.2498 27.9978 18.0939C27.9978 18.0908 27.9993 18.0488 27.9993 18.0457C28.0292 16.8884 27.1487 15.9582 26.0522 15.9381Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M19.834 23.794C20.6105 23.0295 20.1915 21.2735 18.923 19.245C19.384 19.173 19.815 19.063 20.141 18.8945C21.314 18.289 22.106 17.1855 22.7055 16.044C23.35 14.8195 23.7825 13.4735 24.6235 12.3585C24.7655 12.17 24.9075 12.001 25.049 11.842C26.8635 12.0595 28.312 12.4495 28.312 12.4495L28.8655 11.043C28.1669 10.7923 27.4506 10.5939 26.7225 10.4495C27.1685 10.196 27.4595 10.117 27.4595 10.117L26.935 8.699C26.094 9.0545 25.4115 9.579 24.84 10.207C22.704 10.0875 20.553 10.513 18.856 11.829C17.58 12.819 16.718 14.1915 15.907 15.5645C15.1884 14.8593 14.4232 14.2034 13.6165 13.601C13.7695 13.3495 13.9335 13.1235 14.11 12.949C15.1765 11.899 16.5835 11.2275 17.5065 10.026C19.4465 7.503 18.0275 3.548 16.4315 1.5C16.1455 1.7755 15.6725 2.177 15.3165 2.494C17.013 4.2315 18.1995 7.2735 16.87 9.5465C16.127 10.817 14.754 11.614 13.794 12.7055C13.628 12.895 13.4795 13.135 13.345 13.4C10.8345 11.5995 8.5305 10.875 7.6175 11.774C7.52684 11.8667 7.45217 11.9739 7.3965 12.091L7.393 12.0875L7.3685 12.159C7.3345 12.2365 7.3035 12.317 7.2825 12.405L1 30.5L19.331 24.091L19.326 24.086C19.523 24.0225 19.6965 23.929 19.834 23.794ZM4.6465 28.166L3.1165 27.453L4.149 24.478L8.8845 26.684L4.6465 28.166M13.122 25.2025L5.1825 21.503L6.215 18.5285L12.148 21.5065C8.6065 19.2015 7.2475 15.553 7.2475 15.553L7.6005 14.5365C8.228 16.124 9.6085 18.101 11.5055 19.967C13.4185 21.85 15.446 23.214 17.0665 23.8235L13.122 25.2025M16.1715 15.8325C17.0005 14.644 17.855 13.4445 19.043 12.591C20.174 11.778 22.01 11.6295 23.7505 11.727C23.1625 12.754 22.728 13.8935 22.338 14.988C21.8665 16.313 21.2345 17.687 20.0295 18.4995C19.7045 18.7185 19.249 18.8785 18.7625 18.997C18.094 17.9725 17.217 16.8895 16.1715 15.8325\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M11.5159 11.0027C12.0169 11.0027 10.5149 9.50273 10.7659 8.18723C11.7279 8.11323 13.9269 8.54673 12.6469 6.78873C14.0949 7.04373 14.8449 5.96273 13.4779 4.93823C13.9329 4.97023 14.6399 4.11223 14.1324 4.00373C12.5064 3.65923 11.8699 4.53873 12.9019 5.80723C11.8169 5.60523 10.9324 6.10973 11.7474 7.24273C8.61438 6.85223 10.3969 11.0027 11.5159 11.0027ZM22.2719 9.66973C22.7414 9.45773 21.9449 8.05723 21.6859 7.69923C23.6674 7.48723 23.5924 6.89673 22.3499 5.63173C25.7279 5.74523 22.4544 3.82523 22.9134 3.06523C23.3109 2.40623 24.5304 3.09723 24.4174 2.73023C24.0364 1.50273 20.4224 2.33273 22.7094 4.62473C20.7134 4.66373 20.5219 5.31623 22.0094 6.66873C19.4184 6.69723 21.5324 10.0027 22.2719 9.66973M30.8479 14.6152C30.0569 14.8367 29.9349 14.7537 30.0404 15.5412C28.2134 14.7002 26.2804 13.5307 27.4534 16.6292C25.3784 15.3937 25.4819 16.4757 25.0939 18.2562C24.5889 17.8627 23.8714 16.8257 23.8714 16.8257L23.1114 17.4712C23.1114 17.4712 24.5039 19.4352 25.1914 19.3237C25.7959 19.2262 26.1249 18.0837 26.1584 17.0767C28.0834 17.8892 29.0049 17.9977 28.1244 15.6217C29.6634 16.4862 31.5504 17.2487 30.8479 14.6152M3.02387 5.72123L4.43787 7.13573L3.02387 8.54973L1.60938 7.13573L3.02387 5.72123ZM14.9034 16.8832L13.4884 18.2972L12.0739 16.8822L13.4889 15.4677L14.9034 16.8832ZM8.60937 3.50273L10.0234 4.91673L8.60887 6.33173L7.19487 4.91673L8.60937 3.50273ZM24.0049 23.2447L22.5899 21.8302L24.0039 20.4152L25.4189 21.8297L24.0049 23.2447ZM20.8519 28.0957L19.4379 26.6817L20.8519 25.2672L22.2664 26.6817L20.8519 28.0957ZM27.0559 29.2127L25.6409 27.7982L27.0544 26.3832L28.4694 27.7977L27.0559 29.2127ZM28.4699 22.7707L27.0559 21.3562L28.4699 19.9422L29.8839 21.3562L28.4699 22.7707ZM26.1094 5.00273L27.5234 6.41673L26.1089 7.83123L24.6949 6.41673L26.1094 5.00273Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M8.47647 14.934C7.88484 14.934 7.40475 15.4131 7.40475 16.0058C7.40475 16.5983 7.88379 17.0775 8.47647 17.0775H23.5064C24.098 17.0775 24.5781 16.5984 24.5781 16.0058C24.5781 15.4133 24.0991 14.934 23.5064 14.934H8.47647Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M17.0707 8.48323C17.0707 7.8916 16.5917 7.41151 15.999 7.41151C15.4065 7.41151 14.9273 7.89055 14.9273 8.48323V23.5134C14.9273 24.105 15.4063 24.5851 15.999 24.5851C16.5915 24.5851 17.0707 24.106 17.0707 23.5134V8.48323Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <circle r=\"13\" transform=\"matrix(0 -1 -1 0 16 16)\" fill=\"none\" stroke=\"#232A3A\" stroke-width=\"2\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M20.9331 11.0752C20.8328 10.9747 20.7136 10.8949 20.5823 10.8405L19.4033 11.075L19.4032 11.0751C19.4031 11.0752 19.4031 11.0753 19.403 11.0754L15.5002 14.9702L11.5968 11.0669C11.4964 10.9664 11.3771 10.8867 11.2459 10.8324C11.1146 10.778 10.9739 10.75 10.8319 10.75C10.6898 10.75 10.5491 10.778 10.4178 10.8324C10.2866 10.8867 10.1673 10.9664 10.0669 11.0669C9.96641 11.1673 9.88672 11.2866 9.83235 11.4178C9.77798 11.5491 9.75 11.6898 9.75 11.8319C9.75 11.9739 9.77798 12.1146 9.83235 12.2459C9.88672 12.3771 9.96641 12.4964 10.0669 12.5968L13.97 16.5L10.0669 20.4032C9.96641 20.5036 9.88672 20.6229 9.83235 20.7541C9.77798 20.8854 9.75 21.0261 9.75 21.1681C9.75 21.3102 9.77798 21.4509 9.83235 21.5822C9.88672 21.7134 9.96641 21.8327 10.0669 21.9331C10.1673 22.0336 10.2866 22.1133 10.4178 22.1676C10.5491 22.222 10.6898 22.25 10.8319 22.25C10.9739 22.25 11.1146 22.222 11.2459 22.1676C11.3771 22.1133 11.4964 22.0336 11.5968 21.9331L15.5 18.03L19.4032 21.9331C19.5036 22.0336 19.6229 22.1133 19.7541 22.1676C19.8854 22.222 20.0261 22.25 20.1681 22.25C20.3102 22.25 20.4509 22.222 20.5822 22.1676C20.7134 22.1133 20.8327 22.0336 20.9331 21.9331C21.0336 21.8327 21.1133 21.7134 21.1676 21.5822C21.222 21.4509 21.25 21.3102 21.25 21.1681C21.25 21.0261 21.222 20.8854 21.1676 20.7541C21.1133 20.6229 21.0336 20.5036 20.9331 20.4032L17.03 16.5L20.9331 12.5968C21.3478 12.1822 21.3478 11.4899 20.9331 11.0752Z\" fill=\"#232A3A\" stroke=\"#232A3A\" stroke-width=\"0.5\"/>\n <circle r=\"13\" transform=\"matrix(0 -1 -1 0 16 16)\" fill=\"none\" stroke=\"#232A3A\" stroke-width=\"4\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M22.6977 9.32071C22.5995 9.22227 22.4828 9.14417 22.3543 9.09089C22.2259 9.0376 22.0882 9.01017 21.9491 9.01017C21.81 9.01017 21.6723 9.0376 21.5438 9.09089C21.4154 9.14417 21.2987 9.22227 21.2005 9.32071L16.0078 14.5027L10.8152 9.31009C10.7169 9.21178 10.6001 9.1338 10.4717 9.08059C10.3432 9.02738 10.2056 9 10.0665 9C9.9275 9 9.78983 9.02738 9.66138 9.08059C9.53293 9.1338 9.41622 9.21178 9.31791 9.31009C9.21959 9.40841 9.14161 9.52512 9.0884 9.65357C9.0352 9.78202 9.00781 9.91969 9.00781 10.0587C9.00781 10.1978 9.0352 10.3354 9.0884 10.4639C9.14161 10.5923 9.21959 10.709 9.31791 10.8074L14.5105 16L9.31791 21.1926C9.21959 21.291 9.14161 21.4077 9.0884 21.5361C9.0352 21.6646 9.00781 21.8022 9.00781 21.9413C9.00781 22.0803 9.0352 22.218 9.0884 22.3464C9.14161 22.4749 9.21959 22.5916 9.31791 22.6899C9.41622 22.7882 9.53293 22.8662 9.66138 22.9194C9.78983 22.9726 9.9275 23 10.0665 23C10.2056 23 10.3432 22.9726 10.4717 22.9194C10.6001 22.8662 10.7169 22.7882 10.8152 22.6899L16.0078 17.4973L21.2005 22.6899C21.2988 22.7882 21.4155 22.8662 21.5439 22.9194C21.6724 22.9726 21.8101 23 21.9491 23C22.0881 23 22.2258 22.9726 22.3542 22.9194C22.4827 22.8662 22.5994 22.7882 22.6977 22.6899C22.796 22.5916 22.874 22.4749 22.9272 22.3464C22.9804 22.218 23.0078 22.0803 23.0078 21.9413C23.0078 21.8022 22.9804 21.6646 22.9272 21.5361C22.874 21.4077 22.796 21.291 22.6977 21.1926L17.5051 16L22.6977 10.8074C23.1012 10.4038 23.1012 9.72423 22.6977 9.32071Z\" fill=\"#232A3A\" stroke=\"none\"/>\n <rect x=\"2.75781\" y=\"2.75\" width=\"26.5\" height=\"26.5\" rx=\"1.75\" fill=\"none\" stroke=\"#232A3A\" stroke-width=\"1.5\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M20.1989 3H3.39991C2.55992 3 2 3.53995 2 4.35V28.65C2 29.46 2.55992 30 3.39991 30H20.1989C21.0389 30 21.5988 29.46 21.5988 28.65V4.35C21.5988 3.53995 21.0389 3 20.1989 3ZM4.79983 7.05H10.3995V15.15H4.79983V7.05ZM15.9991 25.95C15.9991 26.76 15.4392 27.3 14.5992 27.3H6.19974C5.35974 27.3 4.79983 26.76 4.79983 25.95C4.79983 25.1399 5.35974 24.6 6.19974 24.6H14.5992C15.4392 24.6 15.9991 25.1399 15.9991 25.95ZM18.799 20.55C18.799 21.36 18.2391 21.9 17.3991 21.9H6.19974C5.35974 21.9 4.79983 21.36 4.79983 20.55C4.79983 19.7399 5.35974 19.2 6.19974 19.2H17.3991C18.2391 19.2 18.799 19.7399 18.799 20.55Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M24.3984 24.6C24.3984 25.5451 24.9584 26.4899 25.7984 26.8951V27.3C25.7984 28.1101 26.3583 30 27.1983 30C28.0383 30 28.5982 28.1101 28.5982 27.3V26.8951C29.4382 26.4902 29.9981 25.5451 29.9981 24.6V9.75H24.3984V24.6Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M29.2981 4.35938H25.0984C24.6785 4.35938 24.3984 4.62945 24.3984 5.03437V7.05937H29.9981V5.03437C29.9981 4.62945 29.718 4.35938 29.2981 4.35938Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M9.00165 16.5781C9.01717 17.0886 9.2043 17.575 9.52747 17.945L18.7054 28.3596C19.0572 28.7584 19.54 28.9886 20.0476 28.9996C20.5552 29.0106 21.0461 28.8014 21.4121 28.4182C21.7782 28.0349 21.9895 27.509 21.9996 26.956C22.0097 26.403 21.8177 25.8683 21.4659 25.4695L13.5667 16.5L21.4659 7.53047C21.8177 7.13169 22.0097 6.59699 21.9996 6.04401C21.9895 5.49103 21.7782 4.96506 21.4121 4.58181C21.0461 4.19856 20.5552 3.98943 20.0476 4.00041C19.54 4.0114 19.0572 4.2416 18.7054 4.64038L9.52747 15.055C9.35048 15.2574 9.21273 15.4966 9.12239 15.7583C9.03206 16.02 8.99099 16.2988 9.00165 16.5781Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M9.00165 16.5781C9.01717 17.0886 9.2043 17.575 9.52747 17.945L18.7054 28.3596C19.0572 28.7584 19.54 28.9886 20.0476 28.9996C20.5552 29.0106 21.0461 28.8014 21.4121 28.4182C21.7782 28.0349 21.9895 27.509 21.9996 26.956C22.0097 26.403 21.8177 25.8683 21.4659 25.4695L13.5667 16.5L21.4659 7.53047C21.8177 7.13169 22.0097 6.59699 21.9996 6.04401C21.9895 5.49103 21.7782 4.96506 21.4121 4.58181C21.0461 4.19856 20.5552 3.98943 20.0476 4.00041C19.54 4.0114 19.0572 4.2416 18.7054 4.64038L9.52747 15.055C9.35048 15.2574 9.21273 15.4966 9.12239 15.7583C9.03206 16.02 8.99099 16.2988 9.00165 16.5781Z\" fill=\"none\" stroke=\"#232A3A\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M25.6617 17.941V14.1386C25.6617 9.85426 22.779 6.23291 18.8177 5.04641C18.8253 4.95973 18.8302 4.87197 18.8302 4.78398C18.8302 3.24924 17.5604 2 16 2C14.4397 2 13.1702 3.24901 13.1702 4.78398C13.1702 4.87197 13.1746 4.95973 13.1829 5.04641C9.22138 6.23268 6.33887 9.85431 6.33887 14.1386V17.9415C5.48552 19.4789 5 21.2417 5 23.1169V30H27V23.1169C27.0004 21.2417 26.5149 19.4784 25.6617 17.941ZM14.2516 4.78416C14.2516 3.83563 15.036 3.06466 16.0001 3.06466C16.9644 3.06466 17.7486 3.83563 17.7486 4.78416V4.79076C17.1813 4.68913 16.5974 4.63502 16.0001 4.63502C15.4034 4.63502 14.8184 4.68935 14.2516 4.79076V4.78416ZM10.5317 9.01593H21.4679V10.0216H10.5317V9.01593ZM22.922 25.3302C22.922 25.8001 22.5347 26.1813 22.0568 26.1813L9.94303 26.1815C9.46514 26.1815 9.07784 25.8003 9.07784 25.3304V21.0085C9.07784 20.5379 9.46516 20.1574 9.94303 20.1574H22.0568C22.5347 20.1574 22.922 20.538 22.922 21.0085V25.3302Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M11.1688 21.8579H20.8312V22.7459H11.1688V21.8579Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M14.3745 4.0506C12.9112 4.00052 11.4476 4.21336 10.0587 4.68938C7.62813 5.51591 4.27977 7.50735 2.18352 12.3792C1.73698 13.3185 2.13394 14.4332 3.06391 14.8842C3.99389 15.3352 5.09775 14.9343 5.54429 13.9951C5.56909 13.9575 5.58148 13.9075 5.59388 13.8699C5.96604 12.9932 6.4371 12.1539 7.00762 11.39C6.99523 11.5652 6.98283 11.7408 6.98283 11.9286C6.97043 14.2332 7.97507 16.4125 9.71116 17.9029L12.3651 15.2226C10.5668 13.8949 10.1701 11.3398 11.4847 9.52369C12.7993 7.70753 15.3293 7.30691 17.1276 8.63455C18.9258 9.9622 19.3225 12.5173 18.0079 14.3334C17.5862 14.9221 17.0157 15.3856 16.346 15.6736C15.416 16.112 15.0191 17.239 15.4656 18.1786C15.8874 19.0677 16.9166 19.4812 17.822 19.1178C18.7892 18.6919 19.6575 18.0782 20.3768 17.3142L24.9035 13.1185H29.9882V4L14.3745 4.0506Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M20.3363 26.5855L24.1189 22.7653L19.9146 18.5193C19.3441 18.9703 18.724 19.3458 18.0543 19.6341C17.7568 19.7718 17.4218 19.8344 17.0995 19.8344C15.7602 19.8344 14.6811 18.7446 14.6811 17.392C14.6811 16.4151 15.2516 15.5383 16.1444 15.1501L16.442 14.9999L14.8671 13.4219L5.61536 22.7655L9.39792 26.5856H2.03125V28.0009H29.9965V26.5856L20.3363 26.5855Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M4.79688 13.2031H10.3969V24.4031H4.79688V13.2031Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M21.6016 7.60156H27.2016V24.4016H21.6016V7.60156Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M13.2031 2H18.8031V24.4H13.2031V2Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M2 27.2031H30V30.0031H2V27.2031Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M24.8003 13.6735C24.462 13.0342 23.7519 12.6672 22.8504 12.6672H17.9825V3.89054C17.9825 2.60498 17.4677 2.17855 17.0341 2.04866C16.606 1.91956 15.9435 1.98372 15.2365 3.04315L12.1444 7.64159C11.6397 8.39665 10.9061 9.47252 10.2631 10.4138L6.47886 15.9019C5.79138 16.912 5.99372 17.6397 6.17496 17.9832C6.36089 18.3361 6.86557 18.9284 8.14679 18.9284H13.2943V28.1221C13.2943 28.5087 13.2943 29.6855 14.1763 29.9531C14.281 29.9851 14.3826 30 14.4802 30C15.1997 30 15.7193 29.2222 15.9122 28.9327L18.8606 24.321L19.059 24.0245C19.7793 22.9455 20.8184 21.39 21.4816 20.415L24.5206 15.905C25.0409 15.1366 25.1433 14.3245 24.8003 13.6735ZM23.2277 15.0255L20.1879 19.5356C19.5246 20.5105 18.4825 22.0707 17.7614 23.1528L14.8568 27.6793V18.1444C14.8568 17.7117 14.5084 17.3619 14.0756 17.3619H8.14835C7.75227 17.3619 7.57883 17.2719 7.56243 17.2649C7.5554 17.2289 7.57962 17.0615 7.76711 16.7876L11.5537 11.2956C12.1998 10.3496 12.9373 9.2683 13.4428 8.51167L16.4208 4.08381V13.4497C16.4208 13.8824 16.77 14.2321 17.202 14.2321H22.8511C23.1792 14.2321 23.3761 14.3221 23.4207 14.4066C23.4667 14.4966 23.4285 14.729 23.2277 15.0255Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M16.8801 3.5L17.3747 13L23.8039 14L16.3856 26.5L14.4074 28V27.5L13.9128 18H7.97821L6.9891 16.5L15.891 3.5H16.8801Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M24.8003 13.6735C24.462 13.0342 23.7519 12.6672 22.8504 12.6672H17.9825V3.89054C17.9825 2.60498 17.4677 2.17855 17.0341 2.04866C16.606 1.91956 15.9435 1.98372 15.2365 3.04315L12.1444 7.64159C11.6397 8.39665 10.9061 9.47252 10.2631 10.4138L6.47886 15.9019C5.79138 16.912 5.99372 17.6397 6.17496 17.9832C6.36089 18.3361 6.86557 18.9284 8.14679 18.9284H13.2943V28.1221C13.2943 28.5087 13.2943 29.6855 14.1763 29.9531C14.281 29.9851 14.3826 30 14.4802 30C15.1997 30 15.7193 29.2222 15.9122 28.9327L18.8606 24.321L19.059 24.0245C19.7793 22.9455 20.8184 21.39 21.4816 20.415L24.5206 15.905C25.0409 15.1366 25.1433 14.3245 24.8003 13.6735ZM23.2277 15.0255L20.1879 19.5356C19.5246 20.5105 18.4825 22.0707 17.7614 23.1528L14.8568 27.6793V18.1444C14.8568 17.7117 14.5084 17.3619 14.0756 17.3619H8.14835C7.75227 17.3619 7.57883 17.2719 7.56243 17.2649C7.5554 17.2289 7.57962 17.0615 7.76711 16.7876L11.5537 11.2956C12.1998 10.3496 12.9373 9.2683 13.4428 8.51167L16.4208 4.08381V13.4497C16.4208 13.8824 16.77 14.2321 17.202 14.2321H22.8511C23.1792 14.2321 23.3761 14.3221 23.4207 14.4066C23.4667 14.4966 23.4285 14.729 23.2277 15.0255Z\" fill=\"none\" stroke=\"#232A3A\"/>\n <path d=\"M16.8801 3.5L17.3747 13L23.8039 14L16.3856 26.5L14.4074 28V27.5L13.9128 18H7.97821L6.9891 16.5L15.891 3.5H16.8801Z\" fill=\"none\" stroke=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M4.36084 8.29014H8.65192V5.58888C8.65192 4.12557 9.72465 3 11.012 3H20.9885C22.2759 3 23.456 4.12551 23.456 5.58888V8.29014H27.6399C28.9273 8.29014 30 9.41565 30 10.7663V26.5238C30 27.8745 28.9273 29 27.6399 29H4.36007C3.07274 29 2 27.8745 2 26.5238V10.7663C2 9.41565 3.07274 8.29014 4.36007 8.29014H4.36084ZM10.3686 8.29014H21.6331V5.58888C21.6331 5.25109 21.3111 4.91355 20.9894 4.91355H11.0129C10.6909 4.91355 10.3692 5.25134 10.3692 5.58888V8.29014H10.3686Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M25.6052 2.00369C25.2525 2.04244 24.9583 2.37783 24.966 2.73247V6.01758L23.8894 7.09393V5.24395C23.8982 4.83689 23.498 4.47059 23.0933 4.51517C22.7406 4.55392 22.4464 4.88932 22.4541 5.24395V8.52906L22.2971 8.68603C20.1416 6.77011 17.3063 5.60273 14.2007 5.60273C7.47093 5.60273 2 11.0727 2 17.8014C2 24.53 7.47093 30 14.2007 30C20.9304 30 26.4013 24.53 26.4013 17.8014C26.4013 15.2034 25.583 12.7948 24.1922 10.8163L23.1718 11.8254C23.1735 11.828 23.17 11.8339 23.1718 11.8366C24.3053 13.5432 24.966 15.5955 24.966 17.8014C24.966 23.7544 20.1547 28.5649 14.2007 28.5649C8.24666 28.5649 3.43537 23.7544 3.43537 17.8014C3.43537 11.8483 8.24666 7.03787 14.2007 7.03787C16.9172 7.03787 19.3955 8.04073 21.2878 9.69511L19.5048 11.4778C18.07 10.2725 16.2168 9.54935 14.2007 9.54935C9.65095 9.54935 5.94728 13.2524 5.94728 17.8014C5.94728 22.3503 9.65095 26.0534 14.2007 26.0534C18.7504 26.0534 22.4541 22.3503 22.4541 17.8014C22.4541 16.2964 22.0404 14.8907 21.3327 13.6754L20.2898 14.7181C20.7573 15.6431 21.0187 16.6901 21.0187 17.8014C21.0187 21.5747 17.9747 24.6182 14.2007 24.6182C10.4267 24.6182 7.38265 21.5747 7.38265 17.8014C7.38265 14.028 10.4267 10.9845 14.2007 10.9845C15.8282 10.9845 17.3136 11.5513 18.4844 12.4981L16.4322 14.5499C15.7955 14.1097 15.029 13.8548 14.2007 13.8548C12.0292 13.8548 10.2534 15.6302 10.2534 17.8014C10.2534 19.9725 12.0292 21.748 14.2007 21.748C16.3722 21.748 18.1479 19.9725 18.1479 17.8014C18.1479 17.5127 18.1072 17.2304 18.047 16.9605L16.6453 18.362C16.3919 19.4824 15.4023 20.3129 14.2007 20.3129C12.8049 20.3129 11.6888 19.1969 11.6888 17.8014C11.6888 16.4058 12.8049 15.2899 14.2007 15.2899C14.6332 15.2899 15.0355 15.4033 15.3893 15.5926L13.696 17.2856C13.4172 17.5381 13.3931 18.0214 13.6456 18.3003C13.8981 18.5792 14.3815 18.6032 14.6604 18.3508C14.6642 18.3471 23.4633 9.54935 23.4633 9.54935H26.7602C27.1394 9.55471 27.4881 9.21092 27.4881 8.83178C27.4881 8.45265 27.1394 8.10886 26.7602 8.11422H24.8987L25.9752 7.03787H29.2721C29.6513 7.04323 30 6.69944 30 6.3203C30 5.94116 29.6513 5.59737 29.2721 5.60273H26.4013V2.73247C26.4101 2.32541 26.0099 1.95911 25.6052 2.00369Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M30 16.7891L16 20.0625L2 16.7891H30Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M4.61343 18.875L15.6608 21.4578L15.9919 21.5357L16.323 21.4582L27.3694 18.8754C27.9161 19.1244 28.2969 19.6677 28.2969 20.3015C28.2969 21.1703 27.5846 21.8743 26.7062 21.8743H5.27678C4.39778 21.8743 3.68567 21.1701 3.68567 20.3015C3.68607 19.6673 4.06763 19.124 4.61313 18.875L4.61343 18.875Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M3.38201 23.2891H28.6254C29.0045 23.2891 29.3125 23.5937 29.3125 23.9687C29.3125 25.6381 27.9386 26.9961 26.2512 26.9961H5.75651C4.0691 26.9961 2.69654 25.6383 2.69654 23.9687C2.69634 23.5936 3.00373 23.2891 3.38211 23.2891H3.38201Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M3.186 13.2105C5.91384 8.69572 10.7035 6 15.9986 6C21.2936 6 26.0834 8.69572 28.8117 13.2105C29.0777 13.6505 29.0838 14.1983 28.8281 14.6445C28.5719 15.0903 28.0934 15.3661 27.575 15.3661H4.42296C3.90454 15.3661 3.42587 15.0905 3.17011 14.6445C2.91396 14.1987 2.92009 13.6509 3.18633 13.2105H3.186Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M30 16C30 12.2869 28.525 8.72605 25.8994 6.10057C23.274 3.47499 19.713 2 16 2C12.287 2 8.72605 3.47499 6.10057 6.10057C3.47499 8.72595 2 12.287 2 16C2 19.713 3.47499 23.2739 6.10057 25.8994C8.72595 28.525 12.287 30 16 30C19.709 29.9869 23.2624 28.5076 25.8849 25.885C28.5074 23.2623 29.9869 19.709 30 16ZM26.2668 22.6605L20.1706 12.4997H27.734C28.245 14.198 28.3784 15.9872 28.125 17.7427C27.8715 19.4979 27.2373 21.1763 26.2668 22.6605ZM18.1294 19.4997H13.8708L11.7704 15.9998L13.8708 12.4998H18.1296L20.2298 15.9998L18.1294 19.4997ZM27.0513 10.7498H14.9209L18.9037 4.11183C20.6685 4.5464 22.3144 5.36708 23.7235 6.51492C25.1325 7.66296 26.2691 9.1094 27.0513 10.7498ZM16.0004 3.74984C16.3541 3.74984 16.7019 3.77347 17.048 3.80296L10.7506 14.2989L6.88106 7.84943C8.02581 6.56134 9.43005 5.5299 11.0019 4.8233C12.5736 4.11686 14.2772 3.75084 16.0004 3.74984ZM5.73347 9.3393L11.8297 19.5H4.26628C3.75534 17.8018 3.62194 16.0125 3.87527 14.2571C4.12878 12.5018 4.76298 10.8234 5.73347 9.3393ZM4.94908 21.2497H17.08L13.0974 27.8877C11.3326 27.4531 9.68629 26.6322 8.27735 25.4844C6.86817 24.3365 5.73127 22.8901 4.94908 21.2497ZM16 28.2497C15.6465 28.2497 15.2987 28.2262 14.9526 28.1965L21.25 17.7007L25.1195 24.1502C23.9747 25.4383 22.5705 26.4697 20.9986 27.1763C19.4269 27.8827 17.7232 28.2487 16 28.2497Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M18.3839 16.0435C18.3839 17.3361 17.3361 18.3839 16.0435 18.3839C14.751 18.3839 13.7031 17.3361 13.7031 16.0435C13.7031 14.751 14.751 13.7031 16.0435 13.7031C17.3361 13.7031 18.3839 14.751 18.3839 16.0435Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M24.131 17.3686C23.245 18.57 22.5632 19.5995 22.0522 20.5951L20.4844 23.65H18.8486V12.529C18.8486 12.4948 18.8146 12.4261 18.8146 12.3918L17.1106 8.27299C17.0084 8.0326 16.7697 7.86117 16.4973 7.86117C16.2246 7.86117 15.9862 8.03284 15.884 8.27299L14.18 12.3918V12.4261C14.18 12.4603 14.146 12.4948 14.146 12.529V23.65H12.5103L10.9425 20.5951C10.4314 19.5998 9.74955 18.57 8.8636 17.3686C5.93275 13.3869 6.51204 7.68914 10.2267 4.39402C13.8051 1.20199 19.2237 1.20199 22.8362 4.39402C26.4826 7.68927 27.0619 13.387 24.131 17.3686ZM12.7143 27.0823H20.2119V25.0227L12.7143 25.023V27.0823ZM16.4632 30C17.5878 30 18.5081 29.0732 18.5081 27.9404H14.4184C14.4184 29.0731 15.3385 30 16.4632 30ZM15.7817 11.9798H17.1447L16.4632 10.3323L15.7817 11.9798ZM15.4408 23.65H17.4857V13.3528H15.4408V23.65Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M29.2741 15.248H29.2083L26.3236 9.26713C26.7167 8.78631 26.8351 8.13738 26.6375 7.54849C26.4397 6.9598 25.9535 6.51385 25.35 6.36769C24.7463 6.22151 24.11 6.39541 23.6646 6.82856L22.6553 6.03943H22.6555C21.2584 4.95655 19.4404 4.57687 17.7267 5.01021L17.4609 5.07881H17.4607C17.3321 4.65962 17.0293 4.31603 16.6299 4.13551C16.2303 3.95483 15.7724 3.95483 15.3727 4.13551C14.9731 4.31599 14.6703 4.65962 14.5417 5.07881L14.2959 5.01021C12.5848 4.57965 10.7708 4.95916 9.37564 6.03943L8.36633 6.82856H8.36653C7.92121 6.3954 7.28482 6.22149 6.68117 6.36769C6.07773 6.51387 5.5915 6.9598 5.39367 7.54849C5.19604 8.13738 5.3145 8.78631 5.70756 9.26713L2.8143 15.248H2.74849C2.53989 15.2474 2.34026 15.3341 2.19849 15.4873C2.05671 15.6406 1.98551 15.8462 2.00246 16.0542C2.14345 17.7673 3.13976 19.2935 4.65123 20.1119C6.16286 20.9303 7.98544 20.9303 9.49706 20.1119C11.0087 19.2935 12.005 17.7672 12.146 16.0542C12.1636 15.8462 12.0932 15.6402 11.952 15.4865C11.8106 15.3327 11.6114 15.2452 11.4026 15.2452H11.3368L8.4778 9.32711L9.8672 8.46937L9.8674 8.46957C10.8619 7.86929 12.085 7.78536 13.1523 8.24362C13.5538 8.3912 13.9769 8.47136 14.4045 8.48094V10.0819C13.767 10.5757 13.3938 11.3369 13.3938 12.1432C13.3938 12.9496 13.7669 13.7106 14.4045 14.2046V23.462L8.93268 25.5947C8.68379 25.6718 8.46602 25.8268 8.31167 26.0366C8.15732 26.2466 8.07436 26.5006 8.07495 26.7611V26.8355C8.07495 27.1599 8.20398 27.4712 8.43332 27.7007C8.66286 27.9301 8.97417 28.0591 9.29861 28.0591H22.7214C23.0459 28.0591 23.3572 27.9301 23.5865 27.7007C23.816 27.4712 23.9449 27.1599 23.9449 26.8355V26.7611C23.9455 26.5008 23.8623 26.2474 23.708 26.038C23.5536 25.8284 23.336 25.674 23.0874 25.5976L17.615 23.462V14.2076C18.2526 13.7139 18.6259 12.9527 18.6259 12.1464C18.6259 11.3399 18.2526 10.5789 17.615 10.0849V8.48115C18.044 8.46899 18.4677 8.38682 18.8702 8.23805C19.9331 7.78895 21.1474 7.87949 22.1322 8.48115L23.5216 9.33889L20.6627 15.2569H20.5968L20.597 15.2567C20.3882 15.2569 20.189 15.3445 20.0478 15.4982C19.9064 15.652 19.836 15.8578 19.8538 16.0658C19.9948 17.7791 20.9911 19.305 22.5025 20.1235C24.0142 20.9419 25.8368 20.9419 27.3484 20.1235C28.86 19.305 29.8563 17.779 29.9974 16.0658C30.0149 15.8578 29.9445 15.652 29.8033 15.4982C29.6619 15.3445 29.4627 15.2569 29.2539 15.2567L29.2741 15.248ZM8.97549 15.248H5.19018L7.07715 11.3341L8.97549 15.248ZM23.0702 15.248L24.9571 11.3341L26.8441 15.248H23.0702Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M6.74961 4.54555H15.7498V2.63644C15.7498 2.28509 16.0858 2 16.4999 2C16.914 2 17.25 2.28509 17.25 2.63644V4.54555H26.2502C26.449 4.54555 26.6399 4.61246 26.7805 4.73178C26.9211 4.8511 27.0003 5.01303 27 5.182V23C27.0003 23.169 26.9211 23.3309 26.7805 23.4502C26.6399 23.5695 26.449 23.6364 26.2502 23.6364H21.3571L23.9459 29.1276C24.0996 29.4536 23.9128 29.8237 23.5283 29.9541C23.1441 30.0845 22.7079 29.926 22.5542 29.5997L19.743 23.6362H17.2501V29.3636C17.2501 29.7149 16.9141 30 16.5 30C16.0859 30 15.7499 29.7149 15.7499 29.3636V23.6362H13.257L10.4458 29.5997C10.2921 29.926 9.85589 30.0845 9.4717 29.9541C9.08723 29.8237 8.9004 29.4536 9.05409 29.1276L11.6429 23.6364H6.74985C6.55096 23.6364 6.36011 23.5695 6.21948 23.4502C6.07886 23.3309 5.99975 23.169 6 23V5.182C5.99975 5.01303 6.07886 4.8511 6.21948 4.73178C6.36011 4.61246 6.55096 4.54555 6.74985 4.54555H6.74961Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M16 6C8.26944 6 2 16.5 2 16.5C2 16.5 8.26924 27 16 27C23.7319 27 30 16.5 30 16.5C30 16.5 23.7321 6 16 6ZM16 23.5C12.1347 23.5 9 20.366 9 16.5C9 12.6342 12.1348 9.5 16 9.5C19.8658 9.5 23 12.634 23 16.5C23 20.3658 19.8658 23.5 16 23.5Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M19.4997 16.4999C19.4997 18.4329 17.9329 19.9997 15.9999 19.9997C14.0668 19.9997 12.5 18.4329 12.5 16.4999C12.5 14.5668 14.0668 13 15.9999 13C17.9329 13 19.4997 14.5668 19.4997 16.4999Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M11.5578 3.27942H20.4433V9.92633H16.9793L17.9153 21.7477C17.9709 22.4511 17.3947 23.0319 16.7589 23.0319H15.2433C14.6071 23.0319 14.0309 22.4508 14.087 21.7477L15.0226 9.92633H11.5581V3.27942H11.5578ZM9.58664 26.6184H10.5622V25.2518C10.5622 24.6193 11.0929 24.1027 11.7426 24.1027H20.255C20.9052 24.1027 21.4355 24.6192 21.4355 25.2518V26.6184H22.4131C23.2863 26.6184 24 27.3131 24 28.1631V30H8V28.1631C8 27.3131 8.71321 26.6184 9.58693 26.6184H9.58664ZM22.4929 2H22.4923C21.7149 2 21.0782 2.61931 21.0782 3.37642V9.8291C21.0782 10.5858 21.7146 11.2055 22.4923 11.2055H22.4929C23.2708 11.2055 23.9069 10.586 23.9069 9.8291V3.37642C23.9069 2.61926 23.2707 2 22.4929 2ZM9.50541 2H9.50656C10.2839 2 10.9206 2.61931 10.9206 3.37642V9.8291C10.9206 10.5858 10.2842 11.2055 9.50656 11.2055H9.50541C8.72804 11.2055 8.09182 10.586 8.09182 9.8291V3.37642C8.09182 2.61926 8.72804 2 9.50541 2Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M6 6C6 4.93914 6.42143 3.92172 7.17157 3.17157C7.92172 2.42143 8.93914 2 10 2C11.0609 2 12.0783 2.42143 12.8284 3.17157C13.5786 3.92172 14 4.93914 14 6C14 7.06087 13.5786 8.07829 12.8284 8.82843C12.0783 9.57858 11.0609 10 10 10C8.93914 10 7.92172 9.57858 7.17157 8.82843C6.42143 8.07829 6 7.06087 6 6Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M19.5575 9.16509L19.6415 9.22909C20.4901 9.85811 21.553 10.1259 22.5983 9.97412C23.6437 9.8223 24.5865 9.26318 25.2211 8.41876C25.8557 7.57435 26.1305 6.5132 25.9856 5.46689C25.8407 4.42059 25.2878 3.47407 24.4476 2.83391C23.6074 2.19375 22.5481 1.91192 21.5009 2.04992C20.4536 2.18793 19.5035 2.73456 18.8578 3.57052C18.2121 4.40649 17.9233 5.46392 18.0544 6.51204C18.1855 7.56017 18.7258 8.5139 19.5575 9.16509Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M12.5333 11.9993C12.7845 11.5236 13.129 11.1035 13.5463 10.764C13.9637 10.4246 14.4452 10.1728 14.962 10.0238C15.4789 9.87475 16.0205 9.83149 16.5545 9.8966C17.0885 9.96171 17.6038 10.1339 18.0697 10.4027C18.5356 10.6716 18.9425 11.0317 19.266 11.4615C19.5896 11.8913 19.8231 12.3819 19.9526 12.904C20.0822 13.4261 20.105 13.9689 20.0199 14.5001C19.9348 15.0312 19.7434 15.5398 19.4573 15.9953C18.9067 16.8715 18.0379 17.5003 17.0335 17.7495C16.0291 17.9987 14.9672 17.8489 14.0709 17.3316C13.1746 16.8144 12.5137 15.9698 12.2269 14.9755C11.9402 13.9811 12.05 12.9144 12.5333 11.9993Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M5 12H10.34C10.12 12.626 10 13.3 10 14C10 15.536 10.578 16.94 11.528 18H11C9.96888 17.9999 8.9629 18.3184 8.11977 18.912C7.27664 19.5056 6.63756 20.3452 6.29 21.316C5.61867 21.0463 4.9901 20.6805 4.424 20.23C2.92 19.02 2 17.232 2 15C2 14.2044 2.31607 13.4413 2.87868 12.8787C3.44129 12.3161 4.20435 12 5 12Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M20.9968 18C23.1668 18 25.0148 19.382 25.7048 21.316C26.3848 21.038 27.0148 20.676 27.5728 20.23C29.0768 19.02 29.9968 17.232 29.9968 15C29.9968 14.2044 29.6807 13.4413 29.1181 12.8787C28.5555 12.3161 27.7924 12 26.9968 12H21.6568C21.8768 12.626 21.9968 13.3 21.9968 14C21.9986 15.4762 21.4543 16.901 20.4688 18H20.9968Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M23.774 21.856C23.92 22.208 24 22.596 24 23C24 25.232 23.082 27.02 21.576 28.23C20.094 29.42 18.106 30 16 30C13.894 30 11.906 29.42 10.424 28.23C8.92001 27.02 8.00001 25.232 8.00001 23C7.99896 22.6058 8.07583 22.2152 8.22622 21.8507C8.37661 21.4863 8.59755 21.1551 8.87634 20.8763C9.15512 20.5976 9.48626 20.3766 9.85071 20.2262C10.2152 20.0758 10.6058 19.999 11 20H21C21.5942 19.9999 22.1751 20.1762 22.669 20.5066C23.1628 20.8371 23.5474 21.3067 23.774 21.856Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M18.2699 12.5503L25.085 17.6837C25.5122 16.7272 25.7511 15.7398 25.8134 14.6811C25.8284 14.4216 25.831 14.1588 25.8207 13.8983L20.6165 8.57031H20.5705C18.1164 8.57031 16.4563 10.695 16.426 10.7172L13.6106 13.7403C13.1739 14.2066 13.0655 14.8627 13.6165 15.3219C14.0338 15.6699 14.6359 15.6384 15.0165 15.2477L17.6345 12.5967C17.862 12.3917 18.1831 12.4846 18.2699 12.5504L18.2699 12.5503Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M21.8514 4.26562C21.4034 4.26602 20.9816 4.44522 20.6637 4.77065C19.9975 5.4525 19.9975 6.56158 20.6637 7.24302L27.1268 13.8588C27.7645 14.5109 28.8677 14.5105 29.5028 13.8592C30.169 13.1773 30.169 12.0683 29.5028 11.3868L23.0397 4.77105C22.7208 4.44521 22.2989 4.26563 21.8514 4.26563C21.4034 4.26602 22.299 4.26563 21.8514 4.26563V4.26562Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M10.1515 4C9.70354 4 9.28174 4.17919 8.96338 4.50503L2.49924 11.1213C1.83352 11.8023 1.83352 12.9118 2.49964 13.5933C3.14544 14.2547 4.22974 14.2543 4.87569 13.5929L11.3393 6.97659C12.0047 6.29556 12.0047 5.18668 11.3389 4.50524C11.0258 4.18972 10.6018 4.00001 10.1516 4.00001L10.1515 4Z\" fill=\"#232A3A\"/>\n <path d=\"M7.89505 18.1324L6.44542 19.6165C6.18493 19.8832 6.18493 20.3166 6.44502 20.5829L6.67768 20.8212C6.92103 21.0707 7.33979 21.0707 7.58273 20.8212L9.03237 19.3371C9.29286 19.0704 9.29286 18.6366 9.03237 18.3699L8.8003 18.1321C8.55756 17.8839 8.1398 17.8821 7.89504 18.1323L7.89505 18.1324Z\" fill=\"#232A3A\"/>\n <path d=\"M10.1758 19.8128C10.0061 19.8128 9.84517 19.8812 9.7238 20.006L9.72339 20.0064L8.27314 21.4906C8.01305 21.7569 8.01305 22.1907 8.27354 22.4574L8.50561 22.6951C8.74896 22.9435 9.1673 22.9439 9.41107 22.6947L10.8603 21.2106C11.1208 20.9439 11.1208 20.5101 10.8603 20.2434L10.6286 20.0064C10.5069 19.8812 10.3462 19.8128 10.1758 19.8128L10.1758 19.8128ZM9.3774 19.6719H9.38184H9.3774Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M12.0665 21.6175C11.8967 21.6175 11.7358 21.6859 11.6145 21.8107L11.6141 21.8111L10.1638 23.2953C9.90373 23.5616 9.90373 23.9954 10.1638 24.2617L10.3965 24.5C10.6398 24.7484 11.0582 24.7488 11.3019 24.4996L12.7522 23.0154C13.0123 22.7491 13.0123 22.3154 12.7522 22.0491L12.5195 21.8113C12.3976 21.6859 12.2369 21.6175 12.0665 21.6175H12.0665ZM11.2681 21.4766H11.2725H11.2681Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M13.9102 23.5009C13.7404 23.5009 13.5795 23.5693 13.4582 23.6941L13.4578 23.6945L12.0075 25.1787C11.7474 25.445 11.7474 25.8788 12.0079 26.1455L12.24 26.3832C12.4833 26.6316 12.9017 26.632 13.1454 26.3828L14.5951 24.8987C14.8556 24.632 14.8556 24.1982 14.5951 23.9315L14.3634 23.6949C14.2412 23.5693 14.0803 23.5009 13.9102 23.5009L13.9102 23.5009ZM13.1112 23.3594H13.1156H13.1112Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M14.7779 26.0714L15.9932 27.212C16.2154 27.4224 16.3203 27.6573 16.6029 27.8139C16.9529 28.009 17.3834 28.0544 17.7876 27.9405C18.1431 27.8397 18.4243 27.6294 18.5805 27.348C18.7346 27.071 18.7711 26.7027 18.6804 26.3368C18.6378 26.1661 18.6924 25.9861 18.8235 25.8674C18.9535 25.7488 19.1382 25.7105 19.3068 25.7678C19.7114 25.9073 20.1146 25.8954 20.3346 25.7353C20.6522 25.5045 20.8441 24.7876 20.6016 24.0325C20.5407 23.8435 20.603 23.6368 20.7588 23.5119C20.9151 23.3871 21.1318 23.3715 21.3034 23.4707C21.9312 23.8316 22.5748 23.7739 22.8611 23.5348C23.1831 23.2663 23.3553 22.5218 23.0702 21.7875C23.0069 21.624 23.0381 21.439 23.1525 21.3053C23.2658 21.1711 23.442 21.1114 23.6168 21.1443C23.8805 21.1985 24.1448 21.1715 24.3801 21.0687C25.0124 20.7931 25.2509 20.0216 25.1599 19.4019C25.1261 19.1735 25.0416 18.9552 24.9089 18.7516L18.0262 13.5668L15.7066 15.9156C14.9701 16.6673 13.8047 16.7286 12.9955 16.0543C12.5352 15.6707 12.2693 15.1111 12.266 14.5189C12.2634 13.9611 12.5009 13.4325 12.9194 13.065L15.4941 10.3011C14.4878 9.14184 13.0414 8.48438 11.467 8.48438L11.3717 8.48517C11.3138 8.48596 11.2565 8.48874 11.2009 8.49231L6.36609 13.4416C6.19633 14.873 6.43243 16.3277 7.03811 17.6146L7.19436 17.4547C7.80485 16.8298 8.87445 16.8298 9.48453 17.4543L9.71719 17.6926C10.0293 18.0117 10.1841 18.4318 10.1823 18.8515C10.614 18.8529 11.0186 19.0249 11.3227 19.3365L11.5543 19.5734C11.8483 19.8748 12.0037 20.2656 12.0187 20.6611C12.4794 20.6495 12.8985 20.8202 13.2159 21.1446L13.4479 21.382C13.7582 21.6993 13.913 22.1162 13.9135 22.5333C14.3421 22.5365 14.7435 22.7085 15.0458 23.0183L15.2774 23.2549C15.8988 23.8914 15.8988 24.9253 15.2778 25.5605L14.7779 26.0714Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M22.3695 4C17.6059 4 16 8.38371 16 8.38371C16 8.38371 14.3959 4 9.63053 4C4.86828 4 2 8.70759 2 12.5875C2 19.0897 16 29 16 29C16 29 30 19.092 30 12.5888C30 8.70754 27.1328 4 22.3695 4Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M29.2091 25.3808L23.8605 20.0322C23.4347 19.6123 22.7465 19.6064 22.3148 20.0263L21.2824 18.9879C24.1055 15.1499 24.0939 9.74842 20.9266 5.89867C17.1819 1.34309 10.4507 0.683913 5.89526 4.42882C1.33968 8.17941 0.686233 14.9109 4.43114 19.4659C8.04762 23.8639 14.4404 24.6106 18.9786 21.2858L20.017 22.3242C19.6028 22.7558 19.6087 23.4382 20.0286 23.8639L25.3772 29.2126C26.433 30.2625 28.1537 30.2625 29.2095 29.2126C30.2595 28.1569 30.2591 26.4366 29.2091 25.3808ZM17.975 19.1281C14.4344 22.0445 9.17296 21.5604 6.23305 17.9848C3.31658 14.4382 3.80077 9.17701 7.37636 6.23137C10.8586 3.36151 16.1435 3.7582 19.124 7.38036C22.0346 10.9151 21.5681 16.1767 17.975 19.1281Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M17.5043 15.9201V17.1566L7.85079 17.1568V15.9203C7.85079 14.2578 9.19815 12.9104 10.8606 12.9104H14.4946C16.1569 12.9104 17.5043 14.2578 17.5043 15.9201Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M10.1374 9.41632C10.1374 8.01646 11.2748 6.87315 12.6746 6.87315C14.0804 6.87315 15.2178 8.01646 15.2178 9.41632C15.2178 10.8221 14.0804 11.9595 12.6746 11.9595C11.2748 11.9595 10.1374 10.8221 10.1374 9.41632Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M19.4595 22.3799C19.4595 22.7422 19.1587 23.037 18.7869 23.037H17.1564V24.63C17.1564 24.9928 16.8551 25.2873 16.4843 25.2873H15.5177C15.1463 25.2873 14.8456 24.9927 14.8456 24.63V23.037H13.2151C12.8435 23.037 12.5425 22.7424 12.5425 22.3799V21.4355C12.5425 21.0732 12.8433 20.7784 13.2151 20.7784H14.8456V19.1854C14.8456 18.8227 15.1464 18.529 15.5177 18.529H16.4843C16.8551 18.529 17.1564 18.8226 17.1564 19.1854V20.7784H18.7869C19.1585 20.7784 19.4595 21.073 19.4595 21.4355V22.3799Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M23.2976 6.52956C23.2976 7.64393 22.3737 8.54726 21.2324 8.54726L10.769 8.54702C9.62788 8.54702 8.70352 7.64369 8.70352 6.52931V4.01795C8.70352 2.90283 9.62813 2 10.769 2H21.2324C22.3738 2 23.2976 2.90283 23.2976 4.01795V6.52956Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M23.6088 13.07L21.2125 10.7975V9.23904H10.7879V10.7975L8.39161 13.07C7.07573 14.3189 6 16.8942 6 18.7957V27.9813C6 29.0964 6.92487 30 8.0655 30H23.9342C25.0754 30 25.9998 29.0964 25.9998 27.9813L26 18.7957C26 16.8938 24.9243 14.3188 23.6089 13.07H23.6088ZM23.2971 25.5876C23.2971 26.6357 22.4282 27.4861 21.3547 27.4861L10.6457 27.4863C9.57294 27.4863 8.70273 26.6362 8.70273 25.5879V18.1846C8.70273 17.137 9.57243 16.2861 10.6457 16.2861H21.3547C22.4276 16.2861 23.2971 17.1368 23.2971 18.1846L23.2973 25.5879L23.2971 25.5876Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M28 15.0135C28 14.6548 27.8008 14.3237 27.4772 14.1445C27.1538 13.9651 26.755 13.9651 26.4316 14.1445C26.1079 14.3237 25.9085 14.6548 25.9085 15.0135C25.8979 18.1136 24.2306 20.992 21.4922 22.6374C18.754 24.2831 15.3275 24.4657 12.4159 23.1213C9.50446 21.7772 7.51524 19.0939 7.14644 16.0138H10.2286C10.2286 18.1637 11.424 20.1502 13.3644 21.2252C15.3046 22.3001 17.6953 22.3001 19.6355 21.2252C21.5759 20.1502 22.7713 18.1637 22.7713 16.0138H15.4577C15.0853 16.0138 14.7411 15.8232 14.5548 15.5137C14.3685 15.2043 14.3685 14.8229 14.5548 14.5134C14.7412 14.2038 15.0853 14.0133 15.4577 14.0133H22.7713V8.01752C22.7713 5.86764 21.5759 3.88118 19.6355 2.80629C17.6953 1.73124 15.3046 1.73124 13.3644 2.80629C11.424 3.88112 10.2286 5.86764 10.2286 8.01752V14.0133L6.04566 14.0135C5.76878 14.0135 5.50342 14.1186 5.30737 14.3063C5.11134 14.4937 5.00068 14.7481 5 15.0138C5.0122 17.7589 6.09056 20.4012 8.02439 22.4242C9.958 24.4473 12.6082 25.7063 15.4576 25.9551V27.9992H12.3202C11.9478 27.9992 11.6036 28.1899 11.4173 28.4994C11.2313 28.809 11.2313 29.1902 11.4173 29.4999C11.6037 29.8093 11.9478 30 12.3202 30H20.6796C21.052 30 21.3962 29.8093 21.5825 29.4999C21.7686 29.1902 21.7686 28.809 21.5825 28.4994C21.3962 28.1899 21.052 27.9992 20.6796 27.9992H17.5423V25.9551C20.3937 25.7061 23.0457 24.4453 24.9795 22.4196C26.9134 20.3937 27.9904 17.7484 27.9994 15.0009L28 15.0135ZM12.6439 11.9411C12.6439 12.2841 12.3539 12.5624 11.9964 12.5624C11.6387 12.5624 11.3487 12.2841 11.3487 11.9411V7.90244C11.3487 6.6664 11.8605 5.48122 12.7713 4.60732C13.6821 3.73337 14.9172 3.24252 16.2052 3.24252H16.6327C16.9902 3.24252 17.2801 3.52055 17.2801 3.86379C17.2801 4.20682 16.9902 4.48505 16.6327 4.48505H16.1988C15.2541 4.48505 14.3483 4.84521 13.6805 5.48599C13.0127 6.12679 12.6373 6.99597 12.6373 7.90244L12.6439 11.9411Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M15.4726 5.92586C15.3648 5.9109 15.2555 5.93842 15.1695 6.00235C15.0834 6.06606 15.0281 6.16076 15.0159 6.26456C14.6954 6.2832 14.3876 6.39306 14.1322 6.58008C13.877 6.76709 13.6853 7.02258 13.5819 7.31446C13.2386 8.33032 14.0254 9.4208 15.0033 9.77489H15.0031C15.4579 9.96689 15.9825 9.92832 16.4016 9.67239C16.8549 9.36164 16.926 8.82423 16.9877 8.32407C17.1042 7.2555 16.7772 6.03139 15.4726 5.92587L15.4726 5.92586ZM16.0229 8.13166C15.9744 8.63181 15.8804 9.15385 15.2329 8.86172C14.8154 8.67232 14.3555 8.16589 14.4656 7.68742C14.4974 7.50452 14.6189 7.34742 14.7919 7.26485C14.9649 7.1825 15.1688 7.18467 15.3398 7.27092C15.5299 7.39856 15.7917 7.35717 15.929 7.17774C16.0403 7.48372 16.0726 7.81093 16.0229 8.13163L16.0229 8.13166Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M19.6451 6.7774C19.5374 6.76245 19.4281 6.79019 19.342 6.8539C19.256 6.91782 19.2007 7.01231 19.1887 7.11611C18.8655 7.13149 18.5545 7.23963 18.2961 7.4262C18.0376 7.61278 17.8431 7.86935 17.7381 8.16297C17.3948 9.17883 18.1816 10.2693 19.1595 10.6234C19.6144 10.8154 20.1388 10.7768 20.5581 10.5209C21.0114 10.2102 21.0825 9.67274 21.1442 9.17258C21.2768 8.10707 20.9497 6.88312 19.6451 6.77738L19.6451 6.7774ZM20.1955 8.98321C20.1437 9.48639 20.0564 10.0084 19.4087 9.71326C18.9911 9.52386 18.5313 9.01744 18.6413 8.53896H18.6415C18.6734 8.35607 18.7946 8.19896 18.9676 8.11661C19.1408 8.03405 19.3446 8.03644 19.5155 8.12268C19.7059 8.25032 19.9674 8.20893 20.1049 8.0295C20.2151 8.3357 20.2463 8.66292 20.1955 8.98317L20.1955 8.98321Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M16.2779 17.1298C16.17 17.1132 16.0595 17.14 15.973 17.2042C15.8865 17.2683 15.8317 17.3641 15.8213 17.4685C15.4983 17.4839 15.1873 17.5921 14.9287 17.7786C14.6704 17.9652 14.4759 18.2218 14.3709 18.5154C14.0276 19.5313 14.8145 20.6185 15.7923 20.9758H15.7921C16.2474 21.1685 16.7727 21.1288 17.1909 20.8703C17.6442 20.5596 17.7153 20.0221 17.777 19.5253C17.9096 18.4565 17.5826 17.251 16.2779 17.1298L16.2779 17.1298ZM16.8283 19.3356C16.7797 19.8358 16.6858 20.3578 16.0383 20.0657C15.6207 19.8763 15.1609 19.3699 15.2709 18.8914C15.3032 18.7087 15.4245 18.5516 15.5973 18.4688C15.7698 18.3858 15.9735 18.3871 16.1451 18.4719C16.3346 18.6002 16.5959 18.5603 16.7343 18.3819C16.8445 18.6881 16.8757 19.0154 16.8251 19.3356L16.8283 19.3356Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M26.0289 18.8057C25.2633 18.8057 24.5589 19.1011 24.0383 19.5736L20.6697 17.6834C20.884 17.1517 21.0065 16.5905 21.0065 15.9703C21.0065 15.4091 20.884 14.8479 20.7003 14.3458L24.0689 12.4851C24.5896 12.9576 25.2939 13.253 26.0595 13.253C27.7203 13.253 29.0607 11.9228 28.9973 10.3073C28.9393 8.83792 27.6985 7.64067 26.1749 7.58424C24.4993 7.52253 23.1196 8.81524 23.1196 10.4176C23.1196 10.6243 23.1502 10.8311 23.2115 11.0378L19.8734 12.8986C19.1384 12.042 18.0972 11.4218 16.8722 11.215V7.52305C18.153 7.14331 19.0816 5.94764 18.9405 4.55682C18.8016 3.18815 17.6422 2.10008 16.2198 2.00672C14.5038 1.89438 13.0748 3.2045 13.0748 4.8353C13.0748 6.10534 13.9629 7.16863 15.1573 7.52305V11.2446C13.9629 11.4513 12.9217 12.0716 12.1867 12.9281L8.81806 11.0673C8.84869 10.8606 8.87931 10.6538 8.87931 10.4471C8.87931 8.8817 7.56247 7.61166 5.93938 7.61166C4.31684 7.61166 3 8.88223 3 10.4181C3 11.9539 4.31684 13.2535 5.93993 13.2535C6.73616 13.2535 7.44052 12.9582 7.96113 12.4561L11.2992 14.3168C11.1154 14.8189 10.9929 15.3801 10.9929 15.9413C10.9929 16.532 11.1154 17.0636 11.3298 17.5953L7.93051 19.4856C7.34372 18.9861 6.56226 18.6744 5.67415 18.7619C4.26653 18.9001 3.14437 20.004 3.03883 21.3648C2.90977 23.0283 4.27255 24.418 5.97055 24.418C7.66856 24.418 8.91048 23.148 8.91048 21.5826C8.91048 21.3463 8.87986 21.11 8.81861 20.9033L12.2179 19.013C12.9529 19.8695 13.9635 20.4602 15.1272 20.667V24.4771C13.9351 24.831 13.0787 25.8911 13.0754 27.158C13.0716 28.7012 14.3775 29.9803 15.977 29.9998C17.6176 30.0198 18.9552 28.7424 18.9552 27.1643C18.9552 25.8648 18.0671 24.8015 16.8422 24.447V20.725C18.0365 20.5478 19.0471 19.9571 19.8127 19.1005L23.212 20.9908C23.1508 21.1976 23.1201 21.4043 23.1201 21.6111C23.1201 23.1765 24.437 24.4465 26.0601 24.4465C27.6832 24.4465 29 23.1765 29 21.6111C29 20.0457 27.652 18.8052 26.0294 18.8052L26.0289 18.8057Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M21.4167 9.53906H10.5838C10.5838 9.53906 3 16.0007 3 23.5414C3 27.8483 6.26129 30.0031 8.41642 30.0031H23.5836C25.7478 30.0031 29 27.8481 29 23.5414C29 16.0007 21.4162 9.53906 21.4162 9.53906H21.4167ZM17.0823 24.5085V26.2331H14.9181L14.9179 24.5142C13.3229 24.2194 12.3209 23.2408 12.2498 21.8199H14.1265C14.2183 22.5657 14.9744 23.0463 16.0684 23.0463C17.0764 23.0463 17.7908 22.5599 17.7908 21.8672C17.7908 21.2777 17.3284 20.9415 16.19 20.6882L14.9833 20.4318C13.2933 20.0809 12.4632 19.2054 12.4632 17.7993C12.4632 16.3932 13.406 15.3791 14.9062 15.0459V13.3094H17.0704V15.0486C18.5349 15.3729 19.5104 16.3663 19.5578 17.7016L17.7464 17.7018C17.6546 16.9737 16.9725 16.4874 16.0357 16.4874C15.0989 16.4874 14.4229 16.9355 14.4229 17.6371C14.4229 18.2061 14.8646 18.5215 15.9526 18.7631L17.0704 18.999C18.9351 19.388 19.7385 20.178 19.7385 21.6197C19.7387 23.1612 18.7426 24.1931 17.0823 24.5085L17.0823 24.5085Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M21.4057 3.0715H18.4114C17.7929 2.38943 16.9127 2 15.9892 2C15.0656 2 14.1855 2.38946 13.5669 3.0715H10.5726C10.2144 3.07294 9.88022 3.25019 9.6792 3.54485C9.47818 3.83952 9.43641 4.21397 9.56752 4.54544L10.5726 7.37835H21.4054L22.4104 4.54544C22.5416 4.21397 22.4998 3.83953 22.2988 3.54485C22.0978 3.25017 21.7636 3.07294 21.4054 3.0715H21.4057Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M29.376 11.6718L17.7598 7.32076C17.1807 7.09169 16.5656 7 15.9504 7C15.3352 7 14.7562 7.09169 14.1771 7.32076L2.5971 11.6718C1.80097 11.9926 1.80097 13.4123 2.5971 13.7328L7.01198 15.3816V20.4655C7.01198 21.5189 7.5547 22.3892 8.31474 22.7099L11.2098 23.7632C14.3944 24.954 17.7598 24.954 20.9443 23.7632L23.8394 22.7099C24.5994 22.3891 25.1421 21.5191 25.1421 20.4655L25.1419 15.3359L27.7835 14.3283V19.4579H27.6388C27.4218 19.4579 27.2769 19.687 27.2769 19.9161V22.2978C27.2769 22.5726 27.4579 22.7559 27.6388 22.7559H27.7113L27.1322 24.3131C27.0237 24.6339 27.1683 25 27.4579 25H29.2672C29.5207 25 29.7014 24.6335 29.5929 24.3131L28.9777 22.8017H29.0502C29.2672 22.8017 29.4121 22.5726 29.4121 22.3435V19.9618C29.4121 19.687 29.2312 19.5036 29.0502 19.5036H28.9055V13.9162L29.376 13.7332C30.208 13.4581 30.2082 11.9926 29.376 11.6718Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.30589 24.1666H8.50961V11.3337H6.30589V24.1666ZM10.7131 24.1666H12.9169V11.3337H10.7131V24.1666ZM15.1206 24.1666H17.3241V11.3337H15.1206V24.1666ZM19.5278 24.1666H21.7316V11.3337H19.5278V24.1666ZM23.9351 24.1666H26.1388V11.3337H23.9351V24.1666ZM28.3426 24.1666V11.3337C28.8459 11.3337 29.2857 10.9719 29.4102 10.4552C29.5347 9.93835 29.312 9.39811 28.8703 9.14266L16.75 2.14268C16.4227 1.95244 16.0217 1.95244 15.6945 2.14268L3.57418 9.14266C3.13241 9.39813 2.90978 9.93835 3.03426 10.4552C3.15876 10.972 3.5985 11.3337 4.10188 11.3337V24.1666C3.49263 24.1666 3.00011 24.6893 3.00011 25.3334V28.8334C3.00011 29.4774 3.49263 30 4.10188 30H28.3425C28.9517 30 29.4442 29.4774 29.4442 28.8334V25.3334C29.4442 24.6893 28.9518 24.1666 28.3426 24.1666Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M18.5307 7L3.978 21.5527C3.85862 21.672 3.77257 21.8225 3.73152 21.9877L2.02722 28.8442C1.94888 29.1626 2.04223 29.4976 2.2737 29.7291C2.50622 29.9616 2.84314 30.0531 3.15857 29.9756L10.0151 28.2721C10.1793 28.231 10.3297 28.146 10.4502 28.0256L25.0028 13.473L18.5307 7Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M28.6637 3.33855C26.879 1.55382 23.9761 1.55382 22.1907 3.33855L19.8516 5.67767L26.3246 12.1507L28.6637 9.81161C30.4483 8.02586 30.4483 5.12312 28.6637 3.33855Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M17.605 2.00505C17.1548 1.95331 16.7578 2.30594 16.7578 2.75949V15.4429C16.7578 15.5432 16.7975 15.6397 16.8687 15.7105L25.8321 24.6738C26.1513 24.9931 26.6801 24.9657 26.9611 24.6122C28.8625 22.2211 30.001 19.198 30.001 15.9126C30.001 8.73518 24.5718 2.8032 17.6046 2.00481L17.605 2.00505Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M14.7406 29.858C18.5082 30.1895 22.0034 29.0166 24.6964 26.8755C25.051 26.5936 25.0809 26.0642 24.7608 25.7441L15.7975 16.7807C15.44 16.4235 15.2432 15.9484 15.2432 15.4429V2.75944C15.2432 2.30736 14.8485 1.95348 14.3998 2.00499C7.04402 2.8456 1.40123 9.40943 2.05097 17.1198C2.61665 23.8383 8.02457 29.267 14.7404 29.8579L14.7406 29.858Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M29.6278 12.5546L19.4471 2.37263C19.2087 2.134 18.8851 2 18.5478 2C18.2105 2 17.8871 2.134 17.6485 2.37263L16.5286 3.49264C15.7825 4.23883 15.2868 5.19818 15.1095 6.23843C14.9324 7.27869 15.0825 8.34809 15.5396 9.29931L9.83855 13.2954C8.86066 12.6704 7.69843 12.3978 6.54443 12.5229C5.39068 12.6476 4.31383 13.1628 3.49247 13.9826L2.37259 15.1026C2.13398 15.341 2 15.6647 2 16.002C2 16.3394 2.13398 16.663 2.37259 16.9014L7.83623 22.3657L3.6499 26.5549C3.40064 26.7912 3.25766 27.1182 3.25317 27.4614C3.24843 27.8047 3.38288 28.1352 3.62552 28.3781C3.86839 28.6208 4.19884 28.7552 4.54208 28.7505C4.88533 28.746 5.21225 28.603 5.44847 28.3537L9.63952 24.1631L15.1032 29.6274C15.3415 29.866 15.6651 30 16.0025 30C16.3398 30 16.6634 29.866 16.9018 29.6274L18.0216 28.5074C18.8416 27.6858 19.3565 26.6092 19.4815 25.455C19.6065 24.3009 19.334 23.1387 18.7088 22.1607L22.7044 16.459C23.6555 16.9152 24.7248 17.0651 25.7649 16.888C26.8048 16.7107 27.7642 16.2151 28.5106 15.4697L29.6305 14.3496C29.8674 14.111 30.0005 13.7881 30 13.4517C29.9995 13.115 29.8657 12.7925 29.6278 12.5546ZM26.7093 13.6746C26.2494 14.1343 25.6311 14.4004 24.9811 14.4184C24.331 14.4366 23.6988 14.2051 23.214 13.7718C22.9349 13.524 22.5614 13.411 22.1919 13.4627C21.8221 13.5143 21.4938 13.7254 21.2933 14.0403L16.0789 21.4786C15.9073 21.7234 15.8278 22.0209 15.8538 22.319C15.8798 22.6168 16.01 22.8962 16.2214 23.1076C16.6979 23.5854 16.9656 24.2326 16.9656 24.9073C16.9656 25.5823 16.6979 26.2295 16.2214 26.7073L16.0025 26.9282L5.07517 15.9996L5.29366 15.7806C5.77159 15.3042 6.41875 15.0369 7.0934 15.0369C7.76806 15.0369 8.41502 15.3042 8.8929 15.7806C9.10453 15.9918 9.38386 16.1217 9.68142 16.1478C9.97922 16.1738 10.2768 16.0943 10.5218 15.9231L17.907 10.7472C18.2441 10.5585 18.4773 10.2266 18.5405 9.84565C18.6037 9.46448 18.4903 9.07528 18.2322 8.78764C17.7988 8.30302 17.5673 7.67066 17.5853 7.02059C17.6033 6.37046 17.8693 5.75209 18.3288 5.2919L18.5478 5.07102L26.9299 13.4541L26.7093 13.6746Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M16.2853 6.33847L19.0821 3.96946L28.1289 14.0734L25.8743 15.5005L22.5924 14.9868L20.3093 16.5281L16.2853 21.894L18.0547 25.6045L16.2853 28.8013L3.64255 16.5281L4.75556 14.0734H6.61059L9.80695 14.9868L16.2853 10.8767V6.33847Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M29.6278 12.5546L19.4471 2.37263C19.2087 2.134 18.8851 2 18.5478 2C18.2105 2 17.8871 2.134 17.6485 2.37263L16.5286 3.49264C15.7825 4.23883 15.2868 5.19818 15.1095 6.23843C14.9324 7.27869 15.0825 8.34809 15.5396 9.29931L9.83855 13.2954C8.86066 12.6704 7.69843 12.3978 6.54443 12.5229C5.39068 12.6476 4.31383 13.1628 3.49247 13.9826L2.37259 15.1026C2.13398 15.341 2 15.6647 2 16.002C2 16.3394 2.13398 16.663 2.37259 16.9014L7.83623 22.3657L3.6499 26.5549C3.40064 26.7912 3.25766 27.1182 3.25317 27.4614C3.24843 27.8047 3.38288 28.1352 3.62552 28.3781C3.86839 28.6208 4.19884 28.7552 4.54208 28.7505C4.88533 28.746 5.21225 28.603 5.44847 28.3537L9.63952 24.1631L15.1032 29.6274C15.3415 29.866 15.6651 30 16.0025 30C16.3398 30 16.6634 29.866 16.9018 29.6274L18.0216 28.5074C18.8416 27.6858 19.3565 26.6092 19.4815 25.455C19.6065 24.3009 19.334 23.1387 18.7088 22.1607L22.7044 16.459C23.6555 16.9152 24.7248 17.0651 25.7649 16.888C26.8048 16.7107 27.7642 16.2151 28.5106 15.4697L29.6305 14.3496C29.8674 14.111 30.0005 13.7881 30 13.4517C29.9995 13.115 29.8657 12.7925 29.6278 12.5546ZM26.7093 13.6746C26.2494 14.1343 25.6311 14.4004 24.9811 14.4184C24.331 14.4366 23.6988 14.2051 23.214 13.7718C22.9349 13.524 22.5614 13.411 22.1919 13.4627C21.8221 13.5143 21.4938 13.7254 21.2933 14.0403L16.0789 21.4786C15.9073 21.7234 15.8278 22.0209 15.8538 22.319C15.8798 22.6168 16.01 22.8962 16.2214 23.1076C16.6979 23.5854 16.9656 24.2326 16.9656 24.9073C16.9656 25.5823 16.6979 26.2295 16.2214 26.7073L16.0025 26.9282L5.07517 15.9996L5.29366 15.7806C5.77159 15.3042 6.41875 15.0369 7.0934 15.0369C7.76806 15.0369 8.41502 15.3042 8.8929 15.7806C9.10453 15.9918 9.38386 16.1217 9.68142 16.1478C9.97922 16.1738 10.2768 16.0943 10.5218 15.9231L17.907 10.7472C18.2441 10.5585 18.4773 10.2266 18.5405 9.84565C18.6037 9.46448 18.4903 9.07528 18.2322 8.78764C17.7988 8.30302 17.5673 7.67066 17.5853 7.02059C17.6033 6.37046 17.8693 5.75209 18.3288 5.2919L18.5478 5.07102L26.9299 13.4541L26.7093 13.6746Z\" fill=\"none\" stroke=\"#232A3A\"/>\n <path d=\"M16.2853 6.33847L19.0821 3.96946L28.1289 14.0734L25.8743 15.5005L22.5924 14.9868L20.3093 16.5281L16.2853 21.894L18.0547 25.6045L16.2853 28.8013L3.64255 16.5281L4.75556 14.0734H6.61059L9.80695 14.9868L16.2853 10.8767V6.33847Z\" fill=\"none\" stroke=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M10.6381 24.2684C10.3505 24.7396 9.80424 25.0045 9.43027 25.0928C8.79758 25.2105 8.19375 25.2695 7.73357 25.6523C7.58973 25.77 7.35964 25.6817 7.33096 25.5051C7.2447 24.9456 7.38853 24.3274 7.64731 23.9446C7.53236 23.9446 7.4459 23.9739 7.33096 24.0329C7.12955 24.1212 6.92835 23.9446 6.95703 23.7384C7.12955 23.0906 7.56107 22.2368 8.22246 21.854L6.92817 20.5289C4.79998 21 3.47719 23.5909 3.017 25.3576C2.90206 25.8581 3.39093 26.2409 3.8509 26.0347C4.08099 25.9171 4.31108 25.8581 4.56986 25.8581C3.99474 26.7415 3.62083 28.184 3.8509 29.5091C3.93716 29.9507 4.45493 30.1569 4.79993 29.8624C5.89281 28.9497 7.30188 28.8614 8.76867 28.5668C9.86155 28.3313 11.6158 27.3596 12.0471 25.7108C11.9322 25.6225 11.8171 25.5046 11.7021 25.3869L10.6381 24.2684Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M24.7004 17.2305C29.0142 12.2252 30.107 5.04094 29.992 2.86213C29.992 2.62656 29.877 2.42056 29.7332 2.27331C29.5894 2.12606 29.3882 2.03774 29.1581 2.00837C27.0299 1.89069 20.0129 2.98 15.1239 7.42596L13.571 6.83714C11.8454 6.18939 9.91864 6.71946 8.73969 8.1327L6.03633 11.4009C5.66241 11.8721 5.83493 12.5786 6.38138 12.7848L9.83236 14.0803C8.88332 15.6702 8.22193 17.0541 7.81931 17.908C7.56052 18.5264 7.67547 19.2329 8.13566 19.7335L12.6795 24.3855C13.1397 24.8567 13.8587 25.0039 14.4625 24.7094C15.3253 24.2972 16.677 23.62 18.2012 22.6484L19.4666 26.1816C19.668 26.741 20.3581 26.947 20.8183 26.5348L23.9816 23.7671C25.362 22.5599 25.8797 20.5872 25.247 18.8207L24.7004 17.2305ZM22.831 13.2851C21.7381 14.404 20.0127 14.404 18.9198 13.2851C17.8269 12.1662 17.8269 10.3997 18.9198 9.28084C20.0127 8.16194 21.7381 8.16194 22.831 9.28084C23.9239 10.3997 23.9239 12.1958 22.831 13.2851Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M21.9688 11.8359V18.5603L24.7551 19.4157V11.836L21.9688 11.8359Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M19.8411 17.8819V11.8359H17.0547V17.0856C17.3105 17.1151 17.538 17.1741 17.7939 17.2626L19.8411 17.8819Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M14.9348 11.8359H12.1484V17.8819L14.1956 17.2625C14.4231 17.174 14.679 17.1446 14.9348 17.0856V11.8359Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M7.22656 11.836V19.4156L10.013 18.5308V11.8359L7.22656 11.836Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M26.7306 7.41195L16.2103 2.04428C16.0681 1.98524 15.9259 1.98524 15.7839 2.04428L5.26367 7.41195C5.0931 7.50041 5.00781 7.67734 5.00781 7.85426V9.94834C5.00781 10.2137 5.20694 10.4497 5.49115 10.4497H26.5032C26.7591 10.4497 26.9866 10.2431 26.9866 9.94834V7.85426C26.9866 7.64791 26.8729 7.50041 26.7307 7.41195H26.7306ZM15.9829 8.0314C15.1298 8.0314 14.4476 7.32352 14.4476 6.4389C14.4476 5.55407 15.13 4.8464 15.9829 4.8464C16.8359 4.8464 17.5182 5.55428 17.5182 6.4389C17.5182 7.32352 16.8359 8.0314 15.9829 8.0314Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M26.5097 21.4146L17.3827 18.6128C16.9277 18.4653 16.4444 18.4062 15.961 18.4062C15.4777 18.4062 15.0227 18.4653 14.5677 18.6128L5.46915 21.4146C4.84362 21.6211 4.84362 22.5353 5.46915 22.7417L8.93799 23.8034V27.0771C8.93799 27.7554 9.3644 28.3158 9.96158 28.5223L12.2363 29.2006C14.7384 29.9673 17.3827 29.9673 19.8848 29.2006L22.1595 28.5223C22.7567 28.3157 23.1831 27.7555 23.1831 27.0771L23.1829 23.774L25.2585 23.1251V26.4283H25.1448C24.9742 26.4283 24.8604 26.5758 24.8604 26.7233V28.2569C24.8604 28.4339 25.0026 28.5519 25.1448 28.5519H25.2017L24.7468 29.5546C24.6615 29.7612 24.7751 29.997 25.0026 29.997H26.4243C26.6234 29.997 26.7654 29.761 26.6801 29.5546L26.1968 28.5814H26.2537C26.4243 28.5814 26.5381 28.4339 26.5381 28.2864V26.7527C26.5381 26.5758 26.3959 26.4577 26.2537 26.4577H26.1401V22.8598L26.5097 22.7419C27.1635 22.5648 27.1635 21.6211 26.5095 21.4146L26.5097 21.4146Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M26.4383 10.4916C28.043 12.5292 29 15.1064 29 17.8634C29 24.5759 23.3827 29.9999 16.5 29.9999C9.58642 30.03 4 24.5759 4 17.8634C4 11.4805 9.06173 6.26631 15.4815 5.75688V5.03762H13.7531C13.1667 5.03762 12.7038 4.58821 12.7038 4.01881C12.7038 3.44939 13.1667 3 13.7531 3H19.3087C19.8952 3 20.358 3.44941 20.358 4.01881C20.358 4.58823 19.8952 5.03762 19.3087 5.03762H17.5804V5.75688C19.4939 5.90675 21.315 6.47613 22.889 7.40509L23.3211 6.89569C23.815 6.32627 24.6792 6.26628 25.2346 6.71592L26.8086 8.00438C27.3951 8.48389 27.4569 9.32296 26.963 9.89233L26.4383 10.4916ZM16.5 7.73467C10.7284 7.73467 6.0679 12.2596 6.0679 17.8634C6.0679 23.4672 10.7283 27.9921 16.5 27.9921C22.2716 27.9921 26.9321 23.4672 26.9321 17.8634C26.9319 12.2596 22.2715 7.73467 16.5 7.73467ZM16.5 26.6436C11.5001 26.6436 7.45679 22.718 7.45679 17.8634C7.45679 13.0087 11.4999 9.08317 16.5 9.08317C21.4999 9.08296 25.5432 13.0085 25.5432 17.8629C25.5432 22.7176 21.5001 26.6431 16.5 26.6431V26.6436ZM21.1604 13.3384C20.8827 13.0688 20.4506 13.0688 20.1727 13.3384L17.6417 15.7958C17.3022 15.616 16.9009 15.5261 16.4998 15.5261C15.1417 15.5261 14.0616 16.5751 14.0616 17.8934C14.0616 19.212 15.142 20.2607 16.4998 20.2607C17.8579 20.2607 18.9379 19.2117 18.9379 17.8934C18.9379 17.4739 18.8454 17.1143 18.6292 16.7546L21.1602 14.2973C21.4381 14.0276 21.4381 13.6081 21.1604 13.3384L21.1604 13.3384ZM16.5 18.8823C15.9135 18.8823 15.4507 18.4328 15.4507 17.8634C15.4507 17.294 15.9135 16.8446 16.5 16.8446C17.0865 16.8446 17.5493 17.294 17.5493 17.8634C17.5493 18.4327 17.0865 18.8823 16.5 18.8823Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","// @ts-nocheck\nimport * as React from \"react\";\nimport FourteenPointStar from \"../../../assets/14-point-star.svg\";\nimport AwardRibbon from \"../../../assets/award-ribbon.svg\";\nimport UpDownArrow from \"../../../assets/up-down-arrow.svg\";\nimport CheckCircle from \"../../../assets/check-circle.svg\";\nimport CheckCircleDark from \"../../../assets/check-circle-dark.svg\";\nimport Circle from \"../../../assets/circle.svg\";\nimport Lock from \"../../../assets/lock.svg\";\nimport Progress from \"../../../assets/progress.svg\";\nimport PartyPopper from \"../../../assets/party-popper.svg\";\nimport PlusCircle from \"../../../assets/plus-circle.svg\";\nimport XCircle from \"../../../assets/x-circle.svg\";\nimport XSquare from \"../../../assets/x-square.svg\";\nimport PenPaper from \"../../../assets/pen-paper.svg\";\nimport CaretLeft from \"../../../assets/caret-left.svg\";\nimport FormalBackpack from \"../../../assets/formal-backpack.svg\";\nimport FormalBallotBox from \"../../../assets/formal-ballot-box.svg\";\nimport FormalBarGraph from \"../../../assets/formal-bar-graph.svg\";\nimport FormalBolt from \"../../../assets/formal-bolt.svg\";\nimport FormalBriefcase from \"../../../assets/formal-briefcase.svg\";\nimport FormalBullseye from \"../../../assets/formal-bullseye.svg\";\nimport FormalBurger from \"../../../assets/formal-burger.svg\";\nimport FormalCameraLens from \"../../../assets/formal-camera-lens.svg\";\nimport FormalDesignBulb from \"../../../assets/formal-design-bulb.svg\";\nimport FormalDoublePanBalance from \"../../../assets/formal-double-pan-balance.svg\";\nimport FormalEasel from \"../../../assets/formal-easel.svg\";\nimport FormalEye from \"../../../assets/formal-eye.svg\";\nimport FormalGavel from \"../../../assets/formal-gavel.svg\";\nimport FormalClass from \"../../../assets/formal-group.svg\";\nimport FormalHandshake from \"../../../assets/formal-handshake.svg\";\nimport FormalHeart from \"../../../assets/formal-heart.svg\";\nimport FormalMagnifyingGlass from \"../../../assets/formal-magnifying-glass.svg\";\nimport FormalMedicine from \"../../../assets/formal-medicine.svg\";\nimport FormalMicrophone from \"../../../assets/formal-microphone.svg\";\nimport FormalMolecule from \"../../../assets/formal-molecule.svg\";\nimport FormalMoneybag from \"../../../assets/formal-moneybag.svg\";\nimport FormalMortarboard from \"../../../assets/formal-mortarboard.svg\";\nimport FormalParthenon from \"../../../assets/formal-parthenon.svg\";\nimport FormalPencil from \"../../../assets/formal-pencil.svg\";\nimport FormalPieChart from \"../../../assets/formal-pie-chart.svg\";\nimport FormalPin from \"../../../assets/formal-pin.svg\";\nimport FormalRocket from \"../../../assets/formal-rocket.svg\";\nimport FormalScholar from \"../../../assets/formal-scholar.svg\";\nimport FormalStopwatch from \"../../../assets/formal-stopwatch.svg\";\n\n/**\n * List of icons available\n */\nexport const iconNames = [\n \"14-point star\",\n \"award ribbon\",\n \"up & down arrow\",\n \"check & circle\",\n \"check & circle dark\",\n \"lock\",\n \"circle\",\n \"progress\",\n \"party popper\",\n \"plus & circle\",\n \"x & circle\",\n \"x & square\",\n \"pen & paper\",\n \"caret left\",\n\n \"formal backpack\",\n \"formal ballot box\",\n \"formal bar graph\",\n \"formal bolt\",\n \"formal briefcase\",\n \"formal bullseye\",\n \"formal burger\",\n \"formal camera lens\",\n \"formal design bulb\",\n \"formal double pan balance\",\n \"formal easel\",\n \"formal eye\",\n \"formal gavel\",\n \"formal group\",\n \"formal handshake\",\n \"formal heart\",\n \"formal magnifying glass\",\n \"formal medicine\",\n \"formal microphone\",\n \"formal molecule\",\n \"formal moneybag\",\n \"formal mortarboard\",\n \"formal parthenon\",\n \"formal pencil\",\n \"formal pie chart\",\n \"formal pin\",\n \"formal rocket\",\n \"formal scholar\",\n \"formal stopwatch\",\n] as const;\n\n/**\n * List of icon source data\n */\nexport const icons: { [key in typeof iconNames[number]]: Icon } = {\n \"14-point star\": {\n svg: FourteenPointStar,\n },\n \"award ribbon\": {\n svg: AwardRibbon,\n },\n \"up & down arrow\": {\n svg: UpDownArrow,\n },\n circle: {\n svg: Circle,\n },\n \"check & circle\": {\n svg: CheckCircle,\n },\n \"check & circle dark\": {\n svg: CheckCircleDark,\n },\n lock: {\n svg: Lock,\n },\n progress: {\n svg: Progress,\n },\n \"party popper\": {\n svg: PartyPopper,\n },\n \"plus & circle\": {\n svg: PlusCircle,\n },\n \"x & circle\": {\n svg: XCircle,\n },\n \"x & square\": {\n svg: XSquare,\n },\n \"pen & paper\": {\n svg: PenPaper,\n },\n \"caret left\": {\n svg: CaretLeft,\n },\n \"formal backpack\": {\n svg: FormalBackpack,\n },\n \"formal ballot box\": {\n svg: FormalBallotBox,\n },\n \"formal bar graph\": {\n svg: FormalBarGraph,\n },\n \"formal bolt\": {\n svg: FormalBolt,\n },\n \"formal briefcase\": {\n svg: FormalBriefcase,\n },\n \"formal bullseye\": {\n svg: FormalBullseye,\n },\n \"formal burger\": {\n svg: FormalBurger,\n },\n \"formal camera lens\": {\n svg: FormalCameraLens,\n },\n \"formal design bulb\": {\n svg: FormalDesignBulb,\n },\n \"formal double pan balance\": {\n svg: FormalDoublePanBalance,\n },\n \"formal easel\": {\n svg: FormalEasel,\n },\n \"formal eye\": {\n svg: FormalEye,\n },\n \"formal gavel\": {\n svg: FormalGavel,\n },\n \"formal group\": {\n svg: FormalClass,\n },\n \"formal handshake\": {\n svg: FormalHandshake,\n },\n \"formal heart\": {\n svg: FormalHeart,\n },\n \"formal magnifying glass\": {\n svg: FormalMagnifyingGlass,\n },\n \"formal medicine\": {\n svg: FormalMedicine,\n },\n \"formal microphone\": {\n svg: FormalMicrophone,\n },\n \"formal molecule\": {\n svg: FormalMolecule,\n },\n \"formal moneybag\": {\n svg: FormalMoneybag,\n },\n \"formal mortarboard\": {\n svg: FormalMortarboard,\n },\n \"formal parthenon\": {\n svg: FormalParthenon,\n },\n \"formal pencil\": {\n svg: FormalPencil,\n },\n \"formal pie chart\": {\n svg: FormalPieChart,\n },\n \"formal pin\": {\n svg: FormalPin,\n },\n \"formal rocket\": {\n svg: FormalRocket,\n },\n \"formal scholar\": {\n svg: FormalScholar,\n },\n \"formal stopwatch\": {\n svg: FormalStopwatch,\n },\n} as const;\n\n/**\n * The name of the icon.\n */\nexport type IconName = typeof iconNames[number];\n\ntype Icon = {\n readonly svg: React.FunctionComponent<React.SVGProps<any> & { title?: string }>;\n};\n","import * as React from \"react\";\nimport { icons, IconName } from \"./icons\";\n\nexport { IconName } from \"./icons\";\n\n/**\n * The properties for the icon.\n */\nexport type IconProps = {\n name: IconName;\n};\n\n/**\n * A component for icons.\n */\nexport const Icon = (props: IconProps) => {\n const icon = icons[props.name];\n return !!icon && <icon.svg title={props.name} className=\"w-full h-full drop-shadow-[inherit]\" />;\n};\n","import React from \"react\";\n\n/**\n * The properties for progress.\n */\nexport type ProgressProps = {\n start: number;\n end: number;\n rounded?: boolean;\n color?: \"green\" | \"sky-blue\";\n};\n\n/**\n * A component for displaying progress.\n */\nexport const Progress = (props: ProgressProps) => {\n const percentage = Math.min(100, Math.round((props.start / props.end) * 100));\n const roundedClass = props.rounded ? \"rounded-full\" : \"\";\n const colorClass = (() => {\n switch (props.color) {\n case \"sky-blue\":\n return [\"bg-sky-blue-200\", \"bg-sky-blue-400\"];\n default:\n return [\"bg-gray-200\", \"bg-green-400\"];\n }\n })();\n return (\n <div className={`w-full h-full overflow-hidden ${roundedClass} ${colorClass[0]}`}>\n <div className={`h-8 ${colorClass[1]}`} style={{ width: `${percentage}%` }} />\n </div>\n );\n};\n","import * as React from \"react\";\nimport \"external-svg-loader\";\n\nimport { Icon, IconName } from \"../../../components/Icon/Icon\";\n\n/**\n * BadgeEmblemProps\n */\nexport type BadgeEmblemProps = {\n icon?: IconName;\n iconURL?: string\n alt?: string;\n imageURL?: string;\n level?: number;\n size?: \"xxs\" | \"xs\" | \"sm\" | \"md\" | \"lg\";\n};\n\n/**\n * BadgeEmblem\n * @param props\n * @constructor\n */\nexport const BadgeEmblem = (props: BadgeEmblemProps) => {\n const size = (() => {\n switch (props.size) {\n case \"xxs\":\n return [\"h-max w-12\", \"w-6 h-6\"];\n case \"xs\":\n return [\"h-max w-16\", \"w-8 h-8\"];\n case \"sm\":\n return [\"h-max w-24\", \"w-12 h-12\"];\n case \"lg\":\n return [\"h-max w-40\", \"w-20 h-20\"];\n default:\n return [\"h-max w-28\", \"w-14 h-14\"];\n }\n })();\n\n const hasIcon = !!props.icon || !!props.iconURL\n\n return (\n <div className={`relative overflow-hidden ${size[0]}`}>\n {!hasIcon && <img className=\"w-full h-full object-cover\" alt={props.alt} src={props.imageURL} />}\n { hasIcon &&\n <>\n <svg\n className=\"h-full w-full drop-shadow-[inherit]\"\n viewBox=\"0 0 940 1100\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n {!!props.level && props.level > 0 && (\n <path\n d=\"M482.921 47.8734L891.581 301.279C892.463 301.826 893 302.79 893 303.828V796.694C893 797.78 892.413 798.781 891.466 799.311L466.728 1037.16C465.809 1037.68 464.687 1037.67 463.772 1037.15L48.5103 799.603C47.5763 799.069 47 798.076 47 796.999V304.573C47 303.511 47.5618 302.528 48.4771 301.989L479.817 47.8383C480.777 47.2722 481.973 47.2857 482.921 47.8734Z\"\n fill=\"none\"\n stroke=\"#1EE2B0\"\n strokeWidth=\"94\"\n />\n )}\n\n {!!props.level && props.level > 1 && (\n <path\n className=\"-translate-y-3.5\"\n d=\"M494.044 136.608L824.747 341.5C832.987 346.606 838 355.609 838 365.302V764.144C838 774.282 832.52 783.628 823.672 788.579L479.785 980.994C471.211 985.791 460.749 985.744 452.219 980.868L116.106 788.758C107.383 783.773 102 774.496 102 764.449V366.047C102 356.129 107.247 346.95 115.795 341.918L465.092 136.281C474.055 131.004 485.203 131.13 494.044 136.608Z\"\n fill=\"none\"\n stroke=\"#FFD44D\"\n strokeWidth=\"44\"\n />\n )}\n\n <path\n d=\"M467.125 26.2992C476.092 21.0157 487.25 21.1418 496.095 26.6267L904.756 280.032C912.991 285.138 918 294.139 918 303.828V796.694C918 806.828 912.523 816.172 903.681 821.124L478.943 1058.98C470.364 1063.78 459.894 1063.73 451.359 1058.85L36.0968 821.304C27.3791 816.317 22 807.043 22 796.999V304.573C22 294.658 27.2435 285.483 35.786 280.449L467.125 26.2992Z\"\n fill=\"none\"\n stroke=\"#3BD0F2\"\n strokeWidth=\"44\"\n />\n </svg>\n <div className={`absolute overflow-hidden left-0 right-0 top-0 bottom-0 m-auto text-dark-blue-400 ${size[1]}`}>\n { !props.iconURL && !!props.icon && <Icon name={props.icon} /> }\n { props.iconURL && <svg data-cache=\"disabled\" data-src={props.iconURL} className=\"w-full h-full drop-shadow-[inherit]\" viewBox=\"0 0 32 32\" width=\"32\" height=\"32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"/> }\n </div>\n </>\n }\n </div>\n );\n};\n","/**\n * A utility to get a number as its ordinal representation.\n * https://community.shopify.com/c/shopify-design/ordinal-number-in-javascript-1st-2nd-3rd-4th/m-p/72156\n * @param n\n */\nexport const ordNumber = (n: number) => {\n const s = [\"th\", \"st\", \"nd\", \"rd\"],\n v = n % 100;\n return n + (s[(v - 20) % 10] || s[v] || s[0]);\n};\n","import * as React from \"react\";\n\nimport { Icon, IconName } from \"../../../components/Icon/Icon\";\nimport { Progress } from \"../../../components/Progress/Progress\";\nimport { BadgeEmblem } from \"../BadgeEmblem/BadgeEmblem\";\nimport { ordNumber } from \"../../../utils/date\";\n\n/**\n * BadgeButtonProps\n */\nexport type BadgeButtonProps = {\n displayName?: string;\n icon?: IconName;\n iconURL?: string;\n imageURL?: string;\n startedAt?: string;\n createdAt?: string;\n finishedAt?: string;\n level?: number;\n isLocked?: boolean;\n progress?: number;\n target?: number;\n readonly?: boolean;\n compact?: boolean\n\n onClick?: () => void;\n};\n\n/**\n * BadgeButton\n * @param props\n * @constructor\n */\nexport const BadgeButton = (props: BadgeButtonProps) => {\n const hasProgress: boolean = !!props.startedAt || !!props.finishedAt || (!!props.progress && props.progress > 0);\n const isDisabled: boolean = props.readonly || props.isLocked || !props.onClick;\n const statusIconName = props.isLocked\n ? \"lock\"\n : props.finishedAt\n ? \"check & circle dark\"\n : hasProgress\n ? \"progress\"\n : \"14-point star\";\n const buttonCursor = isDisabled ? \"cursor-default\" : \"cursor-pointer\";\n const buttonBg = isDisabled ? \"\" : props.finishedAt && !props.compact ? \"bg-sky-50 hover:bg-gray-50\" : \"hover:bg-sky-50\";\n const statusIconColor = props.finishedAt ? \"text-green-500\" : \"text-zinc-600\";\n const emblemOpacity = props.isLocked ? \"opacity-50\" : \"\";\n const progressPrefix = props.finishedAt ? \"Collected\" : \"Started\";\n const progressDate = new Date(props.finishedAt || props.startedAt || new Date());\n const onClick = () => !isDisabled && props.onClick && props.onClick();\n\n\n if(props.compact){\n return <div\n onClick={onClick}\n className={`text-zinc-600 relative overflow-hidden py-3 px-5 transition ease-in-out duration-600 ${buttonCursor} ${buttonBg}`}\n >\n <div className=\"flex gap-3\">\n <div className={`w-max my-auto ${emblemOpacity}`}>\n <BadgeEmblem\n icon={props.icon}\n iconURL={props.iconURL}\n imageURL={props.imageURL}\n alt={props.displayName}\n level={props.level}\n size=\"xxs\"\n />\n </div>\n\n <div className=\"text-sm my-auto flex gap-x-2\">\n <span className=\"font-semibold text-zinc-600\">{props.displayName}</span>\n <span className=\"shrink-0 text-slate-500\">Lv. {(props.level || 0) + 1}</span>\n </div>\n </div>\n </div>\n }\n\n return (\n <div className=\"grid grid-cols-1 w-44 overflow-x-hidden gap-y-3 text-zinc-600\">\n <div className=\"flex flex-col border h-max border-zinc-100 rounded-md bg-gray-100\">\n <div\n onClick={onClick}\n className={`relative overflow-hidden p-5 transition ease-in-out duration-600 ${buttonCursor} ${buttonBg}`}\n >\n { hasProgress && <div className={`absolute top-2 right-2 w-4 h-4 ${statusIconColor}`}>\n <Icon name={statusIconName} />\n </div> }\n <div className={`w-max m-auto ${emblemOpacity}`}>\n <BadgeEmblem\n icon={props.icon}\n iconURL={props.iconURL}\n imageURL={props.imageURL}\n alt={props.displayName}\n level={props.level}\n size={hasProgress ? \"xs\" : \"md\"}\n />\n </div>\n </div>\n\n {hasProgress && <div className=\"grid grid-cols-1 w-full h-16 bg-white shadow-sm p-2\">\n <div className=\"h-2\">\n <Progress rounded color=\"sky-blue\" start={props.progress || 0} end={props.target || 1} />\n </div>\n <p className=\"text-xs\">\n {progressPrefix} {Intl.DateTimeFormat(\"en-US\", { month: \"long\" }).format(progressDate)}{\" \"}\n {ordNumber(progressDate.getDate())}\n </p>\n </div>}\n </div>\n\n {!!props.displayName && (\n <div className=\"text-sm m-auto flex gap-x-2\">\n <span className=\"font-semibold text-zinc-600\">{props.displayName}</span>\n <span className=\"shrink-0 text-slate-500\">Lv. {(props.level || 0) + 1}</span>\n </div>\n )}\n </div>\n );\n};\n","import * as React from \"react\";\nimport { Loader } from \"../Loader\";\nimport { Icon } from \"../Icon/Icon\";\n\n/**\n * CardProps\n */\nexport type CardProps = {\n isLoading?: boolean;\n children?: React.ReactNode;\n\n onClose?: () => void;\n};\n\n/**\n * Card\n * @param props\n * @constructor\n */\nexport const Card = (props: CardProps) => {\n return (\n <div className=\"font-proxima m-auto grid grid-cols-1 overscroll-contain justify-items-center transition ease-in-out duration-400\">\n <div className=\"shadow-md bg-white overflow-hidden rounded-md relative\">\n <div className=\"grid grid-cols-1 gap-y-2\">\n {!props.isLoading && props.onClose && (\n <div\n onClick={props.onClose}\n className=\"justify-self-end mx-2 mt-2 h-5 w-5 cursor-pointer text-slate-300 hover:text-slate-400\"\n >\n <Icon name=\"x & square\" />\n </div>\n )}\n\n <Loader isLoading={props.isLoading}>{props.children}</Loader>\n </div>\n </div>\n </div>\n );\n};\n","import * as React from \"react\";\n\nimport { Button } from \"../../../components/Button/Button\";\nimport { Card } from \"../../../components/Card/Card\";\nimport { BadgeActivityProps } from \"../BadgeActivity/BadgeActivity\";\nimport { BadgeEmblem } from \"../BadgeEmblem/BadgeEmblem\";\nimport { IconName } from \"../../../components/Icon/icons\";\nimport { Icon } from \"../../../components/Icon/Icon\";\n\n/**\n * CriterionProps\n */\ntype CriterionProps = {\n criterionId?: string;\n displayName?: string;\n namespace?: string;\n options?: BadgeActivityProps[];\n};\n\n/**\n * BadgeCardProps\n */\nexport type BadgeCardProps = {\n icon?: IconName;\n iconURL?: string\n isLoading?: boolean\n displayName?: string;\n imageURL?: string;\n level?: number;\n summary?: string;\n criteria?: CriterionProps[];\n choices?: BadgeActivityProps[];\n canSubmit?: boolean;\n finishedAt?: string;\n preview?: boolean\n\n onClose?: () => void;\n onSubmit?: () => void;\n};\n\n/**\n * BadgeCard\n * @param props\n * @constructor\n */\nexport const BadgeCard = (props: BadgeCardProps) => {\n const criteria = props.criteria || [];\n const choices: any = {};\n const criteriaNames = criteria.map((c) => c.displayName);\n let xp = 0;\n let completed = 0;\n props.choices?.map((c, i) => {\n const id = c.criterionId || i;\n choices[id] = c;\n xp += c.xp || 0;\n if (c.completedAt) {\n completed += 1;\n }\n });\n\n return (\n <Card isLoading={props.isLoading} onClose={props.onClose}>\n <div className=\"pb-5 text-zinc-600\">\n <div className=\"pb-5 px-5 flex gap-x-2\">\n <BadgeEmblem\n icon={props.icon}\n imageURL={props.imageURL}\n iconURL={props.iconURL}\n alt={props.displayName}\n level={props.level}\n size=\"sm\"\n />\n <div className=\"max-w-[20rem]\">\n <p className=\"font-semibold\">{props.displayName}</p>\n <div className=\"text-xs\">\n <span className=\"text-zinc-500 font-semibold\">Level {(props.level || 0) + 1}.</span>\n {!!xp && (\n <div className=\"inline-block ml-1 text-green-500\">\n <span className=\"font-semibold\">{xp}</span>\n <span className=\"ml-1\">XP</span>\n </div>\n )}\n </div>\n {!!props.summary && <p className=\"mt-2 text-sm\">{props.summary}</p>}\n </div>\n </div>\n {criteriaNames.length > 0 && (\n <div className=\"p-5 grid grid-cols-1 gap-y-3 md:min-w-[30rem] max-w-[40rem] border-t border-zinc-200\">\n <p className=\"font-semibold\">Badge Criteria</p>\n <p className=\"text-xs\">Complete 1 of each: {criteriaNames.join(\", \")}</p>\n\n <div className=\"mt-2 grid grid-cols-1 gap-y-8 max-h-[18rem] overflow-y-auto\">\n {criteria.map((c, i) => {\n const id = c.criterionId || i;\n const choice = choices[id];\n const buttonText = choice?.completedAt ? \"Review\" : choice?.startedAt ? \"Continue\" : \"Start\";\n const buttonTheme = choice?.completedAt ? \"light\" : \"dark\";\n const iconName = choice?.completedAt ? \"check & circle\" : \"circle\";\n const iconColor = choice?.completedAt ? \"text-green-500\" : \"text-zinc-300\";\n\n return (\n !!choice && (\n <div key={id} className=\"flex gap-x-2 items-center\">\n <div className={`shrink-0 h-4 w-4 ${iconColor}`}>\n <Icon name={iconName} />\n </div>\n <div className=\"grow\">\n <div>\n <span className=\"font-semibold\">{choice.activityName}</span>\n </div>\n <div className=\"text-xs\">\n <span>{c.displayName}</span>\n {!!choice.xp && <span className=\"ml-1 text-green-500 font-semibold whitespace-nowrap\">{choice.xp} points</span>}\n </div>\n </div>\n { (!props.preview) && <div className=\"shrink-0 w-full max-w-[7rem]\">\n <Button\n onClick={choice.onClick}\n spacing=\"sm\"\n border=\"rounded\"\n size=\"full:sm\"\n color=\"blue\"\n theme={buttonTheme}\n text={buttonText}\n />\n </div> }\n </div>\n )\n );\n })}\n </div>\n </div>\n )}\n { !props.preview && !props.finishedAt && criteria.length > 0 &&\n <div className=\"pt-5 px-5 flex border-t border-zinc-200\">\n <div className=\"w-full max-w-[7rem] ml-auto\">\n <Button\n disabled={!props.canSubmit && completed < criteria.length}\n onClick={props.onSubmit}\n spacing=\"sm\"\n border=\"rounded\"\n size=\"full:sm\"\n color=\"blue\"\n theme=\"dark\"\n text=\"Submit\"\n />\n </div>\n </div>\n }\n </div>\n </Card>\n );\n};\n","import * as React from \"react\";\n\n/**\n * OverlayProps\n */\nexport type OverlayProps = {\n children?: React.ReactNode;\n};\n\n/**\n * Overlay\n * @param props\n * @constructor\n */\nexport const Overlay = (props: OverlayProps) => {\n return (\n <div className=\"flex fixed overscroll-none w-screen h-screen top-0 left-0 bg-gray-300/75 z-30\">\n {props.children}\n </div>\n );\n};\n","import * as React from \"react\";\nimport { BadgeButton, BadgeButtonProps } from \"../BadgeButton/BadgeButton\";\nimport { BadgeCard, BadgeCardProps } from \"../BadgeCard/BadgeCard\";\nimport { Overlay } from \"../../../components/Overlay/Overlay\";\n\n/**\n * BadgeProps\n */\nexport type BadgeProps = BadgeCardProps &\n BadgeButtonProps & {\n badgeId?: string;\n summary?: string;\n status?: string;\n code?: string;\n editChoices?: boolean;\n open?: boolean;\n\n onOpen?: () => void;\n };\n\n/**\n * Badge\n * @param props\n * @constructor\n */\nexport const Badge = (props: BadgeProps) => {\n const [open, setOpen] = React.useState(props.open || false);\n const target = props.target || props.criteria?.length || 0;\n const progress =\n props.progress || props.choices?.map((v) => (v.completedAt ? 1 : 0) as number).reduce((acc, a) => acc + a, 0) || 0;\n\n const onOpen = () => {\n setOpen(true);\n if (props.onOpen) {\n props.onOpen();\n }\n };\n\n const onClose = () => {\n setOpen(false);\n if (props.onClose) {\n props.onClose();\n }\n };\n\n return (\n <>\n { !open && <BadgeButton {...props} progress={progress} target={target} onClick={onOpen} /> }\n { open && !!props.preview && <BadgeCard {...props} onClose={onClose} /> }\n { open && !props.preview && <Overlay>\n <BadgeCard {...props} onClose={onClose} />\n </Overlay>}\n </>\n );\n};\n","import * as React from \"react\";\nimport { Card } from \"../../../components/Card/Card\";\nimport { Icon, IconName } from \"../../../components/Icon/Icon\";\n\n/**\n * BadgeActivityProps\n */\nexport type BadgeActivityProps = {\n activityId?: string;\n activityName?: string;\n criteriaName?: string;\n namespace?: string;\n imageURL?: string;\n xp?: number;\n formId?: string;\n milestone?: boolean;\n badgeId?: string;\n criterionId?: string;\n startedAt?: string;\n completedAt?: string;\n chosenAt?: string;\n tags?: string[];\n startTime?: string;\n isSelected?: boolean;\n\n onToggle?: () => void;\n onClick?: () => void;\n};\n\n/**\n * BadgeActivity\n * @param props\n * @constructor\n */\nexport const BadgeActivity = (props: BadgeActivityProps) => {\n const tags = props.tags || [];\n const [iconName, setIconName] = React.useState(props.isSelected ? \"check & circle\" : (\"plus & circle\" as IconName));\n const iconColor = props.isSelected ? \"text-green-500 hover:text-rose-400\" : \"text-zinc-600 hover:text-green-500\";\n const iconLabel = props.isSelected ? \"Remove this activity\" : \"Select this activity\";\n\n const onMouseEnter = () => {\n if (props.isSelected) {\n setIconName(\"x & circle\");\n }\n };\n\n const onMouseLeave = () => {\n if (props.isSelected) {\n setIconName(\"check & circle\");\n }\n };\n\n React.useEffect(() => {\n setIconName(props.isSelected ? \"check & circle\" : \"plus & circle\");\n }, [props.isSelected]);\n\n return (\n <Card>\n <div className=\"w-[18rem] border border-zinc-100\">\n <div className=\"h-[12rem]\">\n <img className=\"object-cover w-full h-full\" src={props.imageURL} alt={props.activityName} />\n </div>\n <div className=\"px-2 pt-5 pb-5 text-zinc-600 grid grid-cols-1 gap-y-5\">\n <div className=\"flex gap-x-2\">\n <div className=\"shrink-0 h-8 w-8 text-zinc-600\">\n <Icon name=\"pen & paper\" />\n </div>\n <div className=\"grow\">\n <p className=\"font-semibold text-sm\">{props.activityName}</p>\n <p className=\"text-xs\">{props.criteriaName}</p>\n </div>\n <div className=\"text-xs h-max py-2 px-4 rounded-md bg-sky-300 font-semibold\">{props.xp}pts</div>\n </div>\n\n <div className=\"flex\">\n <div className=\"ml-auto flex\">\n <span className=\"my-auto h-max text-sm\">{iconLabel}</span>\n <div\n onClick={props.onToggle}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n className={`ml-2 inline-block cursor-pointer h-8 w-8 ${iconColor}`}\n >\n <Icon name={iconName} />\n </div>\n </div>\n </div>\n\n <div className=\"flex gap-x-2\">\n {tags.map((tag, i) => {\n return (\n <div key={i} className=\"rounded-md shadow-sm py-2 px-3 bg-zinc-100 text-sm\">\n {tag}\n </div>\n );\n })}\n </div>\n </div>\n </div>\n </Card>\n );\n};\n","import * as React from \"react\";\nimport { BadgeActivity, BadgeActivityProps } from \"../BadgeActivity/BadgeActivity\";\nimport { Icon } from \"../../../components/Icon/Icon\";\nimport { ordNumber } from \"../../../utils/date\";\n\n/**\n * CriterionProps\n */\ntype CriterionProps = {\n criterionId?: string;\n displayName?: string;\n namespace?: string;\n options?: BadgeActivityProps[];\n\n onClick?: () => void;\n};\n\n/**\n * BadgeActivityMenuProps\n */\nexport type BadgeActivityMenuProps = {\n criteria?: CriterionProps[];\n\n onBack?: () => void;\n};\n\n/**\n * BadgeActivityMenu\n * @param props\n * @constructor\n */\nexport const BadgeActivityMenu = (props: BadgeActivityMenuProps) => {\n const criteria = props.criteria || [];\n\n return (\n <div className=\"grid grid-cols-1 gap-y-4 w-full text-zinc-600\">\n <div className=\"py-8 px-10 grid grid-cols-1 gap-y-5 rounded-b-md border-b border-x border-zinc-100\">\n <div\n onClick={props.onBack}\n className=\"w-max flex gap-x-2 text-sm text-zinc-400 hover:text-zinc-500 cursor-pointer\"\n >\n <div className=\"m-auto w-4 h-4\">\n <Icon name=\"caret left\" />\n </div>\n <p>Back to Badge</p>\n </div>\n\n <div className=\"p-1\">\n <p className=\"text-lg font-semibold\">Badge Activities</p>\n <p className=\"text-sm\">Choose activities from the categories below to customize your Badge experience.</p>\n </div>\n </div>\n\n <div className=\"py-8 px-5 grid grid-cols-1 gap-y-12\">\n {criteria.map((c, i) => {\n const id = c.criterionId || i;\n const options = c.options || [];\n return (\n <div key={id} className=\"grid grid-cols-1 gap-y-8\">\n <div>\n <p className=\"text-lg font-semibold\">{c.displayName}</p>\n <p className=\"text-sm\">Chose one activity to complete.</p>\n </div>\n\n <div className=\"grid grid-flow-col auto-cols-max gap-4 px-1 pt-1 pb-2 w-full overflow-x-auto\">\n {options.map((o, i) => {\n const id = o.activityId || i;\n const date = o.startTime ? new Date(o.startTime) : null;\n return (\n <div key={id} className=\"grid grid-cols-1 gap-y-2\">\n {date && (\n <p>\n {Intl.DateTimeFormat(\"en-US\", { month: \"long\" }).format(date)} {ordNumber(date.getDate())}\n </p>\n )}\n {!date && <p className=\"invisible\">Online</p>}\n <BadgeActivity {...o} criteriaName={c.displayName} />\n </div>\n );\n })}\n </div>\n </div>\n );\n })}\n </div>\n </div>\n );\n};\n","import React from \"react\";\nimport { builder } from \"../../../utils/classname/classname\";\n\n/**\n * The properties for the widget body.\n */\nexport type WidgetBodyProps = {\n spacing?: \"sm\" | \"md\" | \"none\";\n children?: React.ReactNode;\n};\n\n/**\n * A component for the widget body.\n * @param props\n * @constructor\n */\nexport const WidgetBody = (props: WidgetBodyProps) => {\n const spacing = props.spacing || \"sm\";\n const className = builder()\n .if(spacing === \"sm\", \"p-2\")\n .if(spacing === \"md\", \"p-5\")\n .build();\n const hasContent = props.children && React.Children.count(props.children) > 0;\n return (\n <div className={className}>\n {!hasContent && (\n <div className=\"grid justify-items-center content-center h-[6rem] -mt-6 lg:mt-0 lg:h-[5.5rem]\">\n <p className=\"text-xs text-center align-middle leading-6 font-semibold text-slate-300\">\n No content to display.\n </p>\n </div>\n )}\n {hasContent && props.children}\n </div>\n );\n};\n","import React from \"react\";\nimport { builder } from \"../../../utils/classname/classname\";\n\n/**\n * The properties for the widget header.\n */\nexport type WidgetHeaderProps = {\n loose?: boolean;\n divide?: boolean;\n children?: React.ReactNode;\n};\n\n/**\n * A component for widget headers.\n * @param props\n * @constructor\n */\nexport const WidgetHeader = (props: WidgetHeaderProps) => {\n const className = builder()\n .if(!!props.divide, \"border-b border-gray-200\")\n .if(!props.loose, \"p-2\")\n .else(\"p-5\")\n .build();\n return (\n <div className={className}>\n <div className=\"flex items-center text-slate-600 items-center gap-x-1\">{props.children}</div>\n </div>\n );\n};\n","import React from \"react\";\nimport { Button, ButtonSize } from \"../../Button/Button\";\nimport { IconProps } from \"../../Icon/v0/Icon\";\n\n/**\n * The properties for the widget header link.\n */\nexport type WidgetHeaderLinkProps = {\n display?: boolean;\n disabled?: boolean;\n onClick?: () => void;\n size?: ButtonSize;\n children: string | React.ReactElement<IconProps>;\n};\n\n/**\n * A component for widget header call to action.\n * @param props\n * @constructor\n */\nexport const WidgetHeaderLink = (props: WidgetHeaderLinkProps) => {\n if (!props.display) {\n return null;\n }\n\n if (typeof props.children === \"string\") {\n return <Button size={props.size || \"tiny\"} text={props.children} onClick={props.onClick} />;\n } else {\n return (\n <div className=\"flex items-center\">\n <Button\n size={props.size || \"xs\"}\n disabled={props.disabled || !props.onClick}\n icon={props.children.props.name}\n onClick={props.onClick}\n />\n </div>\n );\n }\n};\n","import React from \"react\";\nimport { Icon, IconName } from \"../../Icon/v0/Icon\";\n\n/**\n * The properties for the widget title.\n */\nexport type WidgetTitleProps = {\n icon?: IconName;\n children: React.ReactNode;\n};\n\n/**\n * A component for widget titles.\n * @param props\n * @constructor\n */\nexport const WidgetTitle = (props: WidgetTitleProps) => {\n return (\n <>\n {props.icon && (\n <div className=\"w-5 h-5\">\n <Icon name={props.icon} />\n </div>\n )}\n <h4 className=\"grow capitalize align-middle font-semibold\">{props.children}</h4>\n </>\n );\n};\n","import React from \"react\";\nimport { builder } from \"../../utils/classname/classname\";\nimport { Loader } from \"../Loader\";\n\n/**\n * The properties for the widget.\n */\nexport type WidgetProps = {\n headless?: boolean;\n borderless?: boolean;\n color?: \"sky\" | \"inherit\";\n isLoading?: boolean;\n children?: React.ReactNode;\n};\n\n/**\n * A component for widgets.\n * @param props\n * @constructor\n */\nexport const Widget = (props: WidgetProps) => {\n const className = builder(\"flex flex-col w-full shadow-sm rounded-md overflow-hidden\")\n .if(!props.borderless, \"border border-gray-200\")\n .if(props.color === \"sky\", \"bg-sky-100\")\n .build();\n\n return (\n <article className={className}>\n {!props.headless && <div className=\"p-2 bg-gray-200\" />}\n <Loader isLoading={props.isLoading}>\n <div className=\"relative w-full\">{props.children}</div>\n </Loader>\n </article>\n );\n};\n","import * as React from \"react\";\nimport { Widget, WidgetBody, WidgetHeader } from \"../../../components/Widget\";\nimport { Badge, BadgeProps } from \"../Badge/Badge\";\nimport { Icon } from \"../../../components/Icon/Icon\";\n\nconst DEFAULT_FILTERS = [\n {label: \"In Progress\"},\n {label: \"Completed\"},\n {label: \"Available\"},\n {label: \"Locked\"}\n]\n\nexport type BadgeFilterOption = {\n label: string;\n isActive?: boolean;\n};\n\n/**\n * BadgeSectionProps\n */\nexport type BadgeSectionProps = {\n badges: BadgeProps[];\n isLoading?: boolean;\n readonly?: boolean;\n list?: boolean\n onToggleLayout?: (next: boolean) => void;\n filters?: BadgeFilterOption[];\n onFilterChange?: (next: BadgeFilterOption[]) => void;\n};\n\n/**\n * BadgeSection\n * @param props\n * @constructor\n */\nexport const BadgeSection = (props: BadgeSectionProps) => {\n const options: BadgeFilterOption[] = props.filters || DEFAULT_FILTERS;\n const progress: BadgeProps[] = [];\n const locked: BadgeProps[] = [];\n const available: BadgeProps[] = [];\n const collected: BadgeProps[] = [];\n\n props.badges.map((b) => {\n if (b.finishedAt) {\n collected.push(b);\n } else if (b.isLocked) {\n locked.push(b);\n } else if (b.startedAt) {\n progress.push(b);\n } else {\n available.push(b);\n }\n });\n\n const [list, setList] = React.useState(props.list)\n const [filters, setFilters] = React.useState(filtersByLabel(props.filters || DEFAULT_FILTERS))\n const filterValues = Object.values(filters)\n const propsFilterKey = JSON.stringify(props.filters)\n const filterKey = JSON.stringify(filterValues)\n const preview = props.readonly ? collected.slice(0, 10) : props.badges.slice(0, 3);\n const filterClassName = \"inline-block px-4 py-3 bg-gray-600 text-white rounded-full cursor-pointer\";\n const layoutClassName = getLayout(list)\n const numberOfActiveFilters = activeFilters(filterValues).length\n const isWithoutFilters = numberOfActiveFilters === 0\n const showSectionHeaders = numberOfActiveFilters > 1 || numberOfActiveFilters === 0\n\n React.useEffect(() => {\n setList(props.list)\n }, [props.list])\n\n React.useEffect(() => {\n if(list !== undefined && props.list !== list && props.onToggleLayout){\n props.onToggleLayout(list)\n }\n }, [list])\n\n React.useEffect(() => {\n setFilters(filtersByLabel(props.filters||DEFAULT_FILTERS))\n }, [propsFilterKey])\n\n React.useEffect(() => {\n if(propsFilterKey !== filterKey && props.onFilterChange){\n props.onFilterChange(Object.values(filters))\n }\n }, [filterKey])\n\n return (\n <div>\n <Widget isLoading={props.isLoading}>\n <WidgetHeader divide>\n <div className=\"py-2 flex w-full gap-x-2 text-zinc-600\">\n <div className=\"shrink-0 h-10 w-10\">\n <Icon name=\"award ribbon\" />\n </div>\n <p className=\"shrink-0 my-auto font-semibold\">Badges</p>\n\n <div className=\"shrink-0 mt-auto ml-auto text-sm\">\n <span className=\"font-semibold\">\n {collected.length}\n {props.readonly ? \"\" : \"/\" + props.badges.length} Badges\n </span>\n <span className=\"ml-1\">collected</span>\n </div>\n </div>\n </WidgetHeader>\n <WidgetBody>\n <div className=\"pb-5\">\n <div className=\"grid grid-cols-1 gap-y-5\">\n <div className=\"flex flex-wrap gap-4 items-center justify-between text-sm\">\n {options.length > 0 && (\n <div className=\"flex justify-center col-span-3 space-x-4 text-sm\">\n {options.map((opt, i) => {\n return (\n <div\n key={`${i}`}\n onClick={() => {\n if(!(opt.label in filters)){\n return\n }\n\n const next = {...filters}\n next[opt.label].isActive = !next[opt.label].isActive\n setFilters(next)\n }}\n style={{ marginBottom: \"0.6rem\" }}\n className={\n opt.isActive\n ? `${filterClassName} active`\n : \"inline-block px-4 py-3 rounded-full hover:bg-gray-700 hover:text-white cursor-pointer\"\n }\n >\n {opt.label}\n </div>\n );\n })}\n </div>\n )}\n <div>\n <label className=\"relative inline-flex items-center cursor-pointer\">\n <input\n type=\"checkbox\"\n value=\"\"\n className=\"sr-only peer\"\n checked={!list}\n onChange={() => setList(!list)}\n />\n <div className=\"w-11 h-6 bg-gray-200 rounded-full peer peer-focus:ring-4 peer-focus:ring-blue-300 dark:peer-focus:ring-blue-800 dark:bg-gray-700 peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-0.5 after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-5 after:w-5 after:transition-all dark:border-gray-600 peer-checked:bg-blue-600\"></div>\n <span\n className=\"ml-3 text-sm font-bold text-gray-700\"\n onChange={() => setList(!list)}\n >\n Grid View?\n </span>\n </label>\n </div>\n </div>\n <div>\n {!!props.readonly && (\n <div className={layoutClassName}>\n {preview.map((b, i) => {\n return <Badge key={i} {...b} compact={list} readonly={props.readonly} />;\n })}\n </div>\n )}\n {!props.readonly && (\n <div className=\"text-zinc-600 grid grid-cols-1 gap-y-4\">\n {(isWithoutFilters || \"In Progress\" in filters && filters[\"In Progress\"].isActive) && progress.length > 0 && (\n <div>\n {showSectionHeaders && <p className=\"mb-3 text-md underline font-bold\">In Progress</p>}\n <div className={layoutClassName}>\n {progress.map((b, i) => {\n return <Badge key={i} {...b} compact={list}/>;\n })}\n </div>\n </div>\n )}\n\n {(isWithoutFilters || \"Completed\" in filters && filters[\"Completed\"].isActive) && collected.length > 0 && (\n <div>\n {showSectionHeaders && <p className=\"mb-3 text-md underline font-bold\">Completed</p> }\n <div className={layoutClassName}>\n {collected.map((b, i) => {\n return <Badge key={i} {...b} compact={list}/>;\n })}\n </div>\n </div>\n )}\n\n {(isWithoutFilters || \"Available\" in filters && filters[\"Available\"].isActive) && available.length > 0 && (\n <div>\n {showSectionHeaders && <p className=\"mb-3 text-md underline font-bold\">Available</p> }\n <div className={layoutClassName}>\n {available.map((b, i) => {\n return <Badge key={i} {...b} compact={list}/>;\n })}\n </div>\n </div>\n )}\n\n {(isWithoutFilters || \"Locked\" in filters && filters[\"Locked\"].isActive) && locked.length > 0 && (\n <div>\n {showSectionHeaders && <p className=\"mb-3 text-md underline font-bold\">Locked</p> }\n <div className={layoutClassName}>\n {locked.map((b, i) => {\n return <Badge key={i} {...b} compact={list}/>;\n })}\n </div>\n </div>\n )}\n </div>\n )}\n </div>\n </div>\n </div>\n </WidgetBody>\n </Widget>\n </div>\n );\n};\n\nconst getLayout = (list?: boolean) => {\n if(list){\n return \"grid grid-cols-1 overflow-y-auto max-h-96\"\n }\n\n return \"flex flex-wrap gap-3\"\n}\n\nconst filtersByLabel = (filters: BadgeFilterOption[]) => {\n const ans: Record<string, BadgeFilterOption> = {}\n filters.forEach(v => {\n ans[v.label] = v\n })\n return ans\n}\n\nconst activeFilters = (filters: BadgeFilterOption[]) => {\n return Object.values(filters).filter(v => v.isActive)\n}","import React from \"react\";\nimport { Icon } from \"../../../components/Icon/Icon\";\nimport { Card } from \"../../../components/Card/Card\";\nimport { Button } from \"../../../components/Button\";\n\n\n/**\n * BadgeSuccessDialogProps\n */\nexport type BadgeSuccessDialogProps = {\n displayName?: string;\n xp?: number;\n level?: number;\n onClose?: () => void;\n};\n\n/**\n * BadgeSuccessDialog\n * @param props\n * @constructor\n */\nexport const BadgeSuccessDialog = (props: BadgeSuccessDialogProps) => {\n return (\n <Card onClose={props.onClose}>\n <div className=\"w-full px-8 pt-5 pb-12 shadow-sm grid grid-cols-1 gap-4 content-center justify-items-center\">\n <div className=\"text-zinc-600 w-28 h-28\">\n <Icon name=\"party popper\" />\n </div>\n\n <div className=\"text-slate-600 text-center\">\n <div className=\"font-bold text-lg\">\n <span>Great Job!</span>\n </div>\n\n <div className=\"max-w-[22rem]\">\n {!!props.xp && (\n <div className=\"text-sm\">\n <span>{\"You've just earned\"}</span>\n <span className=\"ml-1 font-semibold text-green-500\">{props.xp} XP</span>\n <span className=\"ml-1\">points!</span>\n </div>\n )}\n\n {!!props.displayName && (\n <div className=\"mt-2 text-sm\">\n <span>Check out your new</span>\n <span className=\"ml-1 font-semibold\">{props.displayName}</span>\n <span className=\"ml-1\">\n Lv. {(props.level || 0) + 1} badge on your profile! Look out for more opportunities to earn!\n </span>\n </div>\n )}\n </div>\n </div>\n <a href=\"/home\" className=\"mt-4\">\n <Button\n color=\"sky\"\n size=\"md\"\n spacing=\"md\"\n border=\"rounded\"\n theme=\"light\"\n text=\"Explore Other Badges\"\n />\n </a>\n </div>\n </Card>\n );\n};\n","import React from \"react\";\nimport { classname } from \"../../../utils/classname/classname\";\nimport { Icon, IconName } from \"../../Icon/v0/Icon\";\n\n/**\n * The properties for the tab.\n */\nexport type TabProps = {\n icon?: IconName;\n title?: string;\n secondary?: boolean;\n active?: boolean;\n disabled?: boolean;\n onClick?: () => void;\n};\n\n/**\n * A component for an individual tab option.\n * @param props\n * @constructor\n */\nexport const Tab = (props: TabProps) => {\n const config = defaultTabConfig();\n withActive(config, props.active);\n withDisabled(config, props.disabled);\n withSecondary(config, props.secondary);\n\n const onClick = () => !props.disabled && !props.active && props.onClick && props.onClick();\n return (\n <div onClick={onClick} className={classname(config.container)}>\n <div className=\"m-auto w-max\">\n {props.icon && (\n <div className={classname(config.icon)}>\n <Icon name={props.icon} />\n </div>\n )}\n <h4 className={classname(config.title)}>{props.title}</h4>\n </div>\n </div>\n );\n};\n\ntype TabConfig = {\n active?: boolean;\n disabled?: boolean;\n container: {\n base: string;\n cursor: string;\n shape: string;\n border: string;\n bg: {\n color: string;\n hover: string;\n };\n };\n icon: {\n base: string;\n color: string;\n size: string;\n };\n title: {\n base: string;\n color: string;\n size: string;\n };\n};\n\nconst defaultTabConfig = () => {\n const config: TabConfig = {\n container: {\n base: \"transition ease-in-out w-full p-2 lg:py-3 lg:px-5\",\n cursor: \"cursor-pointer\",\n shape: \"rounded-md\",\n bg: {\n color: \"\",\n hover: \"hover:bg-white\",\n },\n border: \"\",\n },\n icon: {\n base: \"align-middle hidden lg:inline-block\",\n color: \"text-slate-600\",\n size: \"w-5 h-5\",\n },\n title: {\n base: \"ml-1 capitalize font-semibold align-middle inline-block\",\n color: \"text-slate-600\",\n size: \"text-xs lg:text-sm\",\n },\n };\n return config;\n};\n\nconst withActive = (config: TabConfig, active?: boolean) => {\n if (active) {\n config.container.cursor = \"\";\n config.container.bg.color = \"bg-white\";\n }\n config.active = active;\n};\n\nconst withDisabled = (config: TabConfig, disabled?: boolean) => {\n if (disabled) {\n config.container.cursor = \"\";\n config.container.bg.color = \"\";\n config.container.bg.hover = \"\";\n config.icon.color = \"text-slate-400\";\n config.title.color = \"text-slate-400\";\n }\n config.disabled = disabled;\n};\n\nconst withSecondary = (config: TabConfig, secondary?: boolean) => {\n if (secondary) {\n config.container.shape = \"\";\n config.container.bg.color = \"\";\n config.container.bg.hover = \"\";\n config.icon.size = \"w-4 h-4\";\n config.title.size = \"text-xs\";\n\n if (config.active) {\n config.container.border = \"border-b-2 border-b-sky-400\";\n config.icon.color = \"text-sky-500\";\n config.title.color = \"text-sky-500\";\n } else if (config.disabled) {\n config.container.border = \"border-b border-slate-100 text-slate-600\";\n config.icon.color = \"\";\n config.title.color = \"\";\n } else {\n config.container.border =\n \"border-b border-slate-100 text-slate-600 hover:border-b-2 hover:border-b-sky-400 hover:text-sky-500\";\n config.icon.color = \"\";\n config.title.color = \"\";\n }\n }\n};\n","import React from \"react\";\nimport { builder } from \"../../utils/classname/classname\";\nimport { Loader } from \"../Loader/Loader\";\n\n/**\n * The properties for tabs.\n */\nexport type BoardProps = {\n isLoading?: boolean;\n secondary?: boolean;\n tabs?: React.ReactNode;\n workflow?: React.ReactNode;\n};\n\n/**\n * A component for tabs.\n * @param props\n * @constructor\n */\nexport const Board = (props: BoardProps) => {\n const className = builder().if(!!props.secondary, \"pt-2 px-2\").else(\"p-2 bg-gray-200\").build();\n const layoutClassName = builder(\"grid grid-cols-3 justify-items-center\").if(!props.secondary, \"gap-2\").build();\n const hasWorkflow = props.workflow && React.Children.count(props.workflow) > 0;\n\n return (\n <div className=\"w-full\">\n <div className={className}>\n <div className={layoutClassName}>{props.tabs}</div>\n </div>\n <div>\n <Loader isLoading={props.isLoading}>\n {!hasWorkflow && (\n <div className=\"grid justify-items-center content-center\">\n <p className=\"text-sm text-center align-middle leading-6 font-semibold text-slate-300\">\n No content to display.\n </p>\n </div>\n )}\n {hasWorkflow && props.workflow}\n </Loader>\n </div>\n </div>\n );\n};\n","import React from \"react\";\nimport { builder } from \"../../../utils/classname/classname\";\nimport { Icon } from \"../../Icon\";\nimport { Widget, WidgetBody, WidgetHeader, WidgetTitle } from \"../../Widget\";\n\n/**\n * DateSelection component props.\n */\nexport type DateSelectionProps = {\n isLoading?: boolean;\n date?: Date | null;\n setDate: (date: Date | null) => void;\n};\n\n/**\n * DateSelection component.\n * @param props\n * @constructor\n */\nexport const DateSelection = (props: DateSelectionProps) => {\n const today = new Date();\n const [month, setMonth] = React.useState(calend(props.date || today));\n\n return (\n <Widget isLoading={props.isLoading}>\n <WidgetHeader divide>\n <WidgetTitle icon=\"calendar\">Calendar</WidgetTitle>\n </WidgetHeader>\n <WidgetBody>\n <MonthSelection month={month} setMonth={setMonth} />\n <DaySelection date={props.date} month={month} setDate={props.setDate} />\n </WidgetBody>\n </Widget>\n );\n};\n\ntype MonthSelectionProps = {\n month: Date;\n setMonth: (date: Date) => void;\n};\n\nconst MonthSelection = (props: MonthSelectionProps) => {\n const month = props.month;\n const previousMonth = () => props.setMonth(new Date(month.getFullYear(), month.getMonth() - 1, 1));\n const nextMonth = () => props.setMonth(new Date(month.getFullYear(), month.getMonth() + 1, 1));\n\n return (\n <div className=\"flex items-center\">\n <div className=\"grow\">\n <span className=\"font-semibold text-md text-slate-300\">{formatDate(month, { month: \"long\" })}</span>\n <span className=\"text-md ml-1 text-slate-300\">{formatDate(month, { year: \"numeric\" })}</span>\n </div>\n <div onClick={previousMonth} className=\"cursor-pointer w-3 h-3 min-w-3 text-slate-300 hover:text-slate-500\">\n <Icon name=\"leftArrow\" />\n </div>\n <div onClick={nextMonth} className=\"cursor-pointer ml-2 w-3 h-3 min-w-3 text-slate-300 hover:text-slate-500\">\n <Icon name=\"rightArrow\" />\n </div>\n </div>\n );\n};\n\ntype DaySelectionProps = {\n date?: Date | null;\n month: Date;\n setDate: (date: Date | null) => void;\n};\n\nconst DaySelection = (props: DaySelectionProps) => {\n const today = new Date();\n const Days = [];\n const [start, end] = weeks(props.month, 6);\n for (let cur = start; cur <= end; cur = nextDate(cur)) {\n const isToday = isSameDate(today, cur);\n const isActive = isSameDate(props.date, cur);\n const isCurrentMonth = cur.getMonth() === props.month.getMonth();\n const onClick = () => props.setDate(isActive ? null : cur);\n Days.push(\n <DaySelectionOption\n key={cur.toString()}\n today={isToday}\n active={isActive}\n currentMonth={isCurrentMonth}\n onClick={onClick}\n >\n {cur.getDate()}\n </DaySelectionOption>\n );\n }\n\n return (\n <div className=\"mt-4 grid grid-cols-7 gap-1 text-sm justify-items-center\">\n {WEEKDAYS.map((date) => {\n return (\n <span key={date} className=\"w-8 text-center text-slate-400\">\n {date}\n </span>\n );\n })}\n {Days}\n </div>\n );\n};\n\n/**\n * The properties for the day selection option.\n */\nexport type DaySelectionOptionProps = {\n today: boolean;\n active: boolean;\n currentMonth: boolean;\n children: number;\n onClick: () => void;\n};\n\n/**\n * A component to for a day selection option.\n * @param props\n * @constructor\n */\nconst DaySelectionOption = (props: DaySelectionOptionProps) => {\n const className = builder(\"w-8 h-8 text-center cursor-pointer p-2\")\n .append(\"hover:text-white hover:font-semibold hover:bg-sky-400\")\n .if(props.active, \"text-white font-semibold bg-sky-400\")\n .if(!props.active && props.today, \"font-semibold bg-slate-100 rounded-full\")\n .if(!props.active && !props.today && props.currentMonth, \"text-slate-500 font-semibold\")\n .if(!props.active && !props.today && !props.currentMonth, \"text-slate-400\")\n .build();\n\n return (\n <span onClick={props.onClick} className={className}>\n {props.children}\n </span>\n );\n};\n\nconst WEEKDAYS = [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"];\n\n/**\n * A utility to calculate a date range for the specified number of weeks.\n * @param date\n * @param weeks\n */\nconst weeks = (date: Date, weeks: number) => {\n const start = new Date(date.getFullYear(), date.getMonth(), date.getDate() - date.getDay());\n const end = new Date(start.getFullYear(), start.getMonth(), start.getDate() + weeks * 7 - 1);\n return [start, end];\n};\n\n/**\n * A utility to calculate the first day of the month.\n * https://en.wikipedia.org/wiki/Calends\n */\nconst calend = (date: Date) => {\n return new Date(date.getFullYear(), date.getMonth(), 1);\n};\n\n/**\n * A helper utility to check if two date operands are equal.\n * @param left\n * @param right\n * @return {boolean}\n */\nconst isSameDate = (left?: Date | null, right?: Date) => {\n return (\n left === right ||\n (!!(left && right) &&\n left.getFullYear() === right.getFullYear() &&\n left.getMonth() === right.getMonth() &&\n left.getDate() === right.getDate())\n );\n};\n\n/**\n * A utility to format dates.\n * @param date\n * @param options\n */\nconst formatDate = (date: Date, options: Intl.DateTimeFormatOptions) => {\n return Intl.DateTimeFormat(\"en-US\", options).format(date);\n};\n\n/**\n * A utility to determine the next date.\n * @param date\n */\nconst nextDate = (date: Date) => {\n return new Date(date.getFullYear(), date.getMonth(), date.getDate() + 1);\n};\n","/**\n * Background color from name\n * @param name\n * @param active\n * @param disabled\n */\nexport const background = (name?: string, active?: boolean, disabled?: boolean) => {\n switch (name) {\n case \"college & career\":\n return disabled ? \"bg-red-200\" : active ? \"bg-red-300 hover:bg-red-200\" : \"bg-red-200 hover:bg-red-300\";\n case \"policy & government\":\n return disabled\n ? \"bg-violet-200\"\n : active\n ? \"bg-violet-300 hover:bg-violet-200\"\n : \"bg-violet-200 hover:bg-violet-300\";\n case \"recreation\":\n return disabled\n ? \"bg-orange-200\"\n : active\n ? \"bg-orange-300 hover:bg-orange-200\"\n : \"bg-orange-200 hover:bg-orange-300\";\n case \"arts & culture\":\n return disabled ? \"bg-amber-200\" : active ? \"bg-amber-300 hover:bg-amber-200\" : \"bg-amber-200 hover:bg-amber-300\";\n case \"volunteer\":\n return disabled\n ? \"bg-emerald-200\"\n : active\n ? \"bg-emerald-300 hover:bg-emerald-200\"\n : \"bg-emerald-200 hover:bg-emerald-300\";\n case \"sponsored\":\n return disabled ? \"bg-sky-200\" : active ? \"bg-sky-300 hover:bg-sky-200\" : \"bg-sky-200 hover:bg-sky-300\";\n default:\n return disabled ? \"bg-gray-50\" : active ? \"bg-gray-200 hover:bg-gray-100\" : \"bg-gray-100 hover:bg-gray-200\";\n }\n};\n\n/**\n * Foreground color from name\n * @param name\n */\nexport const foreground = (name?: string) => {\n switch (name) {\n case \"college & career\":\n return \"text-red-300 hover:text-red-400 border-red-300 hover:border-red-400 stroke-red-300 fill-red-300 hover:stroke-red-400 hover:stroke-red-400\";\n case \"policy & government\":\n return \"text-violet-300 hover:text-violet-400 border-violet-300 hover:border-violet-400 stroke-violet-300 fill-violet-300 hover:stroke-violet-400 hover:stroke-violet-400\";\n case \"recreation\":\n return \"text-orange-300 hover:text-orange-400 border-orange-300 hover:border-orange-400 stroke-orange-300 fill-orange-300 hover:stroke-orange-400 hover:stroke-orange-400\";\n case \"arts & culture\":\n return \"text-amber-300 hover:text-amber-400 border-amber-300 hover:border-amber-400 stroke-amber-300 fill-amber-300 hover:stroke-amber-400 hover:stroke-amber-400\";\n case \"volunteer\":\n return \"text-emerald-300 hover:text-emerald-400 border-emerald-300 hover:border-emerald-400 stroke-emerald-300 fill-emerald-300 hover:stroke-emerald-400 hover:stroke-emerald-400\";\n case \"sponsored\":\n return \"text-sky-300 hover:text-sky-400 border-sky-300 hover:border-sky-400 stroke-sky-300 fill-sky-300 hover:stroke-sky-400 hover:stroke-sky-400\";\n default:\n return \"text-gray-100 hover:text-gray-200 border-gray-100 hover:border-gray-200 stroke-gray-300 fill-gray-300 hover:stroke-gray-400 hover:stroke-gray-400\";\n }\n};\n","import React from \"react\";\nimport { background } from \"../../../utils/colors\";\nimport { Icon, IconName } from \"../../Icon\";\n\n/**\n * EventItemProps\n */\nexport type EventItemProps = {\n headline?: string;\n pathway?: string;\n onClick?: () => void;\n};\n\n/**\n * EventItem\n * @param props\n * @constructor\n */\nexport const EventItem = (props: EventItemProps) => {\n return (\n <div\n onClick={props.onClick}\n className={`flex flex-col shadow-md cursor-pointer transition ease-in-out ${background(\n props.pathway\n )} p-4 rounded-md text-gray-500 h-28`}\n >\n <div className=\"w-5 h-5 min-h-5 drop-shadow-md text-slate-600 mb-5\">\n <Icon name={(props.pathway as IconName) || \"explore\"} />\n </div>\n <p className=\"capitalize text-slate-600 text-sm\">{props.pathway}</p>\n <div className=\"relative h-full\">\n <p className=\"font-semibold capitalize text-slate-600 text-md absolute bottom-0\">{props.headline}</p>\n </div>\n </div>\n );\n};\n","import React from \"react\";\nimport { Icon } from \"../../Icon\";\nimport { Loader } from \"../../Loader\";\nimport { Widget, WidgetBody, WidgetHeader, WidgetHeaderLink, WidgetTitle } from \"../../Widget\";\n\n/**\n * EventList props.\n */\nexport type EventListProps = {\n isLoading?: boolean;\n date: Date | null;\n onSetDate: (date: Date | null) => void;\n children?: React.ReactNode;\n};\n\n/**\n * EventList component.\n * @param props\n * @constructor\n */\nexport const EventList = (props: EventListProps) => {\n const date = props.date || new Date();\n const hasChildren = props.children && React.Children.count(props.children) > 0;\n\n return (\n <Widget>\n <WidgetHeader divide>\n <WidgetTitle>\n <DateTitle>{date}</DateTitle>\n </WidgetTitle>\n <WidgetHeaderLink onClick={() => props.onSetDate(previousDate(date))} display={!!props.date}>\n <Icon name=\"leftArrow\" />\n </WidgetHeaderLink>\n <WidgetHeaderLink onClick={() => props.onSetDate(nextDate(date))} display={!!props.date}>\n <Icon name=\"rightArrow\" />\n </WidgetHeaderLink>\n </WidgetHeader>\n <WidgetBody>\n <Loader isLoading={props.isLoading}>\n {hasChildren && <div className=\"grid grid-cols-1 max-h-[30rem] overflow-auto gap-2\">{props.children}</div>}\n {!hasChildren && (\n <div className=\"grid justify-items-center content-center h-[16rem] lg:h-[22rem]\">\n <p className=\"text-sm text-center align-middle leading-6 font-semibold text-slate-300\">\n No events for the day.\n </p>\n </div>\n )}\n </Loader>\n </WidgetBody>\n </Widget>\n );\n};\n\n/**\n * The properties for the date title.\n */\ntype DateTitleProps = {\n children: Date;\n};\n\n/**\n * A component for displaying date titles.\n * @constructor\n */\nconst DateTitle = (props: DateTitleProps) => {\n return (\n <>\n <span className=\"font-semibold text-3xl text-slate-600\">{formatDate(props.children, { month: \"long\" })}</span>\n <span className=\"font-semibold ml-2 text-3xl text-slate-600\">{ordNumber(props.children.getDate())}</span>\n <span className=\"text-3xl ml-2 text-slate-600\">{formatDate(props.children, { year: \"numeric\" })}</span>\n </>\n );\n};\n\n/**\n * A utility to format dates.\n * @param date\n * @param options\n */\nconst formatDate = (date: Date, options: Intl.DateTimeFormatOptions) => {\n return Intl.DateTimeFormat(\"en-US\", options).format(date);\n};\n\n/**\n * A utility to determine the previous date.\n * @param date\n */\nconst previousDate = (date: Date) => {\n return new Date(date.getFullYear(), date.getMonth(), date.getDate() - 1);\n};\n\n/**\n * A utility to determine the next date.\n * @param date\n */\nconst nextDate = (date: Date) => {\n return new Date(date.getFullYear(), date.getMonth(), date.getDate() + 1);\n};\n\n/**\n * A utility to get a number as its ordinal representation.\n * https://community.shopify.com/c/shopify-design/ordinal-number-in-javascript-1st-2nd-3rd-4th/m-p/72156\n * @param n\n */\nconst ordNumber = (n: number) => {\n const s = [\"th\", \"st\", \"nd\", \"rd\"],\n v = n % 100;\n return n + (s[(v - 20) % 10] || s[v] || s[0]);\n};\n","import * as React from \"react\"\n\n/**\n * Home\n * @constructor\n */\nexport const Home = () => {\n return (\n <div className=\"relative h-full w-full\">\n <img\n className=\"absolute h-full w-full top-0 left-0 object-cover\"\n alt=\"landing\"\n src=\"https://cdn.localcivics.io/hub/landing.jpg\"\n />\n <div className=\"absolute z-10 bottom-1/4 left-0 w-full -mb-[3rem] px-6 lg:px-36\">\n <div className=\"max-w-[62.5rem] m-auto inset-z-0 text-white\">\n <p className=\"text-[3rem] font-bold\">Learning that powers your future!</p>\n <p className=\"mt-5 text-[2rem]\">\n Explore pathways, earn badges and build skills for success in college, career, and community.\n </p>\n </div>\n </div>\n </div>\n );\n};\n","import React from \"react\";\nimport { Button } from \"../../../components/Button\";\nimport { Icon } from \"../../../components/Icon\";\nimport { Modal } from \"../../../components/Modal\";\n\n/**\n * FormExitDialogProps\n */\nexport type FormExitDialogProps = {\n onYes?: () => void;\n onNo?: () => void;\n};\n\n/**\n * FormExitDialog\n * @param props\n * @constructor\n */\nexport const FormExitDialog = (props: FormExitDialogProps) => {\n return (\n <Modal visible transparent onClose={props.onNo}>\n <div className=\"w-full md:w-[24rem] px-8 py-5 shadow-sm grid grid-cols-1 gap-4 content-center justify-items-center\">\n <div className=\"text-slate-500 w-14 h-14\">\n <Icon name=\"edit\" />\n </div>\n\n <div className=\"text-slate-600 text-center\">\n <div className=\"font-bold text-lg\">\n <span>Are you sure you want to leave?</span>\n </div>\n <p className=\"text-sm max-w-[16rem]\">Your progress will be saved.</p>\n </div>\n\n <div className=\"my-5 grid grid-cols-2 gap-4\">\n <Button\n wide\n spacing=\"md\"\n border=\"rounded\"\n color=\"blue\"\n theme=\"dark\"\n text=\"Yes\"\n size=\"md\"\n onClick={props.onYes}\n />\n\n <Button\n wide\n spacing=\"md\"\n border=\"rounded\"\n color=\"secondary\"\n theme=\"dark\"\n text=\"No\"\n size=\"md\"\n onClick={props.onNo}\n />\n </div>\n </div>\n </Modal>\n );\n};\n","import React from \"react\";\nimport LinkifyIt from \"linkify-it\";\nimport reactStringReplace from \"react-string-replace\"\n\nexport const linkify = (text: React.ReactNode) => {\n if(typeof text !== 'string'){\n return text\n }\n\n const matches = LinkifyIt().match(text)\n let replacedText = reactStringReplace(text)\n matches?.forEach(match => {\n replacedText = reactStringReplace(replacedText, match.raw, () => <a\n href={match.url}\n target=\"_blank\"\n rel=\"noreferrer\"\n className=\"hover:underline text-blue-500\"\n >{match.text}</a>)\n })\n\n return replacedText\n}","import React from \"react\";\r\nimport { Icon } from \"../../../components/Icon\";\r\nimport { linkify } from \"../../../utils/url\";\r\n\r\n/**\r\n * FormItemProps\r\n */\r\nexport type FormItemProps = {\r\n itemId?: string;\r\n displayName?: string | React.ReactNode;\r\n description?: string;\r\n format?: \"question\" | \"image\" | \"embed\" | \"text\";\r\n questionType?: \"radio\" | \"checkbox\" | \"drop down\" | \"file upload\" | \"text\" | \"date\" | \"time\";\r\n options?: string[];\r\n paragraph?: boolean;\r\n required?: boolean;\r\n disabled?: boolean;\r\n url?: string;\r\n answerId?: string;\r\n journalId?: string;\r\n questionId?: string;\r\n responses?: string[];\r\n minText?: number;\r\n children?: React.ReactNode;\r\n\r\n onResponseChange?: (responses?: string[], file?: Blob) => void;\r\n onTextBlur?: () => void;\r\n};\r\n\r\n/**\r\n * FormItem\r\n * @param props\r\n * @constructor\r\n */\r\nexport const FormItem = (props: FormItemProps) => {\r\n const responses = props.responses || [];\r\n const notEmpty = responses.length > 0 && responses[0].trim() !== \"\";\r\n const minimum = props.minText !== undefined ? props.minText : 100;\r\n const isTextError = notEmpty && props.questionType === \"text\" && responses[0].trim().length < minimum;\r\n const isValidAnswer = notEmpty && (props.questionType !== \"text\" || !isTextError);\r\n const checkIconColor = isValidAnswer ? \"text-green-500\" : \"text-gray-300\";\r\n const contentMaxWidth = props.format === \"question\" ? \"max-w-lg\" : \"\";\r\n const [showError, setShowError] = React.useState(false);\r\n const itemContainerError = showError && isTextError ? \"border-2 border-rose-300\" : \"\";\r\n\r\n const onTextBlur = () => {\r\n if (isTextError) {\r\n setShowError(true);\r\n } else {\r\n setShowError(false);\r\n }\r\n\r\n if (props.onTextBlur) {\r\n props.onTextBlur();\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n if (!isTextError) {\r\n setShowError(false);\r\n }\r\n }, [isTextError]);\r\n\r\n const marginBottom = props.format === \"text\" ? \"-mb-7\" : \"\";\r\n\r\n return (\r\n <div className={`bg-white rounded-md p-5 shadow-sm grid grid-cols-1 gap-y-8 ${itemContainerError} ${marginBottom}`}>\r\n {props.displayName && (\r\n <div className=\"flex gap-x-1\">\r\n <div className=\"flex items-start gap-x-4\">\r\n {props.format === \"question\" && (\r\n <div className={`${checkIconColor} w-5 h-5 mt-1`}>\r\n <Icon name=\"positive\" />\r\n </div>\r\n )}\r\n <div className=\"grow max-w-lg\">\r\n {props.displayName && (\r\n <p className=\"flex-auto text-lg text-slate-600 font-semibold whitespace-pre-line\">\r\n {linkify(props.displayName)}\r\n </p>\r\n )}\r\n {props.description && (\r\n <p className=\"text-sm text-slate-400 whitespace-pre-line\">{linkify(props.description)}</p>\r\n )}\r\n </div>\r\n </div>\r\n {props.required && <p className=\"text-sm text-rose-600\">*</p>}\r\n </div>\r\n )}\r\n\r\n {!props.children && props.format !== \"text\" && (\r\n <div className={`${contentMaxWidth} ml-1`}>\r\n <Switch {...props} onTextBlur={onTextBlur} />\r\n {showError && (\r\n <div className=\"text-rose-300 flex items-center gap-x-2 mt-4\">\r\n <div className=\"w-4 h-4\">\r\n <Icon name=\"negative\" />\r\n </div>\r\n <span className=\"grow text-sm\">Must be a minimum of {minimum} characters.</span>\r\n </div>\r\n )}\r\n </div>\r\n )}\r\n\r\n {props.children}\r\n </div>\r\n );\r\n};\r\n\r\nconst Switch = (props: FormItemProps) => {\r\n switch (true) {\r\n case props.format === \"embed\":\r\n return <Embed {...props} />;\r\n case props.format === \"image\":\r\n return <Image {...props} />;\r\n case props.questionType === \"radio\":\r\n return <RadioQuestion {...props} />;\r\n case props.questionType === \"checkbox\":\r\n return <CheckboxQuestion {...props} />;\r\n case props.questionType === \"drop down\":\r\n return <DropDownQuestion {...props} />;\r\n case props.questionType === \"file upload\":\r\n return <FileUploadQuestion {...props} />;\r\n case props.questionType === \"text\":\r\n return <TextQuestion {...props} />;\r\n case props.questionType === \"date\":\r\n return <DateQuestion {...props} />;\r\n case props.questionType === \"time\":\r\n return <TimeQuestion {...props} />;\r\n default:\r\n return null;\r\n }\r\n};\r\n\r\nconst RadioQuestion = (props: FormItemProps) => {\r\n const options = props.options || [];\r\n const responses = props.responses || [];\r\n const values: { [key: string]: boolean } = {};\r\n responses.forEach((key) => (values[key] = true));\r\n\r\n const onChange = (e: React.ChangeEvent<HTMLInputElement>) => {\r\n if (props.onResponseChange) {\r\n props.onResponseChange([e.target.value]);\r\n }\r\n };\r\n\r\n return (\r\n <fieldset className=\"grid grid-cols-1 gap-y-8\">\r\n {options.map((option, index) => {\r\n return (\r\n <div key={option}>\r\n <label className=\"flex gap-x-4 items-center\">\r\n <input\r\n className=\"cursor-pointer\"\r\n checked={values[option]}\r\n onChange={onChange}\r\n required={props.required}\r\n type=\"radio\"\r\n value={option}\r\n disabled={props.disabled}\r\n name={displayNameString(props.displayName)}\r\n />\r\n <div>\r\n <span className=\"font-bold\">{String.fromCharCode(65 + index)}.</span> {option}\r\n </div>\r\n </label>\r\n </div>\r\n );\r\n })}\r\n </fieldset>\r\n );\r\n};\r\n\r\nconst CheckboxQuestion = (props: FormItemProps) => {\r\n const options = props.options || [];\r\n const responses = props.responses || [];\r\n const values: { [key: string]: boolean } = {};\r\n let rawResponse: string = \"\";\r\n for (const val of responses) {\r\n if (val.startsWith(\"Other: \")) {\r\n rawResponse = val;\r\n break\r\n }\r\n };\r\n\r\n\r\n\r\n const response = rawResponse && rawResponse.replace(\"Other: \", \"\");\r\n const isOtherResponse = rawResponse && rawResponse.startsWith(\"Other: \");\r\n\r\n responses.forEach((key) => (values[key] = true));\r\n\r\n const onOtherChange = (e: React.ChangeEvent<HTMLInputElement>) =>\r\n setResponseValue(e.target.value ? `Other: ${e.target.value}` : \"\");\r\n const onChange = (e: React.ChangeEvent<HTMLInputElement>) => setResponseValue(e.target.value);\r\n const setResponseValue = (value: string) => {\r\n if (value && props.onResponseChange) {\r\n const newResponses = [];\r\n responses.forEach((v) => {\r\n\r\n const outOfScope = !(v.startsWith(\"Other: \") && value.startsWith(\"Other: \")) && v !== value;\r\n if (outOfScope) {\r\n newResponses.push(v);\r\n }\r\n });\r\n\r\n if (!responses.includes(value)) {\r\n newResponses.push(value);\r\n }\r\n\r\n props.onResponseChange(newResponses);\r\n }\r\n };\r\n let isOneChecked = false;\r\n React.useEffect(() => { }, []);\r\n\r\n return (\r\n <fieldset className=\"grid grid-cols-1 gap-y-8\">\r\n {options.map((option) => {\r\n isOneChecked = Object.keys(values).length ? true : false;\r\n return (\r\n <div key={option}>\r\n <label className=\"flex gap-x-4 items-center\">\r\n <input\r\n id=\"checkbox\"\r\n disabled={props.disabled}\r\n className=\"cursor-pointer shrink-0\"\r\n required={option ? props.required && !isOneChecked && !!isOtherResponse : props.required && !isOneChecked}\r\n checked={values[option] || (!option && values[`Other: ${response}`])}\r\n onChange={option ? onChange : onOtherChange}\r\n type=\"checkbox\"\r\n value={option || response}\r\n name={displayNameString(props.displayName)}\r\n />\r\n {option && <div>{option}</div>}\r\n {!option && (\r\n <>\r\n Other:{\" \"}\r\n <input\r\n className=\"w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 text-sm placeholder-slate-400 border border-slate-300 rounded-sm shadow-sm\r\n focus:outline-none focus:ring-1 focus:ring-sky-500\"\r\n value={isOtherResponse ? response : \"\"}\r\n required={props.required && !isOneChecked}\r\n disabled={props.disabled}\r\n onChange={onOtherChange}\r\n placeholder=\"Input another option\"\r\n\r\n />\r\n </>\r\n )}\r\n </label>\r\n </div>\r\n );\r\n })}\r\n </fieldset>\r\n );\r\n};\r\n\r\nconst DropDownQuestion = (props: FormItemProps) => {\r\n const options = props.options || [];\r\n const responses = props.responses || [];\r\n const values: { [key: string]: boolean } = {};\r\n responses.forEach((key) => (values[key] = true));\r\n\r\n const onChange = (e: React.ChangeEvent<HTMLSelectElement>) => {\r\n if (props.onResponseChange) {\r\n props.onResponseChange([e.target.value]);\r\n }\r\n };\r\n\r\n return (\r\n <select\r\n disabled={props.disabled}\r\n className={`cursor-pointer appearance-none mt-1 block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-sm text-sm shadow-sm placeholder-slate-400\r\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\r\n disabled:bg-slate-50 disabled:text-gray-600 disabled:border-slate-200 disabled:shadow-none`}\r\n required={props.required}\r\n name={displayNameString(props.displayName)}\r\n onChange={onChange}\r\n >\r\n <option className=\"cursor-pointer\" value=\"\">\r\n Select one\r\n </option>\r\n\r\n {options.map((option) => {\r\n return (\r\n <option key={option} selected={values[option]} value={option}>\r\n {option}\r\n </option>\r\n );\r\n })}\r\n </select>\r\n );\r\n};\r\n\r\nconst FileUploadQuestion = (props: FormItemProps) => {\r\n const responses = props.responses || [];\r\n const response = responses.length > 0 ? responses[0] : \"\";\r\n const [imageURL, setImageURL] = React.useState(response);\r\n const onChange = (e: React.ChangeEvent<HTMLInputElement>) => {\r\n if (props.onResponseChange) {\r\n props.onResponseChange([e.target.value]);\r\n }\r\n };\r\n const onImageUpload = (e: React.ChangeEvent<HTMLInputElement>) => {\r\n let reader = new FileReader();\r\n const target = e.target as HTMLInputElement;\r\n const file: File = (target.files as FileList)[0];\r\n reader.onloadend = () => {\r\n if (typeof reader.result === \"string\") {\r\n setImageURL(reader.result);\r\n if (props.onResponseChange) {\r\n props.onResponseChange(undefined, file);\r\n }\r\n }\r\n };\r\n\r\n if (file) {\r\n reader.readAsDataURL(file);\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n setImageURL(response);\r\n }, [props.questionId, response]);\r\n\r\n return (\r\n <div className=\"grid grid-cols-1 gap-4\">\r\n <div className=\"flex items-center space-x-3\">\r\n <label className=\"block\">\r\n <span className=\"sr-only\">Choose image photo</span>\r\n <input\r\n disabled={props.disabled}\r\n onChange={onImageUpload}\r\n name=\"image\"\r\n type=\"file\"\r\n className=\"block w-full text-sm text-slate-500 disabled:text-gray-600\r\n file:mr-4 file:py-2 file:px-4\r\n file:rounded-full file:border-0\r\n file:text-sm file:font-semibold\r\n file:bg-violet-50 file:text-violet-700\r\n hover:file:bg-violet-100\"\r\n />\r\n </label>\r\n </div>\r\n\r\n <div className=\"-ml-2\">\r\n <input\r\n type=\"url\"\r\n disabled={props.disabled}\r\n name={displayNameString(props.displayName)}\r\n required={props.required}\r\n onChange={onChange}\r\n value={imageURL}\r\n placeholder=\"Paste a url or select a file above\"\r\n className=\"w-full mt-1 block px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-sm text-sm shadow-sm placeholder-slate-400\r\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\r\n disabled:bg-slate-50 disabled:text-gray-600 disabled:border-slate-200 disabled:shadow-none\"\r\n />\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nconst TextQuestion = (props: FormItemProps) => {\r\n const minimum = props.minText !== undefined ? props.minText : 100;\r\n const responses = props.responses || [];\r\n const response = responses.length > 0 ? responses[0] : \"\";\r\n\r\n const onChange = (e: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => {\r\n if (props.onResponseChange) {\r\n props.onResponseChange([e.target.value]);\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n {!props.paragraph && (\r\n <input\r\n className=\"mt-1 block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 text-sm placeholder-slate-400 border border-slate-300 rounded-sm shadow-sm\r\n focus:outline-none focus:ring-1 focus:ring-sky-500 focus:border-sky-500\r\n disabled:bg-slate-50 disabled:text-gray-600 disabled:border-slate-200 disabled:shadow-none\"\r\n required={props.required}\r\n minLength={minimum}\r\n onChange={onChange}\r\n onBlur={props.onTextBlur}\r\n name={displayNameString(props.displayName)}\r\n disabled={props.disabled}\r\n type=\"text\"\r\n placeholder=\"Your answer\"\r\n value={response}\r\n />\r\n )}\r\n {props.paragraph && (\r\n <textarea\r\n className=\"resize-none text-slate-500 focus:text-slate-600 h-24 mt-1 block w-full px-3 py-2 bg-white border border-slate-300 rounded-sm text-sm shadow-sm placeholder-slate-400\r\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\r\n disabled:bg-slate-50 disabled:text-gray-600 disabled:border-slate-200 disabled:shadow-none\"\r\n required={props.required}\r\n minLength={minimum}\r\n onChange={onChange}\r\n onBlur={props.onTextBlur}\r\n name={displayNameString(props.displayName)}\r\n disabled={props.disabled}\r\n value={response}\r\n placeholder=\"Your answer\"\r\n />\r\n )}\r\n </>\r\n );\r\n};\r\n\r\nconst DateQuestion = (props: FormItemProps) => {\r\n const responses = props.responses || [];\r\n const response = responses.length > 0 ? responses[0] : \"\";\r\n\r\n const onChange = (e: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => {\r\n if (props.onResponseChange) {\r\n props.onResponseChange([e.target.value]);\r\n }\r\n };\r\n\r\n return (\r\n <input\r\n className=\"mt-1 block w-full px-3 pt-3 pb-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-sm text-sm shadow-sm placeholder-slate-400\r\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\r\n disabled:bg-slate-50 disabled:text-gray-600 disabled:border-slate-200 disabled:shadow-none\"\r\n required={props.required}\r\n onChange={onChange}\r\n name={displayNameString(props.displayName)}\r\n disabled={props.disabled}\r\n type=\"date\"\r\n value={response}\r\n />\r\n );\r\n};\r\n\r\nconst TimeQuestion = (props: FormItemProps) => {\r\n const responses = props.responses || [];\r\n const response = responses.length > 0 ? responses[0] : \"\";\r\n\r\n const onChange = (e: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => {\r\n if (props.onResponseChange) {\r\n props.onResponseChange([e.target.value]);\r\n }\r\n };\r\n\r\n return (\r\n <input\r\n className=\"mt-1 block w-full px-3 pt-3 pb-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-sm text-sm shadow-sm placeholder-slate-400\r\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\r\n disabled:bg-slate-50 disabled:text-gray-600 disabled:border-slate-200 disabled:shadow-none\"\r\n required={props.required}\r\n onChange={onChange}\r\n name={displayNameString(props.displayName)}\r\n disabled={props.disabled}\r\n type=\"time\"\r\n value={response}\r\n />\r\n );\r\n};\r\n\r\nconst Image = (props: FormItemProps) => {\r\n const [scale, setScale] = React.useState(\"\");\r\n const scaleUp = () => {\r\n switch (scale) {\r\n case \"scale-[0.50]\":\r\n setScale(\"scale-[0.75]\");\r\n return;\r\n case \"scale-[0.75]\":\r\n setScale(\"\");\r\n return;\r\n case \"\":\r\n setScale(\"scale-[1.25]\");\r\n return;\r\n case \"scale-[1.25]\":\r\n setScale(\"scale-[1.50]\");\r\n return;\r\n case \"scale-[1.50]\":\r\n setScale(\"scale-[1.75]\");\r\n return;\r\n case \"scale-[1.75]\":\r\n setScale(\"scale-[2.00]\");\r\n return;\r\n }\r\n };\r\n\r\n const scaleDown = () => {\r\n switch (scale) {\r\n case \"scale-[0.75]\":\r\n setScale(\"scale-[0.50]\");\r\n return;\r\n case \"\":\r\n setScale(\"scale-[0.75]\");\r\n return;\r\n case \"scale-[1.25]\":\r\n setScale(\"\");\r\n return;\r\n case \"scale-[1.50]\":\r\n setScale(\"scale-[1.25]\");\r\n return;\r\n case \"scale-[1.75]\":\r\n setScale(\"scale-[1.50]\");\r\n return;\r\n case \"scale-[2.00]\":\r\n setScale(\"scale-[1.75]\");\r\n return;\r\n }\r\n };\r\n\r\n return (\r\n <div className=\"relative max-w-[25rem] md:max-w-[40rem] md:w-[40rem] overflow-hidden\">\r\n <img\r\n referrerPolicy=\"no-referrer\"\r\n className={`h-full max-h-[25rem] w-full object-cover ${scale}`}\r\n alt={displayNameString(props.displayName)}\r\n src={props.url}\r\n />\r\n <div className=\"absolute rounded-sm shadow-md bottom-5 right-5 z-5 bg-gray-100 font-bold\">\r\n <span className=\"p-5 cursor-pointer text-md text-gray-400 hover:text-gray-600\" onClick={scaleUp}>\r\n +\r\n </span>\r\n <span className=\"p-5 cursor-pointer text-xl text-gray-400 hover:text-gray-600\" onClick={scaleDown}>\r\n -\r\n </span>\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nconst Embed = (props: FormItemProps) => {\r\n return (\r\n <div className=\"max-w-[25rem] md:max-w-[40rem] md:w-[40rem]\">\r\n <iframe\r\n className=\"w-full\"\r\n height=\"315\"\r\n src={props.url}\r\n title={displayNameString(props.displayName)}\r\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\r\n allowFullScreen\r\n />\r\n </div>\r\n );\r\n};\r\n\r\nconst displayNameString = (displayName: React.ReactNode) => {\r\n if (!displayName) {\r\n return \"\";\r\n }\r\n\r\n return displayName.toString();\r\n};\r\n","import React from \"react\";\nimport { Button } from \"../../../components/Button\";\nimport { Icon } from \"../../../components/Icon\";\nimport { Modal } from \"../../../components/Modal\";\n\n/**\n * FormSubmitDialogProps\n */\nexport type FormSubmitDialogProps = {\n onEditLesson?: () => void;\n onBackToBadge?: () => void;\n};\n\n/**\n * FormSubmitDialog\n * @param props\n * @constructor\n */\nexport const FormSubmitDialog = (props: FormSubmitDialogProps) => {\n return (\n <Modal visible transparent onClose={props.onEditLesson}>\n <div className=\"w-full md:w-[24rem] px-8 py-5 shadow-sm grid grid-cols-1 gap-4 content-center justify-items-center\">\n <div className=\"text-green-500 w-14 h-14\">\n <Icon name=\"positive\" />\n </div>\n\n <div className=\"text-slate-600 text-center\">\n <div className=\"font-bold text-lg\">\n <span>Great Job!</span>\n </div>\n <p className=\"text-sm max-w-[16rem]\">Your responses have been submitted.</p>\n </div>\n\n <div className=\"my-5 grid grid-cols-2 gap-4\">\n <Button\n wide\n spacing=\"sm\"\n justify=\"center\"\n border=\"rounded\"\n color=\"blue\"\n theme=\"dark\"\n text=\"Edit Lesson\"\n size=\"sm\"\n onClick={props.onEditLesson}\n />\n\n <Button\n wide\n spacing=\"sm\"\n justify=\"center\"\n border=\"rounded\"\n color=\"blue\"\n theme=\"dark\"\n text=\"Back to Badge\"\n size=\"sm\"\n onClick={props.onBackToBadge}\n />\n </div>\n </div>\n </Modal>\n );\n};\n","import React, { useCallback } from \"react\";\r\nimport { Button } from \"../../../components/Button/Button\";\r\nimport { Icon } from \"../../../components/Icon/v0/Icon\";\r\nimport { FormExitDialog } from \"../FormExitDialog/FormExitDialog\";\r\nimport { FormItem, FormItemProps } from \"../FormItem/FormItem\";\r\nimport { FormSubmitDialog } from \"../FormSubmitDialog/FormSubmitDialog\";\r\n\r\nconst AUTOSAVE_TIMEOUT = 30 * 1000;\r\nconst MIN_REFLECTION_LENGTH = 0;\r\n\r\n// A utility for auto-saving drafts\r\nconst autoSave = (\r\n run?: boolean,\r\n func?: (items: FormItemProps[], reflection: string, rating?: number) => Promise<any>,\r\n callback?: () => void\r\n) => {\r\n let timeout: NodeJS.Timeout;\r\n return (items: FormItemProps[], reflection: string, rating?: number) => {\r\n clearTimeout(timeout);\r\n timeout = setTimeout(\r\n async () =>\r\n run &&\r\n func &&\r\n (await func(items, reflection, rating).then((e) => {\r\n if (!e && callback) {\r\n callback();\r\n }\r\n })),\r\n AUTOSAVE_TIMEOUT\r\n );\r\n return timeout;\r\n };\r\n};\r\n\r\n/**\r\n * LearningFormProps\r\n */\r\nexport type LearningFormProps = {\r\n formId?: string;\r\n displayName?: string;\r\n description?: string;\r\n eta?: string;\r\n imageURL?: string;\r\n reflection?: string;\r\n rating?: number;\r\n items?: FormItemProps[];\r\n preview?: boolean;\r\n timeSpent?: number;\r\n elapsedTime?: number;\r\n stopWatchStarted?: boolean;\r\n stopWatch?: React.ReactNode;\r\n\r\n onBackToBadge?: () => void;\r\n onEditLesson?: () => void;\r\n onSubmit?: (reflection: string, rating?: number) => Promise<any>;\r\n onSaveDraft?: (items: FormItemProps[], reflection: string, rating?: number) => Promise<any>;\r\n};\r\n\r\n/**\r\n * LearningForm\r\n * @param props\r\n * @constructor\r\n */\r\nexport const LearningForm = (props: LearningFormProps) => {\r\n const [answersKey, setAnswersKey] = React.useState(null as null | string);\r\n const [reflection, setReflection] = React.useState(props.reflection || \"\");\r\n const [rating, setRating] = React.useState(props.rating);\r\n const [showExitDialogue, setShowExitDialogue] = React.useState(false);\r\n const [showSubmitDialogue, setShowSubmitDialogue] = React.useState(false);\r\n const [isDraft, setIsDraft] = React.useState(false);\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n const autoSaveHandler = useCallback(\r\n autoSave(isDraft, props.onSaveDraft, () => setIsDraft(false)),\r\n [isDraft]\r\n );\r\n const elapsedTime = props?.elapsedTime || 0\r\n const timeSpent = props?.timeSpent || 0\r\n const saveVisibility = isDraft ? \"opacity-100 visible\" : \"opacity-0 invisible\";\r\n const answers: FormItemProps[] = [];\r\n const saveDraft = async () => {\r\n if (!isDraft && elapsedTime <= timeSpent) {\r\n return;\r\n }\r\n\r\n return props.onSaveDraft && props.onSaveDraft(answers, reflection, rating).then((e) => !e && setIsDraft(false));\r\n };\r\n\r\n let answeredAllRequired = true;\r\n props.items?.forEach((item) => {\r\n if (item.format === \"question\") {\r\n answeredAllRequired &&= !item.required || (!!item.responses && item.responses.length > 0);\r\n if (item.responses !== undefined) {\r\n answers.push(item);\r\n }\r\n }\r\n });\r\n\r\n const canReflect = !!reflection || answeredAllRequired;\r\n const canSubmit = answeredAllRequired && reflection.length >= MIN_REFLECTION_LENGTH;\r\n const items = props.items || [];\r\n const currentAnswersKey = answers && answers.length > 0 ? JSON.stringify(answers) : null;\r\n\r\n React.useEffect(() => {\r\n setRating(props.rating);\r\n }, [props.rating]);\r\n\r\n React.useEffect(() => {\r\n setReflection(props.reflection || \"\");\r\n }, [props.reflection]);\r\n\r\n React.useEffect(() => {\r\n autoSaveHandler(answers, reflection, rating);\r\n }, [currentAnswersKey, reflection, rating, isDraft]);\r\n\r\n React.useEffect(() => {\r\n if (props.formId) {\r\n setAnswersKey(currentAnswersKey);\r\n }\r\n }, [props.formId]);\r\n\r\n React.useEffect(() => {\r\n if (answersKey === null) {\r\n return;\r\n }\r\n\r\n if (answersKey !== currentAnswersKey) {\r\n setAnswersKey(currentAnswersKey);\r\n setIsDraft(true);\r\n }\r\n }, [currentAnswersKey]);\r\n\r\n\r\n\r\n const onReflectionChange = (responses?: string[]) => {\r\n if (!responses || responses.length === 0) {\r\n setReflection(\"\");\r\n return;\r\n }\r\n setReflection(responses[0]);\r\n setIsDraft(true);\r\n };\r\n\r\n const onSubmit = (e: React.FormEvent) => {\r\n e.preventDefault();\r\n if (props.onSubmit) {\r\n props.onSubmit(reflection, rating).then((err) => {\r\n if (!err) {\r\n setShowSubmitDialogue(true);\r\n setIsDraft(false);\r\n }\r\n });\r\n }\r\n };\r\n\r\n const bg = props.preview ? \"\" : \"bg-gray-100\";\r\n return (\r\n <div className={`grid grid-cols-1 gap-y-12 ${bg} px-12 pb-24 lg:px-56`}>\r\n <div className=\"w-full max-w-[64rem] m-auto md:grid md:grid-cols-2 bg-white rounded-b overflow-hidden shadow-sm\">\r\n <div className=\"grid grid-cols-1 gap-y-6 px-8 py-8 text-slate-600 max-w-md\">\r\n <div\r\n onClick={() => {\r\n if (props.preview && props.onEditLesson) {\r\n props.onEditLesson();\r\n } else {\r\n setShowExitDialogue(true);\r\n }\r\n }}\r\n className=\"flex h-max gap-x-2 cursor-pointer items-center text-slate-300 hover:text-slate-500\"\r\n >\r\n <div className=\"w-3 h-3 min-w-3\">\r\n <Icon name=\"leftArrow\" />\r\n </div>\r\n <span className=\"text-md\">Back</span>\r\n </div>\r\n {!!props.displayName && <h2 className=\"h-max font-semibold text-2xl\">{props.displayName}</h2>}\r\n {!!props.description && (\r\n <p className=\"h-max max-h-[14rem] overflow-y-auto whitespace-pre-line\">{props.description}</p>\r\n )}\r\n {!!props.eta && <p className=\"text-sm h-max font-semibold\">Estimated Completion Time: {props.eta}</p>}\r\n </div>\r\n <img className=\"grow h-full max-h-[30rem] w-full object-cover\" alt={props.displayName} src={props.imageURL} />\r\n </div>\r\n\r\n <form className=\"w-full max-w-[64rem] m-auto grid grid-cols-1 gap-y-12\" onSubmit={onSubmit}>\r\n {items.map((item: FormItemProps) => {\r\n return <FormItem key={item.itemId} {...item} minText={0} disabled={!!props.preview} />;\r\n })}\r\n\r\n <FormItem\r\n displayName={\r\n <>\r\n <p>Optional: What is one takeaway from this lesson?</p>\r\n </>\r\n }\r\n description=\"\"\r\n format=\"question\"\r\n questionType=\"text\"\r\n disabled={!canReflect || !!props.preview}\r\n onResponseChange={onReflectionChange}\r\n paragraph\r\n minText={MIN_REFLECTION_LENGTH}\r\n responses={reflection ? [reflection] : [\"My Reflection: \"]}\r\n />\r\n\r\n <FormItem>\r\n <Rating disabled={!canReflect || !!props.preview} rating={rating} setRating={setRating} />\r\n </FormItem>\r\n\r\n {!props.preview && (\r\n <div className=\"w-max m-auto\">\r\n <Button\r\n // disabled={!canSubmit}\r\n type=\"submit\"\r\n color=\"blue\"\r\n size=\"md\"\r\n spacing=\"md\"\r\n border=\"rounded\"\r\n theme=\"dark\"\r\n text=\"Submit\"\r\n />\r\n </div>\r\n )}\r\n </form>\r\n {props.stopWatch && (\r\n <div className={`fixed bottom-20 right-5 transition ease-in-out mb-5`}>{props.stopWatch}</div>\r\n )}\r\n {!props.preview && (\r\n <div className={`fixed bottom-5 right-14 transition ease-in-out ${saveVisibility}`}>\r\n <Button\r\n type=\"button\"\r\n color=\"dark-blue\"\r\n size=\"md\"\r\n spacing=\"md\"\r\n border=\"rounded\"\r\n theme=\"dark\"\r\n text=\"Save\"\r\n onClick={saveDraft}\r\n />\r\n </div>\r\n )}\r\n\r\n {showExitDialogue && (\r\n <div className=\"fixed top-0 left-0 px-4 md:px-2 w-screen h-screen py-5 transition ease-in-out duration-400 bg-gray-200/75 z-40\">\r\n <div className=\"flex md:w-max h-screen gap-x-2 justify-items-center content-center m-auto\">\r\n <FormExitDialog\r\n onYes={() => saveDraft().then(() => props.onEditLesson && props.onEditLesson())}\r\n onNo={() => setShowExitDialogue(false)}\r\n />\r\n </div>\r\n </div>\r\n )}\r\n\r\n {showSubmitDialogue && (\r\n <div className=\"fixed top-0 left-0 px-4 md:px-2 w-screen h-screen py-5 transition ease-in-out duration-400 bg-gray-200/75 z-40\">\r\n <div className=\"flex md:w-max h-screen gap-x-2 justify-items-center content-center m-auto\">\r\n <FormSubmitDialog onEditLesson={() => setShowSubmitDialogue(false)} onBackToBadge={props.onBackToBadge} />\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\nconst Rating = (props: { disabled?: boolean; rating?: number; setRating?: (rating: number) => void }) => {\r\n /**\r\n * Max points for reflection.\r\n */\r\n const [confidence, setConfidence] = React.useState(props.rating || -1);\r\n const onMouseEnter = (i: number) => !props.disabled && setConfidence(i);\r\n const onMouseLeave = () => !props.disabled && setConfidence(props.rating || -1);\r\n const onClick = (i: number) => !props.disabled && props.setRating && props.setRating(i);\r\n const maxPoints = 5;\r\n const circlePointer = props.disabled ? \"\" : \"cursor-pointer\";\r\n\r\n const buttons = Array.from({ length: maxPoints }, (_, i) => {\r\n const color = i < confidence ? \"text-sky-200\" : \"text-slate-200\";\r\n return (\r\n <div key={i} onMouseEnter={() => onMouseEnter(i + 1)} onMouseLeave={onMouseLeave}>\r\n <div className={`${circlePointer} h-4 w-4 ${color}`} onClick={() => onClick(i + 1)}>\r\n <Icon name=\"circle\" />\r\n </div>\r\n </div>\r\n );\r\n });\r\n const labels = Array.from({ length: maxPoints }, (_, i) => {\r\n if (i === 0) {\r\n return (\r\n <p key={i} className=\"inline-block text-sm text-monochrome-500\">\r\n Poor\r\n </p>\r\n );\r\n }\r\n\r\n if (i === maxPoints - 1) {\r\n return (\r\n <p key={i} className=\"inline-block text-sm text-monochrome-500\">\r\n Amazing\r\n </p>\r\n );\r\n }\r\n\r\n return <p key={i} className=\"inline-block text-monochrome-500\" />;\r\n });\r\n\r\n React.useEffect(() => {\r\n if (props.rating && props.rating !== confidence) {\r\n setConfidence(props.rating);\r\n }\r\n }, [props.rating]);\r\n\r\n return (\r\n <div className=\"m-auto inline-block py-4\">\r\n <h6 className=\"font-bold pb-2 mb-4 text-md text-slate-600 font-semibold\">\r\n {\"Almost there, rate this activity before submitting.\"}\r\n </h6>\r\n <div className=\"w-max m-auto\">\r\n <div className={`ml-5 w-[17.7rem] grid grid-cols-5 justify-self-center items-center gap-7 mb-2`}>{buttons}</div>\r\n <div\r\n className={`ml-5 w-[16.7rem] text-[0.5rem] text-slate-600 grid grid-cols-5 justify-self-center items-center`}\r\n >\r\n {labels}\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n};\r\n","import React from \"react\";\nimport { Button, ButtonProps } from \"../../Button\";\n\n/**\n * The nav link name.\n */\nexport type NavLinkName =\n | \"home\"\n | \"profile\"\n | \"explore\"\n | \"calendar\"\n | \"login\"\n | \"logout\"\n | \"menu\"\n | \"menu-close\"\n | \"faq\"\n | \"terms\"\n | \"privacy\";\n\n/**\n * The properties for navigation links.\n */\nexport type NavLinkProps = {\n name?: NavLinkName | string;\n menu?: boolean;\n active?: boolean;\n disabled?: boolean;\n onClick?: () => void;\n};\n\n/**\n * A component for navigation links.\n * @param props\n * @constructor\n */\nexport const NavLink = (props: NavLinkProps) => {\n const onClick = () => props.onClick && props.onClick();\n const config = defaultConfig();\n withMenu(config, props.menu);\n withName(config, props.name);\n\n return <Button disabled={props.disabled} active={props.active} onClick={onClick} {...config} />;\n};\n\nconst defaultConfig = () => {\n return {} as ButtonProps;\n};\n\nconst withMenu = (config: ButtonProps, menu?: boolean) => {\n if (menu) {\n config.size = \"full:sm\";\n config.color = \"slate:sky\";\n config.spacing = \"lg\";\n }\n};\n\nconst withName = (config: ButtonProps, name?: NavLinkName | string) => {\n if (config.size === \"full:sm\") {\n config.text = name;\n return;\n }\n\n switch (name) {\n case \"home\":\n config.logo = true;\n config.size = \"lg\";\n break;\n case \"profile\":\n config.icon = name;\n config.size = \"lg\";\n config.color = \"slate:icon\";\n break;\n case \"explore\":\n config.icon = name;\n config.size = \"lg\";\n config.color = \"slate:icon\";\n break;\n case \"calendar\":\n config.icon = name;\n config.size = \"lg\";\n config.color = \"slate:icon\";\n break;\n case \"login\":\n config.size = \"sm\";\n config.spacing = \"sm\";\n config.text = \"Login\";\n config.border = \"rounded\";\n break;\n case \"menu\":\n config.icon = name;\n break;\n case \"menu-close\":\n config.icon = name;\n break;\n case \"faq\":\n config.text = \"Help Center\";\n config.size = \"sm\";\n break;\n case \"terms\":\n config.text = \"Terms\";\n config.size = \"sm\";\n break;\n case \"privacy\":\n config.text = \"Privacy\";\n config.size = \"sm\";\n break;\n case \"switch accounts\":\n config.icon = \"bolt\";\n config.size = \"lg\";\n config.color = \"slate:icon\";\n break;\n default:\n config.size = \"sm\";\n config.spacing = \"sm\";\n config.text = name;\n config.border = \"rounded\";\n break\n }\n};\n","import React from \"react\";\nimport { builder } from \"../../utils/classname/classname\";\nimport { NavLink, NavLinkProps } from \"./NavLink/NavLink\";\n\n/**\n * The properties for the nav bar.\n */\nexport type NavBarProps = {\n children?: (React.ReactElement<NavLinkProps> | undefined)[] | React.ReactElement<NavLinkProps>;\n};\n\n/**\n * A component for navigating the platform.\n */\nexport const NavBar = (props: NavBarProps) => {\n const className = builder(\"flex items-center justify-between flex-wrap sticky top-0 z-30 w-full h-16 border-b\")\n .append(\"bg-white px-4 py text-center\")\n .append(\"md:border-t-none md:border-b md:border-monochrome-50 lg:px-36 md:shadow-sm\")\n .build();\n\n const [secondary, setSecondary] = React.useState(false);\n const secondaryClassName = builder(\"w-full shadow-sm absolute z-30 top-11 left-0 grid grid-cols-1 bg-gray-50\")\n .append(\"md:invisible\")\n .append(\"transition duration-500 ease-in-out\")\n .if(secondary, \"opacity-full visible\")\n .else(\"invisible opacity-0\")\n .build();\n\n const menuIcon = secondary ? \"menu-close\" : \"menu\";\n return (\n <nav className={className}>\n <div className=\"w-full flex items-center justify-between flex-wrap sticky max-w-[62.5rem] m-auto\">\n {React.Children.map(props.children, (Link) => {\n if (Link && Link.props.name === \"home\") {\n return <div className=\"grow items-center flex-shrink-0 md:mr-6\">{Link}</div>;\n }\n\n return null;\n })}\n\n <div className=\"hidden md:flex md:items-center gap-x-8\">\n {React.Children.map(props.children, (Link) => {\n if (Link && Link.props.name !== \"home\") {\n return <div className=\"relative\">{Link}</div>;\n }\n return null;\n })}\n </div>\n\n <div className=\"inline-block md:hidden\">\n <NavLink onClick={() => setSecondary(!secondary)} name={menuIcon} />\n </div>\n\n <div className={secondaryClassName}>\n {React.Children.map(props.children, (Link) => {\n if (Link && Link.props.name !== \"home\") {\n return (\n <div className=\"relative\">\n <NavLink {...Link.props} menu />\n </div>\n );\n }\n return null;\n })}\n </div>\n </div>\n </nav>\n );\n};\n","import React from \"react\";\nimport { Button } from \"../Button\";\nimport { Modal } from \"../Modal\";\n\n/**\n * NotFoundProps\n */\nexport type NotFoundProps = {\n visible?: boolean;\n onHome?: () => void;\n};\n\n/**\n * NotFound\n * @param props\n * @constructor\n */\nexport const NotFound = (props: NotFoundProps) => {\n return (\n <>\n <img\n className=\"object-cover w-screen h-screen -z-10\"\n alt=\"landing\"\n src=\"https://cdn.localcivics.io/hub/landing.jpg\"\n />\n <Modal onClose={props.onHome} visible={props.visible}>\n <div className=\"grid grid-cols-1 p-8 justify-items-center text-slate-500 gap-y-4\">\n <div className=\"grid grid-cols-1 justify-items-center gap-y-2\">\n <p className=\"text-sm font-semibold\">Not found</p>\n </div>\n\n <p className=\"text-sm text-center text-slate-500 max-w-[12rem]\">The page you've landed on does not exist.</p>\n\n <div className=\"mt-2\">\n <Button spacing=\"sm\" border=\"rounded\" color=\"slate\" theme=\"dark\" text=\"Go home\" onClick={props.onHome} />\n </div>\n </div>\n </Modal>\n </>\n );\n};\n","import React from \"react\";\nimport { builder } from \"../../../utils/classname/classname\";\nimport { Button } from \"../../Button/Button\";\n\n/**\n * The properties for the search button.\n */\nexport type SearchButtonProps = {\n disabled?: boolean;\n placeholder?: string;\n onClick?: () => void;\n};\n\n/**\n * A component for starting a search via click.\n * @param props\n * @constructor\n */\nexport const SearchButton = (props: SearchButtonProps) => {\n const className = builder(\"placeholder:text-slate-400 text-slate-400\")\n .append(\"block bg-white w-full text-sm border border-slate-300\")\n .append(\"rounded-md py-3 px-8 shadow-sm\")\n .if(!props.disabled, \"cursor-pointer\")\n .if(!props.disabled, \"focus:outline-none focus:border-sky-100 focus:ring-sky-100 focus:ring-1\")\n .if(!props.disabled, \"hover:bg-sky-50 hover:border-sky-100\")\n .if(!props.disabled, \"hover:text-slate-500 hover:placeholder:text-slate-600\")\n .build();\n\n return (\n <label onClick={() => !props.disabled && props.onClick && props.onClick()} className=\"relative block\">\n <span className=\"absolute inset-y-0 left-0 top-0 flex items-center pl-2\">\n <Button icon=\"search\" />\n </span>\n <input className={className} type=\"text\" name=\"search\" placeholder={props.placeholder} />\n </label>\n );\n};\n","import * as React from \"react\"\nimport { Button } from \"../../Button/Button\";\nimport { IconName } from \"../../Icon/v0/Icon\";\n\nexport type SearchResultProps = {\n title?: string;\n icon?: IconName;\n onClick?: () => void;\n};\n\nexport const SearchResult = (props: SearchResultProps) => {\n return (\n <Button\n spacing=\"lg\"\n border=\"icon:circle\"\n icon={props.icon}\n text={props.title}\n color=\"slate:sky\"\n justify=\"start\"\n size=\"full:sm\"\n onClick={props.onClick}\n />\n );\n};\n","import React, { useCallback } from \"react\";\nimport { Button } from \"../Button/Button\";\nimport { Modal } from \"../Modal/Modal\";\nimport { SearchButton } from \"./SearchButton/SearchButton\";\nimport { SearchResultProps } from \"./SearchResult/SearchResult\";\nimport { debounce } from \"../../utils/search\";\n\nexport type SearchProps = {\n autofocus?: boolean;\n category?: string;\n open?: boolean;\n disabled?: boolean;\n placeholder?: string;\n value?: string;\n onOpen?: () => void;\n onClose?: () => void;\n results?: React.ReactElement<SearchResultProps> | React.ReactElement<SearchResultProps>[] | null;\n onSearch?: (search: string) => void;\n};\n\nexport const Search = (props: SearchProps) => {\n const hasResults = !!props.results && React.Children.count(props.results) > 0;\n const placeholder = props.placeholder || \"Quick search...\";\n const searchRef = React.useRef<HTMLInputElement>(null);\n const handler = useCallback(\n debounce((search) => props.onSearch && props.onSearch(search)),\n []\n );\n React.useEffect(() => {\n if (searchRef.current) {\n searchRef.current.focus();\n }\n }, [!!props.open]);\n\n return (\n <>\n <SearchButton disabled={props.disabled} placeholder={placeholder} onClick={props.onOpen} />\n <Modal onClose={props.onClose} visible={props.open}>\n <div className=\"w-full md:w-[28rem]\">\n <label className=\"relative block w-full top-4 px-12 border-b border-slate-100\">\n <span className=\"absolute inset-y-0 left-0 top-0 flex items-center px-5\">\n <Button active icon=\"search\" />\n </span>\n <input\n ref={searchRef}\n autoFocus={props.autofocus}\n defaultValue={props.value}\n autoComplete=\"off\"\n onChange={(e) => handler(e.target.value)}\n className=\"placeholder:text-slate-400 text-slate-400 block bg-white w-full -mt-4 py-4 pr-7 focus:outline-none text-xs\"\n type=\"text\"\n name=\"search\"\n placeholder={`Search ${props.category || \"\"}`.trim()}\n />\n <span className=\"absolute inset-y-0 right-0 top-0 flex items-center px-5\">\n <Button spacing=\"xs\" border=\"rounded\" size=\"tiny\" text=\"esc\" onClick={props.onClose} />\n </span>\n </label>\n {!!hasResults && (\n <div className=\"grid grid-cols-1 w-full gap-1 mt-4 max-h-[24rem] overflow-auto\">{props.results}</div>\n )}\n\n {!hasResults && <div className=\"h-4\" />}\n </div>\n </Modal>\n </>\n );\n};\n","import React from \"react\";\nimport { Button } from \"../../Button\";\nimport { Icon } from \"../../Icon\";\n\n/**\n * LegalAgreementProps\n */\nexport type LegalAgreementProps = {\n onDecline?: () => void;\n onAccept?: () => void;\n};\n\n/**\n * A component for the onboarding legal agreements\n * @param props\n * @constructor\n */\nexport const LegalAgreement = (props: LegalAgreementProps) => {\n return (\n <div className=\"w-full md:w-[24rem] rounded-md bg-white border border-slate-200 px-8 py-5 shadow-sm grid grid-cols-1 gap-4 justify-items-center\">\n <div className=\"text-slate-600 w-14 h-14\">\n <Icon name=\"shield\" />\n </div>\n\n <div className=\"text-slate-600 text-center w-[14rem] md:w-[16rem]\">\n <p className=\"font-bold text-2xl\">Local Civics Policies</p>\n <p className=\"text-sm\">\n Confirm that you have read and agree to our{\" \"}\n <button\n className=\"text-sky-400 underline hover:text-sky-600 cursor-pointer\"\n onClick={() => window.open(\"https://www.localcivics.io/terms-of-service\", \"_blank\")}\n >\n Terms of Service\n </button>{\" \"}\n and{\" \"}\n <button\n className=\"text-sky-400 underline hover:text-sky-600 cursor-pointer\"\n onClick={() => window.open(\"https://www.localcivics.io/privacy-policy\", \"_blank\")}\n >\n Privacy Policy\n </button>\n .\n </p>\n </div>\n\n <div className=\"my-5 grid grid-cols-1 md:grid-cols-2 gap-y-2 gap-x-8 justify-between\">\n <Button spacing=\"md\" border=\"rounded\" color=\"sky\" text=\"Decline\" size=\"md\" onClick={props.onDecline} />\n <Button\n icon=\"accept\"\n spacing=\"md\"\n border=\"rounded\"\n color=\"sky\"\n theme=\"dark\"\n text=\"Accept\"\n size=\"md\"\n onClick={props.onAccept}\n />\n </div>\n </div>\n );\n};\n","import React from \"react\";\nimport { Button } from \"../../Button\";\nimport { Search, SearchProps } from \"../../Search\";\n\n/**\n * CommunitySearchProps\n */\nexport type CommunitySearchProps = SearchProps & {\n disabled?: boolean;\n name?: string;\n accessCode?: string;\n onSearch?: (search: string) => void;\n onJoin?: (accessCode?: string) => void;\n};\n\n/**\n * A component for searching for communities\n * @param props\n * @constructor\n */\nexport const CommunitySearch = (props: CommunitySearchProps) => {\n const [accessCode, setAccessCode] = React.useState(\"\");\n return (\n <div className=\"w-full md:w-[30rem] bg-white grid grid-cols-1 gap-4 rounded-md border border-slate-200 px-8 py-5 shadow-sm\">\n <div className=\"text-slate-600\">\n <p className=\"font-bold text-2xl\">Which is your community?</p>\n <p className=\"text-sm\">Pick your community.</p>\n </div>\n\n <Search {...props} autofocus={!accessCode} placeholder={props.name} />\n\n {!!props.name && (\n <div className=\"text-slate-600 grid-cols-1 gap-2\">\n <div>\n <span className=\"text-sm\">Enter the access code for</span>\n <span className=\"ml-1 font-semibold text-sm\">{props.name}</span>\n <span className=\"text-sm\">.</span>\n </div>\n\n <div className=\"mt-2 content-center grid grid-cols-3 gap-x-2\">\n <input\n disabled={props.disabled}\n autoFocus={!!accessCode}\n type=\"password\"\n onChange={(e) => setAccessCode(e.target.value)}\n defaultValue={props.accessCode}\n className=\"col-span-2 h-full w-full block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\n invalid:border-pink-500 invalid:text-pink-600\n focus:invalid:border-pink-500 focus:invalid:ring-pink-500\"\n />\n\n <div className=\"col-span-1\">\n <Button\n disabled={!accessCode || props.disabled}\n spacing=\"md\"\n border=\"rounded\"\n color=\"sky\"\n theme=\"dark\"\n text=\"Join\"\n size=\"full:sm\"\n onClick={() => props.onJoin && props.onJoin(accessCode)}\n />\n </div>\n </div>\n </div>\n )}\n </div>\n );\n};\n","import React from \"react\";\nimport { Button } from \"../../Button\";\n\n/**\n * RegistrationProps\n */\nexport type RegistrationProps = {\n givenName?: string;\n familyName?: string;\n grade?: number;\n impactStatement?: string;\n persona?: string;\n onRegister?: (changes: { givenName?: string; familyName?: string; grade?: number; impactStatement?: string }) => void;\n};\n\n/**\n * A component for onboarding registration\n * @param props\n * @constructor\n */\nexport const Registration = (props: RegistrationProps) => {\n const [givenName, setGivenName] = React.useState(props.givenName);\n const [familyName, setFamilyName] = React.useState(props.familyName);\n const [grade, setGrade] = React.useState(props.grade);\n const [impactStatement, setImpactStatement] = React.useState(props.impactStatement);\n\n const onRegister = () =>\n props.onRegister &&\n props.onRegister({\n givenName,\n familyName,\n grade,\n impactStatement: impactStatement || \"None\",\n });\n\n return (\n <form\n onSubmit={(e) => {\n e.preventDefault();\n onRegister();\n }}\n className=\"w-full md:w-[32rem] rounded-md border bg-white border-slate-200 shadow-sm px-8 py-5 grid grid-cols-1 gap-4 -mt-4\"\n >\n <div className=\"text-slate-600 text-start\">\n <p className=\"font-bold text-2xl\">Welcome to Local!</p>\n <p className=\"text-sm\">Tell us a bit more about yourself.</p>\n </div>\n\n <div className=\"grid grid-cols-1 pb-4 gap-6\">\n <div className=\"grid grid-cols-1 gap-6 h-[18rem] md:h-[24rem] px-1 overflow-y-scroll\">\n <div>\n <p className=\"mb-2 w-full font-semibold text-slate-500 text-sm\">First Name</p>\n <input\n required\n type=\"text\"\n placeholder=\"Insert your first name\"\n onChange={(e) => setGivenName(e.target.value)}\n defaultValue={givenName || \"\"}\n className=\"mt-1 block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\"\n />\n </div>\n\n <div className=\"w-full\">\n <p className=\"mb-2 font-semibold text-slate-500 text-sm\">Last Name</p>\n <input\n required\n placeholder=\"Insert your last name\"\n onChange={(e) => setFamilyName(e.target.value)}\n defaultValue={familyName || \"\"}\n className=\"mt-1 block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\"\n />\n </div>\n\n {props.persona === \"educator\" && (\n <div>\n <p className=\"mb-2 font-semibold text-slate-500 text-sm\">Subject</p>\n <select\n onChange={(e) => setGrade(parseInt(e.target.value, 10))}\n defaultValue={grade || \"\"}\n className=\"appearance-none mt-1 block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\"\n >\n <option>Select a subject</option>\n <option value=\"social-studies-teacher\">Social Studies Teacher</option>\n <option value=\"english-teacher\">English Teacher</option>\n <option value=\"math-teacher\">Math Teacher</option>\n <option value=\"science-teacher\">Science Teacher</option>\n <option value=\"special-education-teacher\">Special Education Teacher (Generalist)</option>\n <option value=\"counseling-or-college-and-career\">Counseling/College & Career Readiness</option>\n <option value=\"non-instructional-staff\">Non-Instructional Staff</option>\n <option value=\"school-leadership\">School Leadership</option>\n </select>\n </div>\n )}\n\n <div>\n <p className=\"mb-2 font-semibold text-slate-500 text-sm\">Grade</p>\n <select\n onChange={(e) => setGrade(parseInt(e.target.value, 10))}\n defaultValue={grade}\n className=\"appearance-none mt-1 block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\"\n >\n <option>Select a grade</option>\n <option value=\"6\">6th</option>\n <option value=\"7\">7th</option>\n <option value=\"8\">8th</option>\n <option value=\"9\">9th</option>\n <option value=\"10\">10th</option>\n <option value=\"11\">11th</option>\n <option value=\"12\">12th</option>\n </select>\n </div>\n\n <div>\n <p className=\"mb-2 font-semibold text-slate-500 text-sm\">Impact Statement</p>\n <textarea\n // required\n // minLength={100} no longer required\n placeholder=\"E.g., I would like to encourage my community to become more educated on issues that directly affect us, as well as make sure my community is a place where everyone is welcome.\"\n onChange={(e) => setImpactStatement(e.target.value)}\n defaultValue={impactStatement}\n className=\"resize-none text-slate-500 focus:text-slate-600 h-24 mt-1 block w-full px-3 py-2 bg-white border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\"\n />\n </div>\n </div>\n </div>\n\n <Button\n type=\"submit\"\n color={props.persona === \"educator\" ? \"slate\" : \"sky\"}\n size=\"md\"\n spacing=\"md\"\n border=\"rounded\"\n theme=\"dark\"\n text=\"Submit\"\n />\n </form>\n );\n};\n","import React from \"react\";\nimport { Button } from \"../../Button\";\nimport { Icon } from \"../../Icon\";\n\n/**\n * WelcomeProps\n */\nexport type WelcomeProps = {\n givenName?: string;\n onContinue?: () => void;\n};\n\n/**\n * A component for the onboarding welcome\n * @param props\n * @constructor\n */\nexport const Welcome = (props: WelcomeProps) => {\n return (\n <div className=\"w-full md:w-[24rem] rounded-md bg-white border border-slate-200 px-8 py-5 shadow-sm grid grid-cols-1 gap-4 content-center justify-items-center\">\n <div className=\"text-slate-600 w-14 h-14\">\n <Icon name=\"explore\" />\n </div>\n\n <div className=\"text-slate-600 text-center\">\n <div className=\"font-bold text-2xl\">\n <span>You're all set</span>\n {props.givenName && <span className=\"capitalize\">, {props.givenName}</span>}\n <span>!</span>\n </div>\n <p className=\"text-sm max-w-[16rem]\">Click continue to start exploring Local.</p>\n </div>\n\n <div className=\"my-5 grid grid-cols-1\">\n <Button\n spacing=\"md\"\n border=\"rounded\"\n color=\"sky\"\n theme=\"dark\"\n text=\"Continue\"\n size=\"md\"\n onClick={props.onContinue}\n />\n </div>\n </div>\n );\n};\n","import React from \"react\";\nimport { Modal } from \"../Modal\";\nimport { SearchResult } from \"../Search\";\nimport { LegalAgreement } from \"./LegalAgreement/LegalAgreement\";\nimport { CommunitySearch } from \"./CommunitySearch/CommunitySearch\";\nimport { RoleSelection } from \"./RoleSelection/RoleSelection\";\nimport { Registration } from \"./Registration/Registration\";\nimport { ImpactQuiz } from \"./ImpactQuiz/ImpactQuiz\";\nimport { Welcome } from \"./Welcome/Welcome\";\n\n/**\n * OnboardingProps\n */\nexport type OnboardingProps = {\n isLoading?: boolean;\n hasOrganization?: boolean;\n hasRegistration?: boolean;\n hasInterests?: boolean;\n\n search?: string;\n persona?: string;\n givenName?: string;\n familyName?: string;\n grade?: number;\n impactStatement?: string;\n interests?: string[];\n organizations?: any[];\n\n onDeclineLegalAgreement?: () => void;\n onOrganizationSearch?: (search: string) => void;\n onJoinOrganization?: (organizationId: string, accessCode?: string) => void;\n onConfigureTenant: (changes: any) => void;\n onFinish?: () => void;\n};\n\n/**\n * A component for onboarding\n * @param props\n * @constructor\n */\nexport const Onboarding = (props: OnboardingProps) => {\n return (\n <Modal stage isLoading={props.isLoading} inline plain visible>\n <Delegate {...props} />\n </Modal>\n );\n};\n\n/**\n * Delegate component for onboarding\n * @param props\n * @constructor\n */\nconst Delegate = (props: OnboardingProps) => {\n const [agreed, setAgreed] = React.useState(!!props.hasOrganization || props.search !== null);\n const [interests, setInterests] = React.useState(false);\n const [organization, setOrganization] = React.useState(null as any);\n const [organizationOpen, setOrganizationOpen] = React.useState(!!props.search);\n const [persona, setPersona] = React.useState(\"\")\n\n if (!agreed) {\n return <LegalAgreement onDecline={props.onDeclineLegalAgreement} onAccept={() => setAgreed(true)} />;\n }\n\n if (!props.hasOrganization) {\n return (\n <CommunitySearch\n {...organization}\n open={organizationOpen}\n value={props.search}\n results={\n props.organizations &&\n props.organizations.map((organization) => {\n return (\n <SearchResult\n key={organization.organizationId}\n title={organization.displayName}\n onClick={() => {\n setOrganization(organization);\n setOrganizationOpen(false);\n }}\n />\n );\n })\n }\n onSearch={props.onOrganizationSearch}\n onJoin={(accessCode) => props.onJoinOrganization && props.onJoinOrganization(organization.organizationId, accessCode)}\n onOpen={() => setOrganizationOpen(true)}\n onClose={() => setOrganizationOpen(false)}\n />\n );\n }\n\n if (!props.hasRegistration) {\n if (!persona) {\n // return (\n // <RoleSelection\n // onStudent={() => setPersona(\"student\")} // integration time from our Notion page dictates educator accounts, not role selection\n // onEducator={() => setPersona(\"educator\")}\n // />\n // );\n setPersona(\"student\")\n }\n\n\n return (\n <Registration\n persona={persona}\n givenName={props.givenName}\n familyName={props.familyName}\n grade={props.grade}\n impactStatement={props.impactStatement}\n onRegister={(registration) => props.onConfigureTenant && props.onConfigureTenant(registration)}\n />\n );\n }\n\n if (!interests && !props.hasInterests) {\n // return (\n // <ImpactQuiz\n // persona={persona}\n // interests={props.interests}\n // onFinish={(interests) => {\n // setInterests(true)\n // props.onConfigureTenant && props.onConfigureTenant({ interests })\n // }}\n // />\n // );\n //Impact Quiz skipped for now; give blank interests to not disrupt flow\n setInterests(true)\n props.onConfigureTenant({})\n }\n\n return <Welcome givenName={props.givenName} onContinue={props.onFinish} />;\n};\n","import React from \"react\";\nimport { Icon } from \"../../Icon\";\n\n/**\n * PathwayProps\n */\nexport type PathwayButtonProps = {\n active?: boolean;\n name?: \"policy & government\" | \"arts & culture\" | \"college & career\" | \"volunteer\" | \"recreation\";\n onClick?: () => void;\n};\n\n/**\n * A component for displaying a single pathway\n * @param props\n * @constructor\n */\nexport const PathwayButton = (props: PathwayButtonProps) => {\n const base = \"px-2 py-4 text-left cursor-pointer hover:bg-white active:bg-white\";\n const bg = props.active ? \"bg-sky-100\" : \"bg-gray-50\";\n const className = [base, bg].join(\" \");\n return (\n <button onClick={props.onClick} className={className}>\n <div className=\"inline-block align-middle w-3 h-3 min-w-3 stroke-slate-600 fill-slate-600\">\n <Icon name={props.name || \"pathway\"} />\n </div>\n <span className=\"ml-2 align-middle capitalize font-semibold text-sm text-slate-600\"> {props.name} </span>\n </button>\n );\n};\n","import React, { FunctionComponent } from \"react\";\nimport { PathwayButton } from \"../PathwayButton/PathwayButton\";\n\n/**\n * PathwayFilter props\n */\nexport interface PathwayFilterProps {\n title: string;\n pathways?: string[];\n onChange?: (pathways: string[]) => void;\n}\n\n/**\n * PathwayFilter\n * @param props\n * @constructor\n */\nexport const PathwayFilter: FunctionComponent<PathwayFilterProps> = (props) => {\n const pathways = props.pathways || [];\n const togglePathway = (pathway: string) => {\n const newPathways = [...pathways];\n const i = newPathways.indexOf(pathway);\n if (i >= 0) {\n newPathways.splice(i, 1);\n } else {\n newPathways.push(pathway);\n }\n if (props.onChange) {\n props.onChange(newPathways);\n }\n };\n\n return (\n <div\n className=\"border-gray-200 border shadow-sm rounded-md min-h-48 w-full overflow-hidden\"\n aria-labelledby=\"modal-title\"\n role=\"dialog\"\n aria-modal=\"true\"\n >\n <div className=\"px-2 py-2 bg-gray-200\" />\n <div className=\"grid grid-cols-1\">\n <div className=\"p-2 border-b border-gray-200\">\n <div className=\"flex items-center\">\n <div className=\"grow\">\n <h4 className=\"capitalize align-middle font-semibold text-slate-600 inline-block\">{props.title}</h4>\n </div>\n </div>\n </div>\n\n <div className=\"grid grid-cols-1\">\n <PathwayButton\n onClick={() => togglePathway(\"policy & government\")}\n active={pathways.indexOf(\"policy & government\") >= 0}\n name=\"policy & government\"\n />\n <PathwayButton\n onClick={() => togglePathway(\"arts & culture\")}\n active={pathways.indexOf(\"arts & culture\") >= 0}\n name=\"arts & culture\"\n />\n <PathwayButton\n onClick={() => togglePathway(\"recreation\")}\n active={pathways.indexOf(\"recreation\") >= 0}\n name=\"recreation\"\n />\n <PathwayButton\n onClick={() => togglePathway(\"volunteer\")}\n active={pathways.indexOf(\"volunteer\") >= 0}\n name=\"volunteer\"\n />\n <PathwayButton\n onClick={() => togglePathway(\"college & career\")}\n active={pathways.indexOf(\"college & career\") >= 0}\n name=\"college & career\"\n />\n </div>\n </div>\n </div>\n );\n};\n","/**\n * Compact number\n * @param num\n */\nexport const compact = (num?: number) => {\n return Intl.NumberFormat(\"en-US\", {\n notation: \"compact\",\n maximumFractionDigits: 1,\n }).format(num || 0);\n};\n","import React from \"react\";\nimport { classname } from \"../../../utils/classname/classname\";\nimport { compact } from \"../../../utils/numbers\";\nimport { Button, ButtonSize } from \"../../Button\";\nimport { IconName } from \"../../Icon\";\nimport { Progress } from \"../../Progress\";\n\n/**\n * The activity progress height.\n */\nexport type PathwayProgressHeight = \"sm\" | \"md\";\n\n/**\n * The properties for the pathway progress.\n */\nexport type PathwayProgressProps = {\n xp?: number;\n nextXP?: number;\n level?: number;\n open?: boolean;\n title?: string;\n icon?: IconName;\n height?: PathwayProgressHeight;\n onOpen?: () => void;\n};\n\n/**\n * A component for displaying pathway progress.\n * @param props\n * @constructor\n */\nexport const PathwayProgress = (props: PathwayProgressProps) => {\n const proficiency = props.xp || 0;\n const nextProficiency = props.nextXP || 1;\n const config = defaultActivityProgressConfig();\n const height = props.height || \"sm\";\n withHeight(config, height);\n\n return (\n <div className=\"grid grid-cols-1 gap-2\">\n <div className=\"flex gap-x-2 items-center\">\n {props.icon && (\n <div className={config.icon.container}>\n <Button disabled={!props.open} size={config.icon.size} icon={props.icon} onClick={props.onOpen} />\n </div>\n )}\n <div className=\"grow grid grid-cols-1 gap-2 items-center\">\n <div>\n {props.title && <p className=\"capitalize text-xs text-slate-400\">{props.title}</p>}\n <div className={classname(config.progress)}>\n <Progress start={proficiency} end={nextProficiency} />\n </div>\n </div>\n\n <div className=\"flex\">\n {height !== \"sm\" && (\n <div className=\"grow flex gap-x-1\">\n <p className={classname(config.xp.value)}>{compact(proficiency)}</p>\n <p className={classname(config.xp.suffix)}>XP</p>\n </div>\n )}\n {height !== \"sm\" && !!props.level && (\n <p className={classname(config.magnitude)}>\n {compact(nextProficiency - proficiency)} exp. until level {props.level + 1}\n </p>\n )}\n </div>\n </div>\n </div>\n </div>\n );\n};\n\ntype ActivityProgressConfig = {\n progress: {\n height: string;\n };\n xp: {\n suffix: {\n base: string;\n text: string;\n };\n value: {\n base: string;\n text: string;\n };\n };\n magnitude: {\n base: string;\n text: string;\n };\n icon: {\n container: string;\n size: ButtonSize;\n };\n};\n\nconst defaultActivityProgressConfig = () => {\n const config: ActivityProgressConfig = {\n progress: {\n height: \"\",\n },\n xp: {\n suffix: {\n base: \"text-slate-600 inline-block\",\n text: \"\",\n },\n value: {\n base: \"font-bold text-slate-600 inline-block\",\n text: \"\",\n },\n },\n magnitude: {\n base: \"text-gray-400\",\n text: \"\",\n },\n icon: {\n container: \"\",\n size: \"md\",\n },\n };\n\n return config;\n};\n\nconst withHeight = (config: ActivityProgressConfig, height?: PathwayProgressHeight) => {\n height = height || \"sm\";\n switch (height) {\n case \"sm\":\n config.progress.height = \"h-4\";\n config.icon.size = \"md\";\n config.icon.container = \"mt-1\";\n config.xp.value.text = \"text-sm\";\n config.xp.suffix.text = \"text-sm\";\n config.magnitude.text = \"text-sm\";\n break;\n case \"md\":\n config.progress.height = \"h-8\";\n config.icon.size = \"xl\";\n config.icon.container = \"mt-2\";\n config.xp.value.text = \"text-xl\";\n config.xp.suffix.text = \"text-xl\";\n config.magnitude.text = \"text-sm\";\n break;\n }\n};\n","import React from \"react\";\nimport { Icon } from \"../../Icon\";\nimport { Widget, WidgetBody, WidgetHeader, WidgetHeaderLink, WidgetTitle } from \"../../Widget\";\n/**\n * The properties for the pathway progress widget\n */\nexport interface PathwayWidgetProps {\n isLoading?: boolean;\n edit?: boolean;\n onHelp?: () => void;\n children?: React.ReactNode;\n}\n\n/**\n * A widget to display pathway progress\n * @param props\n * @constructor\n */\nexport const PathwayWidget = (props: PathwayWidgetProps) => {\n const hasContent = props.children && React.Children.count(props.children) > 0;\n return (\n <Widget isLoading={props.isLoading}>\n <WidgetHeader>\n <WidgetTitle icon=\"pathway\">Pathways</WidgetTitle>\n <WidgetHeaderLink onClick={props.onHelp} display={props.edit}>\n <Icon name=\"help\" />\n </WidgetHeaderLink>\n </WidgetHeader>\n <WidgetBody>{hasContent && <div className=\"grid gap-2\">{props.children}</div>}</WidgetBody>\n </Widget>\n );\n};\n","import React from \"react\";\nimport { Icon } from \"../../Icon\";\nimport { Widget, WidgetBody, WidgetHeader, WidgetHeaderLink, WidgetTitle } from \"../../Widget\";\n\n/**\n * The properties for the about widget.\n */\nexport type AboutWidgetProps = {\n isLoading?: boolean;\n edit?: boolean;\n impactStatement?: string;\n placeName?: string;\n communityName?: string;\n onEdit?: () => void;\n};\n\n/**\n * A widget for displaying additional info about the resident.\n * @param props\n * @constructor\n */\nexport const AboutWidget = (props: AboutWidgetProps) => {\n const hasContent = props.impactStatement || props.placeName || props.communityName;\n return (\n <Widget isLoading={props.isLoading}>\n <WidgetHeader>\n <WidgetTitle icon=\"profile\">About Me</WidgetTitle>\n <WidgetHeaderLink onClick={props.onEdit} display={props.edit}>\n <Icon name=\"edit\" />\n </WidgetHeaderLink>\n </WidgetHeader>\n <WidgetBody>\n {hasContent && (\n <div className=\"grid gap-2\">\n <p className=\"line-clamp-10 text-sm text-slate-400\">{props.impactStatement}</p>\n {!!props.placeName && (\n <div className=\"mt-2 flex gap-x-2 items-center\">\n <div className=\"w-4 h-4 text-slate-600 inline-block\">\n <Icon name=\"pin\" />\n </div>\n <h4 className=\"grow text-sm text-slate-500\">{props.placeName}</h4>\n </div>\n )}\n {props.communityName && (\n <div className=\"mt-2 flex gap-x-2 items-center\">\n <div className=\"w-4 h-4 text-slate-600 inline-block\">\n <Icon name=\"college & career\" />\n </div>\n <h4 className=\"grow text-sm text-slate-500\">{props.communityName}</h4>\n </div>\n )}\n </div>\n )}\n </WidgetBody>\n </Widget>\n );\n};\n","import React from \"react\";\nimport { compact } from \"../../../utils/numbers\";\nimport { Widget, WidgetBody, WidgetHeader, WidgetHeaderLink, WidgetTitle } from \"../../Widget\";\nimport { Icon, IconName } from \"../../Icon\";\n\n/**\n * The properties for the achievement widget.\n */\nexport interface AchievementWidgetProps {\n isLoading?: boolean;\n lessonsCompleted?: number;\n badgesEarned?: number;\n civicMilestones?: number;\n serviceHours?: number;\n openDisabled?: boolean;\n openIcon?: IconName;\n\n onOpen?: () => void;\n}\n\n/**\n * A widget for displaying resident a achievement report.\n * @param props\n * @constructor\n */\nexport const AchievementWidget = (props: AchievementWidgetProps) => {\n return (\n <Widget isLoading={props.isLoading}>\n <WidgetHeader>\n <WidgetTitle icon=\"achievements\">My Achievements</WidgetTitle>\n </WidgetHeader>\n <WidgetBody>\n <div className=\"flex justify-between gap-x-2 justify-items-center\">\n <div>\n <p className=\"font-bold text-3xl w-max m-auto text-green-500\">{compact(props.lessonsCompleted || 0)}</p>\n <p className=\"text-xs text-center w-max m-auto text-slate-500\">\n Lessons\n <br />\n Completed\n </p>\n </div>\n\n <div>\n <p className=\"font-bold text-3xl w-max m-auto text-green-500\">{compact((props.badgesEarned || 0) + 1)}</p>\n <p className=\"text-xs text-center w-max m-auto text-slate-500\">\n Badges\n <br />\n Earned\n </p>\n </div>\n\n <div>\n <p className=\"font-bold text-3xl w-max m-auto text-green-500\">{compact(props.civicMilestones || 0)}</p>\n <p className=\"text-xs text-center w-max m-auto text-slate-500\">\n Civic\n <br />\n Milestones\n </p>\n </div>\n\n <div>\n <p className=\"font-bold text-3xl w-max m-auto text-green-500\">{compact(props.serviceHours || 0)}</p>\n <p className=\"text-xs text-center w-max m-auto text-slate-500\">\n Service\n <br />\n Hours\n </p>\n </div>\n </div>\n </WidgetBody>\n </Widget>\n );\n};\n","import React from \"react\";\nimport { Button } from \"../../Button\";\nimport { Modal } from \"../../Modal\";\n\n/**\n * SettingsCardProps\n */\nexport type SettingsCardProps = {\n givenName?: string;\n familyName?: string;\n grade?: number;\n impactStatement?: string;\n avatarURL?: string;\n accessToken?: string;\n isLoading?: boolean;\n visible?: boolean;\n hasChanges?: boolean;\n onClose?: () => void;\n onSave?: (changes?: {\n name?: string;\n givenName?: string;\n familyName?: string;\n grade?: number;\n subject?: string;\n persona?: string;\n impactStatement?: string;\n interests?: string[];\n avatar?: Blob;\n }) => void;\n};\n\n/**\n * SettingsCard\n * @param props\n * @constructor\n */\nexport const SettingsCard = (props: SettingsCardProps) => {\n // https://stackoverflow.com/questions/55075604/react-hooks-useeffect-only-on-update\n const [avatarFile, setAvatarFile] = React.useState(undefined as Blob | undefined);\n const [avatarURL, setAvatarURL] = React.useState(props.avatarURL);\n const [givenName, setGivenName] = React.useState(props.givenName);\n const [familyName, setFamilyName] = React.useState(props.familyName);\n const [grade, setGrade] = React.useState(props.grade);\n const [impactStatement, setImpactStatement] = React.useState(props.impactStatement);\n const [focus, setFocus] = React.useState(\"\");\n const hasChanges =\n props.hasChanges ||\n givenName !== props.givenName ||\n familyName !== props.familyName ||\n grade !== props.grade ||\n impactStatement !== props.impactStatement ||\n avatarURL !== props.avatarURL;\n\n const onSave = () =>\n hasChanges &&\n props.onSave &&\n props.onSave({\n givenName: givenName,\n familyName: familyName,\n grade: grade,\n impactStatement: impactStatement,\n avatar: avatarFile,\n });\n\n const onAvatarChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n let reader = new FileReader();\n const target = e.target as HTMLInputElement;\n const file: File = (target.files as FileList)[0];\n reader.onloadend = () => {\n if (typeof reader.result === \"string\") {\n setAvatarURL(reader.result);\n setAvatarFile(file);\n onSave();\n }\n };\n\n if(file){\n reader.readAsDataURL(file);\n }\n\n setFocus(\"\");\n };\n\n return (\n <Modal isLoading={props.isLoading} visible={props.visible} onClose={props.onClose}>\n <div className=\"grid grid-cols-1 gap-2 md:w-[30rem]\">\n <p className=\"text-sm font-semibold text-slate-500 mb-2 px-6\">Settings</p>\n\n <div className=\"grid grid-cols-1 pb-4 px-6 gap-6\">\n <div className=\"flex items-center space-x-6\">\n <div className=\"shrink-0\">\n <img\n className=\"h-16 w-16 object-cover rounded-full\"\n src={avatarURL || props.avatarURL || \"https://cdn.localcivics.io/hub/avatar.jpg\"}\n alt=\"Current profile photo\"\n />\n </div>\n <label className=\"block\">\n <span className=\"sr-only\">Choose profile photo</span>\n <input\n onChange={(e) => onAvatarChange(e)}\n name=\"avatar\"\n type=\"file\"\n className=\"block w-full text-sm text-slate-500\n file:mr-4 file:py-2 file:px-4\n file:rounded-full file:border-0\n file:text-sm file:font-semibold\n file:bg-violet-50 file:text-violet-700\n hover:file:bg-violet-100\"\n />\n </label>\n </div>\n\n <div className=\"grid grid-cols-1 gap-6 h-[18rem] md:h-[24rem] px-1 overflow-y-scroll\">\n <div>\n <p className=\"mb-2 w-full font-semibold text-slate-500 text-sm\">First Name</p>\n <p className=\"mb-2 text-slate-500 text-xs\">What is your given name?</p>\n <input\n max={3000}\n autoFocus={focus === \"givenName\"}\n onChange={(e) => {\n setFocus(\"givenName\");\n setGivenName(e.target.value);\n }}\n defaultValue={givenName}\n className=\"mt-1 block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\n invalid:border-pink-500 invalid:text-pink-600\n focus:invalid:border-pink-500 focus:invalid:ring-pink-500\"\n />\n </div>\n\n <div className=\"w-full\">\n <p className=\"mb-2 font-semibold text-slate-500 text-sm\">Last Name</p>\n <p className=\"mb-2 text-slate-500 text-xs\">What is your family name?</p>\n <input\n max={3000}\n autoFocus={focus === \"familyName\"}\n onChange={(e) => {\n setFocus(\"familyName\");\n setFamilyName(e.target.value);\n }}\n defaultValue={familyName}\n className=\"mt-1 block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\n invalid:border-pink-500 invalid:text-pink-600\n focus:invalid:border-pink-500 focus:invalid:ring-pink-500\"\n />\n </div>\n\n <div>\n <p className=\"mb-2 font-semibold text-slate-500 text-sm\">Grade</p>\n <p className=\"mb-2 text-slate-500 text-xs\">What grade are you in?</p>\n <select\n onChange={(e) => setGrade(parseInt(e.target.value, 10))}\n defaultValue={grade}\n className=\"appearance-none mt-1 block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\"\n >\n <option>Select a grade</option>\n <option value=\"6\">6th</option>\n <option value=\"7\">7th</option>\n <option value=\"8\">8th</option>\n <option value=\"9\">9th</option>\n <option value=\"10\">10th</option>\n <option value=\"11\">11th</option>\n <option value=\"12\">12th</option>\n </select>\n </div>\n\n <div>\n <p className=\"mb-2 font-semibold text-slate-500 text-sm\">Impact Statement</p>\n <p className=\"mb-2 text-slate-500 text-xs\">How would you like to contribute to your community?</p>\n <textarea\n maxLength={3000}\n autoFocus={focus === \"impactStatement\"}\n onChange={(e) => {\n setFocus(\"impactStatement\");\n setImpactStatement(e.target.value);\n }}\n defaultValue={impactStatement}\n className=\"resize-none text-slate-500 focus:text-slate-600 h-24 mt-1 block w-full px-3 py-2 bg-white border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\n invalid:border-pink-500 invalid:text-pink-600\n focus:invalid:border-pink-500 focus:invalid:ring-pink-500\"\n />\n </div>\n\n <div>\n <p className=\"mb-2 font-semibold text-slate-500 text-sm\">Access Token</p>\n <p className=\"mb-2 text-slate-500 text-xs\">Treat this like your password, keep it safe.</p>\n <input\n disabled\n defaultValue={props.accessToken || \"\"}\n className=\"mt-1 block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\n invalid:border-pink-500 invalid:text-pink-600\n focus:invalid:border-pink-500 focus:invalid:ring-pink-500\"\n />\n </div>\n </div>\n </div>\n\n {hasChanges && (\n <Button spacing=\"lg\" border=\"rectangle\" color=\"slate\" theme=\"dark\" text=\"Save\" onClick={onSave} />\n )}\n </div>\n </Modal>\n );\n};\n","import React from \"react\";\nimport { PathwayProgress } from \"../../Pathway\";\nimport { Widget, WidgetBody, WidgetHeader, WidgetTitle } from \"../../Widget\";\n\n/**\n * The properties for the impact score widget.\n */\nexport type ImpactWidgetProps = {\n level?: number;\n xp?: number;\n nextXP?: number;\n isLoading?: boolean;\n};\n\n/**\n * A widget for displaying the impact score.\n * @param props\n * @constructor\n */\nexport const ImpactWidget = (props: ImpactWidgetProps) => {\n return (\n <Widget color=\"sky\" borderless headless isLoading={props.isLoading}>\n <WidgetHeader>\n <WidgetTitle icon=\"objective\">Impact Score</WidgetTitle>\n </WidgetHeader>\n <WidgetBody>\n <PathwayProgress height=\"md\" level={props.level} xp={props.xp} nextXP={props.nextXP} />\n </WidgetBody>\n </Widget>\n );\n};\n","import React from \"react\";\nimport { Widget, WidgetBody } from \"../../Widget\";\n\n/**\n * The properties for the resident.\n */\nexport type ResidentWidgetProps = {\n isLoading?: boolean;\n avatarURL?: string;\n tenantName?: string;\n givenName?: string;\n familyName?: string;\n createdAt?: string;\n online?: boolean;\n};\n\n/**\n * A component for displaying a resident.\n * @param props\n * @constructor\n */\nexport const ProfileWidget = (props: ResidentWidgetProps) => {\n const hasContent = props.givenName || props.familyName;\n\n return (\n <Widget isLoading={props.isLoading}>\n <WidgetBody>\n {hasContent && (\n <div className=\"p-2\">\n <div className=\"flex gap-x-4 items-center\">\n <div className=\"relative\">\n <img\n src={props.avatarURL || \"https://cdn.localcivics.io/hub/avatar.jpg\"}\n alt=\"avatar\"\n className=\"border border-gray-200 shadow-sm w-16 h-16 lg:w-32 lg:h-32 rounded-full object-cover\"\n />\n {props.online && (\n <span className=\"absolute h-3.5 w-3.5 lg:w-4 lg:h-4 top-0 right-0 lg:top-2 lg:right-3 rounded-full bg-green-500 border-4 border-white\" />\n )}\n </div>\n <div className=\"grid grid-cols-1 content-center align-middle\">\n <div className=\"grid lg:gap-1\">\n <div className=\"grid grid-cols-1\">\n {props.tenantName && <span className=\"text-slate-300 text-sm\">@{props.tenantName}</span>}\n <h4 className=\"inline-block font-semibold capitalize text-2xl lg:text-4xl text-slate-600\">\n {props.givenName} {props.familyName}\n </h4>\n </div>\n {props.createdAt && (\n <p className=\"text-sm text-slate-300\">Member since {new Date(props.createdAt).getFullYear()}</p>\n )}\n </div>\n </div>\n </div>\n </div>\n )}\n </WidgetBody>\n </Widget>\n );\n};\n","import React from \"react\";\n\n/**\n * FormInputProps\n */\nexport type FormInputProps = {\n headline?: string;\n summary?: string;\n value?: string;\n type?: \"text\" | \"number\" | \"tel\" | \"email\" | \"date\" | \"dropdown\";\n options?: string[];\n placeholder?: string;\n paragraph?: boolean;\n readonly?: boolean;\n required?: boolean;\n min?: string | number;\n max?: string | number;\n\n onChange?: (value: string) => void;\n};\n\n/**\n * FormInput\n * @param props\n * @constructor\n */\nexport const FormInput = (props: FormInputProps) => {\n return (\n <div className=\"grid grid-cols-1 gap-y-2\">\n {props.headline && (\n <div className=\"flex gap-x-1\">\n <div className=\"flex items-start gap-x-4\">\n <div className=\"grow\">\n {props.headline && <p className=\"text-sm text-slate-600 font-semibold\">{props.headline}</p>}\n {props.summary && <p className=\"text-xs text-slate-500\">{props.summary}</p>}\n </div>\n </div>\n {!props.readonly && props.required && <p className=\"text-sm text-rose-600\">*</p>}\n </div>\n )}\n\n <div>\n {(() => {\n switch (props.type) {\n case \"dropdown\":\n return <DropDownInput {...props} />;\n default:\n return <Input {...props} />;\n }\n })()}\n </div>\n </div>\n );\n};\n\nconst DropDownInput = (props: FormInputProps) => {\n const writeClass = props.readonly\n ? \"cursor-default\"\n : \"cursor-pointer px-3 py-2 border border-slate-300 shadow-sm focus:text-slate-600 focus:border-sky-500 focus:ring-1 focus:ring-sky-500\";\n const options = props.options || [];\n\n const onChange = (e: React.ChangeEvent<HTMLSelectElement>) => {\n if (props.onChange) {\n props.onChange(e.target.value);\n }\n };\n\n return (\n <select\n disabled={props.readonly}\n className={`appearance-none focus:outline-none mt-1 block w-full bg-white text-slate-500 ${writeClass} rounded-sm text-sm placeholder-slate-400`}\n required={props.required}\n name={props.headline}\n onChange={onChange}\n >\n <option value=\"\">{props.readonly && !props.value ? \"N/A\" : \"Select one\"}</option>\n\n {options.map((option) => {\n return (\n <option key={option} selected={props.value === option} value={option}>\n {option}\n </option>\n );\n })}\n </select>\n );\n};\n\nconst Input = (props: FormInputProps) => {\n const type = props.readonly ? \"text\" : props.type;\n const value = props.readonly ? props.value || \"N/A\" : props.value;\n const writeClass = props.readonly\n ? \"appearance-none cursor-default\"\n : \"px-3 py-2 border border-slate-300 shadow-sm focus:text-slate-600 focus:border-sky-500 focus:ring-1 focus:ring-sky-500\";\n\n const onChange = (e: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => {\n if (props.onChange) {\n props.onChange(e.target.value);\n }\n };\n\n return (\n <>\n {!props.paragraph && (\n <input\n className={`mt-1 block w-full bg-white text-slate-500 ${writeClass} focus:outline-none rounded-sm text-sm placeholder-slate-400`}\n required={props.required}\n readOnly={props.readonly}\n onChange={onChange}\n name={props.headline}\n type={type}\n placeholder={props.placeholder}\n value={value}\n min={props.min}\n max={props.max}\n />\n )}\n {props.paragraph && (\n <textarea\n className={`resize-none text-slate-500 h-24 mt-1 block w-full bg-white focus:outline-none ${writeClass} rounded-sm text-sm placeholder-slate-400`}\n readOnly={props.readonly}\n required={props.required}\n onChange={onChange}\n name={props.headline}\n value={value}\n placeholder={props.placeholder}\n />\n )}\n </>\n );\n};\n","import React from \"react\";\nimport { Icon } from \"../../../components/Icon\";\nimport { Button } from \"../../../components/Button\";\nimport { Modal } from \"../../../components/Modal\";\n\n/**\n * FormExitDialogProps\n */\nexport type FormExitDialogProps = {\n onYes?: () => void;\n onNo?: () => void;\n};\n\n/**\n * FormExitDialog\n * @param props\n * @constructor\n */\nexport const FormExitDialog = (props: FormExitDialogProps) => {\n return (\n <Modal visible transparent onClose={props.onNo}>\n <div className=\"w-full md:w-[24rem] px-8 py-5 shadow-sm grid grid-cols-1 gap-4 content-center justify-items-center\">\n <div className=\"text-slate-500 w-14 h-14\">\n <Icon name=\"help\" />\n </div>\n\n <div className=\"text-slate-600 text-center\">\n <div className=\"font-bold text-lg\">\n <span>Are you sure you want to leave?</span>\n </div>\n <p className=\"text-sm max-w-[16rem]\">Your progress will not be saved.</p>\n </div>\n\n <div className=\"my-5 grid grid-cols-2 gap-4\">\n <Button\n wide\n spacing=\"md\"\n border=\"rounded\"\n color=\"blue\"\n theme=\"dark\"\n text=\"Yes\"\n size=\"md\"\n onClick={props.onYes}\n />\n\n <Button\n wide\n spacing=\"md\"\n border=\"rounded\"\n color=\"secondary\"\n theme=\"dark\"\n text=\"No\"\n size=\"md\"\n onClick={props.onNo}\n />\n </div>\n </div>\n </Modal>\n );\n};\n","import React from \"react\";\nimport { Button } from \"../../../components/Button\";\nimport { Icon } from \"../../../components/Icon\";\nimport { Modal } from \"../../../components/Modal\";\n\n/**\n * FormSubmitDialogProps\n */\nexport type FormSubmitDialogProps = {\n onGoBack?: () => void;\n onContinue?: () => void;\n};\n\n/**\n * FormSubmitDialog\n * @param props\n * @constructor\n */\nexport const FormSubmitDialog = (props: FormSubmitDialogProps) => {\n return (\n <Modal visible transparent onClose={props.onGoBack}>\n <div className=\"w-full md:w-[24rem] px-8 py-5 shadow-sm grid grid-cols-1 gap-10 content-center justify-items-center\">\n <div className=\"grid grid-cols-1 gap-4 content-center justify-items-center\">\n <div className=\"text-sky-500 w-14 h-14\">\n <Icon name=\"service-tracking\" />\n </div>\n\n <div className=\"text-slate-700 text-center\">\n <div className=\"font-bold text-lg\">\n <span>Your hours are logged!</span>\n </div>\n <p className=\"text-sm max-w-[16rem]\">Click continue to go back home.</p>\n </div>\n </div>\n\n <div className=\"px-16 w-full\">\n <Button\n wide\n spacing=\"md\"\n border=\"rounded\"\n color=\"dark-blue\"\n theme=\"dark\"\n text=\"Continue\"\n size=\"full:md\"\n onClick={props.onContinue}\n />\n </div>\n </div>\n </Modal>\n );\n};\n","import React from \"react\";\nimport {Card } from \"../../../components/Card/Card\";\nimport { Button } from \"../../../components/Button\";\nimport { Icon } from \"../../../components/Icon\";\nimport { Overlay } from \"../../../components/Overlay/Overlay\";\nimport { FormInput } from \"../FormInput/FormInput\";\nimport { FormExitDialog } from \"../FormExitDialog/FormExitDialog\";\nimport { FormSubmitDialog } from \"../FormSubmitDialog/FormSubmitDialog\";\n\n/**\n * FormProps\n */\nexport type FormProps = {\n inReview?: boolean;\n showSubmitDialogue?: boolean;\n showExitDialogue?: boolean;\n children?: React.ReactNode;\n\n onSubmit?: (responses: any) => Promise<any>;\n onClose?: () => void;\n};\n\n/**\n * Form\n * @param props\n * @constructor\n */\nexport const Form = (props: FormProps) => {\n const [showExitDialogue, setShowExitDialogue] = React.useState(!!props.showExitDialogue);\n const [showSubmitDialogue, setShowSubmitDialogue] = React.useState(!!props.showSubmitDialogue);\n const [responses, setResponses] = React.useState({} as any);\n const [inReview, setInReview] = React.useState(!!props.inReview);\n const setResponse = (key: string, value: string) => {\n setResponses({ ...responses, [key]: value });\n };\n const onSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n if (!inReview) {\n setInReview(true);\n } else if (inReview && props.onSubmit) {\n props.onSubmit(responses).then((err) => {\n if (!err) {\n setShowSubmitDialogue(true);\n }\n });\n }\n };\n\n React.useEffect(() => setInReview(!!props.inReview), [props.inReview]);\n React.useEffect(() => setShowExitDialogue(!!props.showExitDialogue), [props.showExitDialogue]);\n React.useEffect(() => setShowSubmitDialogue(!!props.showSubmitDialogue), [props.showSubmitDialogue]);\n\n return (\n <>\n <Overlay>\n <div className=\"flex overflow-auto md:w-max h-screen gap-x-2 justify-items-center content-center m-auto\">\n <Card onClose={() => setShowExitDialogue(true)}>\n <div className=\"h-max w-max overflow-x-hidden md:w-[50rem] px-16 py-4 grid grid-cols-1 gap-y-12\">\n <div className=\"flex gap-x-2 items-center\">\n <div className=\"text-sky-500 w-14 h-14\">\n <Icon name=\"service-tracking\" />\n </div>\n <div className=\"text-slate-600\">\n <p className=\"font-bold text-xl\">Service Log</p>\n <p className=\"text-sm\">\n {inReview ? \"Please review your submission.\" : \"Tell us about your service below.\"}\n </p>\n </div>\n </div>\n <form className=\"w-full m-auto grid grid-cols-1 gap-y-12 pb-8\" onSubmit={onSubmit}>\n {props.children}\n\n {!props.children && (\n <>\n <div className=\"grid grid-cols-1 lg:grid-cols-2 gap-x-6 gap-y-8 items-start max-h-96 overflow-auto\">\n <FormInput\n required\n readonly={inReview}\n headline=\"Organization Name\"\n value={responses[\"organizationName\"]}\n onChange={(value) => setResponse(\"organizationName\", value)}\n />\n\n <FormInput\n readonly={inReview}\n headline=\"Contact Person\"\n value={responses[\"contactPerson\"]}\n onChange={(value) => setResponse(\"contactPerson\", value)}\n />\n\n <FormInput\n readonly={inReview}\n headline=\"Contact Phone Number\"\n type=\"tel\"\n value={responses[\"contactPhoneNumber\"]}\n onChange={(value) => setResponse(\"contactPhoneNumber\", value)}\n />\n\n <FormInput\n readonly={inReview}\n headline=\"Contact Email\"\n type=\"email\"\n value={responses[\"contactEmail\"]}\n onChange={(value) => setResponse(\"contactEmail\", value)}\n />\n\n <div className=\"grid lg:grid-cols-2 gap-y-8 gap-x-2\">\n <FormInput\n required\n readonly={inReview}\n headline=\"Service Date\"\n type=\"date\"\n value={responses[\"date\"]}\n onChange={(value) => setResponse(\"date\", value)}\n />\n\n <FormInput\n required\n readonly={inReview}\n headline=\"Service Hours\"\n min={0}\n max={24}\n type=\"number\"\n value={responses[\"totalHours\"]}\n onChange={(value) => setResponse(\"totalHours\", value)}\n />\n </div>\n\n <FormInput\n required\n readonly={inReview}\n headline=\"Service Type\"\n type=\"dropdown\"\n value={responses[\"type\"]}\n options={[\"Community Service\", \"Capstone\", \"Internship\", \"Project\", \"Other\"]}\n onChange={(value) => setResponse(\"type\", value)}\n />\n\n <div className=\"lg:col-span-2\">\n <FormInput\n required\n readonly={inReview}\n headline=\"Tell us about your experience\"\n paragraph\n value={responses[\"description\"]}\n onChange={(value) => setResponse(\"description\", value)}\n />\n </div>\n </div>\n\n <div className=\"flex gap-x-4 w-max m-auto\">\n {inReview && (\n <Button\n onClick={() => setInReview(false)}\n color=\"dark-blue\"\n size=\"md\"\n spacing=\"md\"\n border=\"rounded\"\n text=\"Edit\"\n />\n )}\n <Button\n type=\"submit\"\n color=\"dark-blue\"\n size=\"md\"\n spacing=\"md\"\n border=\"rounded\"\n theme=\"dark\"\n text={inReview ? \"Submit\" : \"Continue\"}\n />\n </div>\n </>\n )}\n </form>\n </div>\n </Card>\n </div>\n </Overlay>\n\n {showExitDialogue && (\n <div className=\"fixed top-0 left-0 px-4 md:px-2 w-screen h-screen py-5 transition ease-in-out duration-400 bg-gray-200/75 z-40\">\n <div className=\"flex md:w-max h-screen gap-x-2 justify-items-center content-center m-auto\">\n <FormExitDialog onYes={props.onClose} onNo={() => setShowExitDialogue(false)} />\n </div>\n </div>\n )}\n\n {showSubmitDialogue && (\n <div className=\"fixed top-0 left-0 px-4 md:px-2 w-screen h-screen py-5 transition ease-in-out duration-400 bg-gray-200/75 z-40\">\n <div className=\"flex md:w-max h-screen gap-x-2 justify-items-center content-center m-auto\">\n <FormSubmitDialog onGoBack={() => setShowSubmitDialogue(false)} onContinue={props.onClose} />\n </div>\n </div>\n )}\n </>\n );\n};\n","import React from \"react\";\nimport { Form, FormProps } from \"../Form/Form\";\nimport { Button } from \"../../../components/Button/Button\";\n\n/**\n * LogServiceButtonProps\n */\nexport type LogServiceButtonProps = {\n text?: string;\n isOpen?: boolean;\n form?: FormProps;\n\n onSubmit?: (responses: any) => Promise<any>;\n onClick?: () => void;\n};\n\n/**\n * LogServiceButton\n * @param props\n * @constructor\n */\nexport const LogServiceButton = (props: LogServiceButtonProps) => {\n const [isOpen, setIsOpen] = React.useState(!!props.isOpen);\n const text = props.text || \"Log Service\";\n const onOpen = () => {\n if (props.onClick) {\n props.onClick();\n }\n setIsOpen(true);\n };\n const onClose = () => {\n if (props.form && props.form.onClose) {\n props.form.onClose();\n }\n setIsOpen(false);\n };\n\n React.useEffect(() => {\n setIsOpen(!!props.isOpen);\n }, [props.isOpen]);\n\n return (\n <>\n <Button\n wide\n spacing=\"md\"\n border=\"rounded\"\n color=\"dark-blue\"\n theme=\"dark\"\n text={text}\n size=\"full:md\"\n onClick={onOpen}\n />\n\n {isOpen && <Form onSubmit={props.onSubmit} {...props.form} onClose={onClose} />}\n </>\n );\n};\n","import React from \"react\";\r\nimport { Button } from \"../Button/Button\";\r\n\r\n/**\r\n * StopwatchProps\r\n */\r\nexport type CtaListProps = {\r\n readOnly?: boolean;\r\n ctaLabel?: string;\r\n};\r\nexport type StopwatchProps = {\r\n time?: string;\r\n ctaList?: CtaListProps[];\r\n onCTAClick?: (ctaLabel: string) => void;\r\n hide?: boolean\r\n};\r\n\r\n/**\r\n * A component for Stopwatch.\r\n * @param props\r\n * @constructor\r\n */\r\nexport const Stopwatch = (props: StopwatchProps) => {\r\n const [hide, setHide] = React.useState(props.hide)\r\n React.useEffect(() => {\r\n setHide(props.hide)\r\n }, [props.hide])\r\n\r\n const ctaList = props?.ctaList || [];\r\n const getColor = (label: string) => {\r\n if (label.toLowerCase() === \"start\") {\r\n return \"green\";\r\n } else if (label.toLowerCase() === \"stop\") {\r\n return \"rose\";\r\n }\r\n return \"blue\";\r\n };\r\n\r\n const visibility = hide ? \"opacity-0 invisible\" : \"visible\"\r\n return (\r\n <>\r\n <div>\r\n <label className=\"relative inline-flex items-center cursor-pointer\">\r\n <input\r\n type=\"checkbox\"\r\n value=\"\"\r\n className=\"sr-only peer\"\r\n checked={hide}\r\n onChange={() => setHide(!hide)}\r\n />\r\n <div className=\"w-11 h-6 bg-gray-200 rounded-full peer peer-focus:ring-4 peer-focus:ring-blue-300 dark:peer-focus:ring-blue-800 dark:bg-gray-700 peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-0.5 after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-5 after:w-5 after:transition-all dark:border-gray-600 peer-checked:bg-blue-600\"></div>\r\n <span\r\n className=\"ml-3 text-sm font-bold text-gray-700\"\r\n onChange={() => setHide(!hide)}\r\n >\r\n Hide Stopwatch?\r\n </span>\r\n </label>\r\n </div>\r\n <div className={`shadow-2xl shadow-gray-400 h-30 w-48 grid grid-cols-1 justify-items-center text-slate-600 text-md gap-4 p-4 box-border ${visibility}`}>\r\n <div className=\"shadow-xl w-36 text-center text-lg p-2\">{props.time}</div>\r\n <div className=\"grid grid-cols-2 gap-2\">\r\n {ctaList &&\r\n ctaList.length &&\r\n ctaList.map((ctaObj, i) => {\r\n const color = getColor(ctaObj.ctaLabel || \"\");\r\n return (\r\n <Button\r\n key={i}\r\n onClick={() => props.onCTAClick && props.onCTAClick(ctaObj.ctaLabel || \"\")}\r\n theme=\"dark\"\r\n border=\"rounded\"\r\n size=\"sm\"\r\n spacing=\"xs\"\r\n color={color}\r\n text={ctaObj.ctaLabel}\r\n active={false}\r\n disabled={ctaObj.readOnly}\r\n />\r\n );\r\n })}\r\n </div>\r\n </div >\r\n </>\r\n );\r\n};\r\n","import React from \"react\";\nimport { Icon, IconName } from \"../../Icon\";\n\n/**\n * TaskItemProps\n */\nexport type TaskItemProps = {\n headline?: string;\n full?: boolean;\n status?: \"todo\" | \"in-progress\" | \"done\";\n onAction?: () => void;\n};\n\n/**\n * TaskItem\n * @param props\n * @constructor\n */\nexport const TaskItem = (props: TaskItemProps) => {\n const color =\n props.status === \"done\" ? \"text-green-500\" : props.status === \"in-progress\" ? \"text-cyan-100\" : \"text-gray-300\";\n const border = props.full\n ? \"border-b border-gray-100\"\n : props.status === \"done\"\n ? \"border rounded border-gray-200\"\n : \"border rounded border-gray-200\";\n const opacity = props.status === \"done\" ? \"opacity-50\" : \"\";\n const icon: IconName = props.status === \"done\" ? \"accept\" : \"circle\";\n const cursor = props.status === \"done\" ? \"\" : \"cursor-pointer hover:text-cyan-400 hover:bg-slate-50\";\n return (\n <div\n onClick={() => props.onAction && props.onAction()}\n className={`flex px-3 py-2 gap-5 align-middle leading-6 items-center ${color} ${cursor} ${border} ${opacity}`}\n >\n <div className=\"h-3 w-3\">\n <Icon name={icon} />\n </div>\n <p className=\"grow font-semibold text-slate-500 text-sm truncate\">{props.headline}</p>\n </div>\n );\n};\n","import React from \"react\";\nimport { Board, Tab } from \"../../Board\";\n\n/**\n * The properties for the task workflow.\n */\nexport type TaskListProps = {\n isLoading?: boolean;\n active?: \"todo\" | \"in-progress\" | \"done\";\n onTodo?: () => void;\n onInProgress?: () => void;\n onDone?: () => void;\n children?: React.ReactNode;\n};\n\n/**\n * A component for the task workflow.\n * @param props\n * @constructor\n */\nexport const TaskList = (props: TaskListProps) => {\n const active = props.active || \"todo\";\n const tabs = (\n <>\n <Tab disabled secondary icon=\"todo\" title=\"todo\" active={active === \"todo\"} onClick={props.onTodo} />\n <Tab secondary icon=\"review\" title=\"in-progress\" active={active === \"in-progress\"} onClick={props.onInProgress} />\n <Tab secondary icon=\"done\" title=\"done\" active={active === \"done\"} onClick={props.onDone} />\n </>\n );\n\n const hasContent = props.children && React.Children.count(props.children) > 0;\n const workflow = (\n <>\n {!hasContent && (\n <div className=\"grid justify-items-center content-center h-[12rem] lg:h-[18rem]\">\n <p className=\"text-sm text-center align-middle leading-6 font-semibold text-slate-300\">\n No content to display.\n </p>\n </div>\n )}\n {hasContent && <div className=\"grid grid-cols-1 overflow-auto\">{props.children}</div>}\n </>\n );\n return (\n <div className=\"h-[16rem] lg:h-[22rem] w-full\">\n <Board isLoading={props.isLoading} tabs={tabs} workflow={workflow} secondary />\n </div>\n );\n};\n","import * as React from \"react\";\nimport { classname } from \"../../../utils/classname/classname\";\nimport { Progress } from \"../../../components/Progress\";\n\n\nexport type PathwayProgressBarHeight = \"sm\" | \"md\";\n\nexport type PathwayProgressBarChartProps = {\n targets: Record<string, number>;\n points: Record<string, number>;\n height?: PathwayProgressBarHeight;\n};\n\nexport const PathwayProgressBarChart = ({\n targets,\n points,\n height = \"sm\",\n}: PathwayProgressBarChartProps) => {\n const entries = Object.entries(targets);\n const config = defaultChartConfig();\n\n withHeight(config, height);\n\n if (!entries.length) return null;\n\n return (\n <div className=\"grid grid-cols-1 gap-2\">\n {entries.map(([categoryId, max]) => {\n const value = points[categoryId] ?? 0;\n\n return (\n <div key={categoryId} className=\"grid grid-cols-1 gap-1\">\n <div className=\"flex justify-between items-center\">\n <p className=\"capitalize text-xs text-slate-400\">{categoryId}</p>\n <p className={classname(config.magnitude)}>\n {value} / {max}\n </p>\n </div>\n\n <div className={classname(config.progress)}>\n <Progress start={value} end={max || 1} />\n </div>\n </div>\n );\n })}\n </div>\n );\n};\n\ntype ChartConfig = {\n progress: {\n height: string;\n };\n magnitude: {\n base: string;\n text: string;\n };\n};\n\nconst defaultChartConfig = (): ChartConfig => {\n return {\n progress: {\n height: \"\",\n },\n magnitude: {\n base: \"text-gray-400\",\n text: \"\",\n },\n };\n};\n\nconst withHeight = (config: ChartConfig, height: PathwayProgressBarHeight) => {\n switch (height) {\n case \"sm\":\n config.progress.height = \"h-4\";\n config.magnitude.text = \"text-sm\";\n break;\n case \"md\":\n config.progress.height = \"h-8\";\n config.magnitude.text = \"text-sm\";\n break;\n }\n};","import * as React from \"react\";\nimport { Icon, IconName } from \"../../../components/Icon/Icon\";\nimport { Button } from \"../../../components/Button/Button\";\nimport { Card } from \"../../../components/Card/Card\";\nimport { BadgeEmblem } from \"../../badges/BadgeEmblem/BadgeEmblem\";\nimport {PathwayProgressBarChart} from \"../PathwayProgressBarChart/PathwayProgressBarChart\";\n\n/**\n * BadgeItem\n */\nexport type BadgeItem = {\n badgeId: string;\n displayName: string;\n categories: string[];\n completedAt?: string | null;\n startedAt?: string | null;\n weight: number;\n onClick?: () => void;\n};\n\nexport type PathwayCriteria = Record<string,number>;\n\n/**\n * PathwayCardProps\n */\nexport type PathwayCardProps = {\n imageURL?: string;\n title?: string;\n description?: string;\n badges?: BadgeItem[];\n progress?: number;\n target?: number;\n displayTags?: string[];\n criteria?: PathwayCriteria;\n categoryNames?: Record<string, string>;\n points?: Record<string, number>;\n onClose?: () => void;\n onSubmit?: () => void;\n};\n\n/**\n * PathwayCard\n * @param props\n * @constructor\n */\nexport const PathwayCard = (props: PathwayCardProps) => {\n\n const badges = props.badges || [];\n const completedCount = badges.filter(b => b.completedAt).length;\n const target = props.target || badges.length;\n const categoryTargets = props.criteria ?? {};\n const points = props.points ?? {};\n\n \n const categoryIds = React.useMemo(\n () => Object.keys(props.criteria ?? {}),\n [props.criteria]\n );\n\n const [activeFilters, setActiveFilters] = React.useState<Set<string>>(\n () => new Set()\n );\n\n const filteredBadges =\n activeFilters.size === 0\n ? badges\n : badges.filter(b =>\n b.categories?.some(c => activeFilters.has(c))\n );\n\n const filterClassName = \"inline-block px-4 py-2 bg-gray-600 text-white rounded-full cursor-pointer text-sm\";\n\n console.log(\"ACTIVE FILTERS:\", Array.from(activeFilters));\nconsole.log(\"BADGE SAMPLE:\", badges.slice(0, 5).map(b => b.categories));\nconsole.log(\"MATCH TEST:\", badges.slice(0, 5).map(b =>\n b.categories?.map(c => activeFilters.has(c))\n));\n\n const toggleFilter = (id: string) => {\n setActiveFilters(prev => {\n const next = new Set(prev);\n next.has(id) ? next.delete(id) : next.add(id);\n return next;\n });\n };\n\n//TODO: should pass this to a PathwayEmblem instead making a file at \n//design-components/packages/hub-ui/src/features/pathways/PathwayEmblem/PathwayEmblem.tsx\n return (\n <Card onClose={props.onClose}>\n <div className=\"pb-5 text-zinc-600\">\n <div className=\"pb-5 px-5 flex gap-x-2\">\n\n <BadgeEmblem\n iconURL={props.imageURL} //This is correct, the iconrl is populated in the BadgeEmblem for badges. level, imageUARL, and icon are undefined.\n alt={props.title}\n size=\"md\"\n />\n\n <div className=\"max-w-[20rem]\">\n <p className=\"font-semibold\">{props.title}</p>\n <div className=\"text-xs\">\n <span className=\"text-zinc-500 font-semibold\">Tags</span>\n {(props.displayTags ?? []).length > 0 && (\n <div className=\"inline-block ml-1 text-green-500\">\n {(props.displayTags ?? []).map((tag, index) => (\n <span key={index} className=\"font-semibold mr-1\">\n {tag}\n </span>\n ))}\n </div>\n )}\n\n </div>\n {!!props.description && <p className=\"mt-2 text-sm\">{props.description}</p>}\n </div>\n </div>\n <div className=\"p-5 grid grid-cols-1 gap-y-3 md:min-w-[30rem] max-w-[40rem] border-t border-zinc-200\">\n <p className=\"font-semibold\">Pathway Badges & Criteria</p>\n <p className=\"text-xs\">This pathway is comprised of {target} Badges. It includes required and elective programming.</p>\n\n <p className=\"text-xs\">Progress: {completedCount} / {target} badges completed.</p>\n\n <PathwayProgressBarChart\n targets={categoryTargets}\n points={points}\n height=\"sm\"\n />\n\n <div className=\"flex flex-wrap gap-2 mt-3\">\n {categoryIds.map((id) => {\n const isActive = activeFilters.has(id);\n const label = props.categoryNames?.[id] ?? id;\n\n return (\n <div\n key={id}\n onClick={() => toggleFilter(id)}\n className={\n isActive\n ? `${filterClassName} bg-gray-700`\n : \"inline-block px-4 py-2 rounded-full hover:bg-gray-200 cursor-pointer text-sm\"\n }\n >\n {label}\n </div>\n );\n })}\n </div>\n\n <div className=\"mt-2 grid grid-cols-1 gap-y-2 max-h-[18rem] overflow-y-auto\">\n\n {filteredBadges.map((b) => {\n const buttonText = b.completedAt ? \"Completed\" : b.startedAt ? \"Continue\" : \"Start\";\n const buttonTheme = b.completedAt ? \"light\" : \"dark\";\n const iconName = b.completedAt ? \"check & circle\" : \"circle\";\n const iconColor = b.completedAt ? \"text-green-500\" : \"text-zinc-300\";\n\n return (\n <div key={b.badgeId} className=\"flex gap-x-2 items-center\">\n <div className={`shrink-0 h-4 w-4 ${iconColor}`}>\n <Icon name={iconName} />\n </div>\n <div className=\"grow\">\n <div>\n <span className=\"font-semibold\">{b.displayName}</span>\n </div>\n <div className=\"text-xs\">\n {/* <span>{b.TagsOfSomeSort TODO: }</span> */}\n {<span className=\"ml-1 text-green-500 font-semibold whitespace-nowrap\">\n {b.weight} {b.weight === 1 ? \"point\" : \"points\"}\n </span>}\n </div>\n </div>\n { <div className=\"shrink-0 w-full max-w-[7rem]\">\n <Button\n onClick={b.onClick}\n spacing=\"sm\"\n border=\"rounded\"\n size=\"full:sm\"\n color=\"blue\"\n theme={buttonTheme}\n text={buttonText}\n />\n </div> }\n </div>\n );\n })}\n \n </div>\n\n\n </div>\n <div className=\"pt-5 px-5 flex border-t border-zinc-200\">\n <div className=\"w-full max-w-[7rem] ml-auto\">\n <Button\n disabled={true} //TODO: enable Pathway Submission?\n onClick={props.onSubmit}\n spacing=\"sm\"\n border=\"rounded\"\n size=\"full:sm\"\n color=\"blue\"\n theme=\"dark\"\n text=\"Submit\"\n />\n </div>\n </div>\n </div>\n </Card>\n );\n};","import * as React from \"react\";\nimport { PathwayCard, PathwayCardProps } from \"../PathwayCard/PathwayCard\";\n\n/**\n * PathwayProps\n */\nexport type PathwayProps = PathwayCardProps & {\n pathwayId?: string;\n title?: string;\n description?: string;\n imageURL?: string;\n displayTags?: string[];\n\n onClose?: () => void;\n };\n\n/**\n * Pathway\n * @param props\n * @constructor\n */\nexport const Pathway = (props: PathwayProps) => {\n\n return (\n <>\n <PathwayCard {...props} />\n </>\n );\n};\n","import * as React from \"react\";\nimport { BadgeEmblem } from \"../../badges/BadgeEmblem/BadgeEmblem\";\n\n\nexport type PathwayButtonProps = {\n title?: string;\n description?: string;\n imageURL?: string;\n compact?: boolean;\n\n onClick?: () => void;\n};\n\nexport const PathwayButton = (props: PathwayButtonProps) => {\n const cursorClass = \"cursor-pointer\";\n const bgHover = \"hover:bg-sky-50\";\n\n const onClick = () => {\n if (props.onClick) props.onClick();\n };\n\n //list mode\n if (props.compact) {\n return <div\n onClick={onClick}\n className={`text-zinc-600 relative overflow-hidden py-3 px-5 transition ease-in-out duration-600 ${cursorClass} ${bgHover}`}\n >\n <div className=\"flex gap-3\">\n <div className={`w-max my-auto`}>\n <BadgeEmblem\n iconURL={props.imageURL}\n alt={props.title}\n size=\"xxs\"\n />\n </div>\n <div className=\"text-sm my-auto flex gap-x-2\">\n <span className=\"font-semibold text-zinc-600\">{props.title}</span>\n </div>\n </div>\n </div>;\n }\n \n\n //grid mode\nreturn (\n <div className=\"grid grid-cols-1 w-44 overflow-x-hidden gap-y-3 text-zinc-600\">\n <div className=\"flex flex-col border h-max border-zinc-100 rounded-md bg-gray-100\">\n <div\n onClick={onClick}\n className={`relative overflow-hidden p-5 transition ease-in-out duration-600 ${cursorClass} ${bgHover}`}\n >\n\n <div className={`w-max my-auto`}>\n <BadgeEmblem\n iconURL={props.imageURL}\n alt={props.title}\n size=\"md\"\n />\n </div>\n </div>\n\n </div>\n\n {!!props.title && (\n <div className=\"text-sm m-auto flex gap-x-2\">\n <span className=\"font-semibold text-zinc-600\">{props.title}</span>\n </div>\n )}\n </div>\n);\n};","import * as React from \"react\";\nimport { Widget, WidgetBody, WidgetHeader } from \"../../../components/Widget\";\nimport { Pathway, PathwayProps } from \"../Pathway/Pathway\";\nimport { PathwayButton, PathwayButtonProps } from \"../PathwayButton/PathwayButton\";\nimport { Icon } from \"../../../components/Icon/Icon\";\n\nconst DEFAULT_FILTERS = [\n {label: \"In Progress\"},\n {label: \"Completed\"},\n {label: \"Available\"},\n {label: \"Locked\"}\n]\n\nexport type PathwayFilterOption = {\n label: string;\n isActive?: boolean;\n};\n\n/**\n * PathwaySectionProps\n */\nexport type PathwaySectionProps = {\n pathways: PathwayProps[];\n isLoading?: boolean;\n readonly?: boolean;\n list?: boolean\n onToggleLayout?: (next: boolean) => void;\n};\n\n/**\n * PathwaySection\n * @param props\n * @constructor\n */\nexport const PathwaySection = (props: PathwaySectionProps) => {\n const progress: PathwayProps[] = [];\n const locked: PathwayProps[] = [];\n const available: PathwayProps[] = [];\n const collected: PathwayProps[] = [];\n\n props.pathways.map((p) => {\n if (true) {\n // if (b.finishedAt) { //TODO FIXME implement pathway completed logic\n // collected.push(b);\n // } else if (b.isLocked) {\n // locked.push(b);\n // } else if (b.startedAt) {\n // progress.push(b);\n // } else {\n // available.push(b);\n // }\n progress.push(p)\n }\n });\n\n const [list, setList] = React.useState(props.list)\n const preview = props.readonly ? collected.slice(0, 10) : props.pathways.slice(0, 3);\n const layoutClassName = getLayout(list)\n const showSectionHeaders = true\n React.useEffect(() => {\n setList(props.list)\n }, [props.list])\n\n React.useEffect(() => {\n if(list !== undefined && props.list !== list && props.onToggleLayout){\n props.onToggleLayout(list)\n }\n }, [list])\n\n return (\n <div>\n <Widget isLoading={props.isLoading}>\n <WidgetHeader divide>\n <div className=\"py-2 flex w-full gap-x-2 text-zinc-600\">\n <div className=\"shrink-0 h-10 w-10\">\n <Icon name=\"award ribbon\" />\n </div>\n <p className=\"shrink-0 my-auto font-semibold\">Pathways and Seals</p>\n\n <div className=\"shrink-0 mt-auto ml-auto text-sm\">\n <span className=\"font-semibold\">\n {collected.length}\n {props.readonly ? \"\" : \"/\" + props.pathways.length} Pathways\n </span>\n <span className=\"ml-1\">completed</span>\n </div>\n </div>\n </WidgetHeader>\n <WidgetBody>\n <div className=\"pb-5\">\n <div className=\"grid grid-cols-1 gap-y-5\">\n <div className=\"flex flex-wrap gap-4 items-center justify-between text-sm\">\n <div className=\"flex justify-center col-span-3 space-x-4 text-sm\">\n </div>\n <div>\n <label className=\"relative inline-flex items-center cursor-pointer\">\n <input\n type=\"checkbox\"\n value=\"\"\n className=\"sr-only peer\"\n checked={!list}\n onChange={() => setList(!list)}\n />\n <div className=\"w-11 h-6 bg-gray-200 rounded-full peer peer-focus:ring-4 peer-focus:ring-blue-300 dark:peer-focus:ring-blue-800 dark:bg-gray-700 peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-0.5 after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-5 after:w-5 after:transition-all dark:border-gray-600 peer-checked:bg-blue-600\"></div>\n <span\n className=\"ml-3 text-sm font-bold text-gray-700\"\n onChange={() => setList(!list)}\n >\n Grid View?\n </span>\n </label>\n </div>\n </div>\n <div>\n {!!props.readonly && (\n <div className={layoutClassName}>\n {preview.map((p, i) => {\n return <PathwayButton key={i} {...p} compact={list} />;\n })}\n </div>\n )}\n {!props.readonly && (\n <div className=\"text-zinc-600 grid grid-cols-1 gap-y-4\">\n { progress.length > 0 && (\n <div>\n {showSectionHeaders && <p className=\"mb-3 text-md underline font-bold\">In Progress</p>}\n <div className={layoutClassName}>\n {progress.map((p, i) => {\n return <PathwayButton key={i} {...p} compact={list}/>;\n })}\n </div>\n </div>\n )}\n\n { collected.length > 0 && (\n <div>\n {showSectionHeaders && <p className=\"mb-3 text-md underline font-bold\">Completed</p> }\n <div className={layoutClassName}>\n {collected.map((p, i) => {\n return <PathwayButton key={i} {...p} compact={list}/>;\n })}\n </div>\n </div>\n )}\n\n { available.length > 0 && (\n <div>\n {showSectionHeaders && <p className=\"mb-3 text-md underline font-bold\">Available</p> }\n <div className={layoutClassName}>\n {available.map((p, i) => {\n return <PathwayButton key={i} {...p} compact={list}/>;\n })}\n </div>\n </div>\n )}\n\n { locked.length > 0 && (\n <div>\n {showSectionHeaders && <p className=\"mb-3 text-md underline font-bold\">Locked</p> }\n <div className={layoutClassName}>\n {locked.map((p, i) => {\n return <PathwayButton key={i} {...p} compact={list}/>;\n })}\n </div>\n </div>\n )}\n </div>\n )}\n </div>\n </div>\n </div>\n </WidgetBody>\n </Widget>\n </div>\n );\n};\n\nconst getLayout = (list?: boolean) => {\n if(list){\n return \"grid grid-cols-1 overflow-y-auto max-h-96\"\n }\n\n return \"flex flex-wrap gap-3\"\n}","import React from \"react\";\nimport { Loader, NavBar, NavBarProps, NavLink } from \"../../components\";\n\n/**\n * AuthLayoutProps\n */\nexport type AuthLayoutProps = {\n isLoading?: boolean;\n pathname?: string;\n page?: \"profile\" | \"explore\" | \"calendar\";\n disabled?: boolean;\n header?: React.ReactNode;\n subheader?: React.ReactNode;\n sidebar?: React.ReactNode;\n main?: React.ReactNode;\n outlet?: React.ReactNode;\n children?: React.ReactNode;\n\n onHome?: () => void;\n onProfile?: () => void;\n onExplore?: () => void;\n onCalendar?: () => void;\n onLogout?: () => void;\n onFAQ?: () => void;\n onPrivacy?: () => void;\n onTerms?: () => void;\n onSwitchAccount?: () => void;\n};\n\n/**\n * AuthLayout\n * @constructor\n */\nexport const AuthLayout = (props: AuthLayoutProps & NavBarProps) => {\n return (\n <main className=\"relative h-screen w-full bg-white font-proxima\">\n <Loader isLoading={props.isLoading}>\n <NavBar>\n <NavLink disabled={!props.onHome || props.disabled} name=\"home\" onClick={props.onHome} />\n {props.onFAQ && <NavLink name=\"faq\" onClick={props.onFAQ} />}\n {props.onPrivacy && <NavLink name=\"privacy\" onClick={props.onPrivacy} />}\n {props.onTerms && <NavLink name=\"terms\" onClick={props.onTerms} />}\n {props.onProfile && (\n <NavLink\n disabled={props.disabled}\n name=\"profile\"\n onClick={props.onProfile}\n active={props.page === \"profile\"}\n />\n )}\n {props.onExplore && (\n <NavLink\n disabled={props.disabled}\n name=\"explore\"\n onClick={props.onExplore}\n active={props.page === \"explore\"}\n />\n )}\n {props.onCalendar && (\n <NavLink\n disabled={props.disabled}\n name=\"calendar\"\n onClick={props.onCalendar}\n active={props.page === \"calendar\"}\n />\n )}\n {props.onSwitchAccount && <NavLink name=\"switch accounts\" onClick={props.onSwitchAccount}/>}\n {props.onLogout && <NavLink name=\"Logout\" onClick={props.onLogout} />}\n </NavBar>\n\n {props.children && (\n <section className=\"absolute top-0 left-0 h-full overflow-auto pt-16 w-full\">{props.children}</section>\n )}\n\n {!props.children && (\n <section className=\"w-full px-4 py-5 lg:px-36 flex flex-col gap-4\">\n {props.header && (\n <div className=\"w-full max-w-[64rem] m-auto min-h-16 lg:min-h-24 lg:flex\">{props.header}</div>\n )}\n\n <div className=\"grow w-full min-h-96\">\n {/* Body */}\n <div className=\"w-full max-w-[64rem] m-auto grid grid-cols-1 gap-y-4 lg:flex lg:gap-x-2\">\n {/* Left Panel */}\n {props.sidebar && (\n <div className=\"grid grid-cols-1 max-w-full md:flex md:flex-col gap-2 lg:w-[16rem] shrink-0\">\n <div className=\"flex flex-col gap-4 lg:gap-x-2 lg:gap-y-3\">{props.sidebar}</div>\n <p className=\"hidden place-self-center lg:inline-block text-xs text-slate-300\">\n Local Civics © {new Date().getFullYear()}\n </p>\n </div>\n )}\n\n {/* Right Panel */}\n {(props.subheader || props.main) && (\n <div className=\"grow grid grid-cols-1 max-w-full overflow-x-hidden md:flex md:flex-col gap-4 lg:gap-2\">\n {props.subheader && (\n <div className=\"relative grid grid-cols-1 md:flex w-full gap-4 lg:gap-2\">\n {props.subheader}\n </div>\n )}\n {props.main && <div className=\"relative grid grid-cols-1 w-full gap-4 lg:gap-2\">{props.main}</div>}\n </div>\n )}\n </div>\n </div>\n </section>\n )}\n </Loader>\n {props.outlet}\n </main>\n );\n};\n","import React from \"react\";\nimport { NavBar, NavLink } from \"../../components\";\n\n/**\n * HomeLayoutProps\n */\nexport type HomeLayoutProps = {\n isLoading?: boolean;\n nickname?: string;\n pathname?: string;\n children?: React.ReactNode;\n\n onProfile?: () => void;\n onHome?: () => void;\n onLogin?: () => void;\n onFAQ?: () => void;\n onPrivacy?: () => void;\n onTerms?: () => void;\n};\n\n/**\n * HomeLayout\n * @constructor\n */\nexport const HomeLayout = (props: HomeLayoutProps) => {\n const onProfile = () => props.onProfile && props.onProfile();\n\n React.useEffect(() => {\n if (props.isLoading) {\n return;\n }\n\n if (props.nickname) {\n if (props.pathname === `/`) {\n onProfile();\n return;\n }\n }\n }, [props.isLoading, props.pathname, props.nickname]);\n\n return (\n <main className=\"relative h-screen w-full overflow-hidden bg-white font-proxima\">\n <NavBar>\n <NavLink name=\"home\" onClick={props.onHome} active />\n <NavLink name=\"login\" onClick={props.onLogin} />\n <NavLink name=\"faq\" onClick={props.onFAQ} />\n <NavLink name=\"privacy\" onClick={props.onPrivacy} />\n <NavLink name=\"terms\" onClick={props.onTerms} />\n </NavBar>\n\n <section className=\"absolute top-0 left-0 h-full overflow-hidden pt-16 w-full\">{props.children}</section>\n </main>\n );\n};\n"],"names":["Icon","__spreadValues","defaultConfig","withActive","withDisabled","React","__spreadProps","active","tag","Search","useCallback","Rating","_path","_excluded","_extends","_objectWithoutProperties","_objectWithoutPropertiesLoose","_circle","_path2","_path3","_path4","FourteenPointStar","AwardRibbon","UpDownArrow","Circle","CheckCircle","CheckCircleDark","Lock","Progress","PartyPopper","PlusCircle","XCircle","XSquare","PenPaper","CaretLeft","FormalBackpack","FormalBallotBox","FormalBarGraph","FormalBolt","FormalBriefcase","FormalBullseye","FormalBurger","FormalCameraLens","FormalDesignBulb","FormalDoublePanBalance","FormalEasel","FormalEye","FormalGavel","FormalClass","FormalHandshake","FormalHeart","FormalMagnifyingGlass","FormalMedicine","FormalMicrophone","FormalMolecule","FormalMoneybag","FormalMortarboard","FormalParthenon","FormalPencil","FormalPieChart","FormalPin","FormalRocket","FormalScholar","FormalStopwatch","ordNumber","i","id","getLayout","formatDate","nextDate","weeks","FormExitDialog","FormSubmitDialog","organization","PathwayButton","withHeight","_a","_b"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../node_modules/style-inject/dist/style-inject.es.js","../src/utils/classname/classname.ts","../src/components/Icon/v0/data/icons.ts","../src/components/Icon/v0/Icon.tsx","../src/components/Logo/Logo.tsx","../src/components/Button/Button.tsx","../src/components/Loader/Loader.tsx","../src/components/Modal/Modal.tsx","../src/components/Activity/ActivityCard/ActivityCard.tsx","../src/components/Activity/ActivityItem/ActivityItem.tsx","../src/components/Activity/TagFilter/TagFilter.tsx","../src/components/Activity/Gallery/Gallery.tsx","../src/utils/search.ts","../src/components/Activity/ActivityList/ActivityList.tsx","../src/components/Activity/ActivityReflection/ActivityReflection.tsx","../assets/14-point-star.svg","../assets/award-ribbon.svg","../assets/up-down-arrow.svg","../assets/check-circle.svg","../assets/check-circle-dark.svg","../assets/circle.svg","../assets/lock.svg","../assets/progress.svg","../assets/party-popper.svg","../assets/plus-circle.svg","../assets/x-circle.svg","../assets/x-square.svg","../assets/pen-paper.svg","../assets/caret-left.svg","../assets/formal-backpack.svg","../assets/formal-ballot-box.svg","../assets/formal-bar-graph.svg","../assets/formal-bolt.svg","../assets/formal-briefcase.svg","../assets/formal-bullseye.svg","../assets/formal-burger.svg","../assets/formal-camera-lens.svg","../assets/formal-design-bulb.svg","../assets/formal-double-pan-balance.svg","../assets/formal-easel.svg","../assets/formal-eye.svg","../assets/formal-gavel.svg","../assets/formal-group.svg","../assets/formal-handshake.svg","../assets/formal-heart.svg","../assets/formal-magnifying-glass.svg","../assets/formal-medicine.svg","../assets/formal-microphone.svg","../assets/formal-molecule.svg","../assets/formal-moneybag.svg","../assets/formal-mortarboard.svg","../assets/formal-parthenon.svg","../assets/formal-pencil.svg","../assets/formal-pie-chart.svg","../assets/formal-pin.svg","../assets/formal-rocket.svg","../assets/formal-scholar.svg","../assets/formal-stopwatch.svg","../src/components/Icon/icons.tsx","../src/components/Icon/Icon.tsx","../src/components/Progress/Progress.tsx","../src/features/badges/BadgeEmblem/BadgeEmblem.tsx","../src/utils/date.ts","../src/features/badges/BadgeButton/BadgeButton.tsx","../src/components/Card/Card.tsx","../src/features/badges/BadgeCard/BadgeCard.tsx","../src/components/Overlay/Overlay.tsx","../src/features/badges/Badge/Badge.tsx","../src/features/badges/BadgeActivity/BadgeActivity.tsx","../src/features/badges/BadgeActivityMenu/BadgeActivityMenu.tsx","../src/components/Widget/WidgetBody/WidgetBody.tsx","../src/components/Widget/WidgetHeader/WidgetHeader.tsx","../src/components/Widget/WidgetHeaderLink/WidgetHeaderLink.tsx","../src/components/Widget/WidgetTitle/WidgetTitle.tsx","../src/components/Widget/Widget.tsx","../src/features/badges/BadgeSection/BadgeSection.tsx","../src/features/badges/BadgeSuccessDialog/BadgeSuccessDialog.tsx","../src/components/Board/Tab/Tab.tsx","../src/components/Board/Board.tsx","../src/components/Calendar/DateSelection/DateSelection.tsx","../src/utils/colors.ts","../src/components/Calendar/EventItem/EventItem.tsx","../src/components/Calendar/EventList/EventList.tsx","../src/components/Home/Home.tsx","../src/features/learning-forms/FormExitDialog/FormExitDialog.tsx","../src/utils/url.tsx","../src/features/learning-forms/FormItem/FormItem.tsx","../src/features/learning-forms/FormSubmitDialog/FormSubmitDialog.tsx","../src/features/learning-forms/LearningForm/LearningForm.tsx","../src/components/NavBar/NavLink/NavLink.tsx","../src/components/NavBar/NavBar.tsx","../src/components/NotFound/NotFound.tsx","../src/components/Search/SearchButton/SearchButton.tsx","../src/components/Search/SearchResult/SearchResult.tsx","../src/components/Search/Search.tsx","../src/components/Onboarding/LegalAgreement/LegalAgreement.tsx","../src/components/Onboarding/CommunitySearch/CommunitySearch.tsx","../src/components/Onboarding/Registration/Registration.tsx","../src/components/Onboarding/Welcome/Welcome.tsx","../src/components/Onboarding/Onboarding.tsx","../src/components/Pathway/PathwayButton/PathwayButton.tsx","../src/components/Pathway/PathwayFilter/PathwayFilter.tsx","../src/utils/numbers.ts","../src/components/Pathway/PathwayProgress/PathwayProgress.tsx","../src/components/Pathway/PathwayWidget/PathwayWidget.tsx","../src/components/Profile/AboutWidget/AboutWidget.tsx","../src/components/Profile/AchievementWidget/AchievementWidget.tsx","../src/components/Profile/SettingsCard/SettingsCard.tsx","../src/components/Profile/ImpactWidget/ImpactWidget.tsx","../src/components/Profile/ProfileWidget/ProfileWidget.tsx","../src/features/service-tracking/FormInput/FormInput.tsx","../src/features/service-tracking/FormExitDialog/FormExitDialog.tsx","../src/features/service-tracking/FormSubmitDialog/FormSubmitDialog.tsx","../src/features/service-tracking/Form/Form.tsx","../src/features/service-tracking/LogServiceButton/LogServiceButton.tsx","../src/components/Stopwatch/Stopwatch.tsx","../src/components/Task/TaskItem/TaskItem.tsx","../src/components/Task/TaskList/TaskList.tsx","../src/features/pathways/PathwayProgressBarChart/PathwayProgressBarChart.tsx","../src/features/pathways/PathwayCard/PathwayCard.tsx","../src/features/pathways/Pathway/Pathway.tsx","../src/features/pathways/PathwayButton/PathwayButton.tsx","../src/features/pathways/PathwaySection/PathwaySection.tsx","../src/layouts/AuthLayout/AuthLayout.tsx","../src/layouts/HomeLayout/HomeLayout.tsx"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","/**\n * A utility to build builders conditionally.\n * @param base\n * @param precondition\n */\nexport const builder = (base: string = \"\", precondition?: boolean) => {\n const append = (prefix: string, ...suffix: string[]) => {\n return [prefix, ...suffix]\n .map((s) => s.trim())\n .filter((s) => s)\n .join(\" \");\n };\n\n return {\n append: (...suffix: string[]) => {\n return builder(append(base, ...suffix));\n },\n if: (condition: boolean, ...suffix: string[]) => {\n if (condition) {\n return builder(append(base, ...suffix), condition);\n }\n return builder(base, precondition);\n },\n else: (...suffix: string[]) => {\n if (!precondition) {\n return builder(append(base, ...suffix));\n }\n return builder(base);\n },\n build: () => base,\n };\n};\n\n/**\n * A utility to recursively parse a configuration of classes and build a class name.\n * @param config\n */\nexport const classname = (config: any) => {\n const classes = flatten(config);\n return classes\n .map((name) => name.trim())\n .filter((name) => name)\n .join(\" \");\n};\n\n/**\n * A utility to flatten a config of classnames\n * @param config\n * @param values\n */\nconst flatten = (config?: any, values: string[] = []) => {\n Object.keys(config).map((k) => {\n if (typeof config[k] === \"string\") {\n values.push(config[k]);\n } else {\n flatten(config[k], values);\n }\n });\n return values;\n};\n","/**\n * List of icons available\n */\nexport const icons = [\n \"default\",\n \"calendar\",\n \"positive\",\n \"negative\",\n \"circle\",\n \"college & career\",\n \"arts & culture\",\n \"explore\",\n \"goal\",\n \"help\",\n \"leftArrow\",\n \"rightArrow\",\n \"policy & government\",\n \"recreation\",\n \"send\",\n \"shield\",\n \"profile\",\n \"volunteer\",\n \"clock\",\n \"sponsored\",\n \"globe\",\n \"pin\",\n \"milestone\",\n \"citizen\",\n \"cohort\",\n \"builder\",\n \"advocate\",\n \"leader\",\n \"representative\",\n \"bolt\",\n \"accept\",\n \"close\",\n \"menu-close\",\n \"pathway\",\n \"edit\",\n \"settings\",\n \"objective\",\n \"achievements\",\n \"badges\",\n \"milestones\",\n \"activity\",\n \"reflection\",\n \"registrations\",\n \"lock\",\n \"unlock\",\n \"badge\",\n \"waypoint\",\n \"apple\",\n \"guest speaker\",\n \"search\",\n \"menu\",\n \"todo\",\n \"done\",\n \"review\",\n \"contingent\",\n \"unqualified\",\n \"materials\",\n \"asynchronous\",\n \"synchronous\",\n \"export\",\n \"service-tracking\",\n] as const;\n\n/**\n * The icon.\n */\ninterface Icon {\n viewBox: string;\n contents: {\n d?: string;\n fill?: string;\n stroke?: string;\n strokeWidth?: string;\n strokeLinecap?: string;\n strokeLinejoin?: string;\n strokeMiterlimit?: string;\n cx?: string;\n cy?: string;\n r?: string;\n }[];\n}\n\n/**\n * Sprite for icons.\n */\nexport const sprite: {\n [key in typeof icons[number]]: Icon;\n} = {\n default: {\n viewBox: \"0 0 111.577 111.577\",\n contents: [\n {\n d: `M78.962,99.536l-1.559,6.373c-4.677,1.846-8.413,3.251-11.195,4.217c-2.785,0.969-6.021,1.451-9.708,1.451\n\t\tc-5.662,0-10.066-1.387-13.207-4.142c-3.141-2.766-4.712-6.271-4.712-10.523c0-1.646,0.114-3.339,0.351-5.064\n\t\tc0.239-1.727,0.619-3.672,1.139-5.846l5.845-20.688c0.52-1.981,0.962-3.858,1.316-5.633c0.359-1.764,0.532-3.387,0.532-4.848\n\t\tc0-2.642-0.547-4.49-1.636-5.529c-1.089-1.036-3.167-1.562-6.252-1.562c-1.511,0-3.064,0.242-4.647,0.71\n\t\tc-1.59,0.47-2.949,0.924-4.09,1.346l1.563-6.378c3.829-1.559,7.489-2.894,10.99-4.002c3.501-1.111,6.809-1.667,9.938-1.667\n\t\tc5.623,0,9.962,1.359,13.009,4.077c3.047,2.72,4.57,6.246,4.57,10.591c0,0.899-0.1,2.483-0.315,4.747\n\t\tc-0.21,2.269-0.601,4.348-1.171,6.239l-5.82,20.605c-0.477,1.655-0.906,3.547-1.279,5.676c-0.385,2.115-0.569,3.731-0.569,4.815\n\t\tc0,2.736,0.61,4.604,1.833,5.597c1.232,0.993,3.354,1.487,6.368,1.487c1.415,0,3.025-0.251,4.814-0.744\n\t\tC76.854,100.348,78.155,99.915,78.962,99.536z M80.438,13.03c0,3.59-1.353,6.656-4.072,9.177c-2.712,2.53-5.98,3.796-9.803,3.796\n\t\tc-3.835,0-7.111-1.266-9.854-3.796c-2.738-2.522-4.11-5.587-4.11-9.177c0-3.583,1.372-6.654,4.11-9.207\n\t\tC59.447,1.274,62.729,0,66.563,0c3.822,0,7.091,1.277,9.803,3.823C79.087,6.376,80.438,9.448,80.438,13.03z`,\n },\n ],\n },\n profile: {\n viewBox: \"0 0 24 24\",\n contents: [\n {\n d: \"M12 6C11.2583 6 10.5333 6.21993 9.91661 6.63199C9.29993 7.04404 8.81928 7.62971 8.53545 8.31494C8.25162 9.00016 8.17736 9.75416 8.32206 10.4816C8.46675 11.209 8.8239 11.8772 9.34835 12.4017C9.8728 12.9261 10.541 13.2833 11.2684 13.4279C11.9958 13.5726 12.7498 13.4984 13.4351 13.2145C14.1203 12.9307 14.706 12.4501 15.118 11.8334C15.5301 11.2167 15.75 10.4917 15.75 9.75C15.75 8.75544 15.3549 7.80161 14.6517 7.09835C13.9484 6.39509 12.9946 6 12 6ZM12 12C11.555 12 11.12 11.868 10.75 11.6208C10.38 11.3736 10.0916 11.0222 9.92127 10.611C9.75098 10.1999 9.70642 9.7475 9.79323 9.31105C9.88005 8.87459 10.0943 8.47368 10.409 8.15901C10.7237 7.84434 11.1246 7.63005 11.561 7.54323C11.9975 7.45642 12.4499 7.50097 12.861 7.67127C13.2722 7.84157 13.6236 8.12996 13.8708 8.49997C14.118 8.86998 14.25 9.30499 14.25 9.75C14.2494 10.3466 14.0122 10.9185 13.5903 11.3403C13.1685 11.7622 12.5966 11.9994 12 12Z\",\n stroke: \"none\",\n },\n {\n d: \"M12 1.5C9.9233 1.5 7.89323 2.11581 6.16652 3.26957C4.4398 4.42332 3.09399 6.0632 2.29927 7.98182C1.50455 9.90045 1.29661 12.0116 1.70176 14.0484C2.1069 16.0852 3.10693 17.9562 4.57538 19.4246C6.04383 20.8931 7.91476 21.8931 9.95156 22.2982C11.9884 22.7034 14.0996 22.4955 16.0182 21.7007C17.9368 20.906 19.5767 19.5602 20.7304 17.8335C21.8842 16.1068 22.5 14.0767 22.5 12C22.4968 9.2162 21.3896 6.54733 19.4211 4.57889C17.4527 2.61044 14.7838 1.50318 12 1.5ZM7.5 19.7828V18.75C7.5006 18.1534 7.73784 17.5815 8.15967 17.1597C8.5815 16.7378 9.15345 16.5006 9.75 16.5H14.25C14.8466 16.5006 15.4185 16.7378 15.8403 17.1597C16.2622 17.5815 16.4994 18.1534 16.5 18.75V19.7828C15.1344 20.5802 13.5814 21.0004 12 21.0004C10.4186 21.0004 8.86563 20.5802 7.5 19.7828ZM17.994 18.6945C17.9791 17.7107 17.5782 16.7722 16.8779 16.0812C16.1776 15.3901 15.2339 15.0019 14.25 15H9.75C8.76614 15.0019 7.82238 15.3901 7.12207 16.0812C6.42176 16.7722 6.02095 17.7107 6.006 18.6945C4.64593 17.4801 3.6868 15.8812 3.25563 14.1095C2.82446 12.3378 2.94158 10.477 3.59148 8.77339C4.24139 7.06978 5.39342 5.60375 6.89503 4.56942C8.39665 3.5351 10.177 2.98127 12.0004 2.98127C13.8237 2.98127 15.6041 3.5351 17.1057 4.56942C18.6073 5.60375 19.7594 7.06978 20.4093 8.77339C21.0592 10.477 21.1763 12.3378 20.7451 14.1095C20.314 15.8812 19.3541 17.4801 17.994 18.6945Z\",\n stroke: \"none\",\n },\n ],\n },\n shield: {\n viewBox: \"0 0 32 32\",\n contents: [\n {\n d: \"M29.9786 4.99963C29.9765 4.88196 29.948 4.766 29.8952 4.65919C29.8423 4.55239 29.7661 4.45711 29.6716 4.37947C29.5726 4.30274 29.4575 4.24624 29.3338 4.21361C29.2101 4.18097 29.0804 4.17292 28.9532 4.18997C28.8795 4.18997 21.4563 5.15468 16.2311 0.245016C16.0562 0.0878015 15.8229 0 15.5803 0C15.3377 0 15.1044 0.0878015 14.9295 0.245016C9.70434 5.15468 2.2811 4.20146 2.20742 4.18997C2.08061 4.17352 1.95155 4.18133 1.82807 4.21291C1.70458 4.2445 1.58924 4.29921 1.48904 4.37372C1.38926 4.45032 1.30769 4.54556 1.24953 4.65334C1.19138 4.76112 1.15794 4.87907 1.15134 4.99963C0.819781 11.2071 0.752241 19.9296 4.01257 24.1272C7.37114 28.4339 14.0269 31.5922 15.1259 31.9367C15.4221 32.0211 15.7385 32.0211 16.0347 31.9367C17.1337 31.6152 23.7895 28.4339 27.148 24.1272C30.3777 19.9411 30.2856 11.2071 29.9786 4.99963ZM25.6253 23.1108C22.8132 26.7227 16.925 29.7776 15.5496 30.26C14.1742 29.8006 8.286 26.7285 5.47389 23.1108C2.66178 19.4932 2.65564 11.8387 2.91352 5.98157C5.20373 6.09641 10.8955 5.93563 15.5496 2.04235C20.1853 5.93563 25.8955 6.09641 28.1857 5.98157C28.4436 11.8387 28.4006 19.5506 25.6253 23.1108Z\",\n },\n {\n d: \"M11 15.5L14.75 19L21 12\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n },\n ],\n },\n \"policy & government\": {\n viewBox: \"0 0 36 36\",\n contents: [\n {\n d: \"M6 18.5156V27.8059\",\n fill: \"none\",\n strokeWidth: \"2.5\",\n strokeLinecap: \"round\",\n strokeMiterlimit: \"10\",\n },\n {\n d: \"M13.668 18.5156V27.8059\",\n fill: \"none\",\n strokeWidth: \"2.5\",\n strokeLinecap: \"round\",\n strokeMiterlimit: \"10\",\n },\n {\n d: \"M21.332 18.5156V27.8059\",\n fill: \"none\",\n strokeWidth: \"2.5\",\n strokeLinecap: \"round\",\n strokeMiterlimit: \"10\",\n },\n {\n d: \"M29 18.5156V27.8059\",\n fill: \"none\",\n strokeWidth: \"2.5\",\n strokeLinecap: \"round\",\n strokeMiterlimit: \"10\",\n },\n {\n d: \"M34 34L2.00047 34\",\n fill: \"none\",\n strokeWidth: \"2.5\",\n strokeLinecap: \"round\",\n strokeMiterlimit: \"10\",\n },\n {\n d: \"M33.6863 13.3548H2.3137C2.21626 13.3548 2.17636 13.2297 2.25582 13.1733L17.9421 2.04107C17.9768 2.01647 18.0232 2.01647 18.0579 2.04107L33.7442 13.1733C33.8236 13.2297 33.7837 13.3548 33.6863 13.3548Z\",\n fill: \"none\",\n strokeWidth: \"2.5\",\n strokeLinecap: \"round\",\n strokeMiterlimit: \"10\",\n },\n ],\n },\n recreation: {\n viewBox: \"0 0 36 36\",\n contents: [\n {\n d: \"M2 14.9121L21.4286 33.9998\",\n strokeWidth: \"2.5\",\n strokeMiterlimit: \"10\",\n strokeLinecap: \"round\",\n fill: \"none\",\n },\n {\n d: \"M2 14.9132L10.5714 6.49219L21.4286 17.1589L12.8571 25.5799\",\n strokeWidth: \"2.5\",\n fill: \"none\",\n },\n {\n d: \"M14.5703 10.4211L23.1417 2L33.9989 12.6667L23.1417 23.3333L19.1417 19.4035\",\n strokeWidth: \"2.5\",\n fill: \"none\",\n },\n ],\n },\n \"college & career\": {\n viewBox: \"0 0 34 34\",\n contents: [\n {\n d: \"M32.6335 10.0283L17.3608 1.09811C17.1371 0.967297 16.8629 0.967297 16.6392 1.09811L1.36648 10.0283C1.13991 10.1606 1 10.4077 1 10.6744C1 10.9411 1.13991 11.1882 1.36648 11.3205L5.36364 13.6577L5.36364 21.8372C5.36364 22.0988 5.49751 22.3408 5.71662 22.4753L16.6257 29.173C16.7411 29.2435 16.8704 29.2791 17 29.2791C17.1296 29.2791 17.2589 29.2435 17.3743 29.173L28.2834 22.4753C28.5021 22.3408 28.6364 22.0988 28.6364 21.8372L28.6364 13.6577L31.5455 11.9567L31.5455 33L33 33L33 10.6744C33 10.4077 32.8601 10.1606 32.6335 10.0283ZM27.1818 21.4157L17 27.6672L6.81818 21.4157L6.81818 14.5082L16.6392 20.2507C16.7511 20.3161 16.8754 20.3488 17 20.3488C17.1246 20.3488 17.2489 20.3161 17.3608 20.2507L27.1818 14.5082L27.1818 21.4157ZM17 18.7478L3.19318 10.6744L17 2.60102L30.8068 10.6744L17 18.7478Z\",\n strokeWidth: \"0.5\",\n },\n ],\n },\n\n volunteer: {\n viewBox: \"0 0 22 22\",\n contents: [\n {\n d: \"M6.19813 0.900057C4.83194 0.900115 3.47628 1.50443 2.44584 2.71071C0.38909 5.11832 0.383099 8.97775 2.43762 11.3874L10.5387 20.8906C10.5387 20.8906 10.5387 20.8907 10.5388 20.8907C10.7749 21.1698 11.2203 21.1698 11.4563 20.8906L11.3801 20.8262L11.456 20.891C12.8073 19.3092 14.157 17.7265 15.5067 16.1438L15.5125 16.137C16.8603 14.5565 18.2081 12.9761 19.5574 11.3966C21.6142 8.98886 21.6142 5.12767 19.5574 2.71991C17.4927 0.302892 14.1091 0.302772 12.0443 2.71972C12.0443 2.71978 12.0442 2.71984 12.0442 2.71991L11.0019 3.92862L9.95924 2.71085C9.95922 2.71082 9.9592 2.7108 9.95917 2.71077C8.84792 1.40498 7.46716 0.893771 6.19813 0.900057ZM6.19813 0.900057C6.19819 0.900057 6.19826 0.900057 6.19832 0.900057H6.19837V1.00001L6.19832 0.989539L6.19787 0.900058C6.19796 0.900058 6.19804 0.900058 6.19813 0.900057ZM3.35459 3.65941L3.35459 3.65941C4.15471 2.72275 5.17755 2.25926 6.19832 2.25926C7.21932 2.25926 8.25031 2.72294 9.0503 3.65941L10.5469 5.41624C10.5469 5.41628 10.5469 5.41632 10.547 5.41636C10.7831 5.69538 11.2284 5.69536 11.4645 5.41629C11.4645 5.41627 11.4645 5.41625 11.4645 5.41624L12.9528 3.66861C13.7529 2.73201 14.7791 2.26823 15.8007 2.26823C16.8223 2.26824 17.8485 2.73203 18.6486 3.66861C20.2515 5.54509 20.2515 8.58064 18.6486 10.4571C17.3681 11.956 16.0881 13.4552 14.8081 14.9543C13.5394 16.4401 12.2707 17.926 11.0016 19.4117L3.35465 10.448C3.35464 10.448 3.35464 10.448 3.35463 10.448C1.75266 8.56906 1.75167 5.53579 3.35459 3.65941Z\",\n strokeWidth: \"0.2\",\n },\n ],\n },\n positive: {\n viewBox: \"0 0 36 36\",\n contents: [\n {\n d: \"M11.5996 18.8L16.3996 23.6L24.3996 14\",\n strokeWidth: \"3\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n fill: \"none\",\n },\n {\n d: \"M18 34C26.8366 34 34 26.8366 34 18C34 9.16344 26.8366 2 18 2C9.16344 2 2 9.16344 2 18C2 26.8366 9.16344 34 18 34Z\",\n strokeWidth: \"3\",\n fill: \"none\",\n },\n ],\n },\n negative: {\n viewBox: \"0 0 512 512\",\n contents: [\n {\n d: \"M256,0C114.508,0,0,114.497,0,256c0,141.493,114.497,256,256,256c141.492,0,256-114.497,256-256C512,114.507,397.503,0,256,0z M256,472c-119.384,0-216-96.607-216-216c0-119.385,96.607-216,216-216c119.384,0,216,96.607,216,216C472,375.385,375.393,472,256,472z\",\n },\n {\n d: \"M343.586,315.302L284.284,256l59.302-59.302c7.81-7.81,7.811-20.473,0.001-28.284c-7.812-7.811-20.475-7.81-28.284,0L256,227.716l-59.303-59.302c-7.809-7.811-20.474-7.811-28.284,0c-7.81,7.811-7.81,20.474,0.001,28.284L227.716,256l-59.302,59.302c-7.811,7.811-7.812,20.474-0.001,28.284c7.813,7.812,20.476,7.809,28.284,0L256,284.284l59.303,59.302c7.808,7.81,20.473,7.811,28.284,0C351.398,335.775,351.397,323.112,343.586,315.302z\",\n },\n ],\n },\n close: {\n viewBox: \"0 0 33 32\",\n contents: [\n {\n d: \"M24.6974 7.61314C24.5726 7.48954 24.4243 7.39148 24.261 7.32457C24.0978 7.25766 23.9228 7.22322 23.746 7.22322C23.5693 7.22322 23.3942 7.25766 23.231 7.32457C23.0677 7.39148 22.9194 7.48954 22.7946 7.61314L16.1952 14.1198L9.59582 7.59981C9.47087 7.47637 9.32254 7.37845 9.15929 7.31164C8.99604 7.24483 8.82107 7.21045 8.64437 7.21045C8.46767 7.21045 8.2927 7.24483 8.12945 7.31164C7.96621 7.37845 7.81787 7.47637 7.69293 7.59981C7.56798 7.72325 7.46887 7.8698 7.40125 8.03109C7.33363 8.19237 7.29883 8.36524 7.29883 8.53981C7.29883 8.71438 7.33363 8.88725 7.40125 9.04853C7.46887 9.20982 7.56798 9.35637 7.69293 9.47981L14.2923 15.9998L7.69293 22.5198C7.56798 22.6433 7.46887 22.7898 7.40125 22.9511C7.33363 23.1124 7.29883 23.2852 7.29883 23.4598C7.29883 23.6344 7.33363 23.8072 7.40125 23.9685C7.46887 24.1298 7.56798 24.2764 7.69293 24.3998C7.81787 24.5233 7.96621 24.6212 8.12945 24.688C8.2927 24.7548 8.46767 24.7892 8.64437 24.7892C8.82107 24.7892 8.99604 24.7548 9.15929 24.688C9.32254 24.6212 9.47087 24.5233 9.59582 24.3998L16.1952 17.8798L22.7946 24.3998C22.9195 24.5233 23.0678 24.6212 23.2311 24.688C23.3943 24.7548 23.5693 24.7892 23.746 24.7892C23.9227 24.7892 24.0977 24.7548 24.2609 24.688C24.4242 24.6212 24.5725 24.5233 24.6974 24.3998C24.8224 24.2764 24.9215 24.1298 24.9891 23.9685C25.0567 23.8072 25.0916 23.6344 25.0916 23.4598C25.0916 23.2852 25.0567 23.1124 24.9891 22.9511C24.9215 22.7898 24.8224 22.6433 24.6974 22.5198L18.0981 15.9998L24.6974 9.47981C25.2103 8.97314 25.2103 8.11981 24.6974 7.61314Z\",\n stroke: \"none\",\n },\n {\n d: \"M0 0V-1H-1V0H0ZM32.3896 0H33.3896V-1H32.3896V0ZM32.3896 32V33H33.3896V32H32.3896ZM0 32H-1V33H0V32ZM0 1H32.3896V-1H0V1ZM31.3896 0V32H33.3896V0H31.3896ZM32.3896 31H0V33H32.3896V31ZM1 32V0H-1V32H1Z\",\n stroke: \"none\",\n },\n ],\n },\n \"menu-close\": {\n viewBox: \"0 0 50 50\",\n contents: [\n {\n d: \"M 9.15625 6.3125 L 6.3125 9.15625 L 22.15625 25 L 6.21875 40.96875 L 9.03125 43.78125 L 25 27.84375 L 40.9375 43.78125 L 43.78125 40.9375 L 27.84375 25 L 43.6875 9.15625 L 40.84375 6.3125 L 25 22.15625 Z\",\n stroke: \"none\",\n },\n ],\n },\n \"arts & culture\": {\n viewBox: \"0 0 32 32\",\n contents: [\n {\n d: \"M26.9097 1H5.09031C3.93586 1 3 1.85181 3 2.90258V22.7624C3 23.8131 3.93586 24.6649 5.09031 24.6649H26.9097C28.0641 24.6649 29 23.8131 29 22.7624V2.90258C29 1.85181 28.0641 1 26.9097 1Z\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeMiterlimit: \"10\",\n strokeLinecap: \"round\",\n },\n {\n d: \"M9.10938 24.6641V30.0764\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeMiterlimit: \"10\",\n strokeLinecap: \"round\",\n },\n {\n d: \"M22.8906 24.6641V30.0764\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeMiterlimit: \"10\",\n strokeLinecap: \"round\",\n },\n ],\n },\n circle: {\n viewBox: \"0 0 26 26\",\n contents: [{ cx: \"12.5\", cy: \"12.5\", r: \"12.5\", stroke: \"none\" }],\n },\n explore: {\n viewBox: \"0 0 32 32\",\n contents: [\n {\n d: \"M15.9993 14.5327C15.186 14.5327 14.5327 15.186 14.5327 15.9993C14.5327 16.8127 15.186 17.466 15.9993 17.466C16.8127 17.466 17.466 16.8127 17.466 15.9993C17.466 15.186 16.8127 14.5327 15.9993 14.5327ZM15.9993 2.66602C8.63935 2.66602 2.66602 8.63935 2.66602 15.9993C2.66602 23.3593 8.63935 29.3327 15.9993 29.3327C23.3593 29.3327 29.3327 23.3593 29.3327 15.9993C29.3327 8.63935 23.3593 2.66602 15.9993 2.66602ZM18.9193 18.9193L7.99935 23.9993L13.0793 13.0793L23.9993 7.99935L18.9193 18.9193Z\",\n fill: \"none\",\n strokeWidth: \"2\",\n },\n ],\n },\n leftArrow: {\n viewBox: \"0 0 21 36\",\n contents: [\n {\n d: \"M1.40634 20.3075L1.40788 20.3091L14.8217 34.4729L14.8219 34.4731C15.4274 35.1117 16.2598 35.4817 17.1365 35.4993C18.0132 35.517 18.8595 35.1808 19.4897 34.5669C20.1197 33.9532 20.4821 33.1124 20.4994 32.2299C20.5166 31.3475 20.1875 30.4929 19.5823 29.8546L8.36283 18L19.5823 6.14545C19.5823 6.14542 19.5823 6.1454 19.5823 6.14538C20.1875 5.507 20.5166 4.65248 20.4994 3.77006C20.4821 2.88759 20.1197 2.0468 19.4897 1.43312C18.8595 0.819209 18.0132 0.483008 17.1365 0.500661C16.2598 0.518314 15.4274 0.888294 14.8219 1.52691L14.8217 1.52711L1.40788 15.6909L1.4065 15.6924C1.10192 16.0166 0.865215 16.3992 0.710099 16.8174C0.55523 17.2348 0.48475 17.6793 0.502746 18.1246C0.529843 18.9387 0.850751 19.7155 1.40634 20.3075Z\",\n },\n ],\n },\n rightArrow: {\n viewBox: \"0 0 21 36\",\n contents: [\n {\n d: \"M19.5937 15.6925L19.5921 15.6909L6.17829 1.52711L6.1781 1.52691C5.57264 0.888298 4.74023 0.51831 3.86354 0.50066C2.98683 0.483005 2.14046 0.81921 1.51028 1.43312C0.880334 2.04681 0.51794 2.88758 0.500647 3.77006C0.483355 4.65251 0.812493 5.50706 1.41774 6.14545L12.6372 18L1.41774 29.8546C1.41772 29.8546 1.41769 29.8546 1.41767 29.8546C0.81247 30.493 0.483356 31.3475 0.500648 32.2299C0.517941 33.1124 0.880335 33.9532 1.51028 34.5669C2.14046 35.1808 2.98683 35.517 3.86354 35.4993C4.74023 35.4817 5.57264 35.1117 6.1781 34.4731L6.17829 34.4729L19.5921 20.3091L19.5935 20.3076C19.8981 19.9834 20.1348 19.6008 20.2899 19.1826C20.4448 18.7652 20.5152 18.3207 20.4973 17.8754C20.4702 17.0613 20.1492 16.2845 19.5937 15.6925Z\",\n },\n ],\n },\n calendar: {\n viewBox: \"0 0 32 32\",\n contents: [\n {\n d: \"M25.3333 5.33398H6.66667C5.19391 5.33398 4 6.52789 4 8.00065V26.6673C4 28.1401 5.19391 29.334 6.66667 29.334H25.3333C26.8061 29.334 28 28.1401 28 26.6673V8.00065C28 6.52789 26.8061 5.33398 25.3333 5.33398Z\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n },\n {\n d: \"M21.334 2.66602V7.99935\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n },\n {\n d: \"M10.666 2.66602V7.99935\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n },\n {\n d: \"M4 13.334H28\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n },\n ],\n },\n goal: {\n viewBox: \"0 0 32 32\",\n contents: [\n {\n d: \"M15.9993 23.026L24.2393 27.9993L22.0527 18.626L29.3327 12.3193L19.746 11.506L15.9993 2.66602L12.2527 11.506L2.66602 12.3193L9.94602 18.626L7.75935 27.9993L15.9993 23.026Z\",\n strokeWidth: \"2\",\n fill: \"none\",\n },\n ],\n },\n\n help: {\n viewBox: \"2 -4 50 50\",\n contents: [\n {\n d: \"M27.0847 9.80713C23.6286 9.80713 20.7773 12.615 20.7773 16.1145C20.7773 17.0218 21.5117 17.7128 22.3757 17.7128C23.2396 17.7128 23.974 16.9784 23.974 16.1145C23.974 14.4297 25.3565 13.0471 27.0413 13.0471C28.8126 13.0471 30.1087 14.2998 30.1087 15.9846V16.1142C30.1087 17.0646 29.8495 19.311 26.7822 19.7863C26.0048 19.9159 25.3997 20.5638 25.3997 21.3846V25.7478C25.3997 26.6551 26.134 27.3461 26.998 27.3461C27.8619 27.3461 28.5963 26.6117 28.5963 25.7478V22.6804C32.6572 21.4278 33.305 17.9282 33.305 15.9843C33.3918 12.5286 30.5409 9.80718 27.0848 9.80718L27.0847 9.80713Z\",\n stroke: \"none\",\n },\n {\n d: \"M27.0852 29.29C25.9188 29.29 25.0117 30.2404 25.0117 31.3635C25.0117 32.4866 25.9621 33.437 27.0852 33.437C28.2084 33.437 29.1588 32.4866 29.1588 31.3635C29.1588 30.2404 28.2084 29.29 27.0852 29.29Z\",\n stroke: \"none\",\n },\n {\n d: \"M27.0865 0.345703C15.4657 0.345703 6.00488 9.8065 6.00488 21.4273C6.00488 33.0481 15.4657 42.5089 27.0865 42.5089C38.7073 42.5086 48.1681 33.0481 48.1681 21.4273C48.1681 9.8065 38.7073 0.345703 27.0865 0.345703ZM27.0865 39.3121C17.2369 39.3121 9.20168 31.2769 9.20168 21.4273C9.20168 11.5777 17.2369 3.5425 27.0865 3.5425C36.9361 3.5425 44.9713 11.5777 44.9713 21.4273C44.9279 31.2769 36.9361 39.3121 27.0865 39.3121Z\",\n stroke: \"none\",\n },\n ],\n },\n send: {\n viewBox: \"0 0 64 64\",\n contents: [\n {\n d: \"M63.5773 19.8454C62.7018 17.889 60.7488 16.7874 58.6129 17.0343L4.01412 23.1978C2.56136 23.3592 1.41646 24.3754 1.08935 25.7809C0.76224 27.1865 1.34912 28.592 2.59022 29.3707C6.04413 31.5265 11.7686 33.6538 15.184 34.9264C15.7613 35.1448 16.3866 35.3728 16.8677 35.5627L20.2061 52.4482L20.2639 52.6761C20.7545 54.2146 21.986 55.3827 23.5639 55.8196C23.9968 55.943 24.4394 56 24.8723 56C26.0172 56 27.1428 55.5916 28.0376 54.8319L62.3458 25.3821C63.9525 23.9575 64.4432 21.7922 63.5773 19.8454ZM16.6272 31.1277C13.9237 30.121 9.72895 28.5635 6.59253 26.9585L58.459 21.1085L19.8117 32.4762C19.2056 32.0963 18.2146 31.726 16.6272 31.1277ZM25.3341 51.7549C25.0743 51.9828 24.7953 51.9448 24.651 51.9068C24.5163 51.8689 24.295 51.7739 24.1796 51.508L20.7257 34.0337C20.7161 33.8818 20.7064 33.7488 20.6776 33.6253L59.7963 22.1246C59.7578 22.1911 59.7097 22.2481 59.6423 22.3146L25.3341 51.7549Z\",\n stroke: \"none\",\n },\n ],\n },\n clock: {\n viewBox: \"0 0 32 32\",\n contents: [\n {\n d: \"M15.5 0C6.9404 0 0 6.9404 0 15.5C0 24.0596 6.9404 31 15.5 31C24.0596 31 31 24.0596 31 15.5C31 6.9404 24.0596 0 15.5 0ZM15.5 28.3705C8.39353 28.3705 2.62946 22.6065 2.62946 15.5C2.62946 8.39353 8.39353 2.62946 15.5 2.62946C22.6065 2.62946 28.3705 8.39353 28.3705 15.5C28.3705 22.6065 22.6065 28.3705 15.5 28.3705Z\",\n stroke: \"none\",\n },\n {\n d: \"M21.5616 19.8737L16.6279 16.3066V7.74358C16.6279 7.59135 16.5033 7.4668 16.3511 7.4668H14.6869C14.5347 7.4668 14.4102 7.59135 14.4102 7.74358V17.2719C14.4102 17.3619 14.4517 17.4449 14.5243 17.4968L20.2469 21.6693C20.3714 21.7593 20.5444 21.7316 20.6344 21.6105L21.6239 20.2612C21.7138 20.1332 21.6861 19.9602 21.5616 19.8737Z\",\n stroke: \"none\",\n },\n ],\n },\n sponsored: {\n viewBox: \"0 0 28 34\",\n contents: [\n {\n d: \"M10.6977 0.0805753L10.5835 0.161099V5.22601C10.5835 9.76147 10.5919 10.2994 10.6642 10.3723C10.7334 10.4419 10.932 10.4536 12.0485 10.4536C13.3372 10.4536 13.3529 10.4523 13.4319 10.3385C13.503 10.2364 13.5119 9.66547 13.5119 5.22679C13.5119 0.788106 13.503 0.217196 13.4319 0.115041C13.353 0.00144902 13.3361 0 12.0819 0C11.0156 0 10.7936 0.0129376 10.6977 0.0805753ZM0.0799927 0.270292C0.00847707 0.373069 0.000102752 1.1782 0.000770642 7.86466C0.00133578 13.7906 0.0150018 15.3708 0.0664807 15.4734L0.131472 15.6027L4.18428 15.616C7.90068 15.6282 8.24489 15.6221 8.33141 15.5433C8.42204 15.4606 8.42569 15.1656 8.42569 7.89193C8.42569 0.628405 8.42194 0.323129 8.33172 0.240898C8.24597 0.162755 7.885 0.155251 4.19887 0.155251H0.159934L0.0799927 0.270292ZM10.6451 12.7927C10.598 12.8401 10.5835 14.0534 10.5835 17.9382C10.5835 22.4904 10.5919 23.03 10.6642 23.1029C10.7332 23.1724 10.9278 23.1842 12.0023 23.1842H13.2597L13.3858 23.0571L13.5119 22.9301V17.9305C13.5119 14.5831 13.4944 12.8977 13.4588 12.8307C13.4082 12.7356 13.3377 12.7306 12.0562 12.7306C11.0752 12.7306 10.6899 12.7476 10.6451 12.7927ZM0.102752 18.2679C0.000924774 18.3705 0 18.4404 0 25.9413C0 32.7089 0.00847707 33.5234 0.0799927 33.6262L0.159934 33.7412H1.92661H3.69328L3.77322 33.6262C3.84473 33.5234 3.85321 32.7072 3.85321 25.9234C3.85321 18.6383 3.84946 18.3323 3.75924 18.25C3.67576 18.1739 3.47298 18.1644 1.93539 18.1644C0.273989 18.1644 0.201446 18.1685 0.102752 18.2679ZM5.88622 18.2457C5.81521 18.3173 5.8055 18.609 5.8055 20.6699C5.8055 22.874 5.81105 23.0179 5.89947 23.0985C5.98142 23.1733 6.15178 23.1842 7.23525 23.1842C8.40858 23.1842 8.48271 23.1785 8.57982 23.0807C8.67954 22.9802 8.68257 22.9082 8.68257 20.6564C8.68257 18.4739 8.67697 18.3306 8.5886 18.25C8.50655 18.1752 8.33475 18.1644 7.23083 18.1644C6.15039 18.1644 5.95527 18.1762 5.88622 18.2457ZM5.91853 24.747C5.82919 24.837 5.82919 33.5892 5.91853 33.6791C5.96297 33.7239 6.31469 33.7412 7.17725 33.7412C8.30583 33.7412 8.38017 33.7353 8.47706 33.6377C8.57817 33.5359 8.57982 33.4653 8.57982 29.1717C8.57982 25.8476 8.56512 24.7943 8.51816 24.747C8.43057 24.6588 6.00613 24.6588 5.91853 24.747ZM10.7927 25.5975C10.6872 25.7327 10.6862 25.7668 10.6862 29.6243C10.6862 33.468 10.6875 33.5161 10.791 33.628L10.8958 33.7412H19.3628C27.5004 33.7412 27.8332 33.7376 27.915 33.6466C27.9925 33.5603 28 33.206 28 29.6191V25.6862L27.8811 25.5737L27.7622 25.4612H19.3307H10.8992L10.7927 25.5975Z\",\n stroke: \"none\",\n },\n ],\n },\n globe: {\n viewBox: \"0 0 30 30\",\n contents: [\n {\n d: \"M14.0236 0.0300206C9.01069 0.345861 4.49132 3.16375 1.97367 7.54335C-0.229151 11.3753 -0.609814 16.0489 0.941365 20.2184C1.44503 21.5723 2.24758 23.0101 3.13511 24.1487C3.94703 25.1903 4.9889 26.213 6.02447 26.9851C8.14475 28.5658 10.6535 29.56 13.2736 29.8578C14.5128 29.9986 15.945 29.9748 17.2046 29.7925C22.0047 29.0978 26.2484 26.0125 28.4154 21.6422C29.2996 19.859 29.8051 17.9963 29.9436 16.0109C29.9833 15.4405 29.9611 13.9447 29.9055 13.451C29.8471 12.9322 29.7937 12.5769 29.7056 12.1202C28.9413 8.16121 26.5972 4.67404 23.2046 2.44923C20.4973 0.673743 17.2765 -0.174941 14.0236 0.0300206ZM12.3653 1.97163C11.1345 3.22719 10.1778 4.55083 9.35393 6.13831C9.12202 6.58513 8.75951 7.38138 8.60687 7.77914C8.56053 7.89994 8.517 8.00795 8.51018 8.01916C8.48643 8.05813 7.79478 7.64534 7.31263 7.30449C6.68737 6.86244 5.94352 6.19117 5.49414 5.66342L5.3098 5.44693L5.59346 5.17246C7.21045 3.60765 9.3059 2.43083 11.515 1.84687C11.8148 1.76762 12.6435 1.58473 12.7281 1.57912C12.7411 1.57827 12.5778 1.75488 12.3653 1.97163ZM17.6365 1.65576C19.751 2.07367 21.7635 3.00701 23.4429 4.34859C23.7769 4.61543 24.4108 5.17474 24.5596 5.33391L24.6215 5.40009L24.4729 5.58151C23.9374 6.23552 23.1523 6.92968 22.3253 7.48045C21.9553 7.72684 21.5162 7.98586 21.4684 7.98586C21.4538 7.98586 21.3971 7.8725 21.3425 7.73392C20.7976 6.35151 19.9965 4.9212 19.0815 3.69698C18.6084 3.06406 17.821 2.16809 17.386 1.7677C17.2723 1.66313 17.1932 1.57757 17.2101 1.57757C17.227 1.57757 17.4189 1.61276 17.6365 1.65576ZM14.2952 5.85407V9.58793L14.224 9.5878C14.0898 9.58757 13.2735 9.51028 12.9762 9.46966C12.291 9.37607 11.5293 9.21131 10.8814 9.01651C10.5648 8.92134 9.82451 8.66475 9.79674 8.64056C9.7611 8.60955 10.1881 7.60867 10.5169 6.95226C11.3942 5.2013 12.5171 3.70654 13.9072 2.43925C14.0992 2.26421 14.2651 2.1208 14.2758 2.12059C14.2864 2.12039 14.2952 3.80044 14.2952 5.85407ZM16.1028 2.49106C17.5733 3.82039 18.8806 5.63766 19.7396 7.54658C19.903 7.90976 20.1658 8.55436 20.1658 8.59188C20.1658 8.62529 19.4388 8.89281 18.9762 9.02961C18.016 9.31356 17.1184 9.47173 15.8792 9.57537L15.6917 9.59105V5.86727C15.6917 2.68587 15.697 2.14649 15.7279 2.16414C15.7477 2.1755 15.9164 2.32261 16.1028 2.49106ZM25.8595 6.82986C26.4095 7.56405 26.7992 8.20431 27.2158 9.05821C27.8149 10.2861 28.1979 11.4963 28.4141 12.8446C28.4714 13.2022 28.5385 13.8188 28.5504 14.097L28.5581 14.2779H25.6357H22.7132L22.682 13.7998C22.5922 12.427 22.407 11.2487 22.0888 10.0272C22.0093 9.72165 21.9394 9.44258 21.9337 9.40705C21.9241 9.34816 21.9502 9.32785 22.2277 9.17744C22.8605 8.83454 23.5437 8.36749 24.1785 7.84374C24.5352 7.54942 25.2381 6.86221 25.4417 6.60872C25.5057 6.52903 25.5639 6.4634 25.571 6.46291C25.5781 6.46239 25.7079 6.62753 25.8595 6.82986ZM4.89303 7.07733C5.70034 7.90521 6.72875 8.67534 7.79455 9.25012L8.05459 9.39038L8.01831 9.50852C7.9514 9.72643 7.73023 10.6311 7.6641 10.9574C7.4661 11.9343 7.30958 13.2088 7.28013 14.0841L7.27361 14.2779L4.3414 14.2844L1.40916 14.291L1.42698 14.0519C1.56009 12.2633 1.98604 10.659 2.74635 9.08294C3.15686 8.23193 3.79276 7.20908 4.26875 6.63404L4.37173 6.50965L4.48951 6.64696C4.55429 6.72249 4.7359 6.91616 4.89303 7.07733ZM20.6314 9.96025C20.6314 9.96607 20.6834 10.1725 20.747 10.4189C20.9548 11.2238 21.117 12.1193 21.2119 12.9859C21.2555 13.384 21.3035 14.0093 21.3037 14.181L21.3038 14.2908H18.4977H15.6917V12.6394V10.9879L15.918 10.971C17.5752 10.8469 18.9983 10.5527 20.2848 10.0683C20.5921 9.95258 20.6314 9.94036 20.6314 9.96025ZM10.015 10.2022C11.2733 10.6295 12.6054 10.8863 14.0044 10.9713L14.2955 10.989L14.2889 12.6334L14.2822 14.2779L11.4786 14.2844L8.675 14.291L8.69173 13.9049C8.73621 12.8782 8.91101 11.708 9.19125 10.5611C9.31363 10.0603 9.34185 9.97323 9.3778 9.98566C9.4011 9.99369 9.68783 10.0912 10.015 10.2022ZM7.29624 16.0802C7.32657 16.7572 7.43695 17.7131 7.57299 18.4768C7.67486 19.0488 7.92003 20.0973 8.05159 20.5236C8.06209 20.5576 8.02288 20.5891 7.88129 20.6603C7.36888 20.9182 6.4964 21.4887 5.95464 21.9202C5.41852 22.3472 4.93607 22.8029 4.51178 23.2831C4.42542 23.3808 4.35539 23.44 4.34434 23.4248C4.3339 23.4103 4.21659 23.2541 4.08368 23.0776C2.54773 21.0376 1.62001 18.5391 1.42793 15.9252L1.41037 15.6861H4.34447H7.27857L7.29624 16.0802ZM14.2952 17.327C14.2952 18.6223 14.2884 18.9678 14.2628 18.9679C14.178 18.9682 13.4787 19.0231 13.2607 19.0467C12.0083 19.1819 10.7163 19.4774 9.65462 19.8714C9.49909 19.9291 9.36336 19.9675 9.35302 19.9566C9.32439 19.9265 9.08369 18.9291 8.99594 18.4768C8.84651 17.7069 8.72941 16.7651 8.69305 16.0408L8.67523 15.6861H11.4852H14.2952V17.327ZM21.2932 15.9898C21.2431 16.8579 21.1323 17.7315 20.9663 18.5673C20.8722 19.0411 20.6484 19.9672 20.6214 19.9941C20.6152 20.0003 20.4839 19.9594 20.3298 19.903C19.0497 19.4352 17.7594 19.1468 16.4288 19.0312C16.1727 19.009 15.9022 18.9848 15.8275 18.9774L15.6917 18.9641V17.3251V15.6861H18.5013H21.3108L21.2932 15.9898ZM28.5563 15.8476C28.4708 16.8419 28.3733 17.464 28.1809 18.2428C27.7348 20.0489 26.8976 21.786 25.7677 23.2498C25.6666 23.3807 25.5773 23.4854 25.5692 23.4823C25.5612 23.4793 25.4681 23.3782 25.3623 23.2577C24.5698 22.3539 23.448 21.4592 22.3147 20.8272C21.9538 20.6259 21.9238 20.6035 21.9341 20.544C21.9402 20.5085 22.0206 20.1829 22.1128 19.8205C22.4331 18.5613 22.6181 17.3408 22.6896 16.0156L22.7073 15.6861H25.6388H28.5702L28.5563 15.8476ZM14.2952 24.0865V27.8098L14.1723 27.7067C13.7137 27.3218 12.9819 26.5773 12.518 26.0237C11.4374 24.7344 10.4435 23.0386 9.8631 21.4939C9.78574 21.288 9.7477 21.3239 10.2219 21.156C10.8945 20.9179 11.664 20.7122 12.3555 20.5856C12.8677 20.4918 13.7674 20.3857 14.2111 20.3667L14.2952 20.3632V24.0865ZM16.4158 20.4296C17.4477 20.5275 18.5602 20.7702 19.5653 21.1169C20.0121 21.2709 20.1658 21.3352 20.1658 21.368C20.1658 21.3816 20.103 21.5481 20.0262 21.7381C19.2338 23.6974 18.1143 25.4327 16.7174 26.8668C16.3853 27.2077 15.7705 27.7809 15.7156 27.8007C15.7011 27.806 15.6917 26.352 15.6917 24.0867V20.364L15.8404 20.3765C15.9222 20.3834 16.1811 20.4073 16.4158 20.4296ZM8.64254 22.2131C9.2796 23.8037 10.1776 25.3541 11.2003 26.6293C11.5778 27.0999 11.8456 27.3992 12.3274 27.889C12.6508 28.2177 12.7881 28.3734 12.7543 28.3733C12.6613 28.3729 11.9302 28.2172 11.5279 28.1122C9.33931 27.5407 7.22543 26.3593 5.63287 24.8176L5.30952 24.5045L5.53415 24.2468C6.07754 23.6234 6.81251 22.9833 7.54516 22.4953C7.90981 22.2524 8.46458 21.917 8.50583 21.9146C8.51501 21.914 8.57654 22.0484 8.64254 22.2131ZM21.7677 22.1239C22.8027 22.725 23.8285 23.5838 24.5227 24.4302L24.6223 24.5516L24.5212 24.6561C24.3806 24.8014 23.8155 25.3066 23.5667 25.5095C21.8696 26.893 19.8215 27.859 17.6633 28.2939C17.4462 28.3377 17.2519 28.3735 17.2317 28.3735C17.2115 28.3735 17.3176 28.2543 17.4675 28.1087C18.349 27.2522 19.253 26.1128 19.9688 24.9557C20.4639 24.1553 21.0101 23.0685 21.345 22.2172C21.3995 22.0786 21.4555 21.9652 21.4693 21.9652C21.4831 21.9652 21.6174 22.0366 21.7677 22.1239Z\",\n stroke: \"none\",\n },\n ],\n },\n pin: {\n viewBox: \"0 0 24 31\",\n contents: [\n {\n d: \"M10.3075 0.162061C5.80833 0.80736 2.10848 3.89877 0.679624 8.20662C0.254302 9.48908 0.021147 11.0952 0.0900958 12.2684C0.208993 14.2924 1.47282 17.1176 3.89772 20.7801C5.47547 23.1631 8.7758 27.4399 10.9876 29.9678L11.8505 30.954L12.127 30.6403C12.5912 30.1135 14.2268 28.088 15.1993 26.8359C20.1396 20.4745 22.9963 15.7677 23.6125 12.9735C23.7715 12.2526 23.7135 10.6523 23.4893 9.5701C22.4906 4.75089 18.7396 1.0977 13.8886 0.219769C13.0763 0.0727755 11.1471 0.0416475 10.3075 0.162061ZM13.5487 1.7893C15.7884 2.17712 17.6129 3.13133 19.1948 4.74231C20.5697 6.14243 21.5597 8.00704 21.9533 9.93768C22.1167 10.7392 22.1955 11.9041 22.1189 12.3871C21.8548 14.0531 20.242 17.1044 17.6499 20.8421C16.3003 22.7881 13.7573 26.1584 12.2943 27.9399L11.8292 28.5063L11.0327 27.568C9.28557 25.5096 6.44419 21.7585 5.16028 19.8153C3.45848 17.2398 2.28133 14.9189 1.83409 13.2574C1.63004 12.4993 1.63302 10.984 1.84057 9.99085C2.60282 6.34348 5.13905 3.41386 8.57302 2.21421C9.17996 2.0022 10.1437 1.77169 10.6795 1.71033C11.3776 1.63046 12.8682 1.67145 13.5487 1.7893ZM11.1443 6.46863C9.08724 6.77178 7.37376 8.29911 6.79154 10.3486C6.58431 11.0779 6.58431 12.4265 6.79154 13.1559C7.19862 14.5887 8.08574 15.7203 9.35109 16.4208C11.3642 17.5354 13.8586 17.2197 15.5199 15.6401C17.7343 13.5346 17.7343 9.96984 15.5199 7.86434C14.3608 6.7623 12.7146 6.23722 11.1443 6.46863ZM12.8094 8.13367C13.6977 8.36271 14.4448 8.89015 14.9605 9.65247C15.8342 10.9443 15.8328 12.5624 14.9567 13.8576C14.1045 15.1173 12.6009 15.7241 11.117 15.4071C10.4379 15.262 9.82763 14.9122 9.2789 14.3536C8.54328 13.6048 8.20114 12.7789 8.20114 11.7522C8.20114 10.7255 8.54328 9.89964 9.2789 9.15084C10.2543 8.15788 11.5052 7.79747 12.8094 8.13367Z\",\n stroke: \"none\",\n },\n ],\n },\n\n milestone: {\n viewBox: \"0 0 109 109\",\n contents: [\n {\n d: \"M91.5988 0.58652C90.2385 0.736228 89.1038 2.03211 89.1332 3.40234V16.0952L84.9807 20.2539V13.1061C85.0145 11.5333 83.4709 10.118 81.9096 10.2903C80.5493 10.44 79.4146 11.7358 79.444 13.1061V25.7989L78.8384 26.4054C70.5239 19.0027 59.5874 14.4923 47.6079 14.4923C21.6491 14.4923 0.545898 35.627 0.545898 61.6247C0.545898 87.6224 21.6491 108.757 47.6079 108.757C73.5668 108.757 94.67 87.6224 94.67 61.6247C94.67 51.5869 91.5132 42.2806 86.1486 34.6362L82.2124 38.535C82.2191 38.5453 82.2056 38.5681 82.2124 38.5784C86.5848 45.1722 89.1332 53.1018 89.1332 61.6247C89.1332 84.6256 70.5745 103.212 47.6079 103.212C24.6413 103.212 6.08261 84.6256 6.08261 61.6247C6.08261 38.6237 24.6413 20.0373 47.6079 20.0373C58.0864 20.0373 67.646 23.9121 74.9454 30.3042L68.0678 37.1921C62.5332 32.535 55.385 29.741 47.6079 29.741C30.0581 29.741 15.7718 44.0486 15.7718 61.6247C15.7718 79.2007 30.0581 93.5084 47.6079 93.5084C65.1577 93.5084 79.444 79.2007 79.444 61.6247C79.444 55.8101 77.8483 50.3788 75.1185 45.6829L71.0957 49.7117C72.8992 53.2856 73.9073 57.3312 73.9073 61.6247C73.9073 76.204 62.1655 87.9634 47.6079 87.9634C33.0504 87.9634 21.3086 76.204 21.3086 61.6247C21.3086 47.0454 33.0504 35.286 47.6079 35.286C53.8857 35.286 59.6154 37.476 64.1315 41.1343L56.2158 49.0619C53.7598 47.361 50.8029 46.376 47.6079 46.376C39.2317 46.376 32.382 53.2359 32.382 61.6247C32.382 70.0135 39.2317 76.8735 47.6079 76.8735C55.9842 76.8735 62.8339 70.0135 62.8339 61.6247C62.8339 60.5095 62.6767 59.4186 62.4446 58.3757L57.0376 63.7907C56.0602 68.12 52.2429 71.3285 47.6079 71.3285C42.2239 71.3285 37.9187 67.0167 37.9187 61.6247C37.9187 56.2326 42.2239 51.921 47.6079 51.921C49.2764 51.921 50.8282 52.3591 52.193 53.0906L45.6614 59.632C44.5856 60.6073 44.4929 62.4751 45.4668 63.5525C46.4407 64.6299 48.3056 64.7228 49.3814 63.7474C49.396 63.7331 83.337 29.741 83.337 29.741H96.0541C97.5167 29.7617 98.8619 28.4334 98.8619 26.9685C98.8619 25.5037 97.5167 24.1753 96.0541 24.196H88.8737L93.0262 20.0373H105.743C107.206 20.058 108.551 18.7297 108.551 17.2648C108.551 15.7999 107.206 14.4716 105.743 14.4923H94.67V3.40234C94.7038 1.82957 93.1601 0.414268 91.5988 0.58652Z\",\n stroke: \"none\",\n },\n ],\n },\n cohort: {\n viewBox: \"0 0 14 14\",\n contents: [\n {\n d: \"M2 2C2 1.46957 2.21071 0.960859 2.58579 0.585786C2.96086 0.210714 3.46957 0 4 0C4.53043 0 5.03914 0.210714 5.41421 0.585786C5.78929 0.960859 6 1.46957 6 2C6 2.53043 5.78929 3.03914 5.41421 3.41421C5.03914 3.78929 4.53043 4 4 4C3.46957 4 2.96086 3.78929 2.58579 3.41421C2.21071 3.03914 2 2.53043 2 2Z\",\n stroke: \"none\",\n },\n {\n d: \"M8.77875 3.5845L8.82075 3.6165C9.24504 3.931 9.77651 4.06492 10.2992 3.98901C10.8218 3.9131 11.2933 3.63354 11.6106 3.21133C11.9279 2.78913 12.0653 2.25855 11.9928 1.7354C11.9204 1.21225 11.6439 0.738989 11.2238 0.41891C10.8037 0.0988305 10.2741 -0.0420853 9.75043 0.0269153C9.22681 0.0959159 8.75174 0.369231 8.4289 0.787213C8.10605 1.2052 7.96164 1.73391 8.02719 2.25797C8.09273 2.78204 8.3629 3.2589 8.77875 3.5845Z\",\n stroke: \"none\",\n },\n {\n d: \"M5.26663 4.99963C5.39223 4.76179 5.56451 4.55173 5.77317 4.38202C5.98183 4.2123 6.22258 4.08642 6.48101 4.0119C6.73945 3.93737 7.01026 3.91574 7.27725 3.9483C7.54423 3.98086 7.80191 4.06693 8.03486 4.20137C8.26782 4.33582 8.47126 4.51586 8.63302 4.73075C8.79478 4.94563 8.91154 5.19094 8.97631 5.45199C9.04107 5.71304 9.05252 5.98447 9.00997 6.25004C8.96741 6.51562 8.87172 6.76989 8.72863 6.99763C8.45334 7.43575 8.01897 7.75014 7.51677 7.87474C7.01456 7.99934 6.48361 7.92446 6.03545 7.66582C5.5873 7.40718 5.25683 6.98491 5.11346 6.48774C4.9701 5.99056 5.02499 5.45718 5.26663 4.99963Z\",\n stroke: \"none\",\n },\n {\n d: \"M1.5 5H4.17C4.06 5.313 4 5.65 4 6C4 6.768 4.289 7.47 4.764 8H4.5C3.98444 7.99993 3.48145 8.15919 3.05988 8.45598C2.63832 8.75278 2.31878 9.17261 2.145 9.658C1.80933 9.52316 1.49505 9.34025 1.212 9.115C0.46 8.51 0 7.616 0 6.5C0 6.10218 0.158035 5.72064 0.43934 5.43934C0.720644 5.15804 1.10218 5 1.5 5Z\",\n stroke: \"none\",\n },\n {\n d: \"M9.49837 8C10.5834 8 11.5074 8.691 11.8524 9.658C12.1924 9.519 12.5074 9.338 12.7864 9.115C13.5384 8.51 13.9984 7.616 13.9984 6.5C13.9984 6.10218 13.8403 5.72064 13.559 5.43934C13.2777 5.15804 12.8962 5 12.4984 5H9.82837C9.93837 5.313 9.99837 5.65 9.99837 6C9.9993 6.73812 9.72717 7.45049 9.23438 8H9.49837Z\",\n stroke: \"none\",\n },\n {\n d: \"M10.887 9.92801C10.96 10.104 11 10.298 11 10.5C11 11.616 10.541 12.51 9.78801 13.115C9.04701 13.71 8.05301 14 7.00001 14C5.94701 14 4.95301 13.71 4.21201 13.115C3.46001 12.51 3.00001 11.616 3.00001 10.5C2.99948 10.3029 3.03792 10.1076 3.11311 9.92536C3.18831 9.74313 3.29878 9.57756 3.43817 9.43817C3.57756 9.29878 3.74313 9.18831 3.92536 9.11311C4.10758 9.03792 4.30287 8.99948 4.50001 9.00001H9.50001C9.79711 8.99994 10.0875 9.0881 10.3345 9.25331C10.5814 9.41853 10.7737 9.65335 10.887 9.92801Z\",\n stroke: \"none\",\n },\n ],\n },\n citizen: {\n viewBox: \"0 0 31 54\",\n contents: [\n {\n d: \"M30.0748 49.4999L20.2948 30.4199C19.8148 33.2999 18.9148 36.0599 17.7148 38.5799L24.6748 52.2599C25.2148 53.2799 26.2348 53.8799 27.3748 53.8799C27.8548 53.8799 28.2748 53.7599 28.7548 53.5799C30.2548 52.7999 30.7948 50.9999 30.0748 49.4999Z\",\n stroke: \"none\",\n },\n {\n d: \"M14.0556 10.08C16.8391 10.08 19.0956 7.82352 19.0956 5.04C19.0956 2.25648 16.8391 0 14.0556 0C11.2721 0 9.01562 2.25648 9.01562 5.04C9.01562 7.82352 11.2721 10.08 14.0556 10.08Z\",\n stroke: \"none\",\n },\n {\n d: \"M26.1155 21.2991C20.5955 18.9591 16.9955 13.0191 16.9355 12.8991C16.0355 11.3391 13.9955 10.7991 12.4355 11.7591C12.1955 11.8791 12.0155 12.0591 11.8355 12.1791C9.79554 13.4991 4.51554 17.5791 1.81554 26.4591C1.27554 28.1391 2.23554 29.9391 3.97554 30.4791C5.65554 31.0191 7.45554 30.0591 7.99554 28.3191C9.13554 24.5391 10.8155 21.8991 12.3155 20.2191C12.6755 22.4391 12.8555 25.3791 12.3155 28.6791C10.6355 38.9991 1.09554 48.3591 0.975535 48.4791C-0.284465 49.7391 -0.344464 51.7191 0.915536 53.0391C1.57554 53.6991 2.35554 53.9991 3.19554 53.9991C3.97554 53.9991 4.81554 53.6991 5.41554 53.0991C5.89554 52.6791 16.6955 42.1191 18.5555 29.7591C18.8555 28.0191 18.9155 26.3391 18.9755 24.7791C20.3555 25.7991 21.8555 26.6991 23.5355 27.4191C23.9555 27.5991 24.3755 27.6591 24.7955 27.6591C26.0555 27.6591 27.3155 26.8791 27.8555 25.6791C28.5755 23.9391 27.7955 22.0191 26.1155 21.2991Z\",\n stroke: \"none\",\n },\n ],\n },\n builder: {\n viewBox: \"0 0 41 54\",\n contents: [\n {\n d: \"M39.9146 5.56518L38.5514 5.39479C38.3811 5.39479 38.2675 5.45159 38.1539 5.56518C38.0403 5.84917 37.6995 6.01956 37.4155 5.96276L36.7907 5.84917C36.45 5.79237 36.2228 5.56518 36.166 5.2812C36.166 5.11081 35.9956 4.99722 35.882 4.99722C35.2004 4.88362 34.6893 4.82683 33.7237 4.71323C32.7014 4.54284 30.5999 4.25886 27.3625 7.26908C26.9649 7.60986 27.3625 8.23463 27.8169 8.06424C31.1111 6.9283 32.9286 7.66666 32.7014 9.25696L32.5878 10.0521L35.3708 10.4497L35.598 8.91618C35.6548 8.5754 36.0524 8.29142 36.3932 8.34822L37.0179 8.46181C37.3587 8.51861 37.5859 8.74579 37.6427 9.02978C37.6427 9.20017 37.8131 9.31376 37.9267 9.31376L39.2898 9.48415C39.5738 9.54095 39.8578 9.31376 39.9146 9.02978L40.3121 6.18995C40.4257 5.84917 40.1985 5.56518 39.9146 5.56518Z\",\n stroke: \"none\",\n },\n {\n d: \"M15.3206 11.5865C18.5201 11.5865 21.1139 8.99278 21.1139 5.79326C21.1139 2.59373 18.5201 0 15.3206 0C12.1211 0 9.52734 2.59373 9.52734 5.79326C9.52734 8.99278 12.1211 11.5865 15.3206 11.5865Z\",\n stroke: \"none\",\n },\n {\n d: \"M34.2351 19.9361L35.2575 11.587L32.4744 11.1895L30.9977 19.5386C29.7482 19.3682 28.2147 19.0274 26.7948 18.5162C25.886 18.1754 25.0909 17.4939 24.1253 16.6987C22.1375 15.0516 19.6952 13.0637 15.3219 13.0637C5.26886 13.0637 0.668327 19.7657 0.441141 20.0497C-0.183622 20.9585 -0.126826 22.1512 0.497937 23.0599L5.04167 29.1372C5.55284 29.8187 6.34799 30.1595 7.14314 30.1595C7.65431 30.1595 8.22228 29.9891 8.67665 29.6484C8.79025 29.5348 8.96064 29.4212 9.07423 29.3076V31.2955L5.21206 50.4359C4.87128 52.0262 5.89362 53.5029 7.48392 53.8437C7.65431 53.9005 7.8815 53.9005 8.05189 53.9005C9.41501 53.9005 10.6077 52.935 10.8917 51.5719L14.6971 32.6586H15.833L16.0034 51.0039C16.0034 52.5942 17.2529 53.9005 18.9 53.8437C20.4904 53.8437 21.7967 52.5374 21.7399 50.9471L21.5695 21.2993C22.535 22.0944 23.671 22.8896 25.0341 23.4007C26.7948 24.0823 28.6691 24.4231 30.2026 24.707L29.9754 26.1838C29.9186 26.6949 30.2026 27.1493 30.7137 27.2061L32.4744 27.4333C32.9856 27.4901 33.44 27.1493 33.4968 26.6381L33.6672 24.991C34.9735 24.8774 36.0526 23.8551 36.0526 22.492C36.0526 21.2993 35.3143 20.2769 34.2351 19.9361ZM6.00721 21.6968C6.74557 21.0721 7.76791 20.2769 9.18782 19.5954L9.13102 25.8998L6.00721 21.6968Z\",\n stroke: \"none\",\n },\n ],\n },\n advocate: {\n viewBox: \"0 0 34 60\",\n contents: [\n {\n d: \"M28.7634 15.4257C27.4754 14.7438 25.9602 15.2742 25.2783 16.4864L22.3992 21.9414L15.8078 19.4412C15.429 19.2897 14.9744 19.2139 14.5198 19.2139L10.7316 19.0624C9.51938 18.9866 7.17069 19.5927 6.71611 21.9414C6.33729 23.8355 3.83708 34.5182 3.83708 34.5182C3.45826 36.1093 3.91284 37.7761 5.12507 38.9883L13.3833 47.2466C13.4591 47.3223 13.5349 47.3981 13.5349 47.4739L17.0958 57.9293C17.5504 59.1415 18.6868 59.8992 19.899 59.8992C20.2021 59.8992 20.5809 59.8234 20.884 59.7476C22.3992 59.2173 23.2327 57.5505 22.7023 55.9594L19.1414 45.6555C18.8383 44.7464 18.2322 43.8372 17.5504 43.1553L12.9288 38.5337L17.0958 25.5023L21.7174 27.2449C23.5357 27.9268 25.5813 27.1691 26.4147 25.4266L29.8241 18.9109C30.506 17.6229 30.0514 16.1076 28.7634 15.4257Z\",\n stroke: \"none\",\n },\n {\n d: \"M19.0606 12.4129C19.4054 9.25161 17.122 6.40939 13.9607 6.06467C10.7994 5.71995 7.95718 8.00326 7.61245 11.1646C7.26773 14.3259 9.55104 17.1681 12.7124 17.5128C15.8737 17.8576 18.7159 15.5743 19.0606 12.4129Z\",\n stroke: \"none\",\n },\n {\n d: \"M0.199136 55.961C-0.406976 57.4763 0.426427 59.2189 1.94171 59.7492C2.24476 59.9007 2.62358 59.9007 2.92664 59.9007C4.13886 59.9007 5.27532 59.1431 5.7299 57.9309L9.66963 47.1724L5.04803 42.5508L0.199136 55.961Z\",\n stroke: \"none\",\n },\n {\n d: \"M27.5452 0C23.9544 0 21 2.58232 21 5.7863C21 7.41221 21.7727 8.89465 22.9999 9.9467C22.909 10.664 22.4999 11.5726 22.0909 12.2421C21.8636 12.6247 22.2272 13.1507 22.6363 12.9594C23.7272 12.5768 25.2271 11.9552 25.9089 11.3335C26.4089 11.4291 26.9089 11.5248 27.4543 11.5248C31.045 11.5248 33.9995 8.94247 33.9995 5.73848C34.0449 2.58232 31.136 0 27.5452 0ZM23.9999 6.934C23.409 6.934 22.909 6.40797 22.909 5.7863C22.909 5.16464 23.409 4.63861 23.9999 4.63861C24.5908 4.63861 25.0907 5.16464 25.0907 5.7863C25.1362 6.40797 24.6362 6.934 23.9999 6.934ZM27.5452 6.934C26.9543 6.934 26.4543 6.40797 26.4543 5.7863C26.4543 5.16464 26.9543 4.63861 27.5452 4.63861C28.1361 4.63861 28.6361 5.16464 28.6361 5.7863C28.6361 6.40797 28.1361 6.934 27.5452 6.934ZM31.045 6.934C30.4542 6.934 29.9542 6.40797 29.9542 5.7863C29.9542 5.16464 30.4542 4.63861 31.045 4.63861C31.6359 4.63861 32.1359 5.16464 32.1359 5.7863C32.1359 6.40797 31.6359 6.934 31.045 6.934Z\",\n stroke: \"none\",\n },\n ],\n },\n leader: {\n viewBox: \"0 0 52 41\",\n contents: [\n {\n d: \"M48.1622 0H13.5755C11.9054 0 10.5586 1.34683 10.5586 3.0169V14.2764C11.5822 14.438 12.498 14.7074 13.36 15.1923V8.78135H48.3776V30.3307C48.3776 30.9233 47.8928 31.3543 47.3541 31.3543H20.7945C21.1716 32.2162 21.441 33.1321 21.5487 34.1018H47.3541C49.4551 34.1018 51.1791 32.3778 51.1791 30.2768V3.0169C51.1791 1.34683 49.8322 0 48.1622 0ZM15.7843 5.97993C14.9223 5.97993 14.1681 5.27958 14.1681 4.36374C14.1681 3.50176 14.8685 2.74754 15.7843 2.74754C16.6463 2.74754 17.4005 3.44789 17.4005 4.36374C17.3466 5.27958 16.6463 5.97993 15.7843 5.97993ZM20.6329 5.97993C19.7709 5.97993 19.0167 5.27958 19.0167 4.36374C19.0167 3.50176 19.7171 2.74754 20.6329 2.74754C21.5487 2.74754 22.2491 3.44789 22.2491 4.36374C22.2491 5.27958 21.5487 5.97993 20.6329 5.97993ZM25.5354 5.97993C24.6734 5.97993 23.9192 5.27958 23.9192 4.36374C23.9192 3.50176 24.6195 2.74754 25.5354 2.74754C26.3973 2.74754 27.1516 3.44789 27.1516 4.36374C27.0977 5.27958 26.3973 5.97993 25.5354 5.97993Z\",\n stroke: \"none\",\n },\n {\n d: \"M14.9229 29.1992C13.4144 30.4922 11.5289 31.2464 9.37395 31.2464C7.21902 31.2464 5.33346 30.4922 3.825 29.1992C1.67007 30.3306 0 32.27 0 35.4485V39.0042C0 39.6506 0.538733 40.1894 1.18521 40.1894H17.5627C18.2092 40.1894 18.7479 39.6506 18.7479 39.0042V35.4485C18.7479 32.27 17.0778 30.3306 14.9229 29.1992Z\",\n stroke: \"none\",\n },\n {\n d: \"M9.37545 28.3915C12.4996 28.3915 15.0321 25.8589 15.0321 22.7348C15.0321 19.6107 12.4996 17.0781 9.37545 17.0781C6.25134 17.0781 3.71875 19.6107 3.71875 22.7348C3.71875 25.8589 6.25134 28.3915 9.37545 28.3915Z\",\n stroke: \"none\",\n },\n ],\n },\n representative: {\n viewBox: \"0 0 35 56\",\n contents: [\n {\n d: \"M17.9032 12.9783C21.4871 12.9783 24.3924 10.073 24.3924 6.48917C24.3924 2.9053 21.4871 0 17.9032 0C14.3194 0 11.4141 2.9053 11.4141 6.48917C11.4141 10.073 14.3194 12.9783 17.9032 12.9783Z\",\n stroke: \"none\",\n },\n {\n d: \"M15.1797 25.8991H27.7525L27.1731 19.9893C26.9413 18.3091 26.1881 16.8027 24.9714 15.7598C22.8856 18.8305 19.7569 22.7704 15.1797 25.8991Z\",\n stroke: \"none\",\n },\n {\n d: \"M22.4783 14.4264C21.1457 15.1796 19.5813 15.6431 17.9011 15.6431C16.1629 15.6431 14.5406 15.1796 13.1501 14.3105C10.7746 15.1796 8.97846 17.3234 8.68877 19.9886L8.10938 25.8983H9.55785C15.8153 23.0014 20.0448 18.1345 22.4783 14.4264Z\",\n stroke: \"none\",\n },\n {\n d: \"M33.4875 28.6211H2.31632C1.56311 28.6211 0.925781 29.2584 0.925781 30.0116V34.3571C0.925781 35.1103 1.56311 35.7476 2.31632 35.7476H5.8506V53.7087C5.8506 54.4619 6.48793 55.0992 7.24113 55.0992H28.6206C29.3738 55.0992 30.0112 54.4619 30.0112 53.7087V35.7476H33.5454C34.2987 35.7476 34.936 35.1103 34.936 34.3571V30.0116C34.878 29.2584 34.2407 28.6211 33.4875 28.6211Z\",\n stroke: \"none\",\n },\n ],\n },\n bolt: {\n viewBox: \"0 0 52 76\",\n contents: [\n {\n d: \"M51.4535 31.6851C50.5277 29.95 48.5841 28.9539 46.1168 28.9539H32.7942V5.13147C32.7942 1.64209 31.3852 0.484631 30.1985 0.132083C29.0269 -0.218341 27.2137 -0.0441906 25.2788 2.83141L16.8161 15.3129C15.4349 17.3623 13.4272 20.2825 11.6676 22.8375L1.31056 37.7337C-0.57097 40.4755 -0.0172003 42.4506 0.478841 43.3829C0.98771 44.3408 2.36893 45.9485 5.87543 45.9485H19.9634V70.9029C19.9634 71.9521 19.9634 75.1462 22.3773 75.8726C22.6638 75.9596 22.9418 76 23.2091 76C25.1783 76 26.6001 73.889 27.1282 73.1032L35.1974 60.5856L35.7405 59.7807C37.7119 56.852 40.5555 52.6299 42.3708 49.9837L50.688 37.7422C52.112 35.6566 52.3921 33.4521 51.4535 31.6851ZM47.1495 35.355L38.8301 47.5965C37.0148 50.2427 34.1626 54.4776 32.1891 57.4148L24.2396 69.7009V43.8204C24.2396 42.646 23.286 41.6966 22.1015 41.6966H5.8797C4.79568 41.6966 4.32102 41.4524 4.27612 41.4333C4.25688 41.3356 4.32316 40.8811 4.8363 40.1378L15.1997 25.231C16.9679 22.6633 18.9863 19.7282 20.3697 17.6745L28.5201 5.65604V31.0777C28.5201 32.2522 29.4759 33.2015 30.6582 33.2015H46.1189C47.0169 33.2015 47.5557 33.4458 47.6776 33.6751C47.8037 33.9194 47.6989 34.5501 47.1495 35.355Z\",\n stroke: \"none\",\n },\n ],\n },\n accept: {\n viewBox: \"0 0 24 25\",\n contents: [\n {\n d: \"M17 3.5H7C4.79086 3.5 3 5.29086 3 7.5V17.5C3 19.7091 4.79086 21.5 7 21.5H17C19.2091 21.5 21 19.7091 21 17.5V7.5C21 5.29086 19.2091 3.5 17 3.5Z\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n },\n {\n d: \"M9 12.5L11.25 14.5L15 10.5\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n },\n ],\n },\n pathway: {\n viewBox: \"0 0 115 101\",\n contents: [\n {\n d: \"M14.3756 42.0263V73.6458C14.3831 79.9205 17.3073 85.8309 22.2834 89.6307C27.2595 93.4296 33.7182 94.6819 39.7471 93.0182C45.7772 91.3546 50.6868 86.9634 53.0256 81.1451L75.3071 25.2607V25.2619C75.9689 23.6184 77.3539 22.3773 79.0561 21.9044C80.7582 21.4315 82.5831 21.7799 83.9934 22.8475C85.4034 23.9151 86.2369 25.58 86.2507 27.353V58.9724C79.8045 61.2585 74.821 66.4769 72.8195 73.0362C70.819 79.5952 72.0361 86.7176 76.102 92.233C80.168 97.747 86.6005 101 93.4376 101C100.275 101 106.707 97.747 110.773 92.233C114.839 86.7176 116.056 79.5952 114.056 73.0362C112.054 66.4772 107.07 61.2587 100.624 58.9724V27.353C100.617 21.0782 97.6927 15.1679 92.7166 11.368C87.7405 7.56909 81.2818 6.31683 75.2529 7.98049C69.2228 9.64414 64.3132 14.0354 61.9744 19.8537L39.6929 75.7381C39.0311 77.3816 37.6461 78.6227 35.9439 79.0956C34.2417 79.5685 32.4169 79.2201 31.0066 78.1525C29.5966 77.0849 28.7631 75.42 28.7493 73.647V42.0276C35.1955 39.7415 40.179 34.5231 42.1805 27.9638C44.181 21.4048 42.9639 14.2824 38.898 8.76702C34.832 3.25295 28.3995 0 21.5624 0C14.7253 0 8.29286 3.25295 4.22681 8.76702C0.160748 14.2824 -1.05631 21.4048 0.944313 27.9638C2.94599 34.5228 7.92964 39.7413 14.3756 42.0276V42.0263ZM93.4378 86.5536C91.5314 86.5536 89.7039 85.794 88.3553 84.441C87.0079 83.0892 86.2508 81.2546 86.2508 79.3432C86.2508 77.4305 87.0079 75.5957 88.3553 74.244C89.7039 72.891 91.5314 72.1315 93.4378 72.1315C95.3443 72.1315 97.1718 72.891 98.5204 74.244C99.8678 75.5958 100.625 77.4305 100.625 79.3432C100.625 81.2545 99.8678 83.0893 98.5204 84.441C97.1718 85.794 95.3443 86.5536 93.4378 86.5536ZM21.5631 14.4447C23.4695 14.4447 25.297 15.2042 26.6456 16.5572C27.993 17.909 28.7501 19.7437 28.7501 21.6551C28.7501 23.5677 27.993 25.4025 26.6456 26.7542C25.297 28.1072 23.4695 28.8668 21.5631 28.8668C19.6566 28.8668 17.8291 28.1072 16.4805 26.7542C15.1331 25.4024 14.376 23.5678 14.376 21.6551C14.376 19.7437 15.1331 17.9089 16.4805 16.5572C17.8291 15.2042 19.6566 14.4447 21.5631 14.4447Z\",\n stroke: \"none\",\n },\n ],\n },\n\n edit: {\n viewBox: \"0 0 60 60\",\n contents: [\n {\n d: \"M43.3618 0.0668254C42.7844 -0.102826 42.1605 0.0559355 41.735 0.481798L2.20533 40.0054H2.20476C1.95188 40.2594 1.78847 40.5889 1.74029 40.9443L0.0148971 53.1362C-0.0539118 53.6435 0.11811 54.1542 0.479935 54.5164C0.841176 54.8792 1.35151 55.0529 1.85955 54.9858L14.0771 53.2606H14.0765C14.4274 53.2073 14.7514 53.0422 15.0008 52.79L54.5306 13.2664C55.163 12.6204 55.1556 11.5852 54.5133 10.949L44.071 0.49556C43.8755 0.294377 43.6312 0.146501 43.3617 0.0662534L43.3618 0.0668254ZM42.8973 3.98324L51.0356 12.1178L13.0722 50.0655L3.58399 51.4319L4.92748 41.9557L42.8973 3.98324Z\",\n stroke: \"none\",\n },\n ],\n },\n\n settings: {\n viewBox: \"0 0 123 112\",\n contents: [\n {\n d: \"M61.0902 37.3325C55.6893 37.3325 50.5102 39.2992 46.6911 42.8001C42.8721 46.3009 40.7266 51.0484 40.7266 55.9993C40.7266 60.9501 42.872 65.6976 46.6911 69.1985C50.5102 72.6993 55.6893 74.666 61.0902 74.666C66.4911 74.666 71.6703 72.6993 75.4893 69.1985C79.3084 65.6976 81.4539 60.9501 81.4539 55.9993C81.4476 51.0501 79.3003 46.3058 75.4821 42.8067C71.6649 39.3067 66.4893 37.3383 61.0902 37.3325ZM61.0902 67.1993C57.8493 67.1993 54.7421 66.0193 52.4502 63.9193C50.1593 61.8184 48.872 58.9702 48.872 55.9993C48.872 53.0284 50.1593 50.1801 52.4502 48.0792C54.7421 45.9792 57.8493 44.7992 61.0902 44.7992C64.3312 44.7992 67.4384 45.9792 69.7303 48.0792C72.0212 50.1801 73.3084 53.0284 73.3084 55.9993C73.3048 58.9684 72.0166 61.8152 69.7256 63.915C67.4346 66.0149 64.3291 67.1959 61.0902 67.1993Z\",\n stroke: \"none\",\n },\n {\n d: \"M114.036 44.8001L104.156 44.6834C103.208 41.6592 101.868 38.7501 100.166 36.0167L107.165 29.6009C108.692 28.2009 109.55 26.3017 109.55 24.3217C109.55 22.3418 108.692 20.4425 107.165 19.0426L101.406 13.7634H101.406C99.8774 12.3659 97.8064 11.581 95.6465 11.581C93.4874 11.581 91.4164 12.366 89.8874 13.7634L82.7955 20.1035H82.7964C79.801 18.5652 76.6147 17.3617 73.3065 16.5193V7.46668C73.3037 5.48752 72.4446 3.58913 70.9182 2.19008C69.3909 0.790082 67.3209 0.00256 65.161 0H57.0155C54.8564 0.00250006 52.7864 0.789996 51.2592 2.19008C49.732 3.58925 48.8728 5.48758 48.8701 7.46668L48.7455 16.5233C45.4464 17.3925 42.2729 18.6208 39.2909 20.1816L32.2919 13.7658C30.7628 12.3683 28.6918 11.5834 26.5328 11.5834C24.3737 11.5834 22.3028 12.3684 20.7737 13.7658L15.0147 19.0449V19.0441C13.4874 20.4449 12.6292 22.3433 12.6292 24.3241C12.6292 26.3041 13.4874 28.2025 15.0147 29.6033L21.9311 36.1042V36.1034C20.2529 38.8492 18.9401 41.7699 18.021 44.8025H8.14547C5.98638 44.805 3.91541 45.5925 2.38918 46.9917C0.861907 48.3917 0.00279273 50.2892 0 52.2691V59.7358C0.00272734 61.715 0.861814 63.6125 2.38918 65.0124C3.91555 66.4124 5.98645 67.2 8.14547 67.2025L18.0255 67.3192V67.3183C18.9736 70.3434 20.3136 73.2524 22.0163 75.985L15.0172 82.4008V82.4017C13.4899 83.8017 12.6318 85.7009 12.6318 87.6808C12.6318 89.6608 13.4899 91.5601 15.0172 92.96L20.7763 98.2391H20.7754C22.3045 99.6366 24.3755 100.421 26.5354 100.421C28.6945 100.421 30.7655 99.6367 32.2945 98.2391L39.3864 91.8991H39.3855C42.3809 93.4374 45.5672 94.6408 48.8754 95.4833V104.533C48.8781 106.512 49.7372 108.411 51.2637 109.81C52.7909 111.21 54.8609 111.997 57.0209 112H65.1664C67.3254 111.998 69.3955 111.21 70.9226 109.81C72.4499 108.411 73.309 106.512 73.3118 104.533L73.4391 95.4767H73.4382C76.7383 94.6075 79.9117 93.3792 82.8927 91.8184L89.8918 98.2342H89.8927C91.4218 99.6317 93.4928 100.417 95.6518 100.417C97.8108 100.417 99.8818 99.6316 101.411 98.2342L107.17 92.9551V92.9559C108.697 91.5551 109.555 89.6567 109.555 87.6759C109.555 85.6959 108.697 83.7975 107.17 82.3967L100.254 75.8958V75.8966C101.932 73.1508 103.245 70.2301 104.164 67.1975H114.036C116.195 67.195 118.266 66.4075 119.793 65.0083C121.32 63.6083 122.179 61.7108 122.182 59.7309V52.2642C122.178 50.285 121.319 48.3883 119.792 46.9891C118.265 45.5899 116.195 44.8024 114.036 44.7998L114.036 44.8001ZM114.036 59.7334H104.161C102.376 59.7417 100.645 60.2859 99.2298 61.2826C97.8153 62.2801 96.7962 63.6751 96.3298 65.2534C95.5616 67.6935 94.4916 70.0442 93.1398 72.2601C92.2434 73.6801 91.8816 75.331 92.1107 76.9583C92.3398 78.585 93.1471 80.0975 94.408 81.2617L101.408 87.6784L95.6489 92.9575L88.6433 86.5357L88.6442 86.5366C87.3751 85.3807 85.7251 84.6407 83.9506 84.4307C82.176 84.2216 80.3752 84.5541 78.8278 85.3774C76.4079 86.6174 73.8404 87.5991 71.1759 88.3016C69.4559 88.7307 67.9359 89.6657 66.8495 90.9616C65.764 92.2583 65.1713 93.845 65.1622 95.48V104.533H57.0168V95.4809C57.0086 93.845 56.414 92.2576 55.3268 90.9608C54.2386 89.6641 52.7177 88.7299 50.995 88.3024C48.334 87.5983 45.7696 86.6174 43.3513 85.3783C42.0922 84.7274 40.6721 84.3832 39.2267 84.3791C37.0894 84.3766 35.0404 85.1541 33.5311 86.5408L26.5311 92.9575L20.7721 87.6783L27.7776 81.2565L27.7767 81.2574C29.0367 80.0932 29.8422 78.5807 30.0713 76.9548C30.2995 75.3282 29.9376 73.6783 29.0413 72.2589C27.6885 70.0407 26.6176 67.6872 25.8513 65.2447C25.3831 63.6681 24.3631 62.2747 22.9494 61.2797C21.5348 60.2839 19.8038 59.7406 18.0202 59.7331H8.14464V52.2664H18.0202C19.8048 52.258 21.5365 51.7139 22.9512 50.7172C24.3658 49.7197 25.3849 48.3247 25.8513 46.7464C26.6194 44.3063 27.6894 41.9556 29.0413 39.7397C29.9385 38.3197 30.3004 36.6688 30.0722 35.0421C29.8431 33.4146 29.0358 31.902 27.7758 30.7379L20.7702 24.3204L26.5293 19.0412L33.5349 25.463H33.534C34.8058 26.6163 36.4549 27.3538 38.2286 27.563C40.0022 27.773 41.8021 27.4422 43.3504 26.6221C45.7703 25.3821 48.3378 24.4005 51.0023 23.698C52.7232 23.2688 54.2432 22.3347 55.3296 21.0379C56.416 19.7413 57.0096 18.1537 57.0178 16.5187V7.46606H65.1633V16.5187C65.1724 18.1545 65.766 19.7419 66.8533 21.0388C67.9415 22.3354 69.4633 23.2696 71.185 23.6971C73.847 24.4013 76.4114 25.3821 78.8287 26.6213C80.3787 27.4405 82.1789 27.7713 83.9525 27.5613C85.727 27.3513 87.3771 26.6138 88.6489 25.4613L95.6489 19.0446L101.408 24.3238L94.4024 30.7455L94.4033 30.7447C93.1433 31.9089 92.3379 33.4214 92.1088 35.0472C91.8806 36.6739 92.2424 38.3238 93.1388 39.7423C94.4915 41.9605 95.5624 44.3149 96.3288 46.7565C96.7969 48.334 97.8169 49.7274 99.2306 50.7223C100.645 51.7182 102.376 52.2615 104.16 52.2699H114.036L114.036 59.7334Z\",\n stroke: \"none\",\n },\n ],\n },\n objective: {\n viewBox: \"0 0 52 76\",\n contents: [\n {\n d: \"M51.4535 31.6851C50.5277 29.95 48.5841 28.9539 46.1168 28.9539H32.7942V5.13147C32.7942 1.64209 31.3852 0.484631 30.1985 0.132083C29.0269 -0.218341 27.2137 -0.0441906 25.2788 2.83141L16.8161 15.3129C15.4349 17.3623 13.4272 20.2825 11.6676 22.8375L1.31056 37.7337C-0.57097 40.4755 -0.0172003 42.4506 0.478841 43.3829C0.98771 44.3408 2.36893 45.9485 5.87543 45.9485H19.9634V70.9029C19.9634 71.9521 19.9634 75.1462 22.3773 75.8726C22.6638 75.9596 22.9418 76 23.2091 76C25.1783 76 26.6001 73.889 27.1282 73.1032L35.1974 60.5856L35.7405 59.7807C37.7119 56.852 40.5555 52.6299 42.3708 49.9837L50.688 37.7422C52.112 35.6566 52.3921 33.4521 51.4535 31.6851ZM47.1495 35.355L38.8301 47.5965C37.0148 50.2427 34.1626 54.4776 32.1891 57.4148L24.2396 69.7009V43.8204C24.2396 42.646 23.286 41.6966 22.1015 41.6966H5.8797C4.79568 41.6966 4.32102 41.4524 4.27612 41.4333C4.25688 41.3356 4.32316 40.8811 4.8363 40.1378L15.1997 25.231C16.9679 22.6633 18.9863 19.7282 20.3697 17.6745L28.5201 5.65604V31.0777C28.5201 32.2522 29.4759 33.2015 30.6582 33.2015H46.1189C47.0169 33.2015 47.5557 33.4458 47.6776 33.6751C47.8037 33.9194 47.6989 34.5501 47.1495 35.355Z\",\n stroke: \"none\",\n },\n ],\n },\n\n achievements: {\n viewBox: \"0 0 27 27\",\n contents: [\n {\n d: \"M26.0989 7.19999C26.3379 7.19999 26.5672 7.10517 26.7361 6.93642C26.9051 6.76767 27 6.53865 27 6.29999V0.899999C27 0.66134 26.9051 0.432318 26.7361 0.263571C26.5672 0.0948239 26.3379 0 26.0989 0H17.9892C17.7502 0 17.5209 0.0948239 17.352 0.263571C17.183 0.432318 17.0881 0.66134 17.0881 0.899999V10.5747L12.1862 19.8L8.8253 14.7781H8.82509C8.65775 14.5292 8.37737 14.3799 8.0773 14.3799C7.77723 14.3799 7.49684 14.5292 7.3295 14.7781L0.120831 25.5781C-0.0402772 25.8565 -0.0402772 26.1994 0.120831 26.4781C0.187609 26.6235 0.292197 26.7487 0.42374 26.8405C0.555082 26.9323 0.70875 26.9873 0.868649 27H26.099C26.415 26.9992 26.7074 26.8331 26.8698 26.5623C27.0321 26.2915 27.0405 25.9556 26.8919 25.6769L18.8903 10.5749V7.19993L26.0989 7.19999ZM18.8902 1.8H25.1978V5.39999H18.8902V1.8ZM17.9892 12.726L18.8183 14.2919C18.275 14.436 17.7034 14.436 17.1601 14.2919L17.9892 12.726ZM8.07724 16.92L9.25771 18.72C8.49241 18.9812 7.66212 18.9812 6.89677 18.72L8.07724 16.92ZM5.87865 20.2231C6.56996 20.5343 7.31899 20.6968 8.07724 20.7001C8.83832 20.6964 9.59039 20.5339 10.2849 20.2231L11.186 21.6362L9.33876 25.2001H2.55386L5.87865 20.2231ZM11.3753 25.2L13.0692 22.005L16.304 15.903C17.3924 16.2992 18.5859 16.2992 19.6742 15.903L24.6031 25.1998L11.3753 25.2Z\",\n stroke: \"none\",\n },\n ],\n },\n\n milestones: {\n viewBox: \"0 0 19 22\",\n contents: [\n {\n d: \"M6.09474 20.2105C8.90849 20.2105 11.1895 18.2263 11.1895 15.7787C11.1895 13.3311 8.90849 11.3469 6.09474 11.3469C3.28099 11.3469 1 13.3311 1 15.7787C1 18.2263 3.28099 20.2105 6.09474 20.2105Z\",\n fill: \"none\",\n strokeWidth: \"2\",\n },\n {\n d: \"M4.95117 3.99451V8.44276C4.95117 8.94522 5.35849 9.35254 5.86095 9.35254C6.36341 9.35254 6.77073 8.94522 6.77073 8.44276V3.99451C6.77073 3.49205 6.36341 3.08473 5.86095 3.08473C5.35849 3.08473 4.95117 3.49205 4.95117 3.99451Z\",\n stroke: \"none\",\n },\n {\n d: \"M16.1542 8.2941L12.3392 11.6127C11.9857 11.9202 11.9857 12.4187 12.3392 12.7261C12.6926 13.0336 13.2657 13.0336 13.6191 12.7261L17.4341 9.40748C17.7876 9.10003 17.7876 8.60155 17.4341 8.2941C17.0807 7.98665 16.5077 7.98665 16.1542 8.2941Z\",\n stroke: \"none\",\n },\n {\n d: \"M12.8848 1.26069L8.87023 9.10422C8.64634 9.54164 8.83631 10.0401 9.29453 10.2176C9.75276 10.395 10.3057 10.1843 10.5296 9.74688L14.5442 1.90335C14.768 1.46593 14.5781 0.967464 14.1198 0.789997C13.6616 0.61253 13.1087 0.823265 12.8848 1.26069Z\",\n stroke: \"none\",\n },\n ],\n },\n\n reflection: {\n viewBox: \"0 0 41 40\",\n contents: [\n {\n d: \"M8.86672 8.9274e-06C8.46555 8.9274e-06 8.08089 0.159282 7.79713 0.44303C7.51375 0.726418 7.35446 1.11108 7.35446 1.51226V3.80086H5.54481C4.0744 3.80086 2.66412 4.38487 1.62405 5.42455C0.584347 6.46462 0 7.8749 0 9.34531V33.9631C0 35.4339 0.584365 36.8441 1.62405 37.8839C2.66412 38.9236 4.0744 39.5079 5.54481 39.5079H35.4552C36.9256 39.5079 38.3359 38.9235 39.376 37.8839C40.4157 36.8441 41 35.4339 41 33.9631V9.34531C41 7.8749 40.4156 6.46462 39.376 5.42455C38.3359 4.38485 36.9256 3.80086 35.4552 3.80086H33.6455V1.51226C33.6455 0.971849 33.3576 0.472914 32.8896 0.202523C32.4216 -0.0675076 31.8453 -0.0675076 31.3773 0.202523C30.9094 0.472905 30.6214 0.971831 30.6214 1.51226V3.80086H22.0121V1.51226C22.0121 0.971849 21.7238 0.472914 21.2558 0.202523C20.7882 -0.0675076 20.2115 -0.0675076 19.7439 0.202523C19.2759 0.472905 18.9876 0.971831 18.9876 1.51226V3.80086H10.3783V1.51226C10.3783 1.11109 10.219 0.726427 9.93565 0.44303C9.65191 0.159291 9.26725 8.9274e-06 8.86642 8.9274e-06H8.86672ZM37.976 33.9636C37.976 34.632 37.7106 35.2729 37.2377 35.7458C36.7651 36.2184 36.1241 36.4839 35.4557 36.4839H5.54534C4.87694 36.4839 4.23596 36.2184 3.76341 35.7458C3.2905 35.2729 3.02504 34.632 3.02504 33.9636V16.957H37.976L37.976 33.9636ZM18.9884 6.82548V9.11408C18.9884 9.65414 19.2767 10.1534 19.7447 10.4235C20.2123 10.6938 20.789 10.6938 21.2566 10.4235C21.7245 10.1534 22.0129 9.65415 22.0129 9.11408V6.82548H30.6222V9.11408C30.6222 9.65414 30.9101 10.1534 31.3781 10.4235C31.8461 10.6938 32.4224 10.6938 32.8904 10.4235C33.3583 10.1534 33.6463 9.65415 33.6463 9.11408V6.82548H35.456C36.1244 6.82548 36.7653 7.09094 37.2379 7.56385C37.7108 8.0364 37.9762 8.67736 37.9762 9.34578V13.9328H3.02529V9.34578C3.02529 8.67738 3.29075 8.0364 3.76365 7.56385C4.2362 7.09094 4.87717 6.82548 5.54558 6.82548H7.35524V9.11408C7.35524 9.65414 7.6432 10.1534 8.11118 10.4235C8.57916 10.6938 9.15548 10.6938 9.62344 10.4235C10.0914 10.1534 10.3794 9.65415 10.3794 9.11408V6.82548H18.9884Z\",\n stroke: \"none\",\n },\n {\n d: \"M16.8211 32.2242C17.1037 32.5013 17.4838 32.6567 17.8794 32.6567C18.2753 32.6567 18.6554 32.5013 18.9381 32.2242L30.4153 21.2664C30.718 20.9921 30.897 20.6071 30.9114 20.1989C30.9258 19.7907 30.7743 19.3941 30.4919 19.0991C30.2093 18.8044 29.8193 18.6364 29.4107 18.6332C29.0025 18.6304 28.6101 18.7928 28.3232 19.0836L17.9145 29.0387L12.7125 23.8417C12.3264 23.4824 11.7811 23.3498 11.2731 23.4922C10.765 23.6346 10.368 24.0316 10.2256 24.5397C10.0832 25.0478 10.2158 25.5931 10.5751 25.9791L16.8211 32.2242Z\",\n stroke: \"none\",\n },\n ],\n },\n\n registrations: {\n viewBox: \"0 0 23 29\",\n contents: [\n {\n d: \"M18.0698 15.0088H11.9475C11.5018 15.0088 11.1748 15.3654 11.1748 15.7815C11.1748 16.1976 11.5314 16.5541 11.9475 16.5541H18.0698C18.5156 16.5541 18.8425 16.1976 18.8425 15.7815C18.8425 15.3654 18.5156 15.0088 18.0698 15.0088Z\",\n stroke: \"none\",\n },\n {\n d: \"M18.0698 18.9023H11.9475C11.5018 18.9023 11.1748 19.2589 11.1748 19.675C11.1748 20.0911 11.5314 20.4477 11.9475 20.4477H18.0698C18.5156 20.4477 18.8425 20.0911 18.8425 19.675C18.8425 19.2589 18.5156 18.9023 18.0698 18.9023Z\",\n stroke: \"none\",\n },\n {\n d: \"M18.0698 22.7949H11.9475C11.5018 22.7949 11.1748 23.1515 11.1748 23.5676C11.1748 23.9837 11.5314 24.3403 11.9475 24.3403H18.0698C18.5156 24.3403 18.8425 23.9837 18.8425 23.5676C18.8425 23.1515 18.5156 22.7949 18.0698 22.7949Z\",\n stroke: \"none\",\n },\n {\n d: \"M9.18377 15.0088H8.47043C8.02471 15.0088 7.69775 15.3654 7.69775 15.7815C7.69775 16.1976 8.05433 16.5541 8.47043 16.5541H9.18377C9.62949 16.5541 9.95644 16.1976 9.95644 15.7815C9.95665 15.3654 9.62972 15.0088 9.18377 15.0088Z\",\n stroke: \"none\",\n },\n {\n d: \"M9.18377 18.9023H8.47043C8.02471 18.9023 7.69775 19.2589 7.69775 19.675C7.69775 20.0911 8.05433 20.4477 8.47043 20.4477H9.18377C9.62949 20.4477 9.95644 20.0911 9.95644 19.675C9.95665 19.2589 9.62972 18.9023 9.18377 18.9023Z\",\n stroke: \"none\",\n },\n {\n d: \"M9.18377 22.7949H8.47043C8.02471 22.7949 7.69775 23.1515 7.69775 23.5676C7.69775 23.9837 8.05433 24.3403 8.47043 24.3403H9.18377C9.62949 24.3403 9.95644 23.9837 9.95644 23.5676C9.95665 23.1515 9.62972 22.7949 9.18377 22.7949Z\",\n stroke: \"none\",\n },\n {\n d: \"M22.3496 10.6993L17.0297 5.37935C16.881 5.2307 16.6731 5.14156 16.4649 5.14156H12.8689C12.2449 2.22902 9.62943 0 6.50874 0C2.94236 0 0 2.91254 0 6.50874C0 9.18346 1.63467 11.5016 3.9528 12.4825V27.4615C3.9528 27.9073 4.30938 28.2342 4.72547 28.2342H21.7552C22.2009 28.2342 22.5279 27.8776 22.5279 27.4615L22.5281 11.264C22.5876 11.0561 22.4984 10.8479 22.3498 10.6995L22.3496 10.6993ZM16.6136 7.16251L20.5664 11.1153H16.6136V7.16251ZM1.57512 6.50866C1.57512 3.7744 3.77448 1.57504 6.50874 1.57504C9.24301 1.57504 11.4424 3.7744 11.4424 6.50866C11.4424 9.24293 9.24301 11.4423 6.50874 11.4423C3.77448 11.4423 1.57512 9.21326 1.57512 6.50866ZM5.5578 26.659V12.9282C5.88473 12.9877 6.18203 13.0174 6.53857 13.0174C10.0455 13.0174 12.8987 10.2236 13.0176 6.74641H15.0683V11.9475C15.0683 12.3932 15.4249 12.7201 15.841 12.7201H21.0421V26.6887H5.5578V26.659Z\",\n stroke: \"none\",\n },\n {\n d: \"M9.24289 4.51789C8.9456 4.2206 8.44039 4.2206 8.14329 4.51789L5.85478 6.8064L4.90362 5.85525C4.60633 5.55796 4.10112 5.55796 3.80402 5.85525C3.50673 6.15254 3.50673 6.65775 3.80402 6.95485L5.29004 8.44086C5.43868 8.5895 5.64662 8.67865 5.85478 8.67865C6.06293 8.67865 6.27085 8.5895 6.41952 8.44086L9.27277 5.58761C9.54021 5.32017 9.54021 4.81493 9.24292 4.51789H9.24289Z\",\n stroke: \"none\",\n },\n ],\n },\n\n lock: {\n viewBox: \"0 0 1309.443 1658.036\",\n contents: [\n {\n d: \"M1124.664,644.322H184.779c-80.353,0-145.493,65.139-145.493,145.493v693.711c0,80.354,65.139,145.493,145.493,145.493 h939.885c80.353,0,145.493-65.139,145.493-145.493V789.814C1270.157,709.461,1205.017,644.322,1124.664,644.322z M717.651,1149.325 c1.166,4.857,1.801,9.915,1.801,15.117v124.451c0,35.832-29.317,65.148-65.148,65.148c-35.832,0-65.149-29.317-65.149-65.148 v-124.451c0-5.356,0.668-10.562,1.902-15.551c-35.921-21.626-59.951-60.993-59.951-105.976 c0-68.271,55.345-123.615,123.615-123.615c68.271,0,123.615,55.344,123.615,123.615 C778.337,1088.203,753.978,1127.795,717.651,1149.325z\",\n },\n {\n d: \"M800.192,53.478c-46.481-16.909-94.021-24.534-142.199-24.459c-48.178-0.075-102.262,7.55-148.743,24.459 c-216.571,78.787-295.237,273.21-284.399,530.585h179.785c-10.095-177.358,35.728-296.867,147.728-347.915 c64.887-29.574,139.826-29.574,204.713,0c112,51.047,157.823,170.556,147.728,347.915h179.785 C1095.429,326.688,1016.764,132.265,800.192,53.478z\",\n },\n ],\n },\n\n unqualified: {\n viewBox: \"0 0 1309.443 1658.036\",\n contents: [\n {\n d: \"M1124.664,644.322H184.779c-80.353,0-145.493,65.139-145.493,145.493v693.711c0,80.354,65.139,145.493,145.493,145.493 h939.885c80.353,0,145.493-65.139,145.493-145.493V789.814C1270.157,709.461,1205.017,644.322,1124.664,644.322z M717.651,1149.325 c1.166,4.857,1.801,9.915,1.801,15.117v124.451c0,35.832-29.317,65.148-65.148,65.148c-35.832,0-65.149-29.317-65.149-65.148 v-124.451c0-5.356,0.668-10.562,1.902-15.551c-35.921-21.626-59.951-60.993-59.951-105.976 c0-68.271,55.345-123.615,123.615-123.615c68.271,0,123.615,55.344,123.615,123.615 C778.337,1088.203,753.978,1127.795,717.651,1149.325z\",\n },\n {\n d: \"M800.192,53.478c-46.481-16.909-94.021-24.534-142.199-24.459c-48.178-0.075-102.262,7.55-148.743,24.459 c-216.571,78.787-295.237,273.21-284.399,530.585h179.785c-10.095-177.358,35.728-296.867,147.728-347.915 c64.887-29.574,139.826-29.574,204.713,0c112,51.047,157.823,170.556,147.728,347.915h179.785 C1095.429,326.688,1016.764,132.265,800.192,53.478z\",\n },\n ],\n },\n\n unlock: {\n viewBox: \"796 729.37 200 200\",\n contents: [\n {\n d: \"M947.232,737.06c-26.891,0-48.769,21.876-48.769,48.769v21.623h-83.855c-10.277,0-18.609,8.332-18.609,18.609v57.775 c0,20.9,16.943,37.844,37.843,37.844h66.979c20.9,0,37.843-16.943,37.843-37.844V826.06c0-10.277-8.331-18.609-18.608-18.609h-3.955 v-21.623c0-17.166,13.965-31.131,31.131-31.131c17.165,0,31.131,13.965,31.131,31.131v31.413c0,4.871,3.947,8.819,8.817,8.819 s8.819-3.949,8.819-8.819v-31.413C996,758.937,974.123,737.06,947.232,737.06z M873.933,865.427v23.546 c0,3.836-3.109,6.942-6.942,6.942c-3.833,0-6.942-3.107-6.942-6.942v-23.546c-5.288-2.578-8.94-7.99-8.94-14.269 c0-8.772,7.111-15.883,15.882-15.883c8.772,0,15.884,7.11,15.884,15.883C882.875,857.437,879.22,862.85,873.933,865.427z\",\n },\n ],\n },\n\n contingent: {\n viewBox: \"796 729.37 200 200\",\n contents: [\n {\n d: \"M947.232,737.06c-26.891,0-48.769,21.876-48.769,48.769v21.623h-83.855c-10.277,0-18.609,8.332-18.609,18.609v57.775 c0,20.9,16.943,37.844,37.843,37.844h66.979c20.9,0,37.843-16.943,37.843-37.844V826.06c0-10.277-8.331-18.609-18.608-18.609h-3.955 v-21.623c0-17.166,13.965-31.131,31.131-31.131c17.165,0,31.131,13.965,31.131,31.131v31.413c0,4.871,3.947,8.819,8.817,8.819 s8.819-3.949,8.819-8.819v-31.413C996,758.937,974.123,737.06,947.232,737.06z M873.933,865.427v23.546 c0,3.836-3.109,6.942-6.942,6.942c-3.833,0-6.942-3.107-6.942-6.942v-23.546c-5.288-2.578-8.94-7.99-8.94-14.269 c0-8.772,7.111-15.883,15.882-15.883c8.772,0,15.884,7.11,15.884,15.883C882.875,857.437,879.22,862.85,873.933,865.427z\",\n },\n ],\n },\n\n badge: {\n viewBox: \"0 0 164 164\",\n contents: [\n {\n cy: \"82\",\n cx: \"82\",\n r: \"75\",\n strokeWidth: \"14\",\n fill: \"none\",\n },\n {\n d: \"M63.66 47.875L63.9659 51.5476L66.7189 52.7719V50.3234H97.3075L97.6134 52.7719C98.736 52.2546 99.4488 52.0067 100.061 50.9355L100.366 47.875L108.625 48.1811C108.69 60.7048 105.845 73.7549 98.837 79.3985L92.4134 83.3772C92.7529 84.2434 92.6795 83.821 92.7192 84.6015L90.578 85.8257C89.7185 85.284 90.058 85.3788 89.3545 85.2136C88.9201 86.4714 85.9897 93.7831 85.9897 93.7831C86.7483 97.0762 90.627 100.103 93.6369 101.128V103.577H95.4722V116.125H68.5542V103.577H70.3895V101.128C73.3994 100.134 77.2781 97.0517 78.0367 93.7831C77.4647 93.5015 76.284 87.0897 74.0602 84.9075L73.4484 85.8257L71.0013 84.2954C71.3775 83.3772 71.3989 83.7353 71.3072 82.7651C62.3019 80.283 52.2198 61.2251 55.707 47.875H63.66ZM58.7674 50.9355C58.4615 63.5082 62.5512 76.7726 71.9205 79.7046C68.9691 72.0762 67.3148 64.0073 67.0263 55.8324C63.3098 55.3672 61.7804 53.9655 60.6027 50.9355H58.7674ZM105.261 50.9355L103.12 51.2416C102.527 54.3021 100.211 55.4468 97.0026 55.8324C97.0026 64.6284 94.7849 73.1489 92.1084 79.7046C101.612 76.6196 105.359 63.6276 105.261 50.9355Z\",\n stroke: \"none\",\n },\n ],\n },\n\n waypoint: {\n viewBox: \"0 0 33 29\",\n contents: [\n {\n d: \"M16.4728 0C11.4744 0 7.41541 4.09351 7.41541 9.09947C7.41541 11.1808 8.20387 13.4207 9.35984 15.696H6.55398C6.36308 15.6967 6.17653 15.7531 6.01702 15.8582C5.85751 15.9633 5.73193 16.1125 5.65556 16.2878L0.720823 27.619C0.655173 27.7698 0.628191 27.9346 0.642331 28.0985C0.656472 28.2624 0.711286 28.4201 0.801787 28.5573C0.892288 28.6946 1.0156 28.8069 1.16051 28.8843C1.30542 28.9616 1.46732 29.0013 1.63149 29H31.3388C31.5019 28.9993 31.6623 28.958 31.8056 28.8799C31.9489 28.8017 32.0705 28.6891 32.1596 28.5522C32.2487 28.4153 32.3024 28.2583 32.3159 28.0954C32.3295 27.9326 32.3024 27.7689 32.2372 27.619L27.3147 16.2878C27.2375 16.1106 27.11 15.96 26.9481 15.8548C26.7862 15.7496 26.597 15.6943 26.404 15.696H23.6843C24.8335 13.4319 25.5549 11.242 25.5549 9.09947C25.5549 4.09351 21.4836 0 16.4728 0V0ZM16.4728 1.97278C20.4202 1.97278 23.5858 5.15799 23.5858 9.09947C23.5858 11.1236 22.7373 13.46 21.26 16.0536C20.0207 18.2381 18.3481 20.6003 16.4728 23.1063C14.8616 20.9305 13.1797 18.5212 11.858 16.1892C10.3621 13.5457 9.38446 10.9878 9.38446 9.09947C9.38446 5.15799 12.541 1.97278 16.4728 1.97278V1.97278ZM7.19383 17.6688H10.4427C12.0119 20.352 13.9434 23.0245 15.6853 25.338C15.777 25.4605 15.8959 25.5599 16.0326 25.6283C16.1693 25.6968 16.32 25.7325 16.4728 25.7325C16.6256 25.7325 16.7764 25.6968 16.9131 25.6283C17.0498 25.5599 17.1687 25.4605 17.2604 25.338C19.2936 22.6563 21.1436 20.106 22.589 17.6688H25.7641L29.8375 27.0272H3.13277L7.19383 17.6688V17.6688Z\",\n stroke: \"none\",\n },\n {\n d: \"M16.4735 4.96875C14.3475 4.96875 12.6006 6.7189 12.6006 8.84908C12.6006 10.9886 14.3475 12.7434 16.4735 12.7434C18.6088 12.7434 20.3604 10.9886 20.3604 8.84908C20.3604 6.7189 18.6088 4.96875 16.4735 4.96875ZM16.4735 6.94168C17.5473 6.94168 18.3912 7.7918 18.3912 8.84908C18.3912 9.925 17.5473 10.7705 16.4735 10.7705C15.4182 10.7705 14.5697 9.925 14.5697 8.84908C14.5697 7.7918 15.4182 6.94168 16.4735 6.94168Z\",\n stroke: \"none\",\n },\n ],\n },\n\n apple: {\n viewBox: \"0 0 24 33\",\n contents: [\n {\n d: \"M23.9966 18.0144C23.9966 18.0141 23.9966 18.0137 23.9966 18.0137C23.9966 18.0133 23.9966 18.0133 23.9966 18.013C24.0886 14.2266 22.2926 10.751 19.5255 9.36297C17.336 8.26458 15.0368 8.82309 13.3762 10.8577C13.3714 10.8638 13.3681 10.8709 13.3632 10.877C13.3578 10.8842 13.3515 10.8892 13.3463 10.8964C13.192 11.1137 13.0165 11.2866 12.8293 11.4169C12.8534 10.2988 13.1495 9.32538 13.7112 8.56961C14.3838 7.66419 15.3733 7.16583 16.4967 7.16583C16.853 7.16583 17.1422 6.82249 17.1422 6.39932C17.1422 5.97615 16.853 5.63281 16.4967 5.63281C15.2349 5.63281 14.0944 6.1215 13.2143 7.01368C13.1226 5.11333 12.5082 3.41526 11.4297 2.13428C10.092 0.545766 8.21341 -0.196401 6.13943 0.0445436C6.00737 0.0581482 5.88467 0.119727 5.78638 0.217107C5.78276 0.220687 5.77975 0.225341 5.77613 0.228922C5.74869 0.257205 5.72246 0.287278 5.69925 0.320932C5.6902 0.334178 5.68327 0.349573 5.67483 0.363535C5.65915 0.389313 5.64287 0.414732 5.6299 0.443015C5.5898 0.530729 5.56418 0.628467 5.55543 0.731217C5.55543 0.731933 5.55513 0.732292 5.55513 0.73265C5.35072 3.19759 5.97572 5.43089 7.31465 7.02083C8.48716 8.41316 10.0748 9.15532 11.8458 9.15532C11.8693 9.15532 11.8931 9.15353 11.9167 9.15318C11.664 9.89534 11.5392 10.7191 11.5398 11.5884C11.2229 11.4652 10.9187 11.2257 10.6431 10.8713L10.6428 10.8709C10.6428 10.8709 10.6428 10.8709 10.6428 10.8706C9.09437 8.88144 6.83799 8.37485 4.60693 9.51549C2.16453 10.7639 -0.190141 14.077 0.0121618 18.003C0.0121618 18.0058 0.0115588 18.008 0.0115588 18.0108C0.0118603 18.0219 0.0124632 18.0327 0.0127647 18.0438C0.0127647 18.0449 0.0127647 18.0459 0.0127647 18.0474C0.0127647 18.0477 0.0127647 18.0477 0.0127647 18.0481C0.122207 24.1855 2.10634 28.0843 6.85729 31.4969C7.18712 31.7339 7.86669 32.2219 8.8378 32.2219C9.3826 32.2219 10.0197 32.068 10.7375 31.6301C11.4466 31.1973 11.8232 31.1432 11.9661 31.1493C12.4545 31.1998 12.7153 31.3118 13.2842 31.6383C14.0015 32.0497 14.6241 32.1965 15.1589 32.1965C16.0535 32.1965 16.6999 31.7851 17.1217 31.5166C20.6012 29.303 23.842 26.1356 23.9963 18.0209C23.9963 18.0201 23.9966 18.0194 23.9966 18.0187C23.9966 18.0173 23.9966 18.0159 23.9966 18.0144ZM8.22758 5.93748C7.2845 4.81761 6.79337 3.27313 6.81206 1.53854C8.2728 1.51742 9.57345 2.09884 10.5168 3.21907C11.4602 4.33894 11.9513 5.88378 11.9323 7.61836C10.4728 7.64092 9.17065 7.05735 8.22758 5.93748ZM16.5078 30.168C15.944 30.5274 15.1713 31.0175 13.8462 30.2578C13.1754 29.873 12.7581 29.6893 12.0584 29.6191C12.0523 29.6184 12.0466 29.6199 12.0406 29.6195C12.0351 29.6191 12.03 29.6173 12.0246 29.617C11.5178 29.5948 10.8855 29.8164 10.1481 30.2661C8.79167 31.0942 7.96799 30.5027 7.5257 30.1852C3.86797 27.5577 1.40989 24.477 1.30256 17.9811C1.30256 17.975 1.30105 17.9693 1.30075 17.9632C1.30045 17.9568 1.30165 17.9511 1.30135 17.9446C1.12045 14.7439 3.13263 11.9385 5.11736 10.9239C6.84854 10.0389 8.51671 10.3987 9.69435 11.9106C9.69435 11.9106 9.69435 11.9106 9.69465 11.911L9.69495 11.9113C10.3516 12.7562 11.1777 13.2184 12.0276 13.2184C12.0478 13.2184 12.0683 13.2181 12.0885 13.2177C12.1301 13.2167 12.1711 13.2095 12.2124 13.2063C12.2166 13.2063 12.2206 13.2077 12.2245 13.2077C12.251 13.2077 12.2782 13.2059 12.3053 13.2016C12.3128 13.2005 12.3198 13.197 12.3273 13.1955C13.0741 13.101 13.7657 12.6589 14.3006 11.9267C14.3015 11.9256 14.3024 11.9253 14.303 11.9242C15.5976 10.3382 17.3185 9.91969 19.0229 10.7746C21.2687 11.9009 22.7834 14.861 22.7062 17.9732C22.7062 17.9743 22.7065 17.9754 22.7065 17.9765C22.7065 17.9772 22.7062 17.9779 22.7062 17.9783C22.5757 24.9055 20.1357 27.8598 16.5078 30.168Z\",\n stroke: \"none\",\n },\n ],\n },\n\n \"guest speaker\": {\n viewBox: \"0 0 36 30\",\n contents: [\n {\n d: \"M15.6201 26.8136V26.8134V17.9746C15.6201 17.5128 15.2485 17.1357 14.7854 17.1357H10.4393C9.97635 17.1357 9.60449 17.5127 9.60449 17.9746V26.8134C9.60449 28.1559 10.6891 29.2505 12.0266 29.2505H13.198C14.5346 29.2505 15.6191 28.1559 15.6201 26.8136ZM11.2731 26.8134V18.8135H13.9497V26.8134C13.9497 27.2338 13.6105 27.5729 13.1972 27.5729H12.0257C11.6124 27.5729 11.2731 27.2338 11.2731 26.8134Z\",\n strokeWidth: \"0.5\",\n },\n {\n d: \"M4.49313 7.79479H4.74313V7.79392H17.1654V17.1348H4.49313C3.35244 17.1348 2.4204 16.1996 2.4204 15.046V9.88364C2.4204 8.73083 3.35167 7.79479 4.49313 7.79479ZM4.49313 18.8135H18.0002C18.4634 18.8135 18.835 18.4353 18.835 17.9746V6.95592C18.835 6.49391 18.4631 6.11719 18.0002 6.11719H4.49313C2.42759 6.11719 0.75 7.80783 0.75 9.88364V15.046C0.75 17.1217 2.42749 18.8135 4.49313 18.8135Z\",\n strokeWidth: \"0.5\",\n },\n {\n d: \"M34.6609 23.7171C35.1979 23.3314 35.5166 22.7052 35.5166 22.0431V2.80552C35.5166 2.14113 35.1967 1.51565 34.6575 1.13008C34.119 0.74437 33.4246 0.645508 32.7996 0.864352L32.7993 0.864431L17.7257 6.15823C17.3891 6.27601 17.166 6.59461 17.166 6.95016V17.9743C17.166 18.332 17.3921 18.6499 17.7287 18.7672L17.7292 18.7674L32.8085 23.9882C32.8085 23.9882 32.8085 23.9882 32.8086 23.9882C33.0251 24.0633 33.2489 24.0999 33.4724 24.0999C33.8933 24.0999 34.3106 23.9696 34.6609 23.7171ZM34.6609 23.7171C34.6608 23.7172 34.6607 23.7173 34.6606 23.7173L34.5149 23.5145L34.661 23.7171C34.6609 23.7171 34.6609 23.7171 34.6609 23.7171ZM33.6891 2.49752L33.6898 2.49803C33.79 2.56933 33.8471 2.67954 33.8471 2.80642V22.0441C33.8471 22.1697 33.7902 22.2805 33.6897 22.3531C33.5894 22.4246 33.468 22.4422 33.3514 22.402L18.8355 17.3766V7.54613L33.3498 2.44893C33.3498 2.44891 33.3499 2.44889 33.35 2.44887C33.4667 2.40809 33.5885 2.42542 33.6891 2.49752Z\",\n strokeWidth: \"0.5\",\n },\n ],\n },\n search: {\n viewBox: \"0 0 19 19\",\n contents: [\n {\n d: \"M7.25 0C3.246 0 0 3.246 0 7.25C0 11.254 3.246 14.5 7.25 14.5C8.91425 14.5026 10.5283 13.9301 11.819 12.8795L16.7195 17.78C16.7887 17.8516 16.8714 17.9088 16.9629 17.9481C17.0544 17.9874 17.1529 18.0081 17.2524 18.0089C17.352 18.0098 17.4508 17.9908 17.543 17.9531C17.6351 17.9154 17.7189 17.8597 17.7893 17.7893C17.8597 17.7189 17.9154 17.6351 17.9531 17.543C17.9908 17.4508 18.0098 17.352 18.0089 17.2524C18.0081 17.1529 17.9874 17.0544 17.9481 16.9629C17.9088 16.8714 17.8516 16.7887 17.78 16.7195L12.88 11.819C13.9304 10.5282 14.5027 8.91419 14.5 7.25C14.5 3.246 11.254 0 7.25 0ZM1.5 7.25C1.5 4.0745 4.0745 1.5 7.25 1.5C10.4255 1.5 13 4.0745 13 7.25C13 10.4255 10.4255 13 7.25 13C4.0745 13 1.5 10.4255 1.5 7.25Z\",\n stroke: \"none\",\n },\n ],\n },\n menu: {\n viewBox: \"0 0 24 24\",\n contents: [\n {\n d: \"M4 6h16M4 12h16M4 18h16\",\n fill: \"none\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n strokeWidth: \"2\",\n },\n ],\n },\n todo: {\n viewBox: \"0 0 24 25\",\n contents: [\n {\n d: \"M17 3.5H7C4.79086 3.5 3 5.29086 3 7.5V17.5C3 19.7091 4.79086 21.5 7 21.5H17C19.2091 21.5 21 19.7091 21 17.5V7.5C21 5.29086 19.2091 3.5 17 3.5Z\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n },\n ],\n },\n done: {\n viewBox: \"0 0 24 25\",\n contents: [\n {\n d: \"M17 3.5H7C4.79086 3.5 3 5.29086 3 7.5V17.5C3 19.7091 4.79086 21.5 7 21.5H17C19.2091 21.5 21 19.7091 21 17.5V7.5C21 5.29086 19.2091 3.5 17 3.5Z\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n },\n {\n d: \"M9 12.5L11.25 14.5L15 10.5\",\n fill: \"none\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n },\n ],\n },\n review: {\n viewBox: \"0 0 32 32\",\n contents: [\n {\n d: \"M15.5 0C6.9404 0 0 6.9404 0 15.5C0 24.0596 6.9404 31 15.5 31C24.0596 31 31 24.0596 31 15.5C31 6.9404 24.0596 0 15.5 0ZM15.5 28.3705C8.39353 28.3705 2.62946 22.6065 2.62946 15.5C2.62946 8.39353 8.39353 2.62946 15.5 2.62946C22.6065 2.62946 28.3705 8.39353 28.3705 15.5C28.3705 22.6065 22.6065 28.3705 15.5 28.3705Z\",\n stroke: \"none\",\n },\n {\n d: \"M21.5616 19.8737L16.6279 16.3066V7.74358C16.6279 7.59135 16.5033 7.4668 16.3511 7.4668H14.6869C14.5347 7.4668 14.4102 7.59135 14.4102 7.74358V17.2719C14.4102 17.3619 14.4517 17.4449 14.5243 17.4968L20.2469 21.6693C20.3714 21.7593 20.5444 21.7316 20.6344 21.6105L21.6239 20.2612C21.7138 20.1332 21.6861 19.9602 21.5616 19.8737Z\",\n stroke: \"none\",\n },\n ],\n },\n badges: {\n viewBox: \"0 0 15 20\",\n contents: [\n {\n d: \"M7.31704 0C5.87632 0.00156538 4.46811 0.3712 3.26855 1.06267C2.06898 1.75414 1.13132 2.73675 0.572838 3.8876C0.0143548 5.03844 -0.140155 6.30644 0.128633 7.53298C0.397421 8.75953 1.07758 9.89017 2.08402 10.7835V19.0457C2.08456 19.2003 2.1307 19.3522 2.21805 19.487C2.30541 19.6218 2.43108 19.735 2.58313 19.8159C2.73518 19.8968 2.90857 19.9426 3.08682 19.9491C3.26507 19.9556 3.44227 19.9224 3.6016 19.8529L7.31704 18.2476L11.0325 19.8529C11.1783 19.9176 11.3396 19.9518 11.5034 19.9526C11.6994 19.9532 11.8916 19.9061 12.0582 19.8166C12.209 19.7349 12.3333 19.6213 12.4194 19.4864C12.5054 19.3515 12.5504 19.1998 12.5501 19.0457V10.7835C13.5565 9.89017 14.2367 8.75953 14.5054 7.53298C14.7742 6.30644 14.6197 5.03844 14.0612 3.8876C13.5028 2.73675 12.5651 1.75414 11.3655 1.06267C10.166 0.3712 8.75776 0.00156538 7.31704 0ZM10.4568 17.5765L7.78801 16.4247C7.64193 16.3609 7.48062 16.3276 7.31704 16.3276C7.15346 16.3276 6.99215 16.3609 6.84607 16.4247L4.17723 17.5765V12.0804C4.83965 12.3515 5.54523 12.5349 6.27043 12.6246V13.6041C6.27043 13.8446 6.3807 14.0753 6.57698 14.2454C6.77325 14.4155 7.03946 14.511 7.31704 14.511C7.59461 14.511 7.86082 14.4155 8.0571 14.2454C8.25337 14.0753 8.36364 13.8446 8.36364 13.6041V12.6246C9.08885 12.5349 9.79443 12.3515 10.4568 12.0804V17.5765ZM7.31704 10.8833C6.28205 10.8833 5.2703 10.6173 4.40973 10.119C3.54917 9.62075 2.87844 8.91253 2.48236 8.08392C2.08629 7.25531 1.98266 6.34354 2.18457 5.46389C2.38649 4.58425 2.88489 3.77624 3.61674 3.14206C4.34859 2.50787 5.28102 2.07598 6.29613 1.90101C7.31123 1.72604 8.36342 1.81584 9.31963 2.15906C10.2758 2.50228 11.0931 3.0835 11.6681 3.82923C12.2431 4.57495 12.5501 5.45169 12.5501 6.34857C12.5501 7.55124 11.9987 8.70466 11.0173 9.55508C10.036 10.4055 8.70492 10.8833 7.31704 10.8833Z\",\n stroke: \"none\",\n },\n ],\n },\n materials: {\n viewBox: \"0 0 41 54\",\n contents: [\n {\n d: \"M39.9146 5.56518L38.5514 5.39479C38.3811 5.39479 38.2675 5.45159 38.1539 5.56518C38.0403 5.84917 37.6995 6.01956 37.4155 5.96276L36.7907 5.84917C36.45 5.79237 36.2228 5.56518 36.166 5.2812C36.166 5.11081 35.9956 4.99722 35.882 4.99722C35.2004 4.88362 34.6893 4.82683 33.7237 4.71323C32.7014 4.54284 30.5999 4.25886 27.3625 7.26908C26.9649 7.60986 27.3625 8.23463 27.8169 8.06424C31.1111 6.9283 32.9286 7.66666 32.7014 9.25696L32.5878 10.0521L35.3708 10.4497L35.598 8.91618C35.6548 8.5754 36.0524 8.29142 36.3932 8.34822L37.0179 8.46181C37.3587 8.51861 37.5859 8.74579 37.6427 9.02978C37.6427 9.20017 37.8131 9.31376 37.9267 9.31376L39.2898 9.48415C39.5738 9.54095 39.8578 9.31376 39.9146 9.02978L40.3121 6.18995C40.4257 5.84917 40.1985 5.56518 39.9146 5.56518Z\",\n stroke: \"none\",\n },\n {\n d: \"M15.3206 11.5865C18.5201 11.5865 21.1139 8.99278 21.1139 5.79326C21.1139 2.59373 18.5201 0 15.3206 0C12.1211 0 9.52734 2.59373 9.52734 5.79326C9.52734 8.99278 12.1211 11.5865 15.3206 11.5865Z\",\n stroke: \"none\",\n },\n {\n d: \"M34.2351 19.9361L35.2575 11.587L32.4744 11.1895L30.9977 19.5386C29.7482 19.3682 28.2147 19.0274 26.7948 18.5162C25.886 18.1754 25.0909 17.4939 24.1253 16.6987C22.1375 15.0516 19.6952 13.0637 15.3219 13.0637C5.26886 13.0637 0.668327 19.7657 0.441141 20.0497C-0.183622 20.9585 -0.126826 22.1512 0.497937 23.0599L5.04167 29.1372C5.55284 29.8187 6.34799 30.1595 7.14314 30.1595C7.65431 30.1595 8.22228 29.9891 8.67665 29.6484C8.79025 29.5348 8.96064 29.4212 9.07423 29.3076V31.2955L5.21206 50.4359C4.87128 52.0262 5.89362 53.5029 7.48392 53.8437C7.65431 53.9005 7.8815 53.9005 8.05189 53.9005C9.41501 53.9005 10.6077 52.935 10.8917 51.5719L14.6971 32.6586H15.833L16.0034 51.0039C16.0034 52.5942 17.2529 53.9005 18.9 53.8437C20.4904 53.8437 21.7967 52.5374 21.7399 50.9471L21.5695 21.2993C22.535 22.0944 23.671 22.8896 25.0341 23.4007C26.7948 24.0823 28.6691 24.4231 30.2026 24.707L29.9754 26.1838C29.9186 26.6949 30.2026 27.1493 30.7137 27.2061L32.4744 27.4333C32.9856 27.4901 33.44 27.1493 33.4968 26.6381L33.6672 24.991C34.9735 24.8774 36.0526 23.8551 36.0526 22.492C36.0526 21.2993 35.3143 20.2769 34.2351 19.9361ZM6.00721 21.6968C6.74557 21.0721 7.76791 20.2769 9.18782 19.5954L9.13102 25.8998L6.00721 21.6968Z\",\n stroke: \"none\",\n },\n ],\n },\n activity: {\n viewBox: \"0 0 22 17\",\n contents: [\n {\n d: \"M0 2.50936C0 1.96816 0.248101 1.44912 0.689723 1.06643C1.13135 0.683742 1.73031 0.46875 2.35486 0.46875H19.6238C20.2484 0.46875 20.8474 0.683742 21.289 1.06643C21.7306 1.44912 21.9787 1.96816 21.9787 2.50936V6.59058C21.9787 7.13179 21.7306 7.65083 21.289 8.03352C20.8474 8.4162 20.2484 8.6312 19.6238 8.6312H2.35486C1.73031 8.6312 1.13135 8.4162 0.689723 8.03352C0.248101 7.65083 0 7.13179 0 6.59058V2.50936ZM2.35486 1.82916C2.14668 1.82916 1.94702 1.90082 1.79982 2.02838C1.65261 2.15595 1.56991 2.32896 1.56991 2.50936V6.59058C1.56991 6.77099 1.65261 6.944 1.79982 7.07156C1.94702 7.19912 2.14668 7.27079 2.35486 7.27079H19.6238C19.832 7.27079 20.0317 7.19912 20.1789 7.07156C20.3261 6.944 20.4088 6.77099 20.4088 6.59058V2.50936C20.4088 2.32896 20.3261 2.15595 20.1789 2.02838C20.0317 1.90082 19.832 1.82916 19.6238 1.82916H2.35486ZM0 13.3926C0 12.8514 0.248101 12.3324 0.689723 11.9497C1.13135 11.567 1.73031 11.352 2.35486 11.352H7.06459C7.68913 11.352 8.2881 11.567 8.72972 11.9497C9.17135 12.3324 9.41945 12.8514 9.41945 13.3926V14.753C9.41945 15.2942 9.17135 15.8133 8.72972 16.196C8.2881 16.5786 7.68913 16.7936 7.06459 16.7936H2.35486C1.73031 16.7936 1.13135 16.5786 0.689723 16.196C0.248101 15.8133 0 15.2942 0 14.753V13.3926ZM2.35486 12.7124C2.14668 12.7124 1.94702 12.7841 1.79982 12.9116C1.65261 13.0392 1.56991 13.2122 1.56991 13.3926V14.753C1.56991 14.9334 1.65261 15.1064 1.79982 15.234C1.94702 15.3616 2.14668 15.4332 2.35486 15.4332H7.06459C7.27277 15.4332 7.47242 15.3616 7.61963 15.234C7.76684 15.1064 7.84954 14.9334 7.84954 14.753V13.3926C7.84954 13.2122 7.76684 13.0392 7.61963 12.9116C7.47242 12.7841 7.27277 12.7124 7.06459 12.7124H2.35486ZM14.9141 11.352C14.2896 11.352 13.6906 11.567 13.249 11.9497C12.8074 12.3324 12.5593 12.8514 12.5593 13.3926V14.753C12.5593 15.2942 12.8074 15.8133 13.249 16.196C13.6906 16.5786 14.2896 16.7936 14.9141 16.7936H19.6238C20.2484 16.7936 20.8474 16.5786 21.289 16.196C21.7306 15.8133 21.9787 15.2942 21.9787 14.753V13.3926C21.9787 12.8514 21.7306 12.3324 21.289 11.9497C20.8474 11.567 20.2484 11.352 19.6238 11.352H14.9141ZM14.1292 13.3926C14.1292 13.2122 14.2119 13.0392 14.3591 12.9116C14.5063 12.7841 14.7059 12.7124 14.9141 12.7124H19.6238C19.832 12.7124 20.0317 12.7841 20.1789 12.9116C20.3261 13.0392 20.4088 13.2122 20.4088 13.3926V14.753C20.4088 14.9334 20.3261 15.1064 20.1789 15.234C20.0317 15.3616 19.832 15.4332 19.6238 15.4332H14.9141C14.7059 15.4332 14.5063 15.3616 14.3591 15.234C14.2119 15.1064 14.1292 14.9334 14.1292 14.753V13.3926Z\",\n stroke: \"none\",\n },\n ],\n },\n\n asynchronous: {\n viewBox: \"0 0 109 109\",\n contents: [\n {\n d: \"M91.5988 0.58652C90.2385 0.736228 89.1038 2.03211 89.1332 3.40234V16.0952L84.9807 20.2539V13.1061C85.0145 11.5333 83.4709 10.118 81.9096 10.2903C80.5493 10.44 79.4146 11.7358 79.444 13.1061V25.7989L78.8384 26.4054C70.5239 19.0027 59.5874 14.4923 47.6079 14.4923C21.6491 14.4923 0.545898 35.627 0.545898 61.6247C0.545898 87.6224 21.6491 108.757 47.6079 108.757C73.5668 108.757 94.67 87.6224 94.67 61.6247C94.67 51.5869 91.5132 42.2806 86.1486 34.6362L82.2124 38.535C82.2191 38.5453 82.2056 38.5681 82.2124 38.5784C86.5848 45.1722 89.1332 53.1018 89.1332 61.6247C89.1332 84.6256 70.5745 103.212 47.6079 103.212C24.6413 103.212 6.08261 84.6256 6.08261 61.6247C6.08261 38.6237 24.6413 20.0373 47.6079 20.0373C58.0864 20.0373 67.646 23.9121 74.9454 30.3042L68.0678 37.1921C62.5332 32.535 55.385 29.741 47.6079 29.741C30.0581 29.741 15.7718 44.0486 15.7718 61.6247C15.7718 79.2007 30.0581 93.5084 47.6079 93.5084C65.1577 93.5084 79.444 79.2007 79.444 61.6247C79.444 55.8101 77.8483 50.3788 75.1185 45.6829L71.0957 49.7117C72.8992 53.2856 73.9073 57.3312 73.9073 61.6247C73.9073 76.204 62.1655 87.9634 47.6079 87.9634C33.0504 87.9634 21.3086 76.204 21.3086 61.6247C21.3086 47.0454 33.0504 35.286 47.6079 35.286C53.8857 35.286 59.6154 37.476 64.1315 41.1343L56.2158 49.0619C53.7598 47.361 50.8029 46.376 47.6079 46.376C39.2317 46.376 32.382 53.2359 32.382 61.6247C32.382 70.0135 39.2317 76.8735 47.6079 76.8735C55.9842 76.8735 62.8339 70.0135 62.8339 61.6247C62.8339 60.5095 62.6767 59.4186 62.4446 58.3757L57.0376 63.7907C56.0602 68.12 52.2429 71.3285 47.6079 71.3285C42.2239 71.3285 37.9187 67.0167 37.9187 61.6247C37.9187 56.2326 42.2239 51.921 47.6079 51.921C49.2764 51.921 50.8282 52.3591 52.193 53.0906L45.6614 59.632C44.5856 60.6073 44.4929 62.4751 45.4668 63.5525C46.4407 64.6299 48.3056 64.7228 49.3814 63.7474C49.396 63.7331 83.337 29.741 83.337 29.741H96.0541C97.5167 29.7617 98.8619 28.4334 98.8619 26.9685C98.8619 25.5037 97.5167 24.1753 96.0541 24.196H88.8737L93.0262 20.0373H105.743C107.206 20.058 108.551 18.7297 108.551 17.2648C108.551 15.7999 107.206 14.4716 105.743 14.4923H94.67V3.40234C94.7038 1.82957 93.1601 0.414268 91.5988 0.58652Z\",\n stroke: \"none\",\n },\n ],\n },\n\n synchronous: {\n viewBox: \"0 0 30 30\",\n contents: [\n {\n d: \"M14.0236 0.0300206C9.01069 0.345861 4.49132 3.16375 1.97367 7.54335C-0.229151 11.3753 -0.609814 16.0489 0.941365 20.2184C1.44503 21.5723 2.24758 23.0101 3.13511 24.1487C3.94703 25.1903 4.9889 26.213 6.02447 26.9851C8.14475 28.5658 10.6535 29.56 13.2736 29.8578C14.5128 29.9986 15.945 29.9748 17.2046 29.7925C22.0047 29.0978 26.2484 26.0125 28.4154 21.6422C29.2996 19.859 29.8051 17.9963 29.9436 16.0109C29.9833 15.4405 29.9611 13.9447 29.9055 13.451C29.8471 12.9322 29.7937 12.5769 29.7056 12.1202C28.9413 8.16121 26.5972 4.67404 23.2046 2.44923C20.4973 0.673743 17.2765 -0.174941 14.0236 0.0300206ZM12.3653 1.97163C11.1345 3.22719 10.1778 4.55083 9.35393 6.13831C9.12202 6.58513 8.75951 7.38138 8.60687 7.77914C8.56053 7.89994 8.517 8.00795 8.51018 8.01916C8.48643 8.05813 7.79478 7.64534 7.31263 7.30449C6.68737 6.86244 5.94352 6.19117 5.49414 5.66342L5.3098 5.44693L5.59346 5.17246C7.21045 3.60765 9.3059 2.43083 11.515 1.84687C11.8148 1.76762 12.6435 1.58473 12.7281 1.57912C12.7411 1.57827 12.5778 1.75488 12.3653 1.97163ZM17.6365 1.65576C19.751 2.07367 21.7635 3.00701 23.4429 4.34859C23.7769 4.61543 24.4108 5.17474 24.5596 5.33391L24.6215 5.40009L24.4729 5.58151C23.9374 6.23552 23.1523 6.92968 22.3253 7.48045C21.9553 7.72684 21.5162 7.98586 21.4684 7.98586C21.4538 7.98586 21.3971 7.8725 21.3425 7.73392C20.7976 6.35151 19.9965 4.9212 19.0815 3.69698C18.6084 3.06406 17.821 2.16809 17.386 1.7677C17.2723 1.66313 17.1932 1.57757 17.2101 1.57757C17.227 1.57757 17.4189 1.61276 17.6365 1.65576ZM14.2952 5.85407V9.58793L14.224 9.5878C14.0898 9.58757 13.2735 9.51028 12.9762 9.46966C12.291 9.37607 11.5293 9.21131 10.8814 9.01651C10.5648 8.92134 9.82451 8.66475 9.79674 8.64056C9.7611 8.60955 10.1881 7.60867 10.5169 6.95226C11.3942 5.2013 12.5171 3.70654 13.9072 2.43925C14.0992 2.26421 14.2651 2.1208 14.2758 2.12059C14.2864 2.12039 14.2952 3.80044 14.2952 5.85407ZM16.1028 2.49106C17.5733 3.82039 18.8806 5.63766 19.7396 7.54658C19.903 7.90976 20.1658 8.55436 20.1658 8.59188C20.1658 8.62529 19.4388 8.89281 18.9762 9.02961C18.016 9.31356 17.1184 9.47173 15.8792 9.57537L15.6917 9.59105V5.86727C15.6917 2.68587 15.697 2.14649 15.7279 2.16414C15.7477 2.1755 15.9164 2.32261 16.1028 2.49106ZM25.8595 6.82986C26.4095 7.56405 26.7992 8.20431 27.2158 9.05821C27.8149 10.2861 28.1979 11.4963 28.4141 12.8446C28.4714 13.2022 28.5385 13.8188 28.5504 14.097L28.5581 14.2779H25.6357H22.7132L22.682 13.7998C22.5922 12.427 22.407 11.2487 22.0888 10.0272C22.0093 9.72165 21.9394 9.44258 21.9337 9.40705C21.9241 9.34816 21.9502 9.32785 22.2277 9.17744C22.8605 8.83454 23.5437 8.36749 24.1785 7.84374C24.5352 7.54942 25.2381 6.86221 25.4417 6.60872C25.5057 6.52903 25.5639 6.4634 25.571 6.46291C25.5781 6.46239 25.7079 6.62753 25.8595 6.82986ZM4.89303 7.07733C5.70034 7.90521 6.72875 8.67534 7.79455 9.25012L8.05459 9.39038L8.01831 9.50852C7.9514 9.72643 7.73023 10.6311 7.6641 10.9574C7.4661 11.9343 7.30958 13.2088 7.28013 14.0841L7.27361 14.2779L4.3414 14.2844L1.40916 14.291L1.42698 14.0519C1.56009 12.2633 1.98604 10.659 2.74635 9.08294C3.15686 8.23193 3.79276 7.20908 4.26875 6.63404L4.37173 6.50965L4.48951 6.64696C4.55429 6.72249 4.7359 6.91616 4.89303 7.07733ZM20.6314 9.96025C20.6314 9.96607 20.6834 10.1725 20.747 10.4189C20.9548 11.2238 21.117 12.1193 21.2119 12.9859C21.2555 13.384 21.3035 14.0093 21.3037 14.181L21.3038 14.2908H18.4977H15.6917V12.6394V10.9879L15.918 10.971C17.5752 10.8469 18.9983 10.5527 20.2848 10.0683C20.5921 9.95258 20.6314 9.94036 20.6314 9.96025ZM10.015 10.2022C11.2733 10.6295 12.6054 10.8863 14.0044 10.9713L14.2955 10.989L14.2889 12.6334L14.2822 14.2779L11.4786 14.2844L8.675 14.291L8.69173 13.9049C8.73621 12.8782 8.91101 11.708 9.19125 10.5611C9.31363 10.0603 9.34185 9.97323 9.3778 9.98566C9.4011 9.99369 9.68783 10.0912 10.015 10.2022ZM7.29624 16.0802C7.32657 16.7572 7.43695 17.7131 7.57299 18.4768C7.67486 19.0488 7.92003 20.0973 8.05159 20.5236C8.06209 20.5576 8.02288 20.5891 7.88129 20.6603C7.36888 20.9182 6.4964 21.4887 5.95464 21.9202C5.41852 22.3472 4.93607 22.8029 4.51178 23.2831C4.42542 23.3808 4.35539 23.44 4.34434 23.4248C4.3339 23.4103 4.21659 23.2541 4.08368 23.0776C2.54773 21.0376 1.62001 18.5391 1.42793 15.9252L1.41037 15.6861H4.34447H7.27857L7.29624 16.0802ZM14.2952 17.327C14.2952 18.6223 14.2884 18.9678 14.2628 18.9679C14.178 18.9682 13.4787 19.0231 13.2607 19.0467C12.0083 19.1819 10.7163 19.4774 9.65462 19.8714C9.49909 19.9291 9.36336 19.9675 9.35302 19.9566C9.32439 19.9265 9.08369 18.9291 8.99594 18.4768C8.84651 17.7069 8.72941 16.7651 8.69305 16.0408L8.67523 15.6861H11.4852H14.2952V17.327ZM21.2932 15.9898C21.2431 16.8579 21.1323 17.7315 20.9663 18.5673C20.8722 19.0411 20.6484 19.9672 20.6214 19.9941C20.6152 20.0003 20.4839 19.9594 20.3298 19.903C19.0497 19.4352 17.7594 19.1468 16.4288 19.0312C16.1727 19.009 15.9022 18.9848 15.8275 18.9774L15.6917 18.9641V17.3251V15.6861H18.5013H21.3108L21.2932 15.9898ZM28.5563 15.8476C28.4708 16.8419 28.3733 17.464 28.1809 18.2428C27.7348 20.0489 26.8976 21.786 25.7677 23.2498C25.6666 23.3807 25.5773 23.4854 25.5692 23.4823C25.5612 23.4793 25.4681 23.3782 25.3623 23.2577C24.5698 22.3539 23.448 21.4592 22.3147 20.8272C21.9538 20.6259 21.9238 20.6035 21.9341 20.544C21.9402 20.5085 22.0206 20.1829 22.1128 19.8205C22.4331 18.5613 22.6181 17.3408 22.6896 16.0156L22.7073 15.6861H25.6388H28.5702L28.5563 15.8476ZM14.2952 24.0865V27.8098L14.1723 27.7067C13.7137 27.3218 12.9819 26.5773 12.518 26.0237C11.4374 24.7344 10.4435 23.0386 9.8631 21.4939C9.78574 21.288 9.7477 21.3239 10.2219 21.156C10.8945 20.9179 11.664 20.7122 12.3555 20.5856C12.8677 20.4918 13.7674 20.3857 14.2111 20.3667L14.2952 20.3632V24.0865ZM16.4158 20.4296C17.4477 20.5275 18.5602 20.7702 19.5653 21.1169C20.0121 21.2709 20.1658 21.3352 20.1658 21.368C20.1658 21.3816 20.103 21.5481 20.0262 21.7381C19.2338 23.6974 18.1143 25.4327 16.7174 26.8668C16.3853 27.2077 15.7705 27.7809 15.7156 27.8007C15.7011 27.806 15.6917 26.352 15.6917 24.0867V20.364L15.8404 20.3765C15.9222 20.3834 16.1811 20.4073 16.4158 20.4296ZM8.64254 22.2131C9.2796 23.8037 10.1776 25.3541 11.2003 26.6293C11.5778 27.0999 11.8456 27.3992 12.3274 27.889C12.6508 28.2177 12.7881 28.3734 12.7543 28.3733C12.6613 28.3729 11.9302 28.2172 11.5279 28.1122C9.33931 27.5407 7.22543 26.3593 5.63287 24.8176L5.30952 24.5045L5.53415 24.2468C6.07754 23.6234 6.81251 22.9833 7.54516 22.4953C7.90981 22.2524 8.46458 21.917 8.50583 21.9146C8.51501 21.914 8.57654 22.0484 8.64254 22.2131ZM21.7677 22.1239C22.8027 22.725 23.8285 23.5838 24.5227 24.4302L24.6223 24.5516L24.5212 24.6561C24.3806 24.8014 23.8155 25.3066 23.5667 25.5095C21.8696 26.893 19.8215 27.859 17.6633 28.2939C17.4462 28.3377 17.2519 28.3735 17.2317 28.3735C17.2115 28.3735 17.3176 28.2543 17.4675 28.1087C18.349 27.2522 19.253 26.1128 19.9688 24.9557C20.4639 24.1553 21.0101 23.0685 21.345 22.2172C21.3995 22.0786 21.4555 21.9652 21.4693 21.9652C21.4831 21.9652 21.6174 22.0366 21.7677 22.1239Z\",\n stroke: \"none\",\n },\n ],\n },\n\n export: {\n viewBox: \"0 0 32 32\",\n contents: [\n {\n d: \"M30.6654 15.9987L25.332 10.6654V14.6654H13.332V17.332H25.332V21.332L30.6654 15.9987ZM1.33203 23.9987V7.9987C1.33203 7.29145 1.61298 6.61318 2.11308 6.11308C2.61318 5.61298 3.29145 5.33203 3.9987 5.33203H19.9987C20.7059 5.33203 21.3842 5.61298 21.8843 6.11308C22.3844 6.61318 22.6654 7.29145 22.6654 7.9987V11.9987H19.9987V7.9987H3.9987V23.9987H19.9987V19.9987H22.6654V23.9987C22.6654 24.7059 22.3844 25.3842 21.8843 25.8843C21.3842 26.3844 20.7059 26.6654 19.9987 26.6654H3.9987C3.29145 26.6654 2.61318 26.3844 2.11308 25.8843C1.61298 25.3842 1.33203 24.7059 1.33203 23.9987Z\",\n stroke: \"none\",\n },\n ],\n },\n\n \"service-tracking\": {\n viewBox: \"0 0 89 89\",\n contents: [\n {\n d: \"M44.4987 7.41797V28.2773C44.4987 30.1214 45.2313 31.89 46.5352 33.1939C47.8392 34.4979 49.6077 35.2305 51.4518 35.2305H74.1654V74.168C74.1654 75.6432 73.5793 77.0581 72.5361 78.1012C71.493 79.1444 70.0781 79.7305 68.6029 79.7305H43.1044C46.4187 75.4971 48.2156 70.2735 48.207 64.8971C48.207 51.5842 37.4158 40.793 24.1029 40.793C20.8173 40.793 17.6874 41.4512 14.832 42.6397V12.9805C14.832 11.5052 15.4181 10.0904 16.4612 9.04719C17.5044 8.00402 18.9193 7.41797 20.3945 7.41797H44.4987ZM49.1341 8.2783V28.2773C49.1341 29.5567 50.1724 30.5951 51.4518 30.5951H73.1678L49.1341 8.2783ZM44.4987 64.8971C44.4987 76.1612 35.3669 85.293 24.1029 85.293C12.8388 85.293 3.70703 76.1612 3.70703 64.8971C3.70703 53.6331 12.8388 44.5013 24.1029 44.5013C35.3669 44.5013 44.4987 53.6331 44.4987 64.8971ZM25.957 51.918C25.957 51.4262 25.7617 50.9546 25.414 50.6069C25.0662 50.2591 24.5946 50.0638 24.1029 50.0638C23.6111 50.0638 23.1395 50.2591 22.7918 50.6069C22.444 50.9546 22.2487 51.4262 22.2487 51.918V63.043H11.1237C10.6319 63.043 10.1603 63.2383 9.8126 63.586C9.46488 63.9338 9.26953 64.4054 9.26953 64.8971C9.26953 65.3889 9.46488 65.8605 9.8126 66.2082C10.1603 66.556 10.6319 66.7513 11.1237 66.7513H22.2487V77.8763C22.2487 78.368 22.444 78.8397 22.7918 79.1874C23.1395 79.5351 23.6111 79.7305 24.1029 79.7305C24.5946 79.7305 25.0662 79.5351 25.414 79.1874C25.7617 78.8397 25.957 78.368 25.957 77.8763V66.7513H37.082C37.5738 66.7513 38.0454 66.556 38.3931 66.2082C38.7408 65.8605 38.9362 65.3889 38.9362 64.8971C38.9362 64.4054 38.7408 63.9338 38.3931 63.586C38.0454 63.2383 37.5738 63.043 37.082 63.043H25.957V51.918Z\",\n stroke: \"none\",\n },\n ],\n },\n};\n","import { sprite } from \"./data/icons\";\nimport React from \"react\";\nimport { icons } from \"./data/icons\";\n\n/**\n * The name of the icon.\n */\nexport type IconName = typeof icons[number];\n\n/**\n * The properties for the icon.\n */\nexport type IconProps = {\n name: IconName;\n};\n\n/**\n * A component for icons.\n */\nexport const Icon = (props: IconProps) => {\n const viewBox = sprite[props.name].viewBox;\n const contents = sprite[props.name].contents;\n\n if (!contents) {\n return null;\n }\n\n return (\n <svg\n className=\"fill-current stroke-current w-full h-full drop-shadow-[inherit]\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox={viewBox}\n >\n <title>{props.name}</title>\n {contents.map((v, k) => {\n return v.d && <path key={k} {...(v as React.SVGProps<SVGPathElement>)} />;\n })}\n\n {contents.map((v, k) => v.r && <circle key={k} {...(v as React.SVGProps<SVGCircleElement>)} />)}\n </svg>\n );\n};\n","import React from \"react\";\n\n/**\n * A component for Local Civics logo branding.\n */\nexport const Logo = () => {\n return (\n <img\n className=\"w-full overflow-hidden object-contain\"\n src={`https://cdn.localcivics.io/brand/localcivics.png`}\n alt=\"Logo\"\n />\n );\n};\n","import React from \"react\";\r\nimport { classname } from \"../../utils/classname/classname\";\r\nimport { Icon, IconName } from \"../Icon\";\r\nimport { Logo } from \"../Logo\";\r\n\r\n/**\r\n * The button color.\r\n */\r\nexport type ButtonColor =\r\n | \"slate\"\r\n | \"sky\"\r\n | \"green\"\r\n | \"rose\"\r\n | \"emerald\"\r\n | \"primary\"\r\n | \"secondary\"\r\n | \"slate:sky\"\r\n | \"slate:icon\"\r\n | \"blue\"\r\n | \"dark-blue\";\r\n\r\n/**\r\n * The button size.\r\n */\r\nexport type ButtonSize = \"tiny\" | \"xs\" | \"sm\" | \"md\" | \"md-small-text\" | \"lg\" | \"xl\" | \"full:sm\" | \"full:md\";\r\n\r\n/**\r\n * The button spacing.\r\n */\r\nexport type ButtonSpacing = \"none\" | \"xs\" | \"sm\" | \"md\" | \"lg\";\r\n\r\n/**\r\n * The button theme.\r\n */\r\nexport type ButtonTheme = \"light\" | \"dark\";\r\n\r\n/**\r\n * The button justify.\r\n */\r\nexport type ButtonJustify = \"center\" | \"start\";\r\n\r\n/**\r\n * The button border.\r\n */\r\nexport type ButtonBorder = \"none\" | \"rectangle\" | \"rounded\" | \"rounded-sm\" | \"circle\" | \"circle-sm\" | \"icon:circle\";\r\n\r\n/**\r\n * The button filter.\r\n */\r\nexport type ButtonFilter = \"shadow\" | \"none\";\r\n\r\n/**\r\n * The properties for the button.\r\n */\r\nexport type ButtonProps = {\r\n type?: \"submit\" | \"reset\" | \"button\";\r\n form?: boolean;\r\n theme?: ButtonTheme;\r\n active?: boolean;\r\n disabled?: boolean;\r\n color?: ButtonColor;\r\n size?: ButtonSize;\r\n spacing?: ButtonSpacing;\r\n icon?: IconName;\r\n logo?: boolean;\r\n justify?: ButtonJustify;\r\n border?: ButtonBorder;\r\n filter?: ButtonFilter;\r\n text?: string;\r\n footer?: string;\r\n wide?: boolean;\r\n onClick?: () => void;\r\n};\r\n\r\n/**\r\n * A component for buttons.\r\n * @param props\r\n * @constructor\r\n */\r\nexport const Button = (props: ButtonProps) => {\r\n const config = defaultConfig();\r\n withColor(config, props.color || \"slate\", props.theme);\r\n withSize(config, props.size || \"sm\");\r\n withActive(config, props.active);\r\n withDisabled(config, props.disabled);\r\n withFilter(config, props.filter);\r\n withJustify(config, props.justify);\r\n withBorder(config, props.border);\r\n withSpacing(config, props.spacing, props.wide);\r\n\r\n const onClick = () => !props.active && !props.disabled && props.onClick && props.onClick();\r\n\r\n return (\r\n <button disabled={props.disabled} type={props.type} className={classname(config.button)} onClick={onClick}>\r\n {props.icon && (\r\n <span className={classname(config.icon)}>\r\n <Icon name={props.icon} />\r\n </span>\r\n )}\r\n {props.logo && (\r\n <span className={classname(config.logo)}>\r\n <Logo />\r\n </span>\r\n )}\r\n\r\n {(props.text || props.footer) && (\r\n <div className=\"grid grid-cols-1 justify-items-center gap-4\">\r\n {props.text && <div className=\"text-center whitespace-nowrap\">{props.text}</div>}\r\n {props.footer && <div className=\"text-[0.5rem] font-semibold\">{props.footer}</div>}\r\n </div>\r\n )}\r\n </button>\r\n );\r\n};\r\n\r\ntype ButtonConfig = {\r\n icon: {\r\n base: string;\r\n size: string;\r\n border: string;\r\n };\r\n logo: {\r\n size: string;\r\n };\r\n button: {\r\n base: string;\r\n justify: string;\r\n spacing: string;\r\n color: {\r\n active: {\r\n text: string;\r\n border: string;\r\n bg: string;\r\n };\r\n interactive: {\r\n text: string;\r\n border: string;\r\n bg: string;\r\n };\r\n text: string;\r\n border: string;\r\n bg: string;\r\n };\r\n size: {\r\n text: string;\r\n container: string;\r\n };\r\n shadow: string;\r\n cursor: string;\r\n border: string;\r\n };\r\n};\r\n\r\nconst defaultConfig = () => {\r\n const config: ButtonConfig = {\r\n button: {\r\n base: \"transition-colors flex items-center gap-x-2 font-semibold\",\r\n justify: \"\",\r\n spacing: \"\",\r\n color: {\r\n active: {\r\n text: \"\",\r\n border: \"\",\r\n bg: \"\",\r\n },\r\n interactive: {\r\n text: \"\",\r\n border: \"\",\r\n bg: \"\",\r\n },\r\n text: \"\",\r\n border: \"\",\r\n bg: \"\",\r\n },\r\n size: {\r\n text: \"\",\r\n container: \"\",\r\n },\r\n shadow: \"\",\r\n cursor: \"\",\r\n border: \"\",\r\n },\r\n icon: {\r\n base: \"\",\r\n size: \"\",\r\n border: \"\",\r\n },\r\n logo: {\r\n size: \"\",\r\n },\r\n };\r\n return config;\r\n};\r\n\r\nconst withColor = (config: ButtonConfig, color?: ButtonColor, theme?: ButtonTheme) => {\r\n switch (color) {\r\n case \"slate\":\r\n config.button.color = {\r\n text: \"text-slate-500\",\r\n border: \"border-slate-500\",\r\n bg: \"bg-slate-500\",\r\n active: {\r\n text: \"text-slate-600\",\r\n border: \"border-slate-600\",\r\n bg: \"bg-slate-600\",\r\n },\r\n interactive: {\r\n text: \"focus:text-slate-600 active:text-slate-600 hover:text-slate-600\",\r\n border: \"focus:border-slate-600 active:border-slate-600 hover:border-slate-600\",\r\n bg: \"focus:bg-slate-600 active:bg-slate-600 hover:bg-slate-600\",\r\n },\r\n };\r\n break;\r\n case \"slate:icon\":\r\n config.button.color = {\r\n text: \"text-slate-500\",\r\n border: \"border-slate-500\",\r\n bg: \"bg-slate-500\",\r\n active: {\r\n text: \"text-sky-400\",\r\n border: \"border-sky-400\",\r\n bg: \"bg-sky-400\",\r\n },\r\n interactive: {\r\n text: \"focus:text-sky-600 active:text-sky-600 hover:text-sky-600\",\r\n border: \"focus:border-sky-600 active:border-sky-600 hover:border-sky-600\",\r\n bg: \"focus:bg-sky-600 active:bg-sky-600 hover:bg-sky-600\",\r\n },\r\n };\r\n break;\r\n case \"sky\":\r\n config.button.color = {\r\n active: {\r\n text: \"text-sky-600\",\r\n border: \"border-sky-600\",\r\n bg: \"bg-sky-600\",\r\n },\r\n text: \"text-sky-400\",\r\n border: \"border-sky-400\",\r\n bg: \"bg-sky-400\",\r\n interactive: {\r\n text: \"focus:text-sky-600 active:text-sky-600 hover:text-sky-600\",\r\n border: \"focus:border-sky-600 active:border-sky-600 hover:border-sky-600\",\r\n bg: \"focus:bg-sky-600 active:bg-sky-600 hover:bg-sky-600\",\r\n },\r\n };\r\n break;\r\n case \"green\":\r\n config.button.color = {\r\n active: {\r\n text: \"text-green-600\",\r\n border: \"border-green-600\",\r\n bg: \"bg-green-600\",\r\n },\r\n interactive: {\r\n text: \"focus:text-green-600 active:text-green-600 hover:text-green-600\",\r\n border: \"focus:border-green-600 active:border-green-600 hover:border-green-600\",\r\n bg: \"focus:bg-green-600 active:bg-green-600 hover:bg-green-600\",\r\n },\r\n text: \"text-green-400\",\r\n border: \"border-green-400\",\r\n bg: \"bg-green-400\",\r\n };\r\n break;\r\n case \"primary\":\r\n config.button.color = {\r\n active: {\r\n text: \"text-primary-600\",\r\n border: \"border-primary-600\",\r\n bg: \"bg-primary-600\",\r\n },\r\n interactive: {\r\n text: \"focus:text-primary-600 active:text-primary-600 hover:text-primary-600\",\r\n border: \"focus:border-primary-600 active:border-primary-600 hover:border-primary-600\",\r\n bg: \"focus:bg-primary-600 active:bg-primary-600 hover:bg-primary-600\",\r\n },\r\n text: \"text-primary-400\",\r\n border: \"border-primary-400\",\r\n bg: \"bg-primary-400\",\r\n };\r\n break;\r\n case \"secondary\":\r\n config.button.color = {\r\n active: {\r\n text: \"text-secondary-600\",\r\n border: \"border-secondary-600\",\r\n bg: \"bg-secondary-600\",\r\n },\r\n interactive: {\r\n text: \"focus:text-secondary-600 active:text-secondary-600 hover:text-secondary-600\",\r\n border: \"focus:border-secondary-600 active:border-secondary-600 hover:border-secondary-600\",\r\n bg: \"focus:bg-secondary-600 active:bg-secondary-600 hover:bg-secondary-600\",\r\n },\r\n text: \"text-secondary-400\",\r\n border: \"border-secondary-400\",\r\n bg: \"bg-secondary-400\",\r\n };\r\n break;\r\n case \"rose\":\r\n config.button.color = {\r\n active: {\r\n text: \"text-rose-600\",\r\n border: \"border-rose-600\",\r\n bg: \"bg-rose-600\",\r\n },\r\n interactive: {\r\n text: \"focus:text-rose-600 active:text-rose-600 hover:text-rose-600\",\r\n border: \"focus:border-rose-600 active:border-rose-600 hover:border-rose-600\",\r\n bg: \"focus:bg-rose-600 active:bg-rose-600 hover:bg-rose-600\",\r\n },\r\n text: \"text-rose-400\",\r\n border: \"border-rose-400\",\r\n bg: \"bg-rose-400\",\r\n };\r\n break;\r\n case \"emerald\":\r\n config.button.color = {\r\n active: {\r\n text: \"text-emerald-600\",\r\n border: \"border-emerald-600\",\r\n bg: \"bg-emerald-600\",\r\n },\r\n interactive: {\r\n text: \"focus:text-emerald-600 active:text-emerald-600 hover:text-emerald-600\",\r\n border: \"focus:border-emerald-600 active:border-emerald-600 hover:border-emerald-600\",\r\n bg: \"focus:bg-emerald-600 active:bg-emerald-600 hover:bg-emerald-600\",\r\n },\r\n text: \"text-emerald-400\",\r\n border: \"border-emerald-400\",\r\n bg: \"bg-emerald-400\",\r\n };\r\n break;\r\n case \"slate:sky\":\r\n config.button.color = {\r\n active: {\r\n text: \"text-sky-400\",\r\n border: \"border-sky-400/95\",\r\n bg: \"bg-sky-400/95\",\r\n },\r\n interactive: {\r\n text: \"focus:text-slate-600 active:text-slate-600 hover:text-sky-400\",\r\n border: \"focus:border-sky-300/95 active:border-sky-300/95 hover:border-sky-300/95\",\r\n bg: \"hover:bg-sky-400/95\",\r\n },\r\n text: \"text-slate-500\",\r\n border: \"border-slate-100\",\r\n bg: \"bg-slate-50/95\",\r\n };\r\n break;\r\n case \"blue\":\r\n config.button.color = {\r\n active: {\r\n text: \"text-blue-600\",\r\n border: \"border-blue-600\",\r\n bg: \"bg-blue-600\",\r\n },\r\n text: \"text-blue-400\",\r\n border: \"border-blue-400\",\r\n bg: \"bg-blue-400\",\r\n interactive: {\r\n text: \"focus:text-blue-600 active:text-blue-600 hover:text-blue-600\",\r\n border: \"focus:border-blue-600 active:border-blue-600 hover:border-blue-600\",\r\n bg: \"focus:bg-blue-600 active:bg-blue-600 hover:bg-blue-600\",\r\n },\r\n };\r\n break;\r\n case \"dark-blue\":\r\n config.button.color = {\r\n active: {\r\n text: \"text-dark-blue-600\",\r\n border: \"border-dark-blue-600\",\r\n bg: \"bg-dark-blue-600\",\r\n },\r\n text: \"text-dark-blue-400\",\r\n border: \"border-dark-blue-400\",\r\n bg: \"bg-dark-blue-400\",\r\n interactive: {\r\n text: \"focus:text-dark-blue-600 active:text-dark-blue-600 hover:text-dark-blue-600\",\r\n border: \"focus:border-dark-blue-600 active:border-dark-blue-600 hover:border-dark-blue-600\",\r\n bg: \"focus:bg-dark-blue-600 active:bg-dark-blue-600 hover:bg-dark-blue-600\",\r\n },\r\n };\r\n break;\r\n }\r\n\r\n switch (theme) {\r\n case \"dark\":\r\n config.button.color.text = \"text-white\";\r\n config.button.color.active.text = \"text-white\";\r\n config.button.color.interactive.text = \"hover:text-white focus:text-white active:text-white\";\r\n break;\r\n default:\r\n config.button.color.bg = \"\";\r\n config.button.color.active.bg = \"\";\r\n config.button.color.interactive.bg = \"\";\r\n }\r\n};\r\n\r\nconst withSize = (config: ButtonConfig, size?: ButtonSize) => {\r\n if (size?.startsWith(\"full:\")) {\r\n config.button.size.container = \"w-full\";\r\n }\r\n\r\n switch (size) {\r\n case \"tiny\":\r\n config.button.size.text = \"text-[0.5rem]\";\r\n config.icon.size = \"w-1 h-1\";\r\n config.logo.size = \"w-12 h-1\";\r\n break;\r\n case \"xs\":\r\n config.button.size.text = \"text-xs\";\r\n config.icon.size = \"w-3 h-3\";\r\n config.logo.size = \"w-18 h-3\";\r\n break;\r\n case \"sm\":\r\n config.button.size.text = \"text-sm\";\r\n config.icon.size = \"w-4 h-4\";\r\n config.logo.size = \"w-20 h-4\";\r\n break;\r\n case \"full:sm\":\r\n config.button.size.text = \"text-xs md:text-sm\";\r\n config.icon.size = \"w-5 h-5 scale-[0.9] p-1 md:scale-[1.2] md:w-6 md:h-6 md:p-1.5 overflow-hidden\";\r\n config.logo.size = \"w-20 h-4\";\r\n break;\r\n case \"md\":\r\n config.button.size.text = \"text-md\";\r\n config.icon.size = \"w-5 h-5\";\r\n config.logo.size = \"w-28 h-5 -ml-1\";\r\n break;\r\n case \"md-small-text\":\r\n config.button.size.text = \"text-sm\";\r\n config.icon.size = \"w-5 h-5\";\r\n config.logo.size = \"w-28 h-5 -ml-1\";\r\n case \"lg\":\r\n config.button.size.text = \"text-md\";\r\n config.icon.size = \"w-6 h-6\";\r\n config.logo.size = \"w-36 h-6\";\r\n break;\r\n case \"xl\":\r\n config.button.size.text = \"text-lg\";\r\n config.icon.size = \"w-7 h-7\";\r\n config.logo.size = \"w-28 h-7\";\r\n break;\r\n }\r\n};\r\n\r\nconst withActive = (config: ButtonConfig, active?: boolean) => {\r\n if (active) {\r\n config.button.cursor = \"cursor-default\";\r\n config.button.color.text = \"\";\r\n config.button.color.border = \"\";\r\n config.button.color.bg = \"\";\r\n } else {\r\n config.button.color.active = defaultConfig().button.color.active;\r\n }\r\n};\r\n\r\nconst withDisabled = (config: ButtonConfig, disabled?: boolean) => {\r\n if (disabled) {\r\n if (config.button.color.text === \"text-white\") {\r\n config.button.color.bg = \"bg-slate-200\";\r\n config.button.color.border = \"border-slate-200\";\r\n }\r\n\r\n config.button.cursor = \"cursor-default\";\r\n config.button.color.active.text = \"\";\r\n config.button.color.active.border = \"\";\r\n config.button.color.active.bg = \"\";\r\n config.button.color.interactive.text = \"\";\r\n config.button.color.interactive.border = \"\";\r\n config.button.color.interactive.bg = \"\";\r\n }\r\n};\r\n\r\nconst withFilter = (config: ButtonConfig, filter?: ButtonFilter) => {\r\n switch (filter) {\r\n case \"shadow\":\r\n config.button.shadow = \"shadow-md\";\r\n break;\r\n default:\r\n config.button.shadow = \"\";\r\n }\r\n};\r\n\r\nconst withJustify = (config: ButtonConfig, justify?: ButtonJustify) => {\r\n switch (justify) {\r\n case \"start\":\r\n config.button.justify = \"justify-start\";\r\n break;\r\n default:\r\n config.button.justify = \"justify-center\";\r\n break;\r\n }\r\n};\r\n\r\nconst withBorder = (config: ButtonConfig, border?: ButtonBorder) => {\r\n switch (border) {\r\n case \"rounded\":\r\n config.button.border = \"border-2 rounded-md\";\r\n break;\r\n case \"rounded-sm\":\r\n config.button.border = \"border rounded-md\";\r\n break;\r\n case \"rectangle\":\r\n config.button.border = \"border\";\r\n break;\r\n case \"circle\":\r\n config.button.border = \"border-2 rounded-full\";\r\n break;\r\n case \"circle-sm\":\r\n config.button.border = \"border rounded-full\";\r\n break;\r\n case \"icon:circle\":\r\n config.icon.border = \"border rounded-full\";\r\n break;\r\n default:\r\n config.button.border = \"\";\r\n break;\r\n }\r\n};\r\n\r\nconst withSpacing = (config: ButtonConfig, spacing?: ButtonSpacing, wide?: boolean) => {\r\n switch (spacing) {\r\n case \"xs\":\r\n config.button.spacing = \"py-0.5 px-3\";\r\n break;\r\n case \"sm\":\r\n config.button.spacing = \"py-1 px-5\";\r\n break;\r\n case \"md\":\r\n config.button.spacing = \"py-3 px-8\";\r\n break;\r\n case \"lg\":\r\n config.button.spacing = \"py-3 px-8\";\r\n break;\r\n default:\r\n config.button.spacing = \"\";\r\n break;\r\n }\r\n\r\n if (wide) {\r\n config.button.spacing = \"py-2.5 px-10\";\r\n }\r\n};\r\n","import React from \"react\";\nimport { builder } from \"../../utils/classname/classname\";\n\n/**\n * The properties for the loader.\n */\nexport type LoaderProps = {\n isLoading?: boolean;\n children: React.ReactNode;\n};\n\n/**\n * A component for content that is not ready to be displayed.\n */\nexport const Loader = (props: LoaderProps) => {\n const loaderClassName = builder(\"flex absolute top-0 left-0 h-full w-full m-auto transition ease-in-out duration-500\")\n .if(!!props.isLoading, \"visible opacity-full\")\n .else(\"invisible opacity-0\")\n .build();\n\n const contentClassName = builder(\"w-full transition ease-in-out duration-500\")\n .if(!!props.isLoading, \"invisible opacity-0\")\n .else(\"visible opacity-full\")\n .build();\n\n const containerClassName = builder(\"my-auto\").if(!!props.isLoading, \"relative\").build();\n\n return (\n <>\n <div className={containerClassName}>\n {/*<!-- By Sam Herbert (@sherb), for everyone. More @ http://goo.gl/7AJzbL -->*/}\n <div className={loaderClassName}>\n <svg\n className=\"m-auto stroke-sky-300\"\n width=\"35\"\n height=\"35\"\n viewBox=\"0 0 45 45\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g fill=\"none\" fillRule=\"evenodd\" transform=\"translate(1 1)\" strokeWidth=\"2\">\n <circle cx=\"22\" cy=\"22\" r=\"6\" strokeOpacity=\"0\">\n <animate\n attributeName=\"r\"\n begin=\"1.5s\"\n dur=\"3s\"\n values=\"6;22\"\n calcMode=\"linear\"\n repeatCount=\"indefinite\"\n />\n <animate\n attributeName=\"stroke-opacity\"\n begin=\"1.5s\"\n dur=\"3s\"\n values=\"1;0\"\n calcMode=\"linear\"\n repeatCount=\"indefinite\"\n />\n <animate\n attributeName=\"stroke-width\"\n begin=\"1.5s\"\n dur=\"3s\"\n values=\"2;0\"\n calcMode=\"linear\"\n repeatCount=\"indefinite\"\n />\n </circle>\n <circle cx=\"22\" cy=\"22\" r=\"6\" strokeOpacity=\"0\">\n <animate\n attributeName=\"r\"\n begin=\"3s\"\n dur=\"3s\"\n values=\"6;22\"\n calcMode=\"linear\"\n repeatCount=\"indefinite\"\n />\n <animate\n attributeName=\"stroke-opacity\"\n begin=\"3s\"\n dur=\"3s\"\n values=\"1;0\"\n calcMode=\"linear\"\n repeatCount=\"indefinite\"\n />\n <animate\n attributeName=\"stroke-width\"\n begin=\"3s\"\n dur=\"3s\"\n values=\"2;0\"\n calcMode=\"linear\"\n repeatCount=\"indefinite\"\n />\n </circle>\n <circle cx=\"22\" cy=\"22\" r=\"8\">\n <animate\n attributeName=\"r\"\n begin=\"0s\"\n dur=\"1.5s\"\n values=\"6;1;2;3;4;5;6\"\n calcMode=\"linear\"\n repeatCount=\"indefinite\"\n />\n </circle>\n </g>\n </svg>\n </div>\n <div className={contentClassName}>{props.children}</div>\n </div>\n </>\n );\n};\n","import React from \"react\";\nimport { builder } from \"../../utils/classname/classname\";\nimport { Button } from \"../Button\";\nimport { Loader } from \"../Loader\";\n\n/**\n * The properties for the modal.\n */\nexport type ModalProps = {\n isLoading?: boolean;\n visible?: boolean;\n inline?: boolean;\n top?: boolean;\n plain?: boolean;\n transparent?: boolean;\n stage?: boolean;\n children?: React.ReactNode;\n onClose?: () => void;\n};\n\n/**\n * A component for displaying modals\n */\nexport const Modal = (props: ModalProps) => {\n const className = builder(\"font-proxima grid grid-cols-1 overscroll-contain justify-items-center px-4 md:px-2\")\n .append(\"py-5\")\n .append(\"transition ease-in-out duration-400\")\n .if(!props.transparent && !props.stage, \"bg-gray-500/75\")\n .if(!!props.stage, \"bg-gray-100\")\n .if(!props.inline, \"fixed w-screen h-screen top-0 left-0\")\n .if(!!props.inline, \"w-full h-full\")\n .if(!props.transparent && !!props.visible, \"z-30\")\n .if(!!props.visible, \"visible opacity-full\")\n .if(!props.transparent && !props.visible, \"-z-30 invisible opacity-0\")\n .if(!props.top, \"content-center\")\n .if(!!props.top, \"content-start\")\n .build();\n\n const contentClassName = builder().if(!props.plain, \"shadow-md bg-white overflow-hidden rounded-md relative\").build();\n\n const close = () => {\n if (props.onClose) {\n props.onClose();\n }\n };\n\n return (\n <div className={className}>\n <div className={contentClassName}>\n <div className=\"grid grid-cols-1 gap-y-2\">\n {!props.isLoading && props.onClose && (\n <div className=\"justify-self-end mx-2 mt-2 z-30\">\n <Button size=\"xs\" filter=\"none\" icon=\"menu-close\" onClick={close} />\n </div>\n )}\n\n <Loader isLoading={props.isLoading}>{props.children}</Loader>\n </div>\n </div>\n </div>\n );\n};\n","import React from \"react\";\nimport { builder } from \"../../../utils/classname/classname\";\nimport { Button } from \"../../Button\";\nimport { Icon, IconName } from \"../../Icon\";\nimport { Modal } from \"../../Modal\";\n\n/**\n * ActivityCardProps\n */\nexport type ActivityCardProps = {\n headline?: string;\n imageURL?: string;\n pathway?: string;\n xp?: number;\n summary?: string;\n skills?: string[];\n tags?: string[];\n startTime?: string;\n endTime?: string;\n link?: string;\n formId?: string;\n address?: string;\n isBookmarked?: boolean;\n canReflect?: boolean;\n milestone?: boolean;\n\n onRegister?: () => void;\n onUnregister?: () => void;\n onLaunch?: () => void;\n onReflect?: () => void;\n onSkillClick?: (skill: string) => void;\n onClose?: () => void;\n};\n\n/**\n * ActivityCard\n * @param props\n * @constructor\n */\nexport const ActivityCard = (props: ActivityCardProps) => {\n const className = builder(\"w-full md:w-[40rem]\").if(!!props.headline, \"min-h-[20rem]\").build();\n const ActionButton = () => {\n const now = new Date();\n const inProgress = props.milestone || (props.startTime && now >= new Date(props.startTime));\n const status = inProgress ? \"in-progress\" : props.isBookmarked ? \"subscribed\" : \"unsubscribed\";\n switch (status) {\n case \"in-progress\":\n return (\n <Button\n onClick={props.onLaunch}\n theme=\"dark\"\n border=\"rounded\"\n size=\"md\"\n spacing=\"md\"\n color=\"green\"\n text=\"Launch\"\n />\n );\n case \"unsubscribed\":\n return (\n <Button\n onClick={props.onRegister}\n theme=\"dark\"\n border=\"rounded\"\n size=\"md\"\n spacing=\"md\"\n color=\"sky\"\n text=\"Register\"\n />\n );\n case \"subscribed\":\n return (\n <Button\n onClick={props.onUnregister}\n theme=\"dark\"\n border=\"rounded\"\n size=\"md\"\n spacing=\"md\"\n color=\"slate\"\n text=\"Registered\"\n />\n );\n }\n };\n\n return (\n <Modal onClose={props.onClose} visible isLoading={!props.headline}>\n <div className={className}>\n <img className=\"w-full h-60 object-cover\" alt={props.headline} src={props.imageURL} />\n <div className=\"w-full grid grid-cols-1 gap-2 sm:flex sm:place-content-between p-5 border-b border-gray-200\">\n <div className=\"flex items-start grow md:max-w-[22rem]\">\n <div className=\"inline-block min-w-6 w-6 h-6 text-slate-600\">\n <Icon name={(props.pathway as IconName) || \"explore\"} />\n </div>\n\n <div className=\"grow align-top ml-2 inline-block leading-none\">\n <p className=\"font-semibold capitalize text-slate-600 text-lg -mt-1.5\">{props.headline}</p>\n <div>\n <p className=\"text-sm inline-block capitalize text-slate-600\">{props.pathway}</p>\n {props.xp && <p className=\"ml-1 font-semibold inline-block text-sm text-green-500\">{props.xp} pts</p>}\n </div>\n </div>\n </div>\n\n <div className=\"flex shrink-0 items-center gap-2 max-h-[12rem]\">\n <ActionButton />\n {!props.formId && (\n <Button\n disabled={!props.canReflect}\n spacing=\"md\"\n border=\"rounded\"\n color=\"sky\"\n theme=\"dark\"\n text=\"Reflect\"\n size=\"md\"\n onClick={props.onReflect}\n />\n )}\n </div>\n </div>\n\n <div className=\"w-full max-h-[20rem] overflow-auto\">\n <div className=\"w-full p-5 border-b border-gray-200 grid grid-cols-1 gap-4\">\n {props.summary && (\n <div className=\"text-slate-600 grid grid-cols-1 gap-4\">\n <p className=\"font-semibold text-lg\">Summary</p>\n <p className=\"text-sm\">{props.summary}</p>\n </div>\n )}\n\n {props.skills && props.skills.length > 0 && (\n <div className=\"grid grid-cols-1 gap-4\">\n <p className=\"text-slate-600 font-semibold text-lg\">Skills</p>\n <div className=\"flex gap-2\">\n {props.skills.map((skill, i) => {\n return (\n <button\n onClick={() => props.onSkillClick && props.onSkillClick(skill)}\n key={skill + i}\n className=\"grow-0 cursor-pointer shadow-sm text-center font-semibold inline-block rounded-md bg-gray-100 hover:bg-gray-50 active:bg-gray-50 focus:bg-gray-50 px-4 py-2 text-sm text-gray-600\"\n >\n {skill}\n </button>\n );\n })}\n </div>\n </div>\n )}\n </div>\n <div className=\"w-full p-5 border-b border-gray-200 grid grid-cols-1 gap-4\">\n {(props.address || props.link || props.startTime) && (\n <div className=\"text-slate-600 grid grid-cols-1 gap-4\">\n <p className=\"font-semibold text-lg\">Details</p>\n <div className=\"grid grid-cols-1 gap-8\">\n {props.address && (\n <div className=\"flex gap-1 items-center\">\n <div className=\"grow-0 w-6 h-6 min-w-6 text-slate-600\">\n <Icon name=\"pin\" />\n </div>\n <div className=\"grow font-medium inline-block capitalize px-4 py-2 text-sm text-slate-600\">\n {props.address}\n </div>\n </div>\n )}\n\n {props.startTime && (\n <div className=\"flex gap-1 items-center\">\n <div className=\"grow-0 w-6 h-6 min-w-6 text-slate-600\">\n <Icon name=\"clock\" />\n </div>\n <div className=\"grow font-medium inline-block px-4 py-2 text-sm text-slate-600\">\n {new Intl.DateTimeFormat(\"en-US\", {\n dateStyle: \"full\",\n timeStyle: \"long\",\n }).format(new Date(props.startTime))}\n </div>\n </div>\n )}\n\n {props.link && (\n <div className=\"flex gap-1 items-center\">\n <div className=\"grow-0 w-6 h-6 min-w-6 text-slate-600\">\n <Icon name=\"globe\" />\n </div>\n <div className=\"grow font-medium inline-block px-4 py-2 text-sm text-slate-600 hover:underline\">\n <a href={props.link}>{props.link}</a>\n </div>\n </div>\n )}\n </div>\n </div>\n )}\n </div>\n </div>\n </div>\n </Modal>\n );\n};\n","import * as React from \"react\"\nimport { Icon, IconName } from \"../../Icon\";\n\n/**\n * ActivityItemProps\n */\nexport type ActivityItemProps = {\n headline?: string;\n pathway?: string;\n xp?: number;\n imageURL?: string;\n onClick?: () => void;\n};\n\n/**\n * ActivityItem\n * @param props\n * @constructor\n */\nexport const ActivityItem = (props: ActivityItemProps) => {\n return (\n <div onClick={props.onClick} className=\"grow cursor-pointer relative rounded-md min-w-64 h-[22rem] overflow-hidden\">\n <img className=\"h-full w-full object-cover\" alt={props.headline} src={props.imageURL} />\n <div className=\"absolute bottom-0 w-full\">\n <div className=\"p-5 bg-gray-800/75 w-full\">\n <div className=\"text-sm font-bold text-white w-full\">{props.headline}</div>\n <div className=\"mt-2 flex items-center gap-x-2 w-full\">\n <div className=\"flex-shrink-0 w-6 h-6 text-white fill-white\">\n <Icon name={(props.pathway as IconName) || \"globe\"} />\n </div>\n {props.pathway && (\n <span className=\"grow\">\n <div className=\"text-sm font-medium capitalize text-white w-full\">{props.pathway}</div>\n </span>\n )}\n {props.xp && (\n <div className=\"text-slate-600 shadow-md whitespace-nowrap font-bold rounded-md text-sm px-5 py-2 bg-cyan-400\">\n {props.xp} pts\n </div>\n )}\n </div>\n </div>\n </div>\n </div>\n );\n};\n","import React from \"react\";\nimport { Icon } from \"../../Icon\";\n\n/**\n * FilterProps\n */\nexport interface TagFilterProps {\n tags?: string[];\n onChange?: (tags: string[]) => void;\n}\n\n/**\n * Filter\n * @param props\n * @constructor\n */\nexport const TagFilter = (props: TagFilterProps) => {\n const timeTags = [\"15 min\", \"30 min\", \"45 min\", \"60 min\"];\n const skillTags = [\"Civic\", \"College\", \"Academic\", \"Personal\"];\n const formatTags = [\"Online\", \"Live\", \"In-Person\"];\n const init: Record<string, boolean> = {};\n props.tags &&\n props.tags.map((tag) => {\n init[tag] = true;\n });\n\n const [active, setActive] = React.useState(init);\n const onTagClick = (tag: string) => {\n if (active[tag]) {\n setActive({ ...active, [tag]: false });\n const tags = Object.entries({ ...active, [tag]: false })\n .filter(([, active]) => active)\n .map(([tag]) => tag);\n props.onChange && props.onChange(tags);\n } else {\n setActive({ ...active, [tag]: true });\n\n const tags = Object.entries({ ...active, [tag]: true })\n .filter(([, active]) => active)\n .map(([tag]) => tag);\n props.onChange && props.onChange(tags);\n }\n };\n\n React.useEffect(() => {\n props.tags &&\n props.tags.map((tag) => {\n init[tag] = true;\n });\n }, [props.tags]);\n\n return (\n <article className=\"w-full\">\n <div className=\"grow p-5 shadow-sm rounded-md bg-sky-100\">\n <div className=\"grid grid-cols-1 gap-2 md:grid-cols-3\">\n <div>\n <div className=\"inline-block w-4 h-4 max-w-4 stroke-gray-600 fill-gray-600\">\n <Icon name=\"clock\" />\n </div>\n <span className=\"ml-2 text-gray-600 font-semibold\">Duration</span>\n <div className=\"mt-5 grid grid-cols-2 gap-3\">\n {timeTags.map((tag, i) => {\n const base =\n \"cursor-pointer shadow-sm text-center font-semibold inline-block rounded-md hover:text-gray-600 hover:bg-gray-50 active:bg-gray-50 px-4 py-2 text-xs\";\n const bg = active[tag] ? \"bg-sky-500 text-white\" : \"bg-gray-100 text-gray-600\";\n const className = [base, bg].join(\" \");\n return (\n <button onClick={() => onTagClick(tag)} key={tag + i} className={className}>\n {tag}\n </button>\n );\n })}\n </div>\n </div>\n\n <div>\n <div className=\"inline-block w-4 h-4 max-w-4 stroke-gray-600 fill-gray-600\">\n <Icon name=\"clock\" />\n </div>\n <span className=\"ml-2 text-gray-600 font-semibold\">Skills</span>\n <div className=\"mt-5 grid grid-cols-2 gap-3\">\n {skillTags.map((tag, i) => {\n const base =\n \"cursor-pointer shadow-sm text-center font-semibold inline-block rounded-md hover:text-gray-600 hover:bg-gray-50 active:bg-gray-50 px-4 py-2 text-xs\";\n const bg = active[tag] ? \"bg-sky-500 text-white\" : \"bg-gray-100 text-gray-600\";\n const className = [base, bg].join(\" \");\n return (\n <button onClick={() => onTagClick(tag)} key={tag + i} className={className}>\n {tag}\n </button>\n );\n })}\n </div>\n </div>\n\n <div>\n <div className=\"inline-block w-4 h-4 max-w-4 stroke-gray-600 fill-gray-600\">\n <Icon name=\"pin\" />\n </div>\n <span className=\"ml-2 text-gray-600 font-semibold\">Format</span>\n <div className=\"mt-5 grid grid-cols-2 gap-3\">\n {formatTags.map((tag, i) => {\n const base =\n \"cursor-pointer shadow-sm text-center font-semibold inline-block rounded-md hover:text-gray-600 hover:bg-gray-50 active:bg-gray-50 px-4 py-2 text-xs\";\n const bg = active[tag] ? \"bg-sky-500 text-white\" : \"bg-gray-100 text-gray-600\";\n const className = [base, bg].join(\" \");\n return (\n <button onClick={() => onTagClick(tag)} key={tag + i} className={className}>\n {tag}\n </button>\n );\n })}\n </div>\n </div>\n </div>\n </div>\n </article>\n );\n};\n","import React from \"react\";\nimport { Loader } from \"../../Loader\";\n\n/**\n * GalleryProps\n */\nexport type GalleryProps = {\n isLoading?: boolean;\n primary?: React.ReactNode;\n top?: React.ReactNode;\n soonest?: React.ReactNode;\n milestones?: React.ReactNode;\n filteredCount?: number;\n filtered?: React.ReactNode;\n};\n\n/**\n * A component for displaying a gallery of activities\n * @param props\n * @constructor\n */\nexport const Gallery = (props: GalleryProps) => {\n const hasPrimary = !!props.primary;\n const hasTop = props.top && React.Children.count(props.top) > 0;\n const hasSoonest = props.soonest && React.Children.count(props.soonest) > 0;\n const hasMilestones = props.milestones && React.Children.count(props.milestones) > 0;\n const numFiltered = props.filtered ? React.Children.count(props.filtered) : 0;\n const hasFiltered = numFiltered > 0;\n const hasAny = hasPrimary || hasTop || hasSoonest || hasMilestones || hasFiltered;\n\n return (\n <Loader isLoading={props.isLoading}>\n {(hasPrimary || hasTop) && (\n <label className=\"mt-5 relative block grid grid-cols-1 gap-y-2\">\n <p className=\"text-gray-600 font-semibold\">Trending</p>\n {hasPrimary && props.primary}\n {hasTop && props.top}\n </label>\n )}\n\n {hasSoonest && (\n <label className=\"mt-5 relative block grid grid-cols-1 gap-y-2\">\n <p className=\"text-gray-600 font-semibold\">Upcoming</p>\n {props.soonest}\n </label>\n )}\n\n {hasMilestones && (\n <label className=\"mt-5 relative block grid grid-cols-1 gap-y-2\">\n <p className=\"text-gray-600 font-semibold\">Milestones</p>\n {props.milestones}\n </label>\n )}\n\n {hasFiltered && !!props.filteredCount && (\n <label className=\"mt-5 relative block grid grid-cols-1 gap-y-2\">\n <p className=\"text-gray-600 font-semibold\">Results</p>\n <p className=\"text-gray-600 text-sm\">\n {\" \"}\n We found {props.filteredCount >= 10 ? \"10+\" : props.filteredCount}{\" \"}\n {props.filteredCount === 1 ? \"activity\" : \"activities\"}.\n </p>\n {props.filtered}\n </label>\n )}\n\n {!hasAny && (\n <label className=\"mt-5 relative block\">\n <p className=\"text-gray-600 font-semibold\">Activities</p>\n <p className=\"text-gray-600 mt-5 text-sm\">No activities found.</p>\n </label>\n )}\n </Loader>\n );\n};\n","// A utility for debouncing search\nexport const debounce = (func: (search: string) => void, delay?: number) => {\n let timeout: NodeJS.Timeout;\n return (search: string) => {\n clearTimeout(timeout);\n timeout = setTimeout(() => func(search), delay || 300);\n };\n};\n","import React, { useCallback } from \"react\";\nimport { Button } from \"../../Button\";\nimport { TagFilter } from \"../TagFilter/TagFilter\";\nimport { Gallery } from \"../Gallery/Gallery\";\nimport { ActivityItem } from \"../ActivityItem/ActivityItem\";\nimport { debounce } from \"../../../utils/search\";\n\n/**\n * ActivityListProps\n */\nexport type ActivityListProps = {\n isLoading?: boolean;\n search?: string;\n onSearch?: (search?: string) => void;\n tags?: string[];\n onTagChange?: (tags: string[]) => void;\n activities?: any[];\n top?: any[];\n upcoming?: any[];\n milestones?: any[];\n onActivityClick?: (activityId: string) => void;\n};\n\n/**\n * A component for listing activities\n * @param props\n * @constructor\n */\nexport const ActivityList = (props: ActivityListProps) => {\n const primary = !props.top ? null : props.top.length > 0 ? props?.top[0] : null;\n const top = props.top ? props.top.filter((a) => !primary || a.activityId !== primary.activityId) : props.top;\n const topMap: any = {};\n if (top) {\n top.map((a) => (topMap[a.activityId] = true));\n }\n const upcoming = props.upcoming\n ? props.upcoming.filter(\n (a) => !topMap[a.activityId] && (!primary || (primary && a.activityId !== primary.activityId))\n )\n : props.upcoming;\n return (\n <>\n <Search value={props.search} send={(search?: string) => props.onSearch && props.onSearch(search)} />\n <TagFilter tags={props.tags} onChange={props.onTagChange} />\n <Gallery\n isLoading={props.isLoading}\n primary={\n !props.search &&\n primary && (\n <ActivityItem\n {...primary}\n onClick={() => props.onActivityClick && props.onActivityClick(primary.activityId)}\n />\n )\n }\n top={\n !props.search &&\n top &&\n top.length > 0 && (\n <article className=\"grid grid-cols-1 md:flex gap-2 overflow-auto\">\n {top.map((activity) => {\n return (\n <ActivityItem\n key={`${activity.activityId}`}\n {...activity}\n onClick={() => props.onActivityClick && props.onActivityClick(activity.activityId)}\n />\n );\n })}\n </article>\n )\n }\n soonest={\n !props.search &&\n upcoming &&\n upcoming.length > 0 && (\n <article className=\"grid grid-cols-1 md:flex gap-2 overflow-auto\">\n {upcoming.map((activity) => {\n return (\n <ActivityItem\n key={`${activity.activityId}`}\n {...activity}\n onClick={() => props.onActivityClick && props.onActivityClick(activity.activityId)}\n />\n );\n })}\n </article>\n )\n }\n milestones={\n !props.search &&\n props.milestones &&\n props.milestones.length > 0 && (\n <article className=\"grid grid-cols-1 md:flex gap-2 overflow-auto\">\n {props.milestones.map((activity) => {\n return (\n <ActivityItem\n key={`${activity.activityId}`}\n {...activity}\n onClick={() => props.onActivityClick && props.onActivityClick(activity.activityId)}\n />\n );\n })}\n </article>\n )\n }\n filteredCount={props.activities?.length}\n filtered={\n !!props.search &&\n props.activities &&\n props.activities.length > 0 && (\n <article className=\"grid grid-cols-1 md:flex gap-2 overflow-auto\">\n {props.activities.map((activity) => {\n return (\n <ActivityItem\n key={`${activity.activityId}`}\n {...activity}\n onClick={() => props.onActivityClick && props.onActivityClick(activity.activityId)}\n />\n );\n })}\n </article>\n )\n }\n />\n </>\n );\n};\n\n/**\n * A component for debouncing search\n * @param send\n * @param value\n * @constructor\n */\nconst Search = ({ send, value }: { value?: string; send: (search?: string) => void }) => {\n const handler = useCallback(debounce(send), []);\n return (\n <div className=\"foo relative block\">\n <label className=\"relative block\">\n <span className=\"absolute inset-y-0 left-0 top-0 flex items-center pl-2\">\n <Button icon=\"search\" />\n </span>\n <input\n autoFocus={true}\n defaultValue={value}\n onChange={(e) => handler(e.target.value)}\n className=\"placeholder:text-slate-400 text-slate-400 block bg-white w-full text-sm border border-slate-300 rounded-md py-3 px-8 shadow-sm cursor-pointer hover:bg-sky-50 hover:border-sky-100 hover:text-slate-500 hover:placeholder:text-slate-600 focus:outline-none hover:bg-sky-50 hover:border-sky-100\"\n type=\"text\"\n name=\"search\"\n placeholder=\"Search for activities...\"\n />\n </label>\n </div>\n );\n};\n","import React from \"react\";\nimport { builder } from \"../../../utils/classname/classname\";\nimport { Button } from \"../../Button\";\nimport { Icon, IconName } from \"../../Icon\";\nimport { Modal } from \"../../Modal\";\n\n/**\n * ActivityReflectionProps\n */\nexport type ActivityReflectionProps = {\n startTime?: string;\n reflection?: string;\n pathway?: string;\n rating?: number;\n xp?: number;\n headline?: string;\n imageURL?: string;\n canReflect?: boolean;\n hasChanges?: boolean;\n\n onClose?: () => void;\n onSave?: (reflection: string, rating: number) => Promise<void>;\n};\n\n/**\n * ActivityReflection\n * @param props\n * @constructor\n */\nexport const ActivityReflection = (props: ActivityReflectionProps) => {\n const className = builder(\"w-full md:w-[40rem]\").if(!!props.headline, \"min-h-[20rem]\").build();\n const [reaction, setReaction] = React.useState({\n rating: props.rating,\n reflection: props.reflection,\n });\n const hasChanges =\n props.hasChanges ||\n (props.canReflect && (props.rating !== reaction.rating || props.reflection !== reaction.reflection));\n const setFeedback = (feedback: string) => setReaction({ ...reaction, reflection: feedback });\n const setRating = (rating: number) => setReaction({ ...reaction, rating: rating });\n\n React.useEffect(() => {\n setReaction({\n rating: props.rating,\n reflection: props.reflection,\n });\n }, [props.reflection]);\n\n return (\n <Modal isLoading={!props.headline} visible onClose={props.onClose}>\n <div className={className}>\n <img className=\"w-full h-60 object-cover\" alt={props.headline} src={props.imageURL} />\n <div className=\"w-full grid grid-cols-1 gap-2 sm:flex p-5 border-b border-gray-200\">\n <div className=\"flex items-start grow\">\n <div className=\"inline-block min-w-6 w-6 h-6 text-slate-600\">\n <Icon name={(props.pathway as IconName) || \"explore\"} />\n </div>\n\n <div className=\"grow align-top ml-2 inline-block leading-none\">\n <p className=\"font-semibold capitalize text-slate-600 text-lg\">{props.headline}</p>\n <div>\n <p className=\"text-sm inline-block capitalize text-slate-600\">{props.pathway}</p>\n {props.xp && <p className=\"ml-1 font-semibold inline-block text-sm text-green-500\">{props.xp} pts</p>}\n </div>\n </div>\n </div>\n\n {hasChanges && (\n <Button\n onClick={() => props.onSave && props.onSave(reaction.reflection || \"\", reaction.rating || 0)}\n theme=\"dark\"\n border=\"rounded\"\n size=\"sm\"\n spacing=\"md\"\n color=\"slate\"\n text=\"Save\"\n />\n )}\n </div>\n\n <div className=\"w-full max-h-[20rem] overflow-auto\">\n <div className=\"w-full p-5 border-b border-gray-200 grid grid-cols-1 gap-4\">\n <div className=\"text-slate-600 grid grid-cols-1 gap-4\">\n <p className=\"font-semibold text-lg\">Almost there, share your reflection to earn your points!</p>\n <p className=\"font-semibold text-sm\">Write a short reflection on your experience.</p>\n\n <textarea\n disabled={!props.canReflect}\n onChange={(e) => setFeedback(e.target.value)}\n placeholder=\"Describe your experience in 20 words or more. Then rate your experience.\"\n defaultValue={props.reflection}\n className=\"resize-none text-slate-500 focus:text-slate-600 h-24 mt-1 block w-full px-3 py-2 bg-white border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\n invalid:border-pink-500 invalid:text-pink-600\n focus:invalid:border-pink-500 focus:invalid:ring-pink-500\"\n />\n\n {props.canReflect && <Rating {...props} {...reaction} setRating={setRating} />}\n </div>\n </div>\n </div>\n </div>\n </Modal>\n );\n};\n\n/**\n * Rating.\n * @param props\n * @constructor\n */\nconst Rating = (props: ActivityReflectionProps & { setRating?: (rating: number) => void }) => {\n /**\n * Max points for reflection.\n */\n const maxPoints = 5;\n const [rating, setRating] = React.useState(props.rating || -1);\n const buttons = Array.from({ length: maxPoints }, (_, i) => {\n const color = i < rating ? \"text-sky-200\" : \"text-slate-200\";\n return (\n <div key={i} onMouseEnter={() => setRating(i + 1)} onMouseLeave={() => setRating(props.rating || -1)}>\n <div className={`cursor-pointer h-4 w-4 ${color}`} onClick={() => props.setRating && props.setRating(i + 1)}>\n <Icon name=\"circle\" />\n </div>\n </div>\n );\n });\n const labels = Array.from({ length: maxPoints }, (_, i) => {\n if (i === 0) {\n return (\n <p key={i} className=\"inline-block text-sm text-monochrome-500\">\n Poor\n </p>\n );\n }\n\n if (i === maxPoints - 1) {\n return (\n <p key={i} className=\"inline-block text-sm text-monochrome-500\">\n Amazing\n </p>\n );\n }\n\n return <p key={i} className=\"inline-block text-monochrome-500\" />;\n });\n\n React.useEffect(() => {\n if (props.rating && props.rating !== rating) {\n setRating(props.rating);\n }\n }, [props.rating]);\n\n return (\n <div className=\"inline-block mt-2\">\n <h6 className=\"font-bold pb-2 text-md\"> Rate your experience from poor to amazing</h6>\n <div className={`w-[17.7rem] grid grid-cols-5 justify-self-center items-center gap-7 mb-2`}>{buttons}</div>\n <div className={`w-[16.7rem] text-[0.5rem] grid grid-cols-5 justify-self-center items-center`}>{labels}</div>\n </div>\n );\n};\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M30 16.5C29.9995 16.2037 29.8464 15.9279 29.5935 15.7685L26.858 14.0523L28.5697 11.3347C28.7282 11.0824 28.7451 10.7677 28.6145 10.5002C28.4837 10.2329 28.2235 10.05 27.9248 10.0157L24.7073 9.64584L25.0555 6.46528V6.46504C25.0874 6.17018 24.9644 5.87943 24.7296 5.69465C24.4947 5.50961 24.1803 5.45615 23.8961 5.55242L20.833 6.59372L19.7457 3.57738C19.645 3.29776 19.4064 3.08829 19.1133 3.02249C18.8203 2.9567 18.5133 3.0433 18.2999 3.25228L16 5.50499L13.7001 3.25129C13.4867 3.0423 13.1797 2.95571 12.8867 3.02174C12.5936 3.08754 12.355 3.29677 12.2543 3.57639L11.1686 6.59298L8.10386 5.55168C7.8199 5.4525 7.50408 5.50644 7.27035 5.69391C7.03514 5.87847 6.91215 6.16922 6.94449 6.46429L7.29264 9.64486L4.07519 10.0149C3.77653 10.0493 3.51633 10.2322 3.38575 10.4994C3.25492 10.7667 3.27182 11.0817 3.43034 11.334L5.14197 14.0516L2.40647 15.7685C2.15337 15.9277 2 16.2037 2 16.5C2 16.7963 2.15337 17.0721 2.40647 17.2314L5.14197 18.9474L3.43034 21.665C3.27183 21.9173 3.25492 22.2322 3.38575 22.4995C3.51634 22.7668 3.77654 22.9497 4.07519 22.984L7.29264 23.3541L6.94449 26.5347C6.91264 26.8298 7.03563 27.1203 7.27035 27.3053C7.50531 27.4901 7.81965 27.5438 8.10386 27.4473L11.167 26.406L12.2543 29.4226C12.355 29.7022 12.5936 29.9114 12.8867 29.9772C13.1797 30.0433 13.4867 29.9567 13.7001 29.7477L16 27.4947L18.2999 29.7484C18.4648 29.9095 18.6872 30 18.919 30C18.9849 30 19.0504 29.9927 19.1145 29.978C19.4073 29.9124 19.6457 29.703 19.7456 29.4233L20.8313 26.4068L23.8961 27.4481V27.4483C24.1803 27.5446 24.4946 27.4909 24.7296 27.3061C24.9643 27.121 25.0873 26.8305 25.0555 26.5357L24.7073 23.3549L27.9248 22.9848V22.985C28.2234 22.9507 28.4836 22.7678 28.6142 22.5005C28.745 22.233 28.7281 21.9183 28.5696 21.666L26.858 18.9484L29.5935 17.2314C29.8463 17.0718 29.9995 16.7963 30 16.5ZM25.1807 17.946C24.7745 18.2012 24.6522 18.7317 24.9063 19.1354L26.3469 21.4202L23.6389 21.7318V21.732C23.1601 21.7872 22.8156 22.2129 22.8671 22.686L23.1603 25.3647L20.5809 24.4886C20.1257 24.3328 19.6283 24.5691 19.4678 25.0178L18.5554 27.5553L16.6191 25.6579C16.2761 25.3226 15.7239 25.3226 15.3809 25.6579L13.4446 27.555L12.5305 25.0169C12.3707 24.5677 11.8726 24.3309 11.4174 24.4876L8.83965 25.3637L9.13292 22.6851V22.6853C9.18438 22.2122 8.83989 21.7864 8.36113 21.7311L5.65304 21.4195L7.09371 19.1344V19.1347C7.34778 18.731 7.22552 18.2005 6.8193 17.9451L4.51596 16.4998L6.8193 15.0538V15.054C7.22552 14.7988 7.34778 14.2683 7.09371 13.8646L5.65304 11.5795L8.36113 11.268C8.83987 11.2126 9.18436 10.7871 9.13292 10.3138L8.83965 7.63509L11.4191 8.51143C11.6376 8.58787 11.8782 8.5748 12.0872 8.47563C12.2962 8.37621 12.4562 8.19866 12.5321 7.98217L13.4446 5.44475L15.3809 7.34214C15.7239 7.6774 16.2761 7.6774 16.6191 7.34214L18.5554 5.44475L19.4695 7.98286V7.9831C19.629 8.43252 20.1273 8.66933 20.5826 8.51211L23.1603 7.63602L22.8671 10.3147C22.8156 10.7878 23.1601 11.2136 23.6388 11.2687L26.3469 11.5802L24.9063 13.8653C24.6522 14.269 24.7745 14.7995 25.1807 15.0547L27.484 16.4997L25.1807 17.946Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M27.7395 19.8411L24.7224 16.9388V12.8356C24.7224 12.3729 24.3322 12.01 23.8642 12.01H22.7587V0.826144C22.7587 0.363421 22.3685 0.000562624 21.9005 0.000562624C21.4322 0.000562624 21.0423 0.375958 21.0423 0.826144V12.0221H19.612L16.8551 9.3701L16.8548 0.825581C16.8548 0.362858 16.4645 0 15.9965 0C15.5282 0 15.1383 0.375396 15.1383 0.825581V9.3701L12.3814 12.0221H10.9638L11.1068 0.838207C11.1068 0.387732 10.7297 8.03748e-05 10.2486 8.03748e-05C9.78031 8.03748e-05 9.39037 0.362906 9.39037 0.813035L9.24733 12.0218H8.12885C7.64783 12.0218 7.27062 12.3972 7.27062 12.8474V16.9506L4.2535 19.853C3.9155 20.1781 3.9155 20.7036 4.2535 21.0288L7.27062 23.9311V28.0343C7.27062 28.497 7.66086 28.8599 8.12885 28.8599H12.3944L15.4115 31.7622C15.5806 31.9249 15.7887 32 16.0228 32C16.257 32 16.465 31.9124 16.6341 31.7622L19.6513 28.8599H23.9168C24.3978 28.8599 24.775 28.4845 24.775 28.0343V23.9311L27.7921 21.0288C28.0775 20.6911 28.0775 20.1659 27.7392 19.8404L27.7395 19.8411ZM19.7028 25.7208L15.9836 23.8319L12.2644 25.7208L12.9796 21.7303L9.97554 18.9031L14.1369 18.3151L15.9967 14.6874L17.8564 18.3151L22.0178 18.9031L19.0137 21.7303L19.7028 25.7208Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M9.27969 5.71875V26.7187M9.27969 5.71875L14.0047 10.3854M9.27969 5.71875L4.55469 10.3854M23.4547 26.7187V5.71875M23.4547 26.7187L28.1797 22.0521M23.4547 26.7187L18.7297 22.0521\" fill=\"none\" stroke=\"#232A3A\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle r=\"13\" transform=\"matrix(0 -1 -1 0 16 16)\" fill=\"none\" stroke=\"#232A3A\" stroke-width=\"4\"/>\n <path d=\"M19.7153 12.2116C19.8913 12.044 20.1257 11.9513 20.3688 11.9532C20.6119 11.955 20.8448 12.0512 21.0183 12.2215C21.1918 12.3918 21.2924 12.6228 21.2989 12.8658C21.3053 13.1089 21.217 13.3449 21.0528 13.5241L16.0653 19.7616C15.9795 19.854 15.876 19.9281 15.7609 19.9796C15.6459 20.031 15.5216 20.0588 15.3956 20.0611C15.2695 20.0634 15.1443 20.0403 15.0275 19.9932C14.9106 19.946 14.8044 19.8758 14.7153 19.7866L11.4078 16.4791C11.3157 16.3933 11.2418 16.2898 11.1905 16.1748C11.1393 16.0598 11.1117 15.9357 11.1095 15.8098C11.1073 15.6839 11.1305 15.5589 11.1776 15.4421C11.2248 15.3254 11.2949 15.2194 11.384 15.1303C11.473 15.0413 11.579 14.9711 11.6958 14.924C11.8125 14.8768 11.9375 14.8537 12.0634 14.8559C12.1893 14.8581 12.3134 14.8857 12.4284 14.9369C12.5434 14.9881 12.6469 15.062 12.7328 15.1541L15.3503 17.7704L19.6915 12.2391C19.6993 12.2295 19.7064 12.2203 19.7153 12.2116Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M15.9974 2.66406C13.3603 2.66406 10.7825 3.44605 8.5898 4.91113C6.39714 6.37622 4.68818 8.4586 3.67901 10.8949C2.66984 13.3313 2.4058 16.0122 2.92026 18.5986C3.43473 21.185 4.70461 23.5608 6.56931 25.4255C8.43401 27.2902 10.8098 28.5601 13.3962 29.0745C15.9826 29.589 18.6635 29.325 21.0998 28.3158C23.5362 27.3066 25.6186 25.5977 27.0837 23.405C28.5487 21.2123 29.3307 18.6345 29.3307 15.9974C29.3307 14.2464 28.9859 12.5126 28.3158 10.8949C27.6457 9.27727 26.6636 7.80742 25.4255 6.56931C24.1874 5.33119 22.7175 4.34906 21.0998 3.679C19.4822 3.00894 17.7484 2.66406 15.9974 2.66406V2.66406ZM21.7307 12.8107L15.6374 20.8107C15.5132 20.9721 15.3537 21.1028 15.1711 21.193C14.9885 21.2831 14.7877 21.3302 14.5841 21.3307C14.3815 21.3318 14.1814 21.2868 13.9989 21.199C13.8164 21.1112 13.6563 20.983 13.5307 20.8241L10.2774 16.6774C10.1697 16.5391 10.0903 16.3809 10.0438 16.2119C9.99723 16.0429 9.98442 15.8664 10.0061 15.6924C10.0278 15.5184 10.0835 15.3505 10.1701 15.198C10.2566 15.0456 10.3724 14.9117 10.5107 14.8041C10.7901 14.5866 11.1444 14.489 11.4957 14.5327C11.6697 14.5544 11.8377 14.6101 11.9901 14.6967C12.1425 14.7833 12.2764 14.8991 12.3841 15.0374L14.5574 17.8107L19.5974 11.1441C19.7042 11.004 19.8376 10.8863 19.9898 10.7978C20.1421 10.7092 20.3104 10.6516 20.4849 10.628C20.6595 10.6045 20.837 10.6156 21.0073 10.6607C21.1776 10.7057 21.3373 10.7839 21.4774 10.8907C21.6175 10.9975 21.7351 11.1309 21.8237 11.2832C21.9122 11.4355 21.9699 11.6037 21.9934 11.7783C22.017 11.9528 22.0059 12.1303 21.9608 12.3006C21.9157 12.4709 21.8375 12.6307 21.7307 12.7707V12.8107Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle r=\"13\" transform=\"matrix(0 -1 -1 0 16 16)\" fill=\"none\" stroke=\"#232A3A\" stroke-width=\"4\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M16.0001 2C11.8223 2 8.43754 5.44636 8.43754 9.7001V14.6H6.37489C5.61311 14.6 5 15.2246 5 15.9999V28.6001C5 29.3757 5.61337 30 6.37489 30H25.6251C26.3869 30 27 29.3755 27 28.6001V15.9999C27 15.2243 26.3866 14.6 25.6251 14.6H23.5625V9.7001C23.5625 5.44636 20.1777 2 15.9999 2H16.0001ZM16.0001 3.39989C19.4398 3.39989 22.1877 6.19756 22.1877 9.69998V14.5999H9.81255V9.69998C9.81255 6.19774 12.5603 3.39989 16.0001 3.39989ZM16.0001 18.8001C17.1394 18.8001 18.0628 19.7403 18.0628 20.9003C18.0628 21.5218 17.7969 22.0797 17.3753 22.4642V24.4003C17.3753 25.1759 16.762 25.8002 16.0004 25.8002C15.2386 25.8002 14.6255 25.1757 14.6255 24.4003V22.4642C14.204 22.0797 13.9381 21.5218 13.9381 20.9003C13.9381 19.7403 14.8615 18.8001 16.0007 18.8001H16.0001Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M16.0171 11.7659V9.31281C12.231 9.30656 8.85018 12.1268 8.13614 16.1618C7.42972 20.1487 9.53867 24.0827 13.1508 25.5172C14.1842 25.9278 14.7032 27.135 14.3117 28.2176C13.9636 29.179 13.0112 29.7157 12.0797 29.5352C11.9628 29.5133 11.8456 29.4792 11.7317 29.4341C6.30964 27.2843 3.14299 21.3811 4.20368 15.4016C5.27455 9.35214 10.3432 5.13816 16.0174 5.14566V3.11267C16.0174 2.13727 17.2009 1.63493 17.9179 2.30837L22.5286 6.63435C22.9951 7.07302 22.9951 7.8072 22.5286 8.24585L17.9179 12.572C17.2009 13.2439 16.0171 12.7428 16.0171 11.7659ZM18.6618 25.5841C18.3648 25.6962 18.0587 25.7893 17.7497 25.861C16.6713 26.1114 15.9888 27.23 16.2274 28.3593C16.4058 29.2054 17.0508 29.8167 17.8158 29.9661C18.0723 30.0144 18.3422 30.0128 18.6123 29.9505C19.0833 29.8401 19.5468 29.7001 19.9997 29.5321C21.0393 29.1448 21.5853 27.9454 21.2161 26.8565C20.8457 25.7661 19.6997 25.1968 18.6618 25.5841ZM22.6383 22.3626C22.5528 22.4964 22.4643 22.6271 22.3697 22.7546C21.6962 23.6708 21.8582 24.9852 22.7341 25.6915C22.9952 25.8999 23.2861 26.0321 23.5892 26.0897C24.3031 26.228 25.0651 25.9528 25.5407 25.3071C25.6831 25.1112 25.8226 24.9091 25.9562 24.702C26.5726 23.7423 26.3311 22.4419 25.4162 21.7948C24.4996 21.1522 23.2562 21.4029 22.6383 22.3626ZM26.0522 15.9381C24.9482 15.9068 24.0273 16.8605 23.9986 18.0178C23.9717 19.0583 24.6766 19.9263 25.6247 20.1099C25.7266 20.1303 25.8332 20.1426 25.9396 20.1441C27.0421 20.1785 27.9631 19.2498 27.9978 18.0939C27.9978 18.0908 27.9993 18.0488 27.9993 18.0457C28.0292 16.8884 27.1487 15.9582 26.0522 15.9381Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M19.834 23.794C20.6105 23.0295 20.1915 21.2735 18.923 19.245C19.384 19.173 19.815 19.063 20.141 18.8945C21.314 18.289 22.106 17.1855 22.7055 16.044C23.35 14.8195 23.7825 13.4735 24.6235 12.3585C24.7655 12.17 24.9075 12.001 25.049 11.842C26.8635 12.0595 28.312 12.4495 28.312 12.4495L28.8655 11.043C28.1669 10.7923 27.4506 10.5939 26.7225 10.4495C27.1685 10.196 27.4595 10.117 27.4595 10.117L26.935 8.699C26.094 9.0545 25.4115 9.579 24.84 10.207C22.704 10.0875 20.553 10.513 18.856 11.829C17.58 12.819 16.718 14.1915 15.907 15.5645C15.1884 14.8593 14.4232 14.2034 13.6165 13.601C13.7695 13.3495 13.9335 13.1235 14.11 12.949C15.1765 11.899 16.5835 11.2275 17.5065 10.026C19.4465 7.503 18.0275 3.548 16.4315 1.5C16.1455 1.7755 15.6725 2.177 15.3165 2.494C17.013 4.2315 18.1995 7.2735 16.87 9.5465C16.127 10.817 14.754 11.614 13.794 12.7055C13.628 12.895 13.4795 13.135 13.345 13.4C10.8345 11.5995 8.5305 10.875 7.6175 11.774C7.52684 11.8667 7.45217 11.9739 7.3965 12.091L7.393 12.0875L7.3685 12.159C7.3345 12.2365 7.3035 12.317 7.2825 12.405L1 30.5L19.331 24.091L19.326 24.086C19.523 24.0225 19.6965 23.929 19.834 23.794ZM4.6465 28.166L3.1165 27.453L4.149 24.478L8.8845 26.684L4.6465 28.166M13.122 25.2025L5.1825 21.503L6.215 18.5285L12.148 21.5065C8.6065 19.2015 7.2475 15.553 7.2475 15.553L7.6005 14.5365C8.228 16.124 9.6085 18.101 11.5055 19.967C13.4185 21.85 15.446 23.214 17.0665 23.8235L13.122 25.2025M16.1715 15.8325C17.0005 14.644 17.855 13.4445 19.043 12.591C20.174 11.778 22.01 11.6295 23.7505 11.727C23.1625 12.754 22.728 13.8935 22.338 14.988C21.8665 16.313 21.2345 17.687 20.0295 18.4995C19.7045 18.7185 19.249 18.8785 18.7625 18.997C18.094 17.9725 17.217 16.8895 16.1715 15.8325\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M11.5159 11.0027C12.0169 11.0027 10.5149 9.50273 10.7659 8.18723C11.7279 8.11323 13.9269 8.54673 12.6469 6.78873C14.0949 7.04373 14.8449 5.96273 13.4779 4.93823C13.9329 4.97023 14.6399 4.11223 14.1324 4.00373C12.5064 3.65923 11.8699 4.53873 12.9019 5.80723C11.8169 5.60523 10.9324 6.10973 11.7474 7.24273C8.61438 6.85223 10.3969 11.0027 11.5159 11.0027ZM22.2719 9.66973C22.7414 9.45773 21.9449 8.05723 21.6859 7.69923C23.6674 7.48723 23.5924 6.89673 22.3499 5.63173C25.7279 5.74523 22.4544 3.82523 22.9134 3.06523C23.3109 2.40623 24.5304 3.09723 24.4174 2.73023C24.0364 1.50273 20.4224 2.33273 22.7094 4.62473C20.7134 4.66373 20.5219 5.31623 22.0094 6.66873C19.4184 6.69723 21.5324 10.0027 22.2719 9.66973M30.8479 14.6152C30.0569 14.8367 29.9349 14.7537 30.0404 15.5412C28.2134 14.7002 26.2804 13.5307 27.4534 16.6292C25.3784 15.3937 25.4819 16.4757 25.0939 18.2562C24.5889 17.8627 23.8714 16.8257 23.8714 16.8257L23.1114 17.4712C23.1114 17.4712 24.5039 19.4352 25.1914 19.3237C25.7959 19.2262 26.1249 18.0837 26.1584 17.0767C28.0834 17.8892 29.0049 17.9977 28.1244 15.6217C29.6634 16.4862 31.5504 17.2487 30.8479 14.6152M3.02387 5.72123L4.43787 7.13573L3.02387 8.54973L1.60938 7.13573L3.02387 5.72123ZM14.9034 16.8832L13.4884 18.2972L12.0739 16.8822L13.4889 15.4677L14.9034 16.8832ZM8.60937 3.50273L10.0234 4.91673L8.60887 6.33173L7.19487 4.91673L8.60937 3.50273ZM24.0049 23.2447L22.5899 21.8302L24.0039 20.4152L25.4189 21.8297L24.0049 23.2447ZM20.8519 28.0957L19.4379 26.6817L20.8519 25.2672L22.2664 26.6817L20.8519 28.0957ZM27.0559 29.2127L25.6409 27.7982L27.0544 26.3832L28.4694 27.7977L27.0559 29.2127ZM28.4699 22.7707L27.0559 21.3562L28.4699 19.9422L29.8839 21.3562L28.4699 22.7707ZM26.1094 5.00273L27.5234 6.41673L26.1089 7.83123L24.6949 6.41673L26.1094 5.00273Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M8.47647 14.934C7.88484 14.934 7.40475 15.4131 7.40475 16.0058C7.40475 16.5983 7.88379 17.0775 8.47647 17.0775H23.5064C24.098 17.0775 24.5781 16.5984 24.5781 16.0058C24.5781 15.4133 24.0991 14.934 23.5064 14.934H8.47647Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M17.0707 8.48323C17.0707 7.8916 16.5917 7.41151 15.999 7.41151C15.4065 7.41151 14.9273 7.89055 14.9273 8.48323V23.5134C14.9273 24.105 15.4063 24.5851 15.999 24.5851C16.5915 24.5851 17.0707 24.106 17.0707 23.5134V8.48323Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <circle r=\"13\" transform=\"matrix(0 -1 -1 0 16 16)\" fill=\"none\" stroke=\"#232A3A\" stroke-width=\"2\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M20.9331 11.0752C20.8328 10.9747 20.7136 10.8949 20.5823 10.8405L19.4033 11.075L19.4032 11.0751C19.4031 11.0752 19.4031 11.0753 19.403 11.0754L15.5002 14.9702L11.5968 11.0669C11.4964 10.9664 11.3771 10.8867 11.2459 10.8324C11.1146 10.778 10.9739 10.75 10.8319 10.75C10.6898 10.75 10.5491 10.778 10.4178 10.8324C10.2866 10.8867 10.1673 10.9664 10.0669 11.0669C9.96641 11.1673 9.88672 11.2866 9.83235 11.4178C9.77798 11.5491 9.75 11.6898 9.75 11.8319C9.75 11.9739 9.77798 12.1146 9.83235 12.2459C9.88672 12.3771 9.96641 12.4964 10.0669 12.5968L13.97 16.5L10.0669 20.4032C9.96641 20.5036 9.88672 20.6229 9.83235 20.7541C9.77798 20.8854 9.75 21.0261 9.75 21.1681C9.75 21.3102 9.77798 21.4509 9.83235 21.5822C9.88672 21.7134 9.96641 21.8327 10.0669 21.9331C10.1673 22.0336 10.2866 22.1133 10.4178 22.1676C10.5491 22.222 10.6898 22.25 10.8319 22.25C10.9739 22.25 11.1146 22.222 11.2459 22.1676C11.3771 22.1133 11.4964 22.0336 11.5968 21.9331L15.5 18.03L19.4032 21.9331C19.5036 22.0336 19.6229 22.1133 19.7541 22.1676C19.8854 22.222 20.0261 22.25 20.1681 22.25C20.3102 22.25 20.4509 22.222 20.5822 22.1676C20.7134 22.1133 20.8327 22.0336 20.9331 21.9331C21.0336 21.8327 21.1133 21.7134 21.1676 21.5822C21.222 21.4509 21.25 21.3102 21.25 21.1681C21.25 21.0261 21.222 20.8854 21.1676 20.7541C21.1133 20.6229 21.0336 20.5036 20.9331 20.4032L17.03 16.5L20.9331 12.5968C21.3478 12.1822 21.3478 11.4899 20.9331 11.0752Z\" fill=\"#232A3A\" stroke=\"#232A3A\" stroke-width=\"0.5\"/>\n <circle r=\"13\" transform=\"matrix(0 -1 -1 0 16 16)\" fill=\"none\" stroke=\"#232A3A\" stroke-width=\"4\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M22.6977 9.32071C22.5995 9.22227 22.4828 9.14417 22.3543 9.09089C22.2259 9.0376 22.0882 9.01017 21.9491 9.01017C21.81 9.01017 21.6723 9.0376 21.5438 9.09089C21.4154 9.14417 21.2987 9.22227 21.2005 9.32071L16.0078 14.5027L10.8152 9.31009C10.7169 9.21178 10.6001 9.1338 10.4717 9.08059C10.3432 9.02738 10.2056 9 10.0665 9C9.9275 9 9.78983 9.02738 9.66138 9.08059C9.53293 9.1338 9.41622 9.21178 9.31791 9.31009C9.21959 9.40841 9.14161 9.52512 9.0884 9.65357C9.0352 9.78202 9.00781 9.91969 9.00781 10.0587C9.00781 10.1978 9.0352 10.3354 9.0884 10.4639C9.14161 10.5923 9.21959 10.709 9.31791 10.8074L14.5105 16L9.31791 21.1926C9.21959 21.291 9.14161 21.4077 9.0884 21.5361C9.0352 21.6646 9.00781 21.8022 9.00781 21.9413C9.00781 22.0803 9.0352 22.218 9.0884 22.3464C9.14161 22.4749 9.21959 22.5916 9.31791 22.6899C9.41622 22.7882 9.53293 22.8662 9.66138 22.9194C9.78983 22.9726 9.9275 23 10.0665 23C10.2056 23 10.3432 22.9726 10.4717 22.9194C10.6001 22.8662 10.7169 22.7882 10.8152 22.6899L16.0078 17.4973L21.2005 22.6899C21.2988 22.7882 21.4155 22.8662 21.5439 22.9194C21.6724 22.9726 21.8101 23 21.9491 23C22.0881 23 22.2258 22.9726 22.3542 22.9194C22.4827 22.8662 22.5994 22.7882 22.6977 22.6899C22.796 22.5916 22.874 22.4749 22.9272 22.3464C22.9804 22.218 23.0078 22.0803 23.0078 21.9413C23.0078 21.8022 22.9804 21.6646 22.9272 21.5361C22.874 21.4077 22.796 21.291 22.6977 21.1926L17.5051 16L22.6977 10.8074C23.1012 10.4038 23.1012 9.72423 22.6977 9.32071Z\" fill=\"#232A3A\" stroke=\"none\"/>\n <rect x=\"2.75781\" y=\"2.75\" width=\"26.5\" height=\"26.5\" rx=\"1.75\" fill=\"none\" stroke=\"#232A3A\" stroke-width=\"1.5\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M20.1989 3H3.39991C2.55992 3 2 3.53995 2 4.35V28.65C2 29.46 2.55992 30 3.39991 30H20.1989C21.0389 30 21.5988 29.46 21.5988 28.65V4.35C21.5988 3.53995 21.0389 3 20.1989 3ZM4.79983 7.05H10.3995V15.15H4.79983V7.05ZM15.9991 25.95C15.9991 26.76 15.4392 27.3 14.5992 27.3H6.19974C5.35974 27.3 4.79983 26.76 4.79983 25.95C4.79983 25.1399 5.35974 24.6 6.19974 24.6H14.5992C15.4392 24.6 15.9991 25.1399 15.9991 25.95ZM18.799 20.55C18.799 21.36 18.2391 21.9 17.3991 21.9H6.19974C5.35974 21.9 4.79983 21.36 4.79983 20.55C4.79983 19.7399 5.35974 19.2 6.19974 19.2H17.3991C18.2391 19.2 18.799 19.7399 18.799 20.55Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M24.3984 24.6C24.3984 25.5451 24.9584 26.4899 25.7984 26.8951V27.3C25.7984 28.1101 26.3583 30 27.1983 30C28.0383 30 28.5982 28.1101 28.5982 27.3V26.8951C29.4382 26.4902 29.9981 25.5451 29.9981 24.6V9.75H24.3984V24.6Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M29.2981 4.35938H25.0984C24.6785 4.35938 24.3984 4.62945 24.3984 5.03437V7.05937H29.9981V5.03437C29.9981 4.62945 29.718 4.35938 29.2981 4.35938Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M9.00165 16.5781C9.01717 17.0886 9.2043 17.575 9.52747 17.945L18.7054 28.3596C19.0572 28.7584 19.54 28.9886 20.0476 28.9996C20.5552 29.0106 21.0461 28.8014 21.4121 28.4182C21.7782 28.0349 21.9895 27.509 21.9996 26.956C22.0097 26.403 21.8177 25.8683 21.4659 25.4695L13.5667 16.5L21.4659 7.53047C21.8177 7.13169 22.0097 6.59699 21.9996 6.04401C21.9895 5.49103 21.7782 4.96506 21.4121 4.58181C21.0461 4.19856 20.5552 3.98943 20.0476 4.00041C19.54 4.0114 19.0572 4.2416 18.7054 4.64038L9.52747 15.055C9.35048 15.2574 9.21273 15.4966 9.12239 15.7583C9.03206 16.02 8.99099 16.2988 9.00165 16.5781Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M9.00165 16.5781C9.01717 17.0886 9.2043 17.575 9.52747 17.945L18.7054 28.3596C19.0572 28.7584 19.54 28.9886 20.0476 28.9996C20.5552 29.0106 21.0461 28.8014 21.4121 28.4182C21.7782 28.0349 21.9895 27.509 21.9996 26.956C22.0097 26.403 21.8177 25.8683 21.4659 25.4695L13.5667 16.5L21.4659 7.53047C21.8177 7.13169 22.0097 6.59699 21.9996 6.04401C21.9895 5.49103 21.7782 4.96506 21.4121 4.58181C21.0461 4.19856 20.5552 3.98943 20.0476 4.00041C19.54 4.0114 19.0572 4.2416 18.7054 4.64038L9.52747 15.055C9.35048 15.2574 9.21273 15.4966 9.12239 15.7583C9.03206 16.02 8.99099 16.2988 9.00165 16.5781Z\" fill=\"none\" stroke=\"#232A3A\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M25.6617 17.941V14.1386C25.6617 9.85426 22.779 6.23291 18.8177 5.04641C18.8253 4.95973 18.8302 4.87197 18.8302 4.78398C18.8302 3.24924 17.5604 2 16 2C14.4397 2 13.1702 3.24901 13.1702 4.78398C13.1702 4.87197 13.1746 4.95973 13.1829 5.04641C9.22138 6.23268 6.33887 9.85431 6.33887 14.1386V17.9415C5.48552 19.4789 5 21.2417 5 23.1169V30H27V23.1169C27.0004 21.2417 26.5149 19.4784 25.6617 17.941ZM14.2516 4.78416C14.2516 3.83563 15.036 3.06466 16.0001 3.06466C16.9644 3.06466 17.7486 3.83563 17.7486 4.78416V4.79076C17.1813 4.68913 16.5974 4.63502 16.0001 4.63502C15.4034 4.63502 14.8184 4.68935 14.2516 4.79076V4.78416ZM10.5317 9.01593H21.4679V10.0216H10.5317V9.01593ZM22.922 25.3302C22.922 25.8001 22.5347 26.1813 22.0568 26.1813L9.94303 26.1815C9.46514 26.1815 9.07784 25.8003 9.07784 25.3304V21.0085C9.07784 20.5379 9.46516 20.1574 9.94303 20.1574H22.0568C22.5347 20.1574 22.922 20.538 22.922 21.0085V25.3302Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M11.1688 21.8579H20.8312V22.7459H11.1688V21.8579Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M14.3745 4.0506C12.9112 4.00052 11.4476 4.21336 10.0587 4.68938C7.62813 5.51591 4.27977 7.50735 2.18352 12.3792C1.73698 13.3185 2.13394 14.4332 3.06391 14.8842C3.99389 15.3352 5.09775 14.9343 5.54429 13.9951C5.56909 13.9575 5.58148 13.9075 5.59388 13.8699C5.96604 12.9932 6.4371 12.1539 7.00762 11.39C6.99523 11.5652 6.98283 11.7408 6.98283 11.9286C6.97043 14.2332 7.97507 16.4125 9.71116 17.9029L12.3651 15.2226C10.5668 13.8949 10.1701 11.3398 11.4847 9.52369C12.7993 7.70753 15.3293 7.30691 17.1276 8.63455C18.9258 9.9622 19.3225 12.5173 18.0079 14.3334C17.5862 14.9221 17.0157 15.3856 16.346 15.6736C15.416 16.112 15.0191 17.239 15.4656 18.1786C15.8874 19.0677 16.9166 19.4812 17.822 19.1178C18.7892 18.6919 19.6575 18.0782 20.3768 17.3142L24.9035 13.1185H29.9882V4L14.3745 4.0506Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M20.3363 26.5855L24.1189 22.7653L19.9146 18.5193C19.3441 18.9703 18.724 19.3458 18.0543 19.6341C17.7568 19.7718 17.4218 19.8344 17.0995 19.8344C15.7602 19.8344 14.6811 18.7446 14.6811 17.392C14.6811 16.4151 15.2516 15.5383 16.1444 15.1501L16.442 14.9999L14.8671 13.4219L5.61536 22.7655L9.39792 26.5856H2.03125V28.0009H29.9965V26.5856L20.3363 26.5855Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M4.79688 13.2031H10.3969V24.4031H4.79688V13.2031Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M21.6016 7.60156H27.2016V24.4016H21.6016V7.60156Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M13.2031 2H18.8031V24.4H13.2031V2Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M2 27.2031H30V30.0031H2V27.2031Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M24.8003 13.6735C24.462 13.0342 23.7519 12.6672 22.8504 12.6672H17.9825V3.89054C17.9825 2.60498 17.4677 2.17855 17.0341 2.04866C16.606 1.91956 15.9435 1.98372 15.2365 3.04315L12.1444 7.64159C11.6397 8.39665 10.9061 9.47252 10.2631 10.4138L6.47886 15.9019C5.79138 16.912 5.99372 17.6397 6.17496 17.9832C6.36089 18.3361 6.86557 18.9284 8.14679 18.9284H13.2943V28.1221C13.2943 28.5087 13.2943 29.6855 14.1763 29.9531C14.281 29.9851 14.3826 30 14.4802 30C15.1997 30 15.7193 29.2222 15.9122 28.9327L18.8606 24.321L19.059 24.0245C19.7793 22.9455 20.8184 21.39 21.4816 20.415L24.5206 15.905C25.0409 15.1366 25.1433 14.3245 24.8003 13.6735ZM23.2277 15.0255L20.1879 19.5356C19.5246 20.5105 18.4825 22.0707 17.7614 23.1528L14.8568 27.6793V18.1444C14.8568 17.7117 14.5084 17.3619 14.0756 17.3619H8.14835C7.75227 17.3619 7.57883 17.2719 7.56243 17.2649C7.5554 17.2289 7.57962 17.0615 7.76711 16.7876L11.5537 11.2956C12.1998 10.3496 12.9373 9.2683 13.4428 8.51167L16.4208 4.08381V13.4497C16.4208 13.8824 16.77 14.2321 17.202 14.2321H22.8511C23.1792 14.2321 23.3761 14.3221 23.4207 14.4066C23.4667 14.4966 23.4285 14.729 23.2277 15.0255Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M16.8801 3.5L17.3747 13L23.8039 14L16.3856 26.5L14.4074 28V27.5L13.9128 18H7.97821L6.9891 16.5L15.891 3.5H16.8801Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M24.8003 13.6735C24.462 13.0342 23.7519 12.6672 22.8504 12.6672H17.9825V3.89054C17.9825 2.60498 17.4677 2.17855 17.0341 2.04866C16.606 1.91956 15.9435 1.98372 15.2365 3.04315L12.1444 7.64159C11.6397 8.39665 10.9061 9.47252 10.2631 10.4138L6.47886 15.9019C5.79138 16.912 5.99372 17.6397 6.17496 17.9832C6.36089 18.3361 6.86557 18.9284 8.14679 18.9284H13.2943V28.1221C13.2943 28.5087 13.2943 29.6855 14.1763 29.9531C14.281 29.9851 14.3826 30 14.4802 30C15.1997 30 15.7193 29.2222 15.9122 28.9327L18.8606 24.321L19.059 24.0245C19.7793 22.9455 20.8184 21.39 21.4816 20.415L24.5206 15.905C25.0409 15.1366 25.1433 14.3245 24.8003 13.6735ZM23.2277 15.0255L20.1879 19.5356C19.5246 20.5105 18.4825 22.0707 17.7614 23.1528L14.8568 27.6793V18.1444C14.8568 17.7117 14.5084 17.3619 14.0756 17.3619H8.14835C7.75227 17.3619 7.57883 17.2719 7.56243 17.2649C7.5554 17.2289 7.57962 17.0615 7.76711 16.7876L11.5537 11.2956C12.1998 10.3496 12.9373 9.2683 13.4428 8.51167L16.4208 4.08381V13.4497C16.4208 13.8824 16.77 14.2321 17.202 14.2321H22.8511C23.1792 14.2321 23.3761 14.3221 23.4207 14.4066C23.4667 14.4966 23.4285 14.729 23.2277 15.0255Z\" fill=\"none\" stroke=\"#232A3A\"/>\n <path d=\"M16.8801 3.5L17.3747 13L23.8039 14L16.3856 26.5L14.4074 28V27.5L13.9128 18H7.97821L6.9891 16.5L15.891 3.5H16.8801Z\" fill=\"none\" stroke=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M4.36084 8.29014H8.65192V5.58888C8.65192 4.12557 9.72465 3 11.012 3H20.9885C22.2759 3 23.456 4.12551 23.456 5.58888V8.29014H27.6399C28.9273 8.29014 30 9.41565 30 10.7663V26.5238C30 27.8745 28.9273 29 27.6399 29H4.36007C3.07274 29 2 27.8745 2 26.5238V10.7663C2 9.41565 3.07274 8.29014 4.36007 8.29014H4.36084ZM10.3686 8.29014H21.6331V5.58888C21.6331 5.25109 21.3111 4.91355 20.9894 4.91355H11.0129C10.6909 4.91355 10.3692 5.25134 10.3692 5.58888V8.29014H10.3686Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M25.6052 2.00369C25.2525 2.04244 24.9583 2.37783 24.966 2.73247V6.01758L23.8894 7.09393V5.24395C23.8982 4.83689 23.498 4.47059 23.0933 4.51517C22.7406 4.55392 22.4464 4.88932 22.4541 5.24395V8.52906L22.2971 8.68603C20.1416 6.77011 17.3063 5.60273 14.2007 5.60273C7.47093 5.60273 2 11.0727 2 17.8014C2 24.53 7.47093 30 14.2007 30C20.9304 30 26.4013 24.53 26.4013 17.8014C26.4013 15.2034 25.583 12.7948 24.1922 10.8163L23.1718 11.8254C23.1735 11.828 23.17 11.8339 23.1718 11.8366C24.3053 13.5432 24.966 15.5955 24.966 17.8014C24.966 23.7544 20.1547 28.5649 14.2007 28.5649C8.24666 28.5649 3.43537 23.7544 3.43537 17.8014C3.43537 11.8483 8.24666 7.03787 14.2007 7.03787C16.9172 7.03787 19.3955 8.04073 21.2878 9.69511L19.5048 11.4778C18.07 10.2725 16.2168 9.54935 14.2007 9.54935C9.65095 9.54935 5.94728 13.2524 5.94728 17.8014C5.94728 22.3503 9.65095 26.0534 14.2007 26.0534C18.7504 26.0534 22.4541 22.3503 22.4541 17.8014C22.4541 16.2964 22.0404 14.8907 21.3327 13.6754L20.2898 14.7181C20.7573 15.6431 21.0187 16.6901 21.0187 17.8014C21.0187 21.5747 17.9747 24.6182 14.2007 24.6182C10.4267 24.6182 7.38265 21.5747 7.38265 17.8014C7.38265 14.028 10.4267 10.9845 14.2007 10.9845C15.8282 10.9845 17.3136 11.5513 18.4844 12.4981L16.4322 14.5499C15.7955 14.1097 15.029 13.8548 14.2007 13.8548C12.0292 13.8548 10.2534 15.6302 10.2534 17.8014C10.2534 19.9725 12.0292 21.748 14.2007 21.748C16.3722 21.748 18.1479 19.9725 18.1479 17.8014C18.1479 17.5127 18.1072 17.2304 18.047 16.9605L16.6453 18.362C16.3919 19.4824 15.4023 20.3129 14.2007 20.3129C12.8049 20.3129 11.6888 19.1969 11.6888 17.8014C11.6888 16.4058 12.8049 15.2899 14.2007 15.2899C14.6332 15.2899 15.0355 15.4033 15.3893 15.5926L13.696 17.2856C13.4172 17.5381 13.3931 18.0214 13.6456 18.3003C13.8981 18.5792 14.3815 18.6032 14.6604 18.3508C14.6642 18.3471 23.4633 9.54935 23.4633 9.54935H26.7602C27.1394 9.55471 27.4881 9.21092 27.4881 8.83178C27.4881 8.45265 27.1394 8.10886 26.7602 8.11422H24.8987L25.9752 7.03787H29.2721C29.6513 7.04323 30 6.69944 30 6.3203C30 5.94116 29.6513 5.59737 29.2721 5.60273H26.4013V2.73247C26.4101 2.32541 26.0099 1.95911 25.6052 2.00369Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M30 16.7891L16 20.0625L2 16.7891H30Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M4.61343 18.875L15.6608 21.4578L15.9919 21.5357L16.323 21.4582L27.3694 18.8754C27.9161 19.1244 28.2969 19.6677 28.2969 20.3015C28.2969 21.1703 27.5846 21.8743 26.7062 21.8743H5.27678C4.39778 21.8743 3.68567 21.1701 3.68567 20.3015C3.68607 19.6673 4.06763 19.124 4.61313 18.875L4.61343 18.875Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M3.38201 23.2891H28.6254C29.0045 23.2891 29.3125 23.5937 29.3125 23.9687C29.3125 25.6381 27.9386 26.9961 26.2512 26.9961H5.75651C4.0691 26.9961 2.69654 25.6383 2.69654 23.9687C2.69634 23.5936 3.00373 23.2891 3.38211 23.2891H3.38201Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M3.186 13.2105C5.91384 8.69572 10.7035 6 15.9986 6C21.2936 6 26.0834 8.69572 28.8117 13.2105C29.0777 13.6505 29.0838 14.1983 28.8281 14.6445C28.5719 15.0903 28.0934 15.3661 27.575 15.3661H4.42296C3.90454 15.3661 3.42587 15.0905 3.17011 14.6445C2.91396 14.1987 2.92009 13.6509 3.18633 13.2105H3.186Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M30 16C30 12.2869 28.525 8.72605 25.8994 6.10057C23.274 3.47499 19.713 2 16 2C12.287 2 8.72605 3.47499 6.10057 6.10057C3.47499 8.72595 2 12.287 2 16C2 19.713 3.47499 23.2739 6.10057 25.8994C8.72595 28.525 12.287 30 16 30C19.709 29.9869 23.2624 28.5076 25.8849 25.885C28.5074 23.2623 29.9869 19.709 30 16ZM26.2668 22.6605L20.1706 12.4997H27.734C28.245 14.198 28.3784 15.9872 28.125 17.7427C27.8715 19.4979 27.2373 21.1763 26.2668 22.6605ZM18.1294 19.4997H13.8708L11.7704 15.9998L13.8708 12.4998H18.1296L20.2298 15.9998L18.1294 19.4997ZM27.0513 10.7498H14.9209L18.9037 4.11183C20.6685 4.5464 22.3144 5.36708 23.7235 6.51492C25.1325 7.66296 26.2691 9.1094 27.0513 10.7498ZM16.0004 3.74984C16.3541 3.74984 16.7019 3.77347 17.048 3.80296L10.7506 14.2989L6.88106 7.84943C8.02581 6.56134 9.43005 5.5299 11.0019 4.8233C12.5736 4.11686 14.2772 3.75084 16.0004 3.74984ZM5.73347 9.3393L11.8297 19.5H4.26628C3.75534 17.8018 3.62194 16.0125 3.87527 14.2571C4.12878 12.5018 4.76298 10.8234 5.73347 9.3393ZM4.94908 21.2497H17.08L13.0974 27.8877C11.3326 27.4531 9.68629 26.6322 8.27735 25.4844C6.86817 24.3365 5.73127 22.8901 4.94908 21.2497ZM16 28.2497C15.6465 28.2497 15.2987 28.2262 14.9526 28.1965L21.25 17.7007L25.1195 24.1502C23.9747 25.4383 22.5705 26.4697 20.9986 27.1763C19.4269 27.8827 17.7232 28.2487 16 28.2497Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M18.3839 16.0435C18.3839 17.3361 17.3361 18.3839 16.0435 18.3839C14.751 18.3839 13.7031 17.3361 13.7031 16.0435C13.7031 14.751 14.751 13.7031 16.0435 13.7031C17.3361 13.7031 18.3839 14.751 18.3839 16.0435Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M24.131 17.3686C23.245 18.57 22.5632 19.5995 22.0522 20.5951L20.4844 23.65H18.8486V12.529C18.8486 12.4948 18.8146 12.4261 18.8146 12.3918L17.1106 8.27299C17.0084 8.0326 16.7697 7.86117 16.4973 7.86117C16.2246 7.86117 15.9862 8.03284 15.884 8.27299L14.18 12.3918V12.4261C14.18 12.4603 14.146 12.4948 14.146 12.529V23.65H12.5103L10.9425 20.5951C10.4314 19.5998 9.74955 18.57 8.8636 17.3686C5.93275 13.3869 6.51204 7.68914 10.2267 4.39402C13.8051 1.20199 19.2237 1.20199 22.8362 4.39402C26.4826 7.68927 27.0619 13.387 24.131 17.3686ZM12.7143 27.0823H20.2119V25.0227L12.7143 25.023V27.0823ZM16.4632 30C17.5878 30 18.5081 29.0732 18.5081 27.9404H14.4184C14.4184 29.0731 15.3385 30 16.4632 30ZM15.7817 11.9798H17.1447L16.4632 10.3323L15.7817 11.9798ZM15.4408 23.65H17.4857V13.3528H15.4408V23.65Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M29.2741 15.248H29.2083L26.3236 9.26713C26.7167 8.78631 26.8351 8.13738 26.6375 7.54849C26.4397 6.9598 25.9535 6.51385 25.35 6.36769C24.7463 6.22151 24.11 6.39541 23.6646 6.82856L22.6553 6.03943H22.6555C21.2584 4.95655 19.4404 4.57687 17.7267 5.01021L17.4609 5.07881H17.4607C17.3321 4.65962 17.0293 4.31603 16.6299 4.13551C16.2303 3.95483 15.7724 3.95483 15.3727 4.13551C14.9731 4.31599 14.6703 4.65962 14.5417 5.07881L14.2959 5.01021C12.5848 4.57965 10.7708 4.95916 9.37564 6.03943L8.36633 6.82856H8.36653C7.92121 6.3954 7.28482 6.22149 6.68117 6.36769C6.07773 6.51387 5.5915 6.9598 5.39367 7.54849C5.19604 8.13738 5.3145 8.78631 5.70756 9.26713L2.8143 15.248H2.74849C2.53989 15.2474 2.34026 15.3341 2.19849 15.4873C2.05671 15.6406 1.98551 15.8462 2.00246 16.0542C2.14345 17.7673 3.13976 19.2935 4.65123 20.1119C6.16286 20.9303 7.98544 20.9303 9.49706 20.1119C11.0087 19.2935 12.005 17.7672 12.146 16.0542C12.1636 15.8462 12.0932 15.6402 11.952 15.4865C11.8106 15.3327 11.6114 15.2452 11.4026 15.2452H11.3368L8.4778 9.32711L9.8672 8.46937L9.8674 8.46957C10.8619 7.86929 12.085 7.78536 13.1523 8.24362C13.5538 8.3912 13.9769 8.47136 14.4045 8.48094V10.0819C13.767 10.5757 13.3938 11.3369 13.3938 12.1432C13.3938 12.9496 13.7669 13.7106 14.4045 14.2046V23.462L8.93268 25.5947C8.68379 25.6718 8.46602 25.8268 8.31167 26.0366C8.15732 26.2466 8.07436 26.5006 8.07495 26.7611V26.8355C8.07495 27.1599 8.20398 27.4712 8.43332 27.7007C8.66286 27.9301 8.97417 28.0591 9.29861 28.0591H22.7214C23.0459 28.0591 23.3572 27.9301 23.5865 27.7007C23.816 27.4712 23.9449 27.1599 23.9449 26.8355V26.7611C23.9455 26.5008 23.8623 26.2474 23.708 26.038C23.5536 25.8284 23.336 25.674 23.0874 25.5976L17.615 23.462V14.2076C18.2526 13.7139 18.6259 12.9527 18.6259 12.1464C18.6259 11.3399 18.2526 10.5789 17.615 10.0849V8.48115C18.044 8.46899 18.4677 8.38682 18.8702 8.23805C19.9331 7.78895 21.1474 7.87949 22.1322 8.48115L23.5216 9.33889L20.6627 15.2569H20.5968L20.597 15.2567C20.3882 15.2569 20.189 15.3445 20.0478 15.4982C19.9064 15.652 19.836 15.8578 19.8538 16.0658C19.9948 17.7791 20.9911 19.305 22.5025 20.1235C24.0142 20.9419 25.8368 20.9419 27.3484 20.1235C28.86 19.305 29.8563 17.779 29.9974 16.0658C30.0149 15.8578 29.9445 15.652 29.8033 15.4982C29.6619 15.3445 29.4627 15.2569 29.2539 15.2567L29.2741 15.248ZM8.97549 15.248H5.19018L7.07715 11.3341L8.97549 15.248ZM23.0702 15.248L24.9571 11.3341L26.8441 15.248H23.0702Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M6.74961 4.54555H15.7498V2.63644C15.7498 2.28509 16.0858 2 16.4999 2C16.914 2 17.25 2.28509 17.25 2.63644V4.54555H26.2502C26.449 4.54555 26.6399 4.61246 26.7805 4.73178C26.9211 4.8511 27.0003 5.01303 27 5.182V23C27.0003 23.169 26.9211 23.3309 26.7805 23.4502C26.6399 23.5695 26.449 23.6364 26.2502 23.6364H21.3571L23.9459 29.1276C24.0996 29.4536 23.9128 29.8237 23.5283 29.9541C23.1441 30.0845 22.7079 29.926 22.5542 29.5997L19.743 23.6362H17.2501V29.3636C17.2501 29.7149 16.9141 30 16.5 30C16.0859 30 15.7499 29.7149 15.7499 29.3636V23.6362H13.257L10.4458 29.5997C10.2921 29.926 9.85589 30.0845 9.4717 29.9541C9.08723 29.8237 8.9004 29.4536 9.05409 29.1276L11.6429 23.6364H6.74985C6.55096 23.6364 6.36011 23.5695 6.21948 23.4502C6.07886 23.3309 5.99975 23.169 6 23V5.182C5.99975 5.01303 6.07886 4.8511 6.21948 4.73178C6.36011 4.61246 6.55096 4.54555 6.74985 4.54555H6.74961Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M16 6C8.26944 6 2 16.5 2 16.5C2 16.5 8.26924 27 16 27C23.7319 27 30 16.5 30 16.5C30 16.5 23.7321 6 16 6ZM16 23.5C12.1347 23.5 9 20.366 9 16.5C9 12.6342 12.1348 9.5 16 9.5C19.8658 9.5 23 12.634 23 16.5C23 20.3658 19.8658 23.5 16 23.5Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M19.4997 16.4999C19.4997 18.4329 17.9329 19.9997 15.9999 19.9997C14.0668 19.9997 12.5 18.4329 12.5 16.4999C12.5 14.5668 14.0668 13 15.9999 13C17.9329 13 19.4997 14.5668 19.4997 16.4999Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M11.5578 3.27942H20.4433V9.92633H16.9793L17.9153 21.7477C17.9709 22.4511 17.3947 23.0319 16.7589 23.0319H15.2433C14.6071 23.0319 14.0309 22.4508 14.087 21.7477L15.0226 9.92633H11.5581V3.27942H11.5578ZM9.58664 26.6184H10.5622V25.2518C10.5622 24.6193 11.0929 24.1027 11.7426 24.1027H20.255C20.9052 24.1027 21.4355 24.6192 21.4355 25.2518V26.6184H22.4131C23.2863 26.6184 24 27.3131 24 28.1631V30H8V28.1631C8 27.3131 8.71321 26.6184 9.58693 26.6184H9.58664ZM22.4929 2H22.4923C21.7149 2 21.0782 2.61931 21.0782 3.37642V9.8291C21.0782 10.5858 21.7146 11.2055 22.4923 11.2055H22.4929C23.2708 11.2055 23.9069 10.586 23.9069 9.8291V3.37642C23.9069 2.61926 23.2707 2 22.4929 2ZM9.50541 2H9.50656C10.2839 2 10.9206 2.61931 10.9206 3.37642V9.8291C10.9206 10.5858 10.2842 11.2055 9.50656 11.2055H9.50541C8.72804 11.2055 8.09182 10.586 8.09182 9.8291V3.37642C8.09182 2.61926 8.72804 2 9.50541 2Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M6 6C6 4.93914 6.42143 3.92172 7.17157 3.17157C7.92172 2.42143 8.93914 2 10 2C11.0609 2 12.0783 2.42143 12.8284 3.17157C13.5786 3.92172 14 4.93914 14 6C14 7.06087 13.5786 8.07829 12.8284 8.82843C12.0783 9.57858 11.0609 10 10 10C8.93914 10 7.92172 9.57858 7.17157 8.82843C6.42143 8.07829 6 7.06087 6 6Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M19.5575 9.16509L19.6415 9.22909C20.4901 9.85811 21.553 10.1259 22.5983 9.97412C23.6437 9.8223 24.5865 9.26318 25.2211 8.41876C25.8557 7.57435 26.1305 6.5132 25.9856 5.46689C25.8407 4.42059 25.2878 3.47407 24.4476 2.83391C23.6074 2.19375 22.5481 1.91192 21.5009 2.04992C20.4536 2.18793 19.5035 2.73456 18.8578 3.57052C18.2121 4.40649 17.9233 5.46392 18.0544 6.51204C18.1855 7.56017 18.7258 8.5139 19.5575 9.16509Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M12.5333 11.9993C12.7845 11.5236 13.129 11.1035 13.5463 10.764C13.9637 10.4246 14.4452 10.1728 14.962 10.0238C15.4789 9.87475 16.0205 9.83149 16.5545 9.8966C17.0885 9.96171 17.6038 10.1339 18.0697 10.4027C18.5356 10.6716 18.9425 11.0317 19.266 11.4615C19.5896 11.8913 19.8231 12.3819 19.9526 12.904C20.0822 13.4261 20.105 13.9689 20.0199 14.5001C19.9348 15.0312 19.7434 15.5398 19.4573 15.9953C18.9067 16.8715 18.0379 17.5003 17.0335 17.7495C16.0291 17.9987 14.9672 17.8489 14.0709 17.3316C13.1746 16.8144 12.5137 15.9698 12.2269 14.9755C11.9402 13.9811 12.05 12.9144 12.5333 11.9993Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M5 12H10.34C10.12 12.626 10 13.3 10 14C10 15.536 10.578 16.94 11.528 18H11C9.96888 17.9999 8.9629 18.3184 8.11977 18.912C7.27664 19.5056 6.63756 20.3452 6.29 21.316C5.61867 21.0463 4.9901 20.6805 4.424 20.23C2.92 19.02 2 17.232 2 15C2 14.2044 2.31607 13.4413 2.87868 12.8787C3.44129 12.3161 4.20435 12 5 12Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M20.9968 18C23.1668 18 25.0148 19.382 25.7048 21.316C26.3848 21.038 27.0148 20.676 27.5728 20.23C29.0768 19.02 29.9968 17.232 29.9968 15C29.9968 14.2044 29.6807 13.4413 29.1181 12.8787C28.5555 12.3161 27.7924 12 26.9968 12H21.6568C21.8768 12.626 21.9968 13.3 21.9968 14C21.9986 15.4762 21.4543 16.901 20.4688 18H20.9968Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M23.774 21.856C23.92 22.208 24 22.596 24 23C24 25.232 23.082 27.02 21.576 28.23C20.094 29.42 18.106 30 16 30C13.894 30 11.906 29.42 10.424 28.23C8.92001 27.02 8.00001 25.232 8.00001 23C7.99896 22.6058 8.07583 22.2152 8.22622 21.8507C8.37661 21.4863 8.59755 21.1551 8.87634 20.8763C9.15512 20.5976 9.48626 20.3766 9.85071 20.2262C10.2152 20.0758 10.6058 19.999 11 20H21C21.5942 19.9999 22.1751 20.1762 22.669 20.5066C23.1628 20.8371 23.5474 21.3067 23.774 21.856Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M18.2699 12.5503L25.085 17.6837C25.5122 16.7272 25.7511 15.7398 25.8134 14.6811C25.8284 14.4216 25.831 14.1588 25.8207 13.8983L20.6165 8.57031H20.5705C18.1164 8.57031 16.4563 10.695 16.426 10.7172L13.6106 13.7403C13.1739 14.2066 13.0655 14.8627 13.6165 15.3219C14.0338 15.6699 14.6359 15.6384 15.0165 15.2477L17.6345 12.5967C17.862 12.3917 18.1831 12.4846 18.2699 12.5504L18.2699 12.5503Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M21.8514 4.26562C21.4034 4.26602 20.9816 4.44522 20.6637 4.77065C19.9975 5.4525 19.9975 6.56158 20.6637 7.24302L27.1268 13.8588C27.7645 14.5109 28.8677 14.5105 29.5028 13.8592C30.169 13.1773 30.169 12.0683 29.5028 11.3868L23.0397 4.77105C22.7208 4.44521 22.2989 4.26563 21.8514 4.26563C21.4034 4.26602 22.299 4.26563 21.8514 4.26563V4.26562Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M10.1515 4C9.70354 4 9.28174 4.17919 8.96338 4.50503L2.49924 11.1213C1.83352 11.8023 1.83352 12.9118 2.49964 13.5933C3.14544 14.2547 4.22974 14.2543 4.87569 13.5929L11.3393 6.97659C12.0047 6.29556 12.0047 5.18668 11.3389 4.50524C11.0258 4.18972 10.6018 4.00001 10.1516 4.00001L10.1515 4Z\" fill=\"#232A3A\"/>\n <path d=\"M7.89505 18.1324L6.44542 19.6165C6.18493 19.8832 6.18493 20.3166 6.44502 20.5829L6.67768 20.8212C6.92103 21.0707 7.33979 21.0707 7.58273 20.8212L9.03237 19.3371C9.29286 19.0704 9.29286 18.6366 9.03237 18.3699L8.8003 18.1321C8.55756 17.8839 8.1398 17.8821 7.89504 18.1323L7.89505 18.1324Z\" fill=\"#232A3A\"/>\n <path d=\"M10.1758 19.8128C10.0061 19.8128 9.84517 19.8812 9.7238 20.006L9.72339 20.0064L8.27314 21.4906C8.01305 21.7569 8.01305 22.1907 8.27354 22.4574L8.50561 22.6951C8.74896 22.9435 9.1673 22.9439 9.41107 22.6947L10.8603 21.2106C11.1208 20.9439 11.1208 20.5101 10.8603 20.2434L10.6286 20.0064C10.5069 19.8812 10.3462 19.8128 10.1758 19.8128L10.1758 19.8128ZM9.3774 19.6719H9.38184H9.3774Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M12.0665 21.6175C11.8967 21.6175 11.7358 21.6859 11.6145 21.8107L11.6141 21.8111L10.1638 23.2953C9.90373 23.5616 9.90373 23.9954 10.1638 24.2617L10.3965 24.5C10.6398 24.7484 11.0582 24.7488 11.3019 24.4996L12.7522 23.0154C13.0123 22.7491 13.0123 22.3154 12.7522 22.0491L12.5195 21.8113C12.3976 21.6859 12.2369 21.6175 12.0665 21.6175H12.0665ZM11.2681 21.4766H11.2725H11.2681Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M13.9102 23.5009C13.7404 23.5009 13.5795 23.5693 13.4582 23.6941L13.4578 23.6945L12.0075 25.1787C11.7474 25.445 11.7474 25.8788 12.0079 26.1455L12.24 26.3832C12.4833 26.6316 12.9017 26.632 13.1454 26.3828L14.5951 24.8987C14.8556 24.632 14.8556 24.1982 14.5951 23.9315L14.3634 23.6949C14.2412 23.5693 14.0803 23.5009 13.9102 23.5009L13.9102 23.5009ZM13.1112 23.3594H13.1156H13.1112Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M14.7779 26.0714L15.9932 27.212C16.2154 27.4224 16.3203 27.6573 16.6029 27.8139C16.9529 28.009 17.3834 28.0544 17.7876 27.9405C18.1431 27.8397 18.4243 27.6294 18.5805 27.348C18.7346 27.071 18.7711 26.7027 18.6804 26.3368C18.6378 26.1661 18.6924 25.9861 18.8235 25.8674C18.9535 25.7488 19.1382 25.7105 19.3068 25.7678C19.7114 25.9073 20.1146 25.8954 20.3346 25.7353C20.6522 25.5045 20.8441 24.7876 20.6016 24.0325C20.5407 23.8435 20.603 23.6368 20.7588 23.5119C20.9151 23.3871 21.1318 23.3715 21.3034 23.4707C21.9312 23.8316 22.5748 23.7739 22.8611 23.5348C23.1831 23.2663 23.3553 22.5218 23.0702 21.7875C23.0069 21.624 23.0381 21.439 23.1525 21.3053C23.2658 21.1711 23.442 21.1114 23.6168 21.1443C23.8805 21.1985 24.1448 21.1715 24.3801 21.0687C25.0124 20.7931 25.2509 20.0216 25.1599 19.4019C25.1261 19.1735 25.0416 18.9552 24.9089 18.7516L18.0262 13.5668L15.7066 15.9156C14.9701 16.6673 13.8047 16.7286 12.9955 16.0543C12.5352 15.6707 12.2693 15.1111 12.266 14.5189C12.2634 13.9611 12.5009 13.4325 12.9194 13.065L15.4941 10.3011C14.4878 9.14184 13.0414 8.48438 11.467 8.48438L11.3717 8.48517C11.3138 8.48596 11.2565 8.48874 11.2009 8.49231L6.36609 13.4416C6.19633 14.873 6.43243 16.3277 7.03811 17.6146L7.19436 17.4547C7.80485 16.8298 8.87445 16.8298 9.48453 17.4543L9.71719 17.6926C10.0293 18.0117 10.1841 18.4318 10.1823 18.8515C10.614 18.8529 11.0186 19.0249 11.3227 19.3365L11.5543 19.5734C11.8483 19.8748 12.0037 20.2656 12.0187 20.6611C12.4794 20.6495 12.8985 20.8202 13.2159 21.1446L13.4479 21.382C13.7582 21.6993 13.913 22.1162 13.9135 22.5333C14.3421 22.5365 14.7435 22.7085 15.0458 23.0183L15.2774 23.2549C15.8988 23.8914 15.8988 24.9253 15.2778 25.5605L14.7779 26.0714Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M22.3695 4C17.6059 4 16 8.38371 16 8.38371C16 8.38371 14.3959 4 9.63053 4C4.86828 4 2 8.70759 2 12.5875C2 19.0897 16 29 16 29C16 29 30 19.092 30 12.5888C30 8.70754 27.1328 4 22.3695 4Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M29.2091 25.3808L23.8605 20.0322C23.4347 19.6123 22.7465 19.6064 22.3148 20.0263L21.2824 18.9879C24.1055 15.1499 24.0939 9.74842 20.9266 5.89867C17.1819 1.34309 10.4507 0.683913 5.89526 4.42882C1.33968 8.17941 0.686233 14.9109 4.43114 19.4659C8.04762 23.8639 14.4404 24.6106 18.9786 21.2858L20.017 22.3242C19.6028 22.7558 19.6087 23.4382 20.0286 23.8639L25.3772 29.2126C26.433 30.2625 28.1537 30.2625 29.2095 29.2126C30.2595 28.1569 30.2591 26.4366 29.2091 25.3808ZM17.975 19.1281C14.4344 22.0445 9.17296 21.5604 6.23305 17.9848C3.31658 14.4382 3.80077 9.17701 7.37636 6.23137C10.8586 3.36151 16.1435 3.7582 19.124 7.38036C22.0346 10.9151 21.5681 16.1767 17.975 19.1281Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M17.5043 15.9201V17.1566L7.85079 17.1568V15.9203C7.85079 14.2578 9.19815 12.9104 10.8606 12.9104H14.4946C16.1569 12.9104 17.5043 14.2578 17.5043 15.9201Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M10.1374 9.41632C10.1374 8.01646 11.2748 6.87315 12.6746 6.87315C14.0804 6.87315 15.2178 8.01646 15.2178 9.41632C15.2178 10.8221 14.0804 11.9595 12.6746 11.9595C11.2748 11.9595 10.1374 10.8221 10.1374 9.41632Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M19.4595 22.3799C19.4595 22.7422 19.1587 23.037 18.7869 23.037H17.1564V24.63C17.1564 24.9928 16.8551 25.2873 16.4843 25.2873H15.5177C15.1463 25.2873 14.8456 24.9927 14.8456 24.63V23.037H13.2151C12.8435 23.037 12.5425 22.7424 12.5425 22.3799V21.4355C12.5425 21.0732 12.8433 20.7784 13.2151 20.7784H14.8456V19.1854C14.8456 18.8227 15.1464 18.529 15.5177 18.529H16.4843C16.8551 18.529 17.1564 18.8226 17.1564 19.1854V20.7784H18.7869C19.1585 20.7784 19.4595 21.073 19.4595 21.4355V22.3799Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M23.2976 6.52956C23.2976 7.64393 22.3737 8.54726 21.2324 8.54726L10.769 8.54702C9.62788 8.54702 8.70352 7.64369 8.70352 6.52931V4.01795C8.70352 2.90283 9.62813 2 10.769 2H21.2324C22.3738 2 23.2976 2.90283 23.2976 4.01795V6.52956Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M23.6088 13.07L21.2125 10.7975V9.23904H10.7879V10.7975L8.39161 13.07C7.07573 14.3189 6 16.8942 6 18.7957V27.9813C6 29.0964 6.92487 30 8.0655 30H23.9342C25.0754 30 25.9998 29.0964 25.9998 27.9813L26 18.7957C26 16.8938 24.9243 14.3188 23.6089 13.07H23.6088ZM23.2971 25.5876C23.2971 26.6357 22.4282 27.4861 21.3547 27.4861L10.6457 27.4863C9.57294 27.4863 8.70273 26.6362 8.70273 25.5879V18.1846C8.70273 17.137 9.57243 16.2861 10.6457 16.2861H21.3547C22.4276 16.2861 23.2971 17.1368 23.2971 18.1846L23.2973 25.5879L23.2971 25.5876Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M28 15.0135C28 14.6548 27.8008 14.3237 27.4772 14.1445C27.1538 13.9651 26.755 13.9651 26.4316 14.1445C26.1079 14.3237 25.9085 14.6548 25.9085 15.0135C25.8979 18.1136 24.2306 20.992 21.4922 22.6374C18.754 24.2831 15.3275 24.4657 12.4159 23.1213C9.50446 21.7772 7.51524 19.0939 7.14644 16.0138H10.2286C10.2286 18.1637 11.424 20.1502 13.3644 21.2252C15.3046 22.3001 17.6953 22.3001 19.6355 21.2252C21.5759 20.1502 22.7713 18.1637 22.7713 16.0138H15.4577C15.0853 16.0138 14.7411 15.8232 14.5548 15.5137C14.3685 15.2043 14.3685 14.8229 14.5548 14.5134C14.7412 14.2038 15.0853 14.0133 15.4577 14.0133H22.7713V8.01752C22.7713 5.86764 21.5759 3.88118 19.6355 2.80629C17.6953 1.73124 15.3046 1.73124 13.3644 2.80629C11.424 3.88112 10.2286 5.86764 10.2286 8.01752V14.0133L6.04566 14.0135C5.76878 14.0135 5.50342 14.1186 5.30737 14.3063C5.11134 14.4937 5.00068 14.7481 5 15.0138C5.0122 17.7589 6.09056 20.4012 8.02439 22.4242C9.958 24.4473 12.6082 25.7063 15.4576 25.9551V27.9992H12.3202C11.9478 27.9992 11.6036 28.1899 11.4173 28.4994C11.2313 28.809 11.2313 29.1902 11.4173 29.4999C11.6037 29.8093 11.9478 30 12.3202 30H20.6796C21.052 30 21.3962 29.8093 21.5825 29.4999C21.7686 29.1902 21.7686 28.809 21.5825 28.4994C21.3962 28.1899 21.052 27.9992 20.6796 27.9992H17.5423V25.9551C20.3937 25.7061 23.0457 24.4453 24.9795 22.4196C26.9134 20.3937 27.9904 17.7484 27.9994 15.0009L28 15.0135ZM12.6439 11.9411C12.6439 12.2841 12.3539 12.5624 11.9964 12.5624C11.6387 12.5624 11.3487 12.2841 11.3487 11.9411V7.90244C11.3487 6.6664 11.8605 5.48122 12.7713 4.60732C13.6821 3.73337 14.9172 3.24252 16.2052 3.24252H16.6327C16.9902 3.24252 17.2801 3.52055 17.2801 3.86379C17.2801 4.20682 16.9902 4.48505 16.6327 4.48505H16.1988C15.2541 4.48505 14.3483 4.84521 13.6805 5.48599C13.0127 6.12679 12.6373 6.99597 12.6373 7.90244L12.6439 11.9411Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M15.4726 5.92586C15.3648 5.9109 15.2555 5.93842 15.1695 6.00235C15.0834 6.06606 15.0281 6.16076 15.0159 6.26456C14.6954 6.2832 14.3876 6.39306 14.1322 6.58008C13.877 6.76709 13.6853 7.02258 13.5819 7.31446C13.2386 8.33032 14.0254 9.4208 15.0033 9.77489H15.0031C15.4579 9.96689 15.9825 9.92832 16.4016 9.67239C16.8549 9.36164 16.926 8.82423 16.9877 8.32407C17.1042 7.2555 16.7772 6.03139 15.4726 5.92587L15.4726 5.92586ZM16.0229 8.13166C15.9744 8.63181 15.8804 9.15385 15.2329 8.86172C14.8154 8.67232 14.3555 8.16589 14.4656 7.68742C14.4974 7.50452 14.6189 7.34742 14.7919 7.26485C14.9649 7.1825 15.1688 7.18467 15.3398 7.27092C15.5299 7.39856 15.7917 7.35717 15.929 7.17774C16.0403 7.48372 16.0726 7.81093 16.0229 8.13163L16.0229 8.13166Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M19.6451 6.7774C19.5374 6.76245 19.4281 6.79019 19.342 6.8539C19.256 6.91782 19.2007 7.01231 19.1887 7.11611C18.8655 7.13149 18.5545 7.23963 18.2961 7.4262C18.0376 7.61278 17.8431 7.86935 17.7381 8.16297C17.3948 9.17883 18.1816 10.2693 19.1595 10.6234C19.6144 10.8154 20.1388 10.7768 20.5581 10.5209C21.0114 10.2102 21.0825 9.67274 21.1442 9.17258C21.2768 8.10707 20.9497 6.88312 19.6451 6.77738L19.6451 6.7774ZM20.1955 8.98321C20.1437 9.48639 20.0564 10.0084 19.4087 9.71326C18.9911 9.52386 18.5313 9.01744 18.6413 8.53896H18.6415C18.6734 8.35607 18.7946 8.19896 18.9676 8.11661C19.1408 8.03405 19.3446 8.03644 19.5155 8.12268C19.7059 8.25032 19.9674 8.20893 20.1049 8.0295C20.2151 8.3357 20.2463 8.66292 20.1955 8.98317L20.1955 8.98321Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M16.2779 17.1298C16.17 17.1132 16.0595 17.14 15.973 17.2042C15.8865 17.2683 15.8317 17.3641 15.8213 17.4685C15.4983 17.4839 15.1873 17.5921 14.9287 17.7786C14.6704 17.9652 14.4759 18.2218 14.3709 18.5154C14.0276 19.5313 14.8145 20.6185 15.7923 20.9758H15.7921C16.2474 21.1685 16.7727 21.1288 17.1909 20.8703C17.6442 20.5596 17.7153 20.0221 17.777 19.5253C17.9096 18.4565 17.5826 17.251 16.2779 17.1298L16.2779 17.1298ZM16.8283 19.3356C16.7797 19.8358 16.6858 20.3578 16.0383 20.0657C15.6207 19.8763 15.1609 19.3699 15.2709 18.8914C15.3032 18.7087 15.4245 18.5516 15.5973 18.4688C15.7698 18.3858 15.9735 18.3871 16.1451 18.4719C16.3346 18.6002 16.5959 18.5603 16.7343 18.3819C16.8445 18.6881 16.8757 19.0154 16.8251 19.3356L16.8283 19.3356Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M26.0289 18.8057C25.2633 18.8057 24.5589 19.1011 24.0383 19.5736L20.6697 17.6834C20.884 17.1517 21.0065 16.5905 21.0065 15.9703C21.0065 15.4091 20.884 14.8479 20.7003 14.3458L24.0689 12.4851C24.5896 12.9576 25.2939 13.253 26.0595 13.253C27.7203 13.253 29.0607 11.9228 28.9973 10.3073C28.9393 8.83792 27.6985 7.64067 26.1749 7.58424C24.4993 7.52253 23.1196 8.81524 23.1196 10.4176C23.1196 10.6243 23.1502 10.8311 23.2115 11.0378L19.8734 12.8986C19.1384 12.042 18.0972 11.4218 16.8722 11.215V7.52305C18.153 7.14331 19.0816 5.94764 18.9405 4.55682C18.8016 3.18815 17.6422 2.10008 16.2198 2.00672C14.5038 1.89438 13.0748 3.2045 13.0748 4.8353C13.0748 6.10534 13.9629 7.16863 15.1573 7.52305V11.2446C13.9629 11.4513 12.9217 12.0716 12.1867 12.9281L8.81806 11.0673C8.84869 10.8606 8.87931 10.6538 8.87931 10.4471C8.87931 8.8817 7.56247 7.61166 5.93938 7.61166C4.31684 7.61166 3 8.88223 3 10.4181C3 11.9539 4.31684 13.2535 5.93993 13.2535C6.73616 13.2535 7.44052 12.9582 7.96113 12.4561L11.2992 14.3168C11.1154 14.8189 10.9929 15.3801 10.9929 15.9413C10.9929 16.532 11.1154 17.0636 11.3298 17.5953L7.93051 19.4856C7.34372 18.9861 6.56226 18.6744 5.67415 18.7619C4.26653 18.9001 3.14437 20.004 3.03883 21.3648C2.90977 23.0283 4.27255 24.418 5.97055 24.418C7.66856 24.418 8.91048 23.148 8.91048 21.5826C8.91048 21.3463 8.87986 21.11 8.81861 20.9033L12.2179 19.013C12.9529 19.8695 13.9635 20.4602 15.1272 20.667V24.4771C13.9351 24.831 13.0787 25.8911 13.0754 27.158C13.0716 28.7012 14.3775 29.9803 15.977 29.9998C17.6176 30.0198 18.9552 28.7424 18.9552 27.1643C18.9552 25.8648 18.0671 24.8015 16.8422 24.447V20.725C18.0365 20.5478 19.0471 19.9571 19.8127 19.1005L23.212 20.9908C23.1508 21.1976 23.1201 21.4043 23.1201 21.6111C23.1201 23.1765 24.437 24.4465 26.0601 24.4465C27.6832 24.4465 29 23.1765 29 21.6111C29 20.0457 27.652 18.8052 26.0294 18.8052L26.0289 18.8057Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M21.4167 9.53906H10.5838C10.5838 9.53906 3 16.0007 3 23.5414C3 27.8483 6.26129 30.0031 8.41642 30.0031H23.5836C25.7478 30.0031 29 27.8481 29 23.5414C29 16.0007 21.4162 9.53906 21.4162 9.53906H21.4167ZM17.0823 24.5085V26.2331H14.9181L14.9179 24.5142C13.3229 24.2194 12.3209 23.2408 12.2498 21.8199H14.1265C14.2183 22.5657 14.9744 23.0463 16.0684 23.0463C17.0764 23.0463 17.7908 22.5599 17.7908 21.8672C17.7908 21.2777 17.3284 20.9415 16.19 20.6882L14.9833 20.4318C13.2933 20.0809 12.4632 19.2054 12.4632 17.7993C12.4632 16.3932 13.406 15.3791 14.9062 15.0459V13.3094H17.0704V15.0486C18.5349 15.3729 19.5104 16.3663 19.5578 17.7016L17.7464 17.7018C17.6546 16.9737 16.9725 16.4874 16.0357 16.4874C15.0989 16.4874 14.4229 16.9355 14.4229 17.6371C14.4229 18.2061 14.8646 18.5215 15.9526 18.7631L17.0704 18.999C18.9351 19.388 19.7385 20.178 19.7385 21.6197C19.7387 23.1612 18.7426 24.1931 17.0823 24.5085L17.0823 24.5085Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M21.4057 3.0715H18.4114C17.7929 2.38943 16.9127 2 15.9892 2C15.0656 2 14.1855 2.38946 13.5669 3.0715H10.5726C10.2144 3.07294 9.88022 3.25019 9.6792 3.54485C9.47818 3.83952 9.43641 4.21397 9.56752 4.54544L10.5726 7.37835H21.4054L22.4104 4.54544C22.5416 4.21397 22.4998 3.83953 22.2988 3.54485C22.0978 3.25017 21.7636 3.07294 21.4054 3.0715H21.4057Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M29.376 11.6718L17.7598 7.32076C17.1807 7.09169 16.5656 7 15.9504 7C15.3352 7 14.7562 7.09169 14.1771 7.32076L2.5971 11.6718C1.80097 11.9926 1.80097 13.4123 2.5971 13.7328L7.01198 15.3816V20.4655C7.01198 21.5189 7.5547 22.3892 8.31474 22.7099L11.2098 23.7632C14.3944 24.954 17.7598 24.954 20.9443 23.7632L23.8394 22.7099C24.5994 22.3891 25.1421 21.5191 25.1421 20.4655L25.1419 15.3359L27.7835 14.3283V19.4579H27.6388C27.4218 19.4579 27.2769 19.687 27.2769 19.9161V22.2978C27.2769 22.5726 27.4579 22.7559 27.6388 22.7559H27.7113L27.1322 24.3131C27.0237 24.6339 27.1683 25 27.4579 25H29.2672C29.5207 25 29.7014 24.6335 29.5929 24.3131L28.9777 22.8017H29.0502C29.2672 22.8017 29.4121 22.5726 29.4121 22.3435V19.9618C29.4121 19.687 29.2312 19.5036 29.0502 19.5036H28.9055V13.9162L29.376 13.7332C30.208 13.4581 30.2082 11.9926 29.376 11.6718Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.30589 24.1666H8.50961V11.3337H6.30589V24.1666ZM10.7131 24.1666H12.9169V11.3337H10.7131V24.1666ZM15.1206 24.1666H17.3241V11.3337H15.1206V24.1666ZM19.5278 24.1666H21.7316V11.3337H19.5278V24.1666ZM23.9351 24.1666H26.1388V11.3337H23.9351V24.1666ZM28.3426 24.1666V11.3337C28.8459 11.3337 29.2857 10.9719 29.4102 10.4552C29.5347 9.93835 29.312 9.39811 28.8703 9.14266L16.75 2.14268C16.4227 1.95244 16.0217 1.95244 15.6945 2.14268L3.57418 9.14266C3.13241 9.39813 2.90978 9.93835 3.03426 10.4552C3.15876 10.972 3.5985 11.3337 4.10188 11.3337V24.1666C3.49263 24.1666 3.00011 24.6893 3.00011 25.3334V28.8334C3.00011 29.4774 3.49263 30 4.10188 30H28.3425C28.9517 30 29.4442 29.4774 29.4442 28.8334V25.3334C29.4442 24.6893 28.9518 24.1666 28.3426 24.1666Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M18.5307 7L3.978 21.5527C3.85862 21.672 3.77257 21.8225 3.73152 21.9877L2.02722 28.8442C1.94888 29.1626 2.04223 29.4976 2.2737 29.7291C2.50622 29.9616 2.84314 30.0531 3.15857 29.9756L10.0151 28.2721C10.1793 28.231 10.3297 28.146 10.4502 28.0256L25.0028 13.473L18.5307 7Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M28.6637 3.33855C26.879 1.55382 23.9761 1.55382 22.1907 3.33855L19.8516 5.67767L26.3246 12.1507L28.6637 9.81161C30.4483 8.02586 30.4483 5.12312 28.6637 3.33855Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M17.605 2.00505C17.1548 1.95331 16.7578 2.30594 16.7578 2.75949V15.4429C16.7578 15.5432 16.7975 15.6397 16.8687 15.7105L25.8321 24.6738C26.1513 24.9931 26.6801 24.9657 26.9611 24.6122C28.8625 22.2211 30.001 19.198 30.001 15.9126C30.001 8.73518 24.5718 2.8032 17.6046 2.00481L17.605 2.00505Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M14.7406 29.858C18.5082 30.1895 22.0034 29.0166 24.6964 26.8755C25.051 26.5936 25.0809 26.0642 24.7608 25.7441L15.7975 16.7807C15.44 16.4235 15.2432 15.9484 15.2432 15.4429V2.75944C15.2432 2.30736 14.8485 1.95348 14.3998 2.00499C7.04402 2.8456 1.40123 9.40943 2.05097 17.1198C2.61665 23.8383 8.02457 29.267 14.7404 29.8579L14.7406 29.858Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M29.6278 12.5546L19.4471 2.37263C19.2087 2.134 18.8851 2 18.5478 2C18.2105 2 17.8871 2.134 17.6485 2.37263L16.5286 3.49264C15.7825 4.23883 15.2868 5.19818 15.1095 6.23843C14.9324 7.27869 15.0825 8.34809 15.5396 9.29931L9.83855 13.2954C8.86066 12.6704 7.69843 12.3978 6.54443 12.5229C5.39068 12.6476 4.31383 13.1628 3.49247 13.9826L2.37259 15.1026C2.13398 15.341 2 15.6647 2 16.002C2 16.3394 2.13398 16.663 2.37259 16.9014L7.83623 22.3657L3.6499 26.5549C3.40064 26.7912 3.25766 27.1182 3.25317 27.4614C3.24843 27.8047 3.38288 28.1352 3.62552 28.3781C3.86839 28.6208 4.19884 28.7552 4.54208 28.7505C4.88533 28.746 5.21225 28.603 5.44847 28.3537L9.63952 24.1631L15.1032 29.6274C15.3415 29.866 15.6651 30 16.0025 30C16.3398 30 16.6634 29.866 16.9018 29.6274L18.0216 28.5074C18.8416 27.6858 19.3565 26.6092 19.4815 25.455C19.6065 24.3009 19.334 23.1387 18.7088 22.1607L22.7044 16.459C23.6555 16.9152 24.7248 17.0651 25.7649 16.888C26.8048 16.7107 27.7642 16.2151 28.5106 15.4697L29.6305 14.3496C29.8674 14.111 30.0005 13.7881 30 13.4517C29.9995 13.115 29.8657 12.7925 29.6278 12.5546ZM26.7093 13.6746C26.2494 14.1343 25.6311 14.4004 24.9811 14.4184C24.331 14.4366 23.6988 14.2051 23.214 13.7718C22.9349 13.524 22.5614 13.411 22.1919 13.4627C21.8221 13.5143 21.4938 13.7254 21.2933 14.0403L16.0789 21.4786C15.9073 21.7234 15.8278 22.0209 15.8538 22.319C15.8798 22.6168 16.01 22.8962 16.2214 23.1076C16.6979 23.5854 16.9656 24.2326 16.9656 24.9073C16.9656 25.5823 16.6979 26.2295 16.2214 26.7073L16.0025 26.9282L5.07517 15.9996L5.29366 15.7806C5.77159 15.3042 6.41875 15.0369 7.0934 15.0369C7.76806 15.0369 8.41502 15.3042 8.8929 15.7806C9.10453 15.9918 9.38386 16.1217 9.68142 16.1478C9.97922 16.1738 10.2768 16.0943 10.5218 15.9231L17.907 10.7472C18.2441 10.5585 18.4773 10.2266 18.5405 9.84565C18.6037 9.46448 18.4903 9.07528 18.2322 8.78764C17.7988 8.30302 17.5673 7.67066 17.5853 7.02059C17.6033 6.37046 17.8693 5.75209 18.3288 5.2919L18.5478 5.07102L26.9299 13.4541L26.7093 13.6746Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M16.2853 6.33847L19.0821 3.96946L28.1289 14.0734L25.8743 15.5005L22.5924 14.9868L20.3093 16.5281L16.2853 21.894L18.0547 25.6045L16.2853 28.8013L3.64255 16.5281L4.75556 14.0734H6.61059L9.80695 14.9868L16.2853 10.8767V6.33847Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M29.6278 12.5546L19.4471 2.37263C19.2087 2.134 18.8851 2 18.5478 2C18.2105 2 17.8871 2.134 17.6485 2.37263L16.5286 3.49264C15.7825 4.23883 15.2868 5.19818 15.1095 6.23843C14.9324 7.27869 15.0825 8.34809 15.5396 9.29931L9.83855 13.2954C8.86066 12.6704 7.69843 12.3978 6.54443 12.5229C5.39068 12.6476 4.31383 13.1628 3.49247 13.9826L2.37259 15.1026C2.13398 15.341 2 15.6647 2 16.002C2 16.3394 2.13398 16.663 2.37259 16.9014L7.83623 22.3657L3.6499 26.5549C3.40064 26.7912 3.25766 27.1182 3.25317 27.4614C3.24843 27.8047 3.38288 28.1352 3.62552 28.3781C3.86839 28.6208 4.19884 28.7552 4.54208 28.7505C4.88533 28.746 5.21225 28.603 5.44847 28.3537L9.63952 24.1631L15.1032 29.6274C15.3415 29.866 15.6651 30 16.0025 30C16.3398 30 16.6634 29.866 16.9018 29.6274L18.0216 28.5074C18.8416 27.6858 19.3565 26.6092 19.4815 25.455C19.6065 24.3009 19.334 23.1387 18.7088 22.1607L22.7044 16.459C23.6555 16.9152 24.7248 17.0651 25.7649 16.888C26.8048 16.7107 27.7642 16.2151 28.5106 15.4697L29.6305 14.3496C29.8674 14.111 30.0005 13.7881 30 13.4517C29.9995 13.115 29.8657 12.7925 29.6278 12.5546ZM26.7093 13.6746C26.2494 14.1343 25.6311 14.4004 24.9811 14.4184C24.331 14.4366 23.6988 14.2051 23.214 13.7718C22.9349 13.524 22.5614 13.411 22.1919 13.4627C21.8221 13.5143 21.4938 13.7254 21.2933 14.0403L16.0789 21.4786C15.9073 21.7234 15.8278 22.0209 15.8538 22.319C15.8798 22.6168 16.01 22.8962 16.2214 23.1076C16.6979 23.5854 16.9656 24.2326 16.9656 24.9073C16.9656 25.5823 16.6979 26.2295 16.2214 26.7073L16.0025 26.9282L5.07517 15.9996L5.29366 15.7806C5.77159 15.3042 6.41875 15.0369 7.0934 15.0369C7.76806 15.0369 8.41502 15.3042 8.8929 15.7806C9.10453 15.9918 9.38386 16.1217 9.68142 16.1478C9.97922 16.1738 10.2768 16.0943 10.5218 15.9231L17.907 10.7472C18.2441 10.5585 18.4773 10.2266 18.5405 9.84565C18.6037 9.46448 18.4903 9.07528 18.2322 8.78764C17.7988 8.30302 17.5673 7.67066 17.5853 7.02059C17.6033 6.37046 17.8693 5.75209 18.3288 5.2919L18.5478 5.07102L26.9299 13.4541L26.7093 13.6746Z\" fill=\"none\" stroke=\"#232A3A\"/>\n <path d=\"M16.2853 6.33847L19.0821 3.96946L28.1289 14.0734L25.8743 15.5005L22.5924 14.9868L20.3093 16.5281L16.2853 21.894L18.0547 25.6045L16.2853 28.8013L3.64255 16.5281L4.75556 14.0734H6.61059L9.80695 14.9868L16.2853 10.8767V6.33847Z\" fill=\"none\" stroke=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M10.6381 24.2684C10.3505 24.7396 9.80424 25.0045 9.43027 25.0928C8.79758 25.2105 8.19375 25.2695 7.73357 25.6523C7.58973 25.77 7.35964 25.6817 7.33096 25.5051C7.2447 24.9456 7.38853 24.3274 7.64731 23.9446C7.53236 23.9446 7.4459 23.9739 7.33096 24.0329C7.12955 24.1212 6.92835 23.9446 6.95703 23.7384C7.12955 23.0906 7.56107 22.2368 8.22246 21.854L6.92817 20.5289C4.79998 21 3.47719 23.5909 3.017 25.3576C2.90206 25.8581 3.39093 26.2409 3.8509 26.0347C4.08099 25.9171 4.31108 25.8581 4.56986 25.8581C3.99474 26.7415 3.62083 28.184 3.8509 29.5091C3.93716 29.9507 4.45493 30.1569 4.79993 29.8624C5.89281 28.9497 7.30188 28.8614 8.76867 28.5668C9.86155 28.3313 11.6158 27.3596 12.0471 25.7108C11.9322 25.6225 11.8171 25.5046 11.7021 25.3869L10.6381 24.2684Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M24.7004 17.2305C29.0142 12.2252 30.107 5.04094 29.992 2.86213C29.992 2.62656 29.877 2.42056 29.7332 2.27331C29.5894 2.12606 29.3882 2.03774 29.1581 2.00837C27.0299 1.89069 20.0129 2.98 15.1239 7.42596L13.571 6.83714C11.8454 6.18939 9.91864 6.71946 8.73969 8.1327L6.03633 11.4009C5.66241 11.8721 5.83493 12.5786 6.38138 12.7848L9.83236 14.0803C8.88332 15.6702 8.22193 17.0541 7.81931 17.908C7.56052 18.5264 7.67547 19.2329 8.13566 19.7335L12.6795 24.3855C13.1397 24.8567 13.8587 25.0039 14.4625 24.7094C15.3253 24.2972 16.677 23.62 18.2012 22.6484L19.4666 26.1816C19.668 26.741 20.3581 26.947 20.8183 26.5348L23.9816 23.7671C25.362 22.5599 25.8797 20.5872 25.247 18.8207L24.7004 17.2305ZM22.831 13.2851C21.7381 14.404 20.0127 14.404 18.9198 13.2851C17.8269 12.1662 17.8269 10.3997 18.9198 9.28084C20.0127 8.16194 21.7381 8.16194 22.831 9.28084C23.9239 10.3997 23.9239 12.1958 22.831 13.2851Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M21.9688 11.8359V18.5603L24.7551 19.4157V11.836L21.9688 11.8359Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M19.8411 17.8819V11.8359H17.0547V17.0856C17.3105 17.1151 17.538 17.1741 17.7939 17.2626L19.8411 17.8819Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M14.9348 11.8359H12.1484V17.8819L14.1956 17.2625C14.4231 17.174 14.679 17.1446 14.9348 17.0856V11.8359Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M7.22656 11.836V19.4156L10.013 18.5308V11.8359L7.22656 11.836Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M26.7306 7.41195L16.2103 2.04428C16.0681 1.98524 15.9259 1.98524 15.7839 2.04428L5.26367 7.41195C5.0931 7.50041 5.00781 7.67734 5.00781 7.85426V9.94834C5.00781 10.2137 5.20694 10.4497 5.49115 10.4497H26.5032C26.7591 10.4497 26.9866 10.2431 26.9866 9.94834V7.85426C26.9866 7.64791 26.8729 7.50041 26.7307 7.41195H26.7306ZM15.9829 8.0314C15.1298 8.0314 14.4476 7.32352 14.4476 6.4389C14.4476 5.55407 15.13 4.8464 15.9829 4.8464C16.8359 4.8464 17.5182 5.55428 17.5182 6.4389C17.5182 7.32352 16.8359 8.0314 15.9829 8.0314Z\" stroke=\"none\" fill=\"#232A3A\"/>\n <path d=\"M26.5097 21.4146L17.3827 18.6128C16.9277 18.4653 16.4444 18.4062 15.961 18.4062C15.4777 18.4062 15.0227 18.4653 14.5677 18.6128L5.46915 21.4146C4.84362 21.6211 4.84362 22.5353 5.46915 22.7417L8.93799 23.8034V27.0771C8.93799 27.7554 9.3644 28.3158 9.96158 28.5223L12.2363 29.2006C14.7384 29.9673 17.3827 29.9673 19.8848 29.2006L22.1595 28.5223C22.7567 28.3157 23.1831 27.7555 23.1831 27.0771L23.1829 23.774L25.2585 23.1251V26.4283H25.1448C24.9742 26.4283 24.8604 26.5758 24.8604 26.7233V28.2569C24.8604 28.4339 25.0026 28.5519 25.1448 28.5519H25.2017L24.7468 29.5546C24.6615 29.7612 24.7751 29.997 25.0026 29.997H26.4243C26.6234 29.997 26.7654 29.761 26.6801 29.5546L26.1968 28.5814H26.2537C26.4243 28.5814 26.5381 28.4339 26.5381 28.2864V26.7527C26.5381 26.5758 26.3959 26.4577 26.2537 26.4577H26.1401V22.8598L26.5097 22.7419C27.1635 22.5648 27.1635 21.6211 26.5095 21.4146L26.5097 21.4146Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n\n","<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M26.4383 10.4916C28.043 12.5292 29 15.1064 29 17.8634C29 24.5759 23.3827 29.9999 16.5 29.9999C9.58642 30.03 4 24.5759 4 17.8634C4 11.4805 9.06173 6.26631 15.4815 5.75688V5.03762H13.7531C13.1667 5.03762 12.7038 4.58821 12.7038 4.01881C12.7038 3.44939 13.1667 3 13.7531 3H19.3087C19.8952 3 20.358 3.44941 20.358 4.01881C20.358 4.58823 19.8952 5.03762 19.3087 5.03762H17.5804V5.75688C19.4939 5.90675 21.315 6.47613 22.889 7.40509L23.3211 6.89569C23.815 6.32627 24.6792 6.26628 25.2346 6.71592L26.8086 8.00438C27.3951 8.48389 27.4569 9.32296 26.963 9.89233L26.4383 10.4916ZM16.5 7.73467C10.7284 7.73467 6.0679 12.2596 6.0679 17.8634C6.0679 23.4672 10.7283 27.9921 16.5 27.9921C22.2716 27.9921 26.9321 23.4672 26.9321 17.8634C26.9319 12.2596 22.2715 7.73467 16.5 7.73467ZM16.5 26.6436C11.5001 26.6436 7.45679 22.718 7.45679 17.8634C7.45679 13.0087 11.4999 9.08317 16.5 9.08317C21.4999 9.08296 25.5432 13.0085 25.5432 17.8629C25.5432 22.7176 21.5001 26.6431 16.5 26.6431V26.6436ZM21.1604 13.3384C20.8827 13.0688 20.4506 13.0688 20.1727 13.3384L17.6417 15.7958C17.3022 15.616 16.9009 15.5261 16.4998 15.5261C15.1417 15.5261 14.0616 16.5751 14.0616 17.8934C14.0616 19.212 15.142 20.2607 16.4998 20.2607C17.8579 20.2607 18.9379 19.2117 18.9379 17.8934C18.9379 17.4739 18.8454 17.1143 18.6292 16.7546L21.1602 14.2973C21.4381 14.0276 21.4381 13.6081 21.1604 13.3384L21.1604 13.3384ZM16.5 18.8823C15.9135 18.8823 15.4507 18.4328 15.4507 17.8634C15.4507 17.294 15.9135 16.8446 16.5 16.8446C17.0865 16.8446 17.5493 17.294 17.5493 17.8634C17.5493 18.4327 17.0865 18.8823 16.5 18.8823Z\" stroke=\"none\" fill=\"#232A3A\"/>\n</svg>\n","// @ts-nocheck\nimport * as React from \"react\";\nimport FourteenPointStar from \"../../../assets/14-point-star.svg\";\nimport AwardRibbon from \"../../../assets/award-ribbon.svg\";\nimport UpDownArrow from \"../../../assets/up-down-arrow.svg\";\nimport CheckCircle from \"../../../assets/check-circle.svg\";\nimport CheckCircleDark from \"../../../assets/check-circle-dark.svg\";\nimport Circle from \"../../../assets/circle.svg\";\nimport Lock from \"../../../assets/lock.svg\";\nimport Progress from \"../../../assets/progress.svg\";\nimport PartyPopper from \"../../../assets/party-popper.svg\";\nimport PlusCircle from \"../../../assets/plus-circle.svg\";\nimport XCircle from \"../../../assets/x-circle.svg\";\nimport XSquare from \"../../../assets/x-square.svg\";\nimport PenPaper from \"../../../assets/pen-paper.svg\";\nimport CaretLeft from \"../../../assets/caret-left.svg\";\nimport FormalBackpack from \"../../../assets/formal-backpack.svg\";\nimport FormalBallotBox from \"../../../assets/formal-ballot-box.svg\";\nimport FormalBarGraph from \"../../../assets/formal-bar-graph.svg\";\nimport FormalBolt from \"../../../assets/formal-bolt.svg\";\nimport FormalBriefcase from \"../../../assets/formal-briefcase.svg\";\nimport FormalBullseye from \"../../../assets/formal-bullseye.svg\";\nimport FormalBurger from \"../../../assets/formal-burger.svg\";\nimport FormalCameraLens from \"../../../assets/formal-camera-lens.svg\";\nimport FormalDesignBulb from \"../../../assets/formal-design-bulb.svg\";\nimport FormalDoublePanBalance from \"../../../assets/formal-double-pan-balance.svg\";\nimport FormalEasel from \"../../../assets/formal-easel.svg\";\nimport FormalEye from \"../../../assets/formal-eye.svg\";\nimport FormalGavel from \"../../../assets/formal-gavel.svg\";\nimport FormalClass from \"../../../assets/formal-group.svg\";\nimport FormalHandshake from \"../../../assets/formal-handshake.svg\";\nimport FormalHeart from \"../../../assets/formal-heart.svg\";\nimport FormalMagnifyingGlass from \"../../../assets/formal-magnifying-glass.svg\";\nimport FormalMedicine from \"../../../assets/formal-medicine.svg\";\nimport FormalMicrophone from \"../../../assets/formal-microphone.svg\";\nimport FormalMolecule from \"../../../assets/formal-molecule.svg\";\nimport FormalMoneybag from \"../../../assets/formal-moneybag.svg\";\nimport FormalMortarboard from \"../../../assets/formal-mortarboard.svg\";\nimport FormalParthenon from \"../../../assets/formal-parthenon.svg\";\nimport FormalPencil from \"../../../assets/formal-pencil.svg\";\nimport FormalPieChart from \"../../../assets/formal-pie-chart.svg\";\nimport FormalPin from \"../../../assets/formal-pin.svg\";\nimport FormalRocket from \"../../../assets/formal-rocket.svg\";\nimport FormalScholar from \"../../../assets/formal-scholar.svg\";\nimport FormalStopwatch from \"../../../assets/formal-stopwatch.svg\";\n\n/**\n * List of icons available\n */\nexport const iconNames = [\n \"14-point star\",\n \"award ribbon\",\n \"up & down arrow\",\n \"check & circle\",\n \"check & circle dark\",\n \"lock\",\n \"circle\",\n \"progress\",\n \"party popper\",\n \"plus & circle\",\n \"x & circle\",\n \"x & square\",\n \"pen & paper\",\n \"caret left\",\n\n \"formal backpack\",\n \"formal ballot box\",\n \"formal bar graph\",\n \"formal bolt\",\n \"formal briefcase\",\n \"formal bullseye\",\n \"formal burger\",\n \"formal camera lens\",\n \"formal design bulb\",\n \"formal double pan balance\",\n \"formal easel\",\n \"formal eye\",\n \"formal gavel\",\n \"formal group\",\n \"formal handshake\",\n \"formal heart\",\n \"formal magnifying glass\",\n \"formal medicine\",\n \"formal microphone\",\n \"formal molecule\",\n \"formal moneybag\",\n \"formal mortarboard\",\n \"formal parthenon\",\n \"formal pencil\",\n \"formal pie chart\",\n \"formal pin\",\n \"formal rocket\",\n \"formal scholar\",\n \"formal stopwatch\",\n] as const;\n\n/**\n * List of icon source data\n */\nexport const icons: { [key in typeof iconNames[number]]: Icon } = {\n \"14-point star\": {\n svg: FourteenPointStar,\n },\n \"award ribbon\": {\n svg: AwardRibbon,\n },\n \"up & down arrow\": {\n svg: UpDownArrow,\n },\n circle: {\n svg: Circle,\n },\n \"check & circle\": {\n svg: CheckCircle,\n },\n \"check & circle dark\": {\n svg: CheckCircleDark,\n },\n lock: {\n svg: Lock,\n },\n progress: {\n svg: Progress,\n },\n \"party popper\": {\n svg: PartyPopper,\n },\n \"plus & circle\": {\n svg: PlusCircle,\n },\n \"x & circle\": {\n svg: XCircle,\n },\n \"x & square\": {\n svg: XSquare,\n },\n \"pen & paper\": {\n svg: PenPaper,\n },\n \"caret left\": {\n svg: CaretLeft,\n },\n \"formal backpack\": {\n svg: FormalBackpack,\n },\n \"formal ballot box\": {\n svg: FormalBallotBox,\n },\n \"formal bar graph\": {\n svg: FormalBarGraph,\n },\n \"formal bolt\": {\n svg: FormalBolt,\n },\n \"formal briefcase\": {\n svg: FormalBriefcase,\n },\n \"formal bullseye\": {\n svg: FormalBullseye,\n },\n \"formal burger\": {\n svg: FormalBurger,\n },\n \"formal camera lens\": {\n svg: FormalCameraLens,\n },\n \"formal design bulb\": {\n svg: FormalDesignBulb,\n },\n \"formal double pan balance\": {\n svg: FormalDoublePanBalance,\n },\n \"formal easel\": {\n svg: FormalEasel,\n },\n \"formal eye\": {\n svg: FormalEye,\n },\n \"formal gavel\": {\n svg: FormalGavel,\n },\n \"formal group\": {\n svg: FormalClass,\n },\n \"formal handshake\": {\n svg: FormalHandshake,\n },\n \"formal heart\": {\n svg: FormalHeart,\n },\n \"formal magnifying glass\": {\n svg: FormalMagnifyingGlass,\n },\n \"formal medicine\": {\n svg: FormalMedicine,\n },\n \"formal microphone\": {\n svg: FormalMicrophone,\n },\n \"formal molecule\": {\n svg: FormalMolecule,\n },\n \"formal moneybag\": {\n svg: FormalMoneybag,\n },\n \"formal mortarboard\": {\n svg: FormalMortarboard,\n },\n \"formal parthenon\": {\n svg: FormalParthenon,\n },\n \"formal pencil\": {\n svg: FormalPencil,\n },\n \"formal pie chart\": {\n svg: FormalPieChart,\n },\n \"formal pin\": {\n svg: FormalPin,\n },\n \"formal rocket\": {\n svg: FormalRocket,\n },\n \"formal scholar\": {\n svg: FormalScholar,\n },\n \"formal stopwatch\": {\n svg: FormalStopwatch,\n },\n} as const;\n\n/**\n * The name of the icon.\n */\nexport type IconName = typeof iconNames[number];\n\ntype Icon = {\n readonly svg: React.FunctionComponent<React.SVGProps<any> & { title?: string }>;\n};\n","import * as React from \"react\";\nimport { icons, IconName } from \"./icons\";\n\nexport { IconName } from \"./icons\";\n\n/**\n * The properties for the icon.\n */\nexport type IconProps = {\n name: IconName;\n};\n\n/**\n * A component for icons.\n */\nexport const Icon = (props: IconProps) => {\n const icon = icons[props.name];\n return !!icon && <icon.svg title={props.name} className=\"w-full h-full drop-shadow-[inherit]\" />;\n};\n","import React from \"react\";\n\n/**\n * The properties for progress.\n */\nexport type ProgressProps = {\n start: number;\n end: number;\n rounded?: boolean;\n color?: \"green\" | \"sky-blue\";\n};\n\n/**\n * A component for displaying progress.\n */\nexport const Progress = (props: ProgressProps) => {\n const percentage = Math.min(100, Math.round((props.start / props.end) * 100));\n const roundedClass = props.rounded ? \"rounded-full\" : \"\";\n const colorClass = (() => {\n switch (props.color) {\n case \"sky-blue\":\n return [\"bg-sky-blue-200\", \"bg-sky-blue-400\"];\n default:\n return [\"bg-gray-200\", \"bg-green-400\"];\n }\n })();\n return (\n <div className={`w-full h-full overflow-hidden ${roundedClass} ${colorClass[0]}`}>\n <div className={`h-8 ${colorClass[1]}`} style={{ width: `${percentage}%` }} />\n </div>\n );\n};\n","import * as React from \"react\";\nimport \"external-svg-loader\";\n\nimport { Icon, IconName } from \"../../../components/Icon/Icon\";\n\n/**\n * BadgeEmblemProps\n */\nexport type BadgeEmblemProps = {\n icon?: IconName;\n iconURL?: string\n alt?: string;\n imageURL?: string;\n level?: number;\n size?: \"xxs\" | \"xs\" | \"sm\" | \"md\" | \"lg\";\n};\n\n/**\n * BadgeEmblem\n * @param props\n * @constructor\n */\nexport const BadgeEmblem = (props: BadgeEmblemProps) => {\n const size = (() => {\n switch (props.size) {\n case \"xxs\":\n return [\"h-max w-12\", \"w-6 h-6\"];\n case \"xs\":\n return [\"h-max w-16\", \"w-8 h-8\"];\n case \"sm\":\n return [\"h-max w-24\", \"w-12 h-12\"];\n case \"lg\":\n return [\"h-max w-40\", \"w-20 h-20\"];\n default:\n return [\"h-max w-28\", \"w-14 h-14\"];\n }\n })();\n\n const hasIcon = !!props.icon || !!props.iconURL\n\n return (\n <div className={`relative overflow-hidden ${size[0]}`}>\n {!hasIcon && <img className=\"w-full h-full object-cover\" alt={props.alt} src={props.imageURL} />}\n { hasIcon &&\n <>\n <svg\n className=\"h-full w-full drop-shadow-[inherit]\"\n viewBox=\"0 0 940 1100\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n {!!props.level && props.level > 0 && (\n <path\n d=\"M482.921 47.8734L891.581 301.279C892.463 301.826 893 302.79 893 303.828V796.694C893 797.78 892.413 798.781 891.466 799.311L466.728 1037.16C465.809 1037.68 464.687 1037.67 463.772 1037.15L48.5103 799.603C47.5763 799.069 47 798.076 47 796.999V304.573C47 303.511 47.5618 302.528 48.4771 301.989L479.817 47.8383C480.777 47.2722 481.973 47.2857 482.921 47.8734Z\"\n fill=\"none\"\n stroke=\"#1EE2B0\"\n strokeWidth=\"94\"\n />\n )}\n\n {!!props.level && props.level > 1 && (\n <path\n className=\"-translate-y-3.5\"\n d=\"M494.044 136.608L824.747 341.5C832.987 346.606 838 355.609 838 365.302V764.144C838 774.282 832.52 783.628 823.672 788.579L479.785 980.994C471.211 985.791 460.749 985.744 452.219 980.868L116.106 788.758C107.383 783.773 102 774.496 102 764.449V366.047C102 356.129 107.247 346.95 115.795 341.918L465.092 136.281C474.055 131.004 485.203 131.13 494.044 136.608Z\"\n fill=\"none\"\n stroke=\"#FFD44D\"\n strokeWidth=\"44\"\n />\n )}\n\n <path\n d=\"M467.125 26.2992C476.092 21.0157 487.25 21.1418 496.095 26.6267L904.756 280.032C912.991 285.138 918 294.139 918 303.828V796.694C918 806.828 912.523 816.172 903.681 821.124L478.943 1058.98C470.364 1063.78 459.894 1063.73 451.359 1058.85L36.0968 821.304C27.3791 816.317 22 807.043 22 796.999V304.573C22 294.658 27.2435 285.483 35.786 280.449L467.125 26.2992Z\"\n fill=\"none\"\n stroke=\"#3BD0F2\"\n strokeWidth=\"44\"\n />\n </svg>\n <div className={`absolute overflow-hidden left-0 right-0 top-0 bottom-0 m-auto text-dark-blue-400 ${size[1]}`}>\n { !props.iconURL && !!props.icon && <Icon name={props.icon} /> }\n { props.iconURL && <svg data-cache=\"disabled\" data-src={props.iconURL} className=\"w-full h-full drop-shadow-[inherit]\" viewBox=\"0 0 32 32\" width=\"32\" height=\"32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"/> }\n </div>\n </>\n }\n </div>\n );\n};\n","/**\n * A utility to get a number as its ordinal representation.\n * https://community.shopify.com/c/shopify-design/ordinal-number-in-javascript-1st-2nd-3rd-4th/m-p/72156\n * @param n\n */\nexport const ordNumber = (n: number) => {\n const s = [\"th\", \"st\", \"nd\", \"rd\"],\n v = n % 100;\n return n + (s[(v - 20) % 10] || s[v] || s[0]);\n};\n","import * as React from \"react\";\n\nimport { Icon, IconName } from \"../../../components/Icon/Icon\";\nimport { Progress } from \"../../../components/Progress/Progress\";\nimport { BadgeEmblem } from \"../BadgeEmblem/BadgeEmblem\";\nimport { ordNumber } from \"../../../utils/date\";\n\n/**\n * BadgeButtonProps\n */\nexport type BadgeButtonProps = {\n displayName?: string;\n icon?: IconName;\n iconURL?: string;\n imageURL?: string;\n startedAt?: string;\n createdAt?: string;\n finishedAt?: string;\n level?: number;\n isLocked?: boolean;\n progress?: number;\n target?: number;\n readonly?: boolean;\n compact?: boolean\n\n onClick?: () => void;\n};\n\n/**\n * BadgeButton\n * @param props\n * @constructor\n */\nexport const BadgeButton = (props: BadgeButtonProps) => {\n const hasProgress: boolean = !!props.startedAt || !!props.finishedAt || (!!props.progress && props.progress > 0);\n const isDisabled: boolean = props.readonly || props.isLocked || !props.onClick;\n const statusIconName = props.isLocked\n ? \"lock\"\n : props.finishedAt\n ? \"check & circle dark\"\n : hasProgress\n ? \"progress\"\n : \"14-point star\";\n const buttonCursor = isDisabled ? \"cursor-default\" : \"cursor-pointer\";\n const buttonBg = isDisabled ? \"\" : props.finishedAt && !props.compact ? \"bg-sky-50 hover:bg-gray-50\" : \"hover:bg-sky-50\";\n const statusIconColor = props.finishedAt ? \"text-green-500\" : \"text-zinc-600\";\n const emblemOpacity = props.isLocked ? \"opacity-50\" : \"\";\n const progressPrefix = props.finishedAt ? \"Collected\" : \"Started\";\n const progressDate = new Date(props.finishedAt || props.startedAt || new Date());\n const onClick = () => !isDisabled && props.onClick && props.onClick();\n\n\n if(props.compact){\n return <div\n onClick={onClick}\n className={`text-zinc-600 relative overflow-hidden py-3 px-5 transition ease-in-out duration-600 ${buttonCursor} ${buttonBg}`}\n >\n <div className=\"flex gap-3\">\n <div className={`w-max my-auto ${emblemOpacity}`}>\n <BadgeEmblem\n icon={props.icon}\n iconURL={props.iconURL}\n imageURL={props.imageURL}\n alt={props.displayName}\n level={props.level}\n size=\"xxs\"\n />\n </div>\n\n <div className=\"text-sm my-auto flex gap-x-2\">\n <span className=\"font-semibold text-zinc-600\">{props.displayName}</span>\n <span className=\"shrink-0 text-slate-500\">Lv. {(props.level || 0) + 1}</span>\n </div>\n </div>\n </div>\n }\n\n return (\n <div className=\"grid grid-cols-1 w-44 overflow-x-hidden gap-y-3 text-zinc-600\">\n <div className=\"flex flex-col border h-max border-zinc-100 rounded-md bg-gray-100\">\n <div\n onClick={onClick}\n className={`relative overflow-hidden p-5 transition ease-in-out duration-600 ${buttonCursor} ${buttonBg}`}\n >\n { hasProgress && <div className={`absolute top-2 right-2 w-4 h-4 ${statusIconColor}`}>\n <Icon name={statusIconName} />\n </div> }\n <div className={`w-max m-auto ${emblemOpacity}`}>\n <BadgeEmblem\n icon={props.icon}\n iconURL={props.iconURL}\n imageURL={props.imageURL}\n alt={props.displayName}\n level={props.level}\n size={hasProgress ? \"xs\" : \"md\"}\n />\n </div>\n </div>\n\n {hasProgress && <div className=\"grid grid-cols-1 w-full h-16 bg-white shadow-sm p-2\">\n <div className=\"h-2\">\n <Progress rounded color=\"sky-blue\" start={props.progress || 0} end={props.target || 1} />\n </div>\n <p className=\"text-xs\">\n {progressPrefix} {Intl.DateTimeFormat(\"en-US\", { month: \"long\" }).format(progressDate)}{\" \"}\n {ordNumber(progressDate.getDate())}\n </p>\n </div>}\n </div>\n\n {!!props.displayName && (\n <div className=\"text-sm m-auto flex gap-x-2\">\n <span className=\"font-semibold text-zinc-600\">{props.displayName}</span>\n <span className=\"shrink-0 text-slate-500\">Lv. {(props.level || 0) + 1}</span>\n </div>\n )}\n </div>\n );\n};\n","import * as React from \"react\";\nimport { Loader } from \"../Loader\";\nimport { Icon } from \"../Icon/Icon\";\n\n/**\n * CardProps\n */\nexport type CardProps = {\n isLoading?: boolean;\n children?: React.ReactNode;\n\n onClose?: () => void;\n};\n\n/**\n * Card\n * @param props\n * @constructor\n */\nexport const Card = (props: CardProps) => {\n return (\n <div className=\"font-proxima m-auto grid grid-cols-1 overscroll-contain justify-items-center transition ease-in-out duration-400\">\n <div className=\"shadow-md bg-white overflow-hidden rounded-md relative\">\n <div className=\"grid grid-cols-1 gap-y-2\">\n {!props.isLoading && props.onClose && (\n <div\n onClick={props.onClose}\n className=\"justify-self-end mx-2 mt-2 h-5 w-5 cursor-pointer text-slate-300 hover:text-slate-400\"\n >\n <Icon name=\"x & square\" />\n </div>\n )}\n\n <Loader isLoading={props.isLoading}>{props.children}</Loader>\n </div>\n </div>\n </div>\n );\n};\n","import * as React from \"react\";\n\nimport { Button } from \"../../../components/Button/Button\";\nimport { Card } from \"../../../components/Card/Card\";\nimport { BadgeActivityProps } from \"../BadgeActivity/BadgeActivity\";\nimport { BadgeEmblem } from \"../BadgeEmblem/BadgeEmblem\";\nimport { IconName } from \"../../../components/Icon/icons\";\nimport { Icon } from \"../../../components/Icon/Icon\";\n\n/**\n * CriterionProps\n */\ntype CriterionProps = {\n criterionId?: string;\n displayName?: string;\n namespace?: string;\n options?: BadgeActivityProps[];\n};\n\n/**\n * BadgeCardProps\n */\nexport type BadgeCardProps = {\n icon?: IconName;\n iconURL?: string\n isLoading?: boolean\n displayName?: string;\n imageURL?: string;\n level?: number;\n summary?: string;\n criteria?: CriterionProps[];\n choices?: BadgeActivityProps[];\n canSubmit?: boolean;\n finishedAt?: string;\n preview?: boolean\n\n onClose?: () => void;\n onSubmit?: () => void;\n};\n\n/**\n * BadgeCard\n * @param props\n * @constructor\n */\nexport const BadgeCard = (props: BadgeCardProps) => {\n const criteria = props.criteria || [];\n const choices: any = {};\n const criteriaNames = criteria.map((c) => c.displayName);\n let xp = 0;\n let completed = 0;\n props.choices?.map((c, i) => {\n const id = c.criterionId || i;\n choices[id] = c;\n xp += c.xp || 0;\n if (c.completedAt) {\n completed += 1;\n }\n });\n\n return (\n <Card isLoading={props.isLoading} onClose={props.onClose}>\n <div className=\"pb-5 text-zinc-600\">\n <div className=\"pb-5 px-5 flex gap-x-2\">\n <BadgeEmblem\n icon={props.icon}\n imageURL={props.imageURL}\n iconURL={props.iconURL}\n alt={props.displayName}\n level={props.level}\n size=\"sm\"\n />\n <div className=\"max-w-[20rem]\">\n <p className=\"font-semibold\">{props.displayName}</p>\n <div className=\"text-xs\">\n <span className=\"text-zinc-500 font-semibold\">Level {(props.level || 0) + 1}.</span>\n {!!xp && (\n <div className=\"inline-block ml-1 text-green-500\">\n <span className=\"font-semibold\">{xp}</span>\n <span className=\"ml-1\">XP</span>\n </div>\n )}\n </div>\n {!!props.summary && <p className=\"mt-2 text-sm\">{props.summary}</p>}\n </div>\n </div>\n {criteriaNames.length > 0 && (\n <div className=\"p-5 grid grid-cols-1 gap-y-3 md:min-w-[30rem] max-w-[40rem] border-t border-zinc-200\">\n <p className=\"font-semibold\">Badge Criteria</p>\n <p className=\"text-xs\">Complete 1 of each: {criteriaNames.join(\", \")}</p>\n\n <div className=\"mt-2 grid grid-cols-1 gap-y-8 max-h-[18rem] overflow-y-auto\">\n {criteria.map((c, i) => {\n const id = c.criterionId || i;\n const choice = choices[id];\n const buttonText = choice?.completedAt ? \"Review\" : choice?.startedAt ? \"Continue\" : \"Start\";\n const buttonTheme = choice?.completedAt ? \"light\" : \"dark\";\n const iconName = choice?.completedAt ? \"check & circle\" : \"circle\";\n const iconColor = choice?.completedAt ? \"text-green-500\" : \"text-zinc-300\";\n\n return (\n !!choice && (\n <div key={id} className=\"flex gap-x-2 items-center\">\n <div className={`shrink-0 h-4 w-4 ${iconColor}`}>\n <Icon name={iconName} />\n </div>\n <div className=\"grow\">\n <div>\n <span className=\"font-semibold\">{choice.activityName}</span>\n </div>\n <div className=\"text-xs\">\n <span>{c.displayName}</span>\n {!!choice.xp && <span className=\"ml-1 text-green-500 font-semibold whitespace-nowrap\">{choice.xp} points</span>}\n </div>\n </div>\n { (!props.preview) && <div className=\"shrink-0 w-full max-w-[7rem]\">\n <Button\n onClick={choice.onClick}\n spacing=\"sm\"\n border=\"rounded\"\n size=\"full:sm\"\n color=\"blue\"\n theme={buttonTheme}\n text={buttonText}\n />\n </div> }\n </div>\n )\n );\n })}\n </div>\n </div>\n )}\n { !props.preview && !props.finishedAt && criteria.length > 0 &&\n <div className=\"pt-5 px-5 flex border-t border-zinc-200\">\n <div className=\"w-full max-w-[7rem] ml-auto\">\n <Button\n disabled={!props.canSubmit && completed < criteria.length}\n onClick={props.onSubmit}\n spacing=\"sm\"\n border=\"rounded\"\n size=\"full:sm\"\n color=\"blue\"\n theme=\"dark\"\n text=\"Submit\"\n />\n </div>\n </div>\n }\n </div>\n </Card>\n );\n};\n","import * as React from \"react\";\n\n/**\n * OverlayProps\n */\nexport type OverlayProps = {\n children?: React.ReactNode;\n};\n\n/**\n * Overlay\n * @param props\n * @constructor\n */\nexport const Overlay = (props: OverlayProps) => {\n return (\n <div className=\"flex fixed overscroll-none w-screen h-screen top-0 left-0 bg-gray-300/75 z-30\">\n {props.children}\n </div>\n );\n};\n","import * as React from \"react\";\nimport { BadgeButton, BadgeButtonProps } from \"../BadgeButton/BadgeButton\";\nimport { BadgeCard, BadgeCardProps } from \"../BadgeCard/BadgeCard\";\nimport { Overlay } from \"../../../components/Overlay/Overlay\";\n\n/**\n * BadgeProps\n */\nexport type BadgeProps = BadgeCardProps &\n BadgeButtonProps & {\n badgeId?: string;\n summary?: string;\n status?: string;\n code?: string;\n editChoices?: boolean;\n open?: boolean;\n\n onOpen?: () => void;\n };\n\n/**\n * Badge\n * @param props\n * @constructor\n */\nexport const Badge = (props: BadgeProps) => {\n const [open, setOpen] = React.useState(props.open || false);\n const target = props.target || props.criteria?.length || 0;\n const progress =\n props.progress || props.choices?.map((v) => (v.completedAt ? 1 : 0) as number).reduce((acc, a) => acc + a, 0) || 0;\n\n const onOpen = () => {\n setOpen(true);\n if (props.onOpen) {\n props.onOpen();\n }\n };\n\n const onClose = () => {\n setOpen(false);\n if (props.onClose) {\n props.onClose();\n }\n };\n\n return (\n <>\n { !open && <BadgeButton {...props} progress={progress} target={target} onClick={onOpen} /> }\n { open && !!props.preview && <BadgeCard {...props} onClose={onClose} /> }\n { open && !props.preview && <Overlay>\n <BadgeCard {...props} onClose={onClose} />\n </Overlay>}\n </>\n );\n};\n","import * as React from \"react\";\nimport { Card } from \"../../../components/Card/Card\";\nimport { Icon, IconName } from \"../../../components/Icon/Icon\";\n\n/**\n * BadgeActivityProps\n */\nexport type BadgeActivityProps = {\n activityId?: string;\n activityName?: string;\n criteriaName?: string;\n namespace?: string;\n imageURL?: string;\n xp?: number;\n formId?: string;\n milestone?: boolean;\n badgeId?: string;\n criterionId?: string;\n startedAt?: string;\n completedAt?: string;\n chosenAt?: string;\n tags?: string[];\n startTime?: string;\n isSelected?: boolean;\n\n onToggle?: () => void;\n onClick?: () => void;\n};\n\n/**\n * BadgeActivity\n * @param props\n * @constructor\n */\nexport const BadgeActivity = (props: BadgeActivityProps) => {\n const tags = props.tags || [];\n const [iconName, setIconName] = React.useState(props.isSelected ? \"check & circle\" : (\"plus & circle\" as IconName));\n const iconColor = props.isSelected ? \"text-green-500 hover:text-rose-400\" : \"text-zinc-600 hover:text-green-500\";\n const iconLabel = props.isSelected ? \"Remove this activity\" : \"Select this activity\";\n\n const onMouseEnter = () => {\n if (props.isSelected) {\n setIconName(\"x & circle\");\n }\n };\n\n const onMouseLeave = () => {\n if (props.isSelected) {\n setIconName(\"check & circle\");\n }\n };\n\n React.useEffect(() => {\n setIconName(props.isSelected ? \"check & circle\" : \"plus & circle\");\n }, [props.isSelected]);\n\n return (\n <Card>\n <div className=\"w-[18rem] border border-zinc-100\">\n <div className=\"h-[12rem]\">\n <img className=\"object-cover w-full h-full\" src={props.imageURL} alt={props.activityName} />\n </div>\n <div className=\"px-2 pt-5 pb-5 text-zinc-600 grid grid-cols-1 gap-y-5\">\n <div className=\"flex gap-x-2\">\n <div className=\"shrink-0 h-8 w-8 text-zinc-600\">\n <Icon name=\"pen & paper\" />\n </div>\n <div className=\"grow\">\n <p className=\"font-semibold text-sm\">{props.activityName}</p>\n <p className=\"text-xs\">{props.criteriaName}</p>\n </div>\n <div className=\"text-xs h-max py-2 px-4 rounded-md bg-sky-300 font-semibold\">{props.xp}pts</div>\n </div>\n\n <div className=\"flex\">\n <div className=\"ml-auto flex\">\n <span className=\"my-auto h-max text-sm\">{iconLabel}</span>\n <div\n onClick={props.onToggle}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n className={`ml-2 inline-block cursor-pointer h-8 w-8 ${iconColor}`}\n >\n <Icon name={iconName} />\n </div>\n </div>\n </div>\n\n <div className=\"flex gap-x-2\">\n {tags.map((tag, i) => {\n return (\n <div key={i} className=\"rounded-md shadow-sm py-2 px-3 bg-zinc-100 text-sm\">\n {tag}\n </div>\n );\n })}\n </div>\n </div>\n </div>\n </Card>\n );\n};\n","import * as React from \"react\";\nimport { BadgeActivity, BadgeActivityProps } from \"../BadgeActivity/BadgeActivity\";\nimport { Icon } from \"../../../components/Icon/Icon\";\nimport { ordNumber } from \"../../../utils/date\";\n\n/**\n * CriterionProps\n */\ntype CriterionProps = {\n criterionId?: string;\n displayName?: string;\n namespace?: string;\n options?: BadgeActivityProps[];\n\n onClick?: () => void;\n};\n\n/**\n * BadgeActivityMenuProps\n */\nexport type BadgeActivityMenuProps = {\n criteria?: CriterionProps[];\n\n onBack?: () => void;\n};\n\n/**\n * BadgeActivityMenu\n * @param props\n * @constructor\n */\nexport const BadgeActivityMenu = (props: BadgeActivityMenuProps) => {\n const criteria = props.criteria || [];\n\n return (\n <div className=\"grid grid-cols-1 gap-y-4 w-full text-zinc-600\">\n <div className=\"py-8 px-10 grid grid-cols-1 gap-y-5 rounded-b-md border-b border-x border-zinc-100\">\n <div\n onClick={props.onBack}\n className=\"w-max flex gap-x-2 text-sm text-zinc-400 hover:text-zinc-500 cursor-pointer\"\n >\n <div className=\"m-auto w-4 h-4\">\n <Icon name=\"caret left\" />\n </div>\n <p>Back to Badge</p>\n </div>\n\n <div className=\"p-1\">\n <p className=\"text-lg font-semibold\">Badge Activities</p>\n <p className=\"text-sm\">Choose activities from the categories below to customize your Badge experience.</p>\n </div>\n </div>\n\n <div className=\"py-8 px-5 grid grid-cols-1 gap-y-12\">\n {criteria.map((c, i) => {\n const id = c.criterionId || i;\n const options = c.options || [];\n return (\n <div key={id} className=\"grid grid-cols-1 gap-y-8\">\n <div>\n <p className=\"text-lg font-semibold\">{c.displayName}</p>\n <p className=\"text-sm\">Chose one activity to complete.</p>\n </div>\n\n <div className=\"grid grid-flow-col auto-cols-max gap-4 px-1 pt-1 pb-2 w-full overflow-x-auto\">\n {options.map((o, i) => {\n const id = o.activityId || i;\n const date = o.startTime ? new Date(o.startTime) : null;\n return (\n <div key={id} className=\"grid grid-cols-1 gap-y-2\">\n {date && (\n <p>\n {Intl.DateTimeFormat(\"en-US\", { month: \"long\" }).format(date)} {ordNumber(date.getDate())}\n </p>\n )}\n {!date && <p className=\"invisible\">Online</p>}\n <BadgeActivity {...o} criteriaName={c.displayName} />\n </div>\n );\n })}\n </div>\n </div>\n );\n })}\n </div>\n </div>\n );\n};\n","import React from \"react\";\nimport { builder } from \"../../../utils/classname/classname\";\n\n/**\n * The properties for the widget body.\n */\nexport type WidgetBodyProps = {\n spacing?: \"sm\" | \"md\" | \"none\";\n children?: React.ReactNode;\n};\n\n/**\n * A component for the widget body.\n * @param props\n * @constructor\n */\nexport const WidgetBody = (props: WidgetBodyProps) => {\n const spacing = props.spacing || \"sm\";\n const className = builder()\n .if(spacing === \"sm\", \"p-2\")\n .if(spacing === \"md\", \"p-5\")\n .build();\n const hasContent = props.children && React.Children.count(props.children) > 0;\n return (\n <div className={className}>\n {!hasContent && (\n <div className=\"grid justify-items-center content-center h-[6rem] -mt-6 lg:mt-0 lg:h-[5.5rem]\">\n <p className=\"text-xs text-center align-middle leading-6 font-semibold text-slate-300\">\n No content to display.\n </p>\n </div>\n )}\n {hasContent && props.children}\n </div>\n );\n};\n","import React from \"react\";\nimport { builder } from \"../../../utils/classname/classname\";\n\n/**\n * The properties for the widget header.\n */\nexport type WidgetHeaderProps = {\n loose?: boolean;\n divide?: boolean;\n children?: React.ReactNode;\n};\n\n/**\n * A component for widget headers.\n * @param props\n * @constructor\n */\nexport const WidgetHeader = (props: WidgetHeaderProps) => {\n const className = builder()\n .if(!!props.divide, \"border-b border-gray-200\")\n .if(!props.loose, \"p-2\")\n .else(\"p-5\")\n .build();\n return (\n <div className={className}>\n <div className=\"flex items-center text-slate-600 items-center gap-x-1\">{props.children}</div>\n </div>\n );\n};\n","import React from \"react\";\nimport { Button, ButtonSize } from \"../../Button/Button\";\nimport { IconProps } from \"../../Icon/v0/Icon\";\n\n/**\n * The properties for the widget header link.\n */\nexport type WidgetHeaderLinkProps = {\n display?: boolean;\n disabled?: boolean;\n onClick?: () => void;\n size?: ButtonSize;\n children: string | React.ReactElement<IconProps>;\n};\n\n/**\n * A component for widget header call to action.\n * @param props\n * @constructor\n */\nexport const WidgetHeaderLink = (props: WidgetHeaderLinkProps) => {\n if (!props.display) {\n return null;\n }\n\n if (typeof props.children === \"string\") {\n return <Button size={props.size || \"tiny\"} text={props.children} onClick={props.onClick} />;\n } else {\n return (\n <div className=\"flex items-center\">\n <Button\n size={props.size || \"xs\"}\n disabled={props.disabled || !props.onClick}\n icon={props.children.props.name}\n onClick={props.onClick}\n />\n </div>\n );\n }\n};\n","import React from \"react\";\nimport { Icon, IconName } from \"../../Icon/v0/Icon\";\n\n/**\n * The properties for the widget title.\n */\nexport type WidgetTitleProps = {\n icon?: IconName;\n children: React.ReactNode;\n};\n\n/**\n * A component for widget titles.\n * @param props\n * @constructor\n */\nexport const WidgetTitle = (props: WidgetTitleProps) => {\n return (\n <>\n {props.icon && (\n <div className=\"w-5 h-5\">\n <Icon name={props.icon} />\n </div>\n )}\n <h4 className=\"grow capitalize align-middle font-semibold\">{props.children}</h4>\n </>\n );\n};\n","import React from \"react\";\nimport { builder } from \"../../utils/classname/classname\";\nimport { Loader } from \"../Loader\";\n\n/**\n * The properties for the widget.\n */\nexport type WidgetProps = {\n headless?: boolean;\n borderless?: boolean;\n color?: \"sky\" | \"inherit\";\n isLoading?: boolean;\n children?: React.ReactNode;\n};\n\n/**\n * A component for widgets.\n * @param props\n * @constructor\n */\nexport const Widget = (props: WidgetProps) => {\n const className = builder(\"flex flex-col w-full shadow-sm rounded-md overflow-hidden\")\n .if(!props.borderless, \"border border-gray-200\")\n .if(props.color === \"sky\", \"bg-sky-100\")\n .build();\n\n return (\n <article className={className}>\n {!props.headless && <div className=\"p-2 bg-gray-200\" />}\n <Loader isLoading={props.isLoading}>\n <div className=\"relative w-full\">{props.children}</div>\n </Loader>\n </article>\n );\n};\n","import * as React from \"react\";\nimport { Widget, WidgetBody, WidgetHeader } from \"../../../components/Widget\";\nimport { Badge, BadgeProps } from \"../Badge/Badge\";\nimport { Icon } from \"../../../components/Icon/Icon\";\n\nconst DEFAULT_FILTERS = [\n {label: \"In Progress\"},\n {label: \"Completed\"},\n {label: \"Available\"},\n {label: \"Locked\"}\n]\n\nexport type BadgeFilterOption = {\n label: string;\n isActive?: boolean;\n};\n\n/**\n * BadgeSectionProps\n */\nexport type BadgeSectionProps = {\n badges: BadgeProps[];\n isLoading?: boolean;\n readonly?: boolean;\n list?: boolean\n onToggleLayout?: (next: boolean) => void;\n filters?: BadgeFilterOption[];\n onFilterChange?: (next: BadgeFilterOption[]) => void;\n};\n\n/**\n * BadgeSection\n * @param props\n * @constructor\n */\nexport const BadgeSection = (props: BadgeSectionProps) => {\n const options: BadgeFilterOption[] = props.filters || DEFAULT_FILTERS;\n const progress: BadgeProps[] = [];\n const locked: BadgeProps[] = [];\n const available: BadgeProps[] = [];\n const collected: BadgeProps[] = [];\n\n props.badges.map((b) => {\n if (b.finishedAt) {\n collected.push(b);\n } else if (b.isLocked) {\n locked.push(b);\n } else if (b.startedAt) {\n progress.push(b);\n } else {\n available.push(b);\n }\n });\n\n const [list, setList] = React.useState(props.list)\n const [filters, setFilters] = React.useState(filtersByLabel(props.filters || DEFAULT_FILTERS))\n const filterValues = Object.values(filters)\n const propsFilterKey = JSON.stringify(props.filters)\n const filterKey = JSON.stringify(filterValues)\n const preview = props.readonly ? collected.slice(0, 10) : props.badges.slice(0, 3);\n const filterClassName = \"inline-block px-4 py-3 bg-gray-600 text-white rounded-full cursor-pointer\";\n const layoutClassName = getLayout(list)\n const numberOfActiveFilters = activeFilters(filterValues).length\n const isWithoutFilters = numberOfActiveFilters === 0\n const showSectionHeaders = numberOfActiveFilters > 1 || numberOfActiveFilters === 0\n\n React.useEffect(() => {\n setList(props.list)\n }, [props.list])\n\n React.useEffect(() => {\n if(list !== undefined && props.list !== list && props.onToggleLayout){\n props.onToggleLayout(list)\n }\n }, [list])\n\n React.useEffect(() => {\n setFilters(filtersByLabel(props.filters||DEFAULT_FILTERS))\n }, [propsFilterKey])\n\n React.useEffect(() => {\n if(propsFilterKey !== filterKey && props.onFilterChange){\n props.onFilterChange(Object.values(filters))\n }\n }, [filterKey])\n\n return (\n <div>\n <Widget isLoading={props.isLoading}>\n <WidgetHeader divide>\n <div className=\"py-2 flex w-full gap-x-2 text-zinc-600\">\n <div className=\"shrink-0 h-10 w-10\">\n <Icon name=\"award ribbon\" />\n </div>\n <p className=\"shrink-0 my-auto font-semibold\">Badges</p>\n\n <div className=\"shrink-0 mt-auto ml-auto text-sm\">\n <span className=\"font-semibold\">\n {collected.length}\n {props.readonly ? \"\" : \"/\" + props.badges.length} Badges\n </span>\n <span className=\"ml-1\">collected</span>\n </div>\n </div>\n </WidgetHeader>\n <WidgetBody>\n <div className=\"pb-5\">\n <div className=\"grid grid-cols-1 gap-y-5\">\n <div className=\"flex flex-wrap gap-4 items-center justify-between text-sm\">\n {options.length > 0 && (\n <div className=\"flex justify-center col-span-3 space-x-4 text-sm\">\n {options.map((opt, i) => {\n return (\n <div\n key={`${i}`}\n onClick={() => {\n if(!(opt.label in filters)){\n return\n }\n\n const next = {...filters}\n next[opt.label].isActive = !next[opt.label].isActive\n setFilters(next)\n }}\n style={{ marginBottom: \"0.6rem\" }}\n className={\n opt.isActive\n ? `${filterClassName} active`\n : \"inline-block px-4 py-3 rounded-full hover:bg-gray-700 hover:text-white cursor-pointer\"\n }\n >\n {opt.label}\n </div>\n );\n })}\n </div>\n )}\n <div>\n <label className=\"relative inline-flex items-center cursor-pointer\">\n <input\n type=\"checkbox\"\n value=\"\"\n className=\"sr-only peer\"\n checked={!list}\n onChange={() => setList(!list)}\n />\n <div className=\"w-11 h-6 bg-gray-200 rounded-full peer peer-focus:ring-4 peer-focus:ring-blue-300 dark:peer-focus:ring-blue-800 dark:bg-gray-700 peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-0.5 after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-5 after:w-5 after:transition-all dark:border-gray-600 peer-checked:bg-blue-600\"></div>\n <span\n className=\"ml-3 text-sm font-bold text-gray-700\"\n onChange={() => setList(!list)}\n >\n Grid View?\n </span>\n </label>\n </div>\n </div>\n <div>\n {!!props.readonly && (\n <div className={layoutClassName}>\n {preview.map((b, i) => {\n return <Badge key={i} {...b} compact={list} readonly={props.readonly} />;\n })}\n </div>\n )}\n {!props.readonly && (\n <div className=\"text-zinc-600 grid grid-cols-1 gap-y-4\">\n {(isWithoutFilters || \"In Progress\" in filters && filters[\"In Progress\"].isActive) && progress.length > 0 && (\n <div>\n {showSectionHeaders && <p className=\"mb-3 text-md underline font-bold\">In Progress</p>}\n <div className={layoutClassName}>\n {progress.map((b, i) => {\n return <Badge key={i} {...b} compact={list}/>;\n })}\n </div>\n </div>\n )}\n\n {(isWithoutFilters || \"Completed\" in filters && filters[\"Completed\"].isActive) && collected.length > 0 && (\n <div>\n {showSectionHeaders && <p className=\"mb-3 text-md underline font-bold\">Completed</p> }\n <div className={layoutClassName}>\n {collected.map((b, i) => {\n return <Badge key={i} {...b} compact={list}/>;\n })}\n </div>\n </div>\n )}\n\n {(isWithoutFilters || \"Available\" in filters && filters[\"Available\"].isActive) && available.length > 0 && (\n <div>\n {showSectionHeaders && <p className=\"mb-3 text-md underline font-bold\">Available</p> }\n <div className={layoutClassName}>\n {available.map((b, i) => {\n return <Badge key={i} {...b} compact={list}/>;\n })}\n </div>\n </div>\n )}\n\n {(isWithoutFilters || \"Locked\" in filters && filters[\"Locked\"].isActive) && locked.length > 0 && (\n <div>\n {showSectionHeaders && <p className=\"mb-3 text-md underline font-bold\">Locked</p> }\n <div className={layoutClassName}>\n {locked.map((b, i) => {\n return <Badge key={i} {...b} compact={list}/>;\n })}\n </div>\n </div>\n )}\n </div>\n )}\n </div>\n </div>\n </div>\n </WidgetBody>\n </Widget>\n </div>\n );\n};\n\nconst getLayout = (list?: boolean) => {\n if(list){\n return \"grid grid-cols-1 overflow-y-auto max-h-96\"\n }\n\n return \"flex flex-wrap gap-3\"\n}\n\nconst filtersByLabel = (filters: BadgeFilterOption[]) => {\n const ans: Record<string, BadgeFilterOption> = {}\n filters.forEach(v => {\n ans[v.label] = v\n })\n return ans\n}\n\nconst activeFilters = (filters: BadgeFilterOption[]) => {\n return Object.values(filters).filter(v => v.isActive)\n}","import React from \"react\";\nimport { Icon } from \"../../../components/Icon/Icon\";\nimport { Card } from \"../../../components/Card/Card\";\nimport { Button } from \"../../../components/Button\";\n\n\n/**\n * BadgeSuccessDialogProps\n */\nexport type BadgeSuccessDialogProps = {\n displayName?: string;\n xp?: number;\n level?: number;\n onClose?: () => void;\n};\n\n/**\n * BadgeSuccessDialog\n * @param props\n * @constructor\n */\nexport const BadgeSuccessDialog = (props: BadgeSuccessDialogProps) => {\n return (\n <Card onClose={props.onClose}>\n <div className=\"w-full px-8 pt-5 pb-12 shadow-sm grid grid-cols-1 gap-4 content-center justify-items-center\">\n <div className=\"text-zinc-600 w-28 h-28\">\n <Icon name=\"party popper\" />\n </div>\n\n <div className=\"text-slate-600 text-center\">\n <div className=\"font-bold text-lg\">\n <span>Great Job!</span>\n </div>\n\n <div className=\"max-w-[22rem]\">\n {!!props.xp && (\n <div className=\"text-sm\">\n <span>{\"You've just earned\"}</span>\n <span className=\"ml-1 font-semibold text-green-500\">{props.xp} XP</span>\n <span className=\"ml-1\">points!</span>\n </div>\n )}\n\n {!!props.displayName && (\n <div className=\"mt-2 text-sm\">\n <span>Check out your new</span>\n <span className=\"ml-1 font-semibold\">{props.displayName}</span>\n <span className=\"ml-1\">\n Lv. {(props.level || 0) + 1} badge on your profile! Look out for more opportunities to earn!\n </span>\n </div>\n )}\n </div>\n </div>\n <a href=\"/home\" className=\"mt-4\">\n <Button\n color=\"sky\"\n size=\"md\"\n spacing=\"md\"\n border=\"rounded\"\n theme=\"light\"\n text=\"Explore Other Badges\"\n />\n </a>\n </div>\n </Card>\n );\n};\n","import React from \"react\";\nimport { classname } from \"../../../utils/classname/classname\";\nimport { Icon, IconName } from \"../../Icon/v0/Icon\";\n\n/**\n * The properties for the tab.\n */\nexport type TabProps = {\n icon?: IconName;\n title?: string;\n secondary?: boolean;\n active?: boolean;\n disabled?: boolean;\n onClick?: () => void;\n};\n\n/**\n * A component for an individual tab option.\n * @param props\n * @constructor\n */\nexport const Tab = (props: TabProps) => {\n const config = defaultTabConfig();\n withActive(config, props.active);\n withDisabled(config, props.disabled);\n withSecondary(config, props.secondary);\n\n const onClick = () => !props.disabled && !props.active && props.onClick && props.onClick();\n return (\n <div onClick={onClick} className={classname(config.container)}>\n <div className=\"m-auto w-max\">\n {props.icon && (\n <div className={classname(config.icon)}>\n <Icon name={props.icon} />\n </div>\n )}\n <h4 className={classname(config.title)}>{props.title}</h4>\n </div>\n </div>\n );\n};\n\ntype TabConfig = {\n active?: boolean;\n disabled?: boolean;\n container: {\n base: string;\n cursor: string;\n shape: string;\n border: string;\n bg: {\n color: string;\n hover: string;\n };\n };\n icon: {\n base: string;\n color: string;\n size: string;\n };\n title: {\n base: string;\n color: string;\n size: string;\n };\n};\n\nconst defaultTabConfig = () => {\n const config: TabConfig = {\n container: {\n base: \"transition ease-in-out w-full p-2 lg:py-3 lg:px-5\",\n cursor: \"cursor-pointer\",\n shape: \"rounded-md\",\n bg: {\n color: \"\",\n hover: \"hover:bg-white\",\n },\n border: \"\",\n },\n icon: {\n base: \"align-middle hidden lg:inline-block\",\n color: \"text-slate-600\",\n size: \"w-5 h-5\",\n },\n title: {\n base: \"ml-1 capitalize font-semibold align-middle inline-block\",\n color: \"text-slate-600\",\n size: \"text-xs lg:text-sm\",\n },\n };\n return config;\n};\n\nconst withActive = (config: TabConfig, active?: boolean) => {\n if (active) {\n config.container.cursor = \"\";\n config.container.bg.color = \"bg-white\";\n }\n config.active = active;\n};\n\nconst withDisabled = (config: TabConfig, disabled?: boolean) => {\n if (disabled) {\n config.container.cursor = \"\";\n config.container.bg.color = \"\";\n config.container.bg.hover = \"\";\n config.icon.color = \"text-slate-400\";\n config.title.color = \"text-slate-400\";\n }\n config.disabled = disabled;\n};\n\nconst withSecondary = (config: TabConfig, secondary?: boolean) => {\n if (secondary) {\n config.container.shape = \"\";\n config.container.bg.color = \"\";\n config.container.bg.hover = \"\";\n config.icon.size = \"w-4 h-4\";\n config.title.size = \"text-xs\";\n\n if (config.active) {\n config.container.border = \"border-b-2 border-b-sky-400\";\n config.icon.color = \"text-sky-500\";\n config.title.color = \"text-sky-500\";\n } else if (config.disabled) {\n config.container.border = \"border-b border-slate-100 text-slate-600\";\n config.icon.color = \"\";\n config.title.color = \"\";\n } else {\n config.container.border =\n \"border-b border-slate-100 text-slate-600 hover:border-b-2 hover:border-b-sky-400 hover:text-sky-500\";\n config.icon.color = \"\";\n config.title.color = \"\";\n }\n }\n};\n","import React from \"react\";\nimport { builder } from \"../../utils/classname/classname\";\nimport { Loader } from \"../Loader/Loader\";\n\n/**\n * The properties for tabs.\n */\nexport type BoardProps = {\n isLoading?: boolean;\n secondary?: boolean;\n tabs?: React.ReactNode;\n workflow?: React.ReactNode;\n};\n\n/**\n * A component for tabs.\n * @param props\n * @constructor\n */\nexport const Board = (props: BoardProps) => {\n const className = builder().if(!!props.secondary, \"pt-2 px-2\").else(\"p-2 bg-gray-200\").build();\n const layoutClassName = builder(\"grid grid-cols-3 justify-items-center\").if(!props.secondary, \"gap-2\").build();\n const hasWorkflow = props.workflow && React.Children.count(props.workflow) > 0;\n\n return (\n <div className=\"w-full\">\n <div className={className}>\n <div className={layoutClassName}>{props.tabs}</div>\n </div>\n <div>\n <Loader isLoading={props.isLoading}>\n {!hasWorkflow && (\n <div className=\"grid justify-items-center content-center\">\n <p className=\"text-sm text-center align-middle leading-6 font-semibold text-slate-300\">\n No content to display.\n </p>\n </div>\n )}\n {hasWorkflow && props.workflow}\n </Loader>\n </div>\n </div>\n );\n};\n","import React from \"react\";\nimport { builder } from \"../../../utils/classname/classname\";\nimport { Icon } from \"../../Icon\";\nimport { Widget, WidgetBody, WidgetHeader, WidgetTitle } from \"../../Widget\";\n\n/**\n * DateSelection component props.\n */\nexport type DateSelectionProps = {\n isLoading?: boolean;\n date?: Date | null;\n setDate: (date: Date | null) => void;\n};\n\n/**\n * DateSelection component.\n * @param props\n * @constructor\n */\nexport const DateSelection = (props: DateSelectionProps) => {\n const today = new Date();\n const [month, setMonth] = React.useState(calend(props.date || today));\n\n return (\n <Widget isLoading={props.isLoading}>\n <WidgetHeader divide>\n <WidgetTitle icon=\"calendar\">Calendar</WidgetTitle>\n </WidgetHeader>\n <WidgetBody>\n <MonthSelection month={month} setMonth={setMonth} />\n <DaySelection date={props.date} month={month} setDate={props.setDate} />\n </WidgetBody>\n </Widget>\n );\n};\n\ntype MonthSelectionProps = {\n month: Date;\n setMonth: (date: Date) => void;\n};\n\nconst MonthSelection = (props: MonthSelectionProps) => {\n const month = props.month;\n const previousMonth = () => props.setMonth(new Date(month.getFullYear(), month.getMonth() - 1, 1));\n const nextMonth = () => props.setMonth(new Date(month.getFullYear(), month.getMonth() + 1, 1));\n\n return (\n <div className=\"flex items-center\">\n <div className=\"grow\">\n <span className=\"font-semibold text-md text-slate-300\">{formatDate(month, { month: \"long\" })}</span>\n <span className=\"text-md ml-1 text-slate-300\">{formatDate(month, { year: \"numeric\" })}</span>\n </div>\n <div onClick={previousMonth} className=\"cursor-pointer w-3 h-3 min-w-3 text-slate-300 hover:text-slate-500\">\n <Icon name=\"leftArrow\" />\n </div>\n <div onClick={nextMonth} className=\"cursor-pointer ml-2 w-3 h-3 min-w-3 text-slate-300 hover:text-slate-500\">\n <Icon name=\"rightArrow\" />\n </div>\n </div>\n );\n};\n\ntype DaySelectionProps = {\n date?: Date | null;\n month: Date;\n setDate: (date: Date | null) => void;\n};\n\nconst DaySelection = (props: DaySelectionProps) => {\n const today = new Date();\n const Days = [];\n const [start, end] = weeks(props.month, 6);\n for (let cur = start; cur <= end; cur = nextDate(cur)) {\n const isToday = isSameDate(today, cur);\n const isActive = isSameDate(props.date, cur);\n const isCurrentMonth = cur.getMonth() === props.month.getMonth();\n const onClick = () => props.setDate(isActive ? null : cur);\n Days.push(\n <DaySelectionOption\n key={cur.toString()}\n today={isToday}\n active={isActive}\n currentMonth={isCurrentMonth}\n onClick={onClick}\n >\n {cur.getDate()}\n </DaySelectionOption>\n );\n }\n\n return (\n <div className=\"mt-4 grid grid-cols-7 gap-1 text-sm justify-items-center\">\n {WEEKDAYS.map((date) => {\n return (\n <span key={date} className=\"w-8 text-center text-slate-400\">\n {date}\n </span>\n );\n })}\n {Days}\n </div>\n );\n};\n\n/**\n * The properties for the day selection option.\n */\nexport type DaySelectionOptionProps = {\n today: boolean;\n active: boolean;\n currentMonth: boolean;\n children: number;\n onClick: () => void;\n};\n\n/**\n * A component to for a day selection option.\n * @param props\n * @constructor\n */\nconst DaySelectionOption = (props: DaySelectionOptionProps) => {\n const className = builder(\"w-8 h-8 text-center cursor-pointer p-2\")\n .append(\"hover:text-white hover:font-semibold hover:bg-sky-400\")\n .if(props.active, \"text-white font-semibold bg-sky-400\")\n .if(!props.active && props.today, \"font-semibold bg-slate-100 rounded-full\")\n .if(!props.active && !props.today && props.currentMonth, \"text-slate-500 font-semibold\")\n .if(!props.active && !props.today && !props.currentMonth, \"text-slate-400\")\n .build();\n\n return (\n <span onClick={props.onClick} className={className}>\n {props.children}\n </span>\n );\n};\n\nconst WEEKDAYS = [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"];\n\n/**\n * A utility to calculate a date range for the specified number of weeks.\n * @param date\n * @param weeks\n */\nconst weeks = (date: Date, weeks: number) => {\n const start = new Date(date.getFullYear(), date.getMonth(), date.getDate() - date.getDay());\n const end = new Date(start.getFullYear(), start.getMonth(), start.getDate() + weeks * 7 - 1);\n return [start, end];\n};\n\n/**\n * A utility to calculate the first day of the month.\n * https://en.wikipedia.org/wiki/Calends\n */\nconst calend = (date: Date) => {\n return new Date(date.getFullYear(), date.getMonth(), 1);\n};\n\n/**\n * A helper utility to check if two date operands are equal.\n * @param left\n * @param right\n * @return {boolean}\n */\nconst isSameDate = (left?: Date | null, right?: Date) => {\n return (\n left === right ||\n (!!(left && right) &&\n left.getFullYear() === right.getFullYear() &&\n left.getMonth() === right.getMonth() &&\n left.getDate() === right.getDate())\n );\n};\n\n/**\n * A utility to format dates.\n * @param date\n * @param options\n */\nconst formatDate = (date: Date, options: Intl.DateTimeFormatOptions) => {\n return Intl.DateTimeFormat(\"en-US\", options).format(date);\n};\n\n/**\n * A utility to determine the next date.\n * @param date\n */\nconst nextDate = (date: Date) => {\n return new Date(date.getFullYear(), date.getMonth(), date.getDate() + 1);\n};\n","/**\n * Background color from name\n * @param name\n * @param active\n * @param disabled\n */\nexport const background = (name?: string, active?: boolean, disabled?: boolean) => {\n switch (name) {\n case \"college & career\":\n return disabled ? \"bg-red-200\" : active ? \"bg-red-300 hover:bg-red-200\" : \"bg-red-200 hover:bg-red-300\";\n case \"policy & government\":\n return disabled\n ? \"bg-violet-200\"\n : active\n ? \"bg-violet-300 hover:bg-violet-200\"\n : \"bg-violet-200 hover:bg-violet-300\";\n case \"recreation\":\n return disabled\n ? \"bg-orange-200\"\n : active\n ? \"bg-orange-300 hover:bg-orange-200\"\n : \"bg-orange-200 hover:bg-orange-300\";\n case \"arts & culture\":\n return disabled ? \"bg-amber-200\" : active ? \"bg-amber-300 hover:bg-amber-200\" : \"bg-amber-200 hover:bg-amber-300\";\n case \"volunteer\":\n return disabled\n ? \"bg-emerald-200\"\n : active\n ? \"bg-emerald-300 hover:bg-emerald-200\"\n : \"bg-emerald-200 hover:bg-emerald-300\";\n case \"sponsored\":\n return disabled ? \"bg-sky-200\" : active ? \"bg-sky-300 hover:bg-sky-200\" : \"bg-sky-200 hover:bg-sky-300\";\n default:\n return disabled ? \"bg-gray-50\" : active ? \"bg-gray-200 hover:bg-gray-100\" : \"bg-gray-100 hover:bg-gray-200\";\n }\n};\n\n/**\n * Foreground color from name\n * @param name\n */\nexport const foreground = (name?: string) => {\n switch (name) {\n case \"college & career\":\n return \"text-red-300 hover:text-red-400 border-red-300 hover:border-red-400 stroke-red-300 fill-red-300 hover:stroke-red-400 hover:stroke-red-400\";\n case \"policy & government\":\n return \"text-violet-300 hover:text-violet-400 border-violet-300 hover:border-violet-400 stroke-violet-300 fill-violet-300 hover:stroke-violet-400 hover:stroke-violet-400\";\n case \"recreation\":\n return \"text-orange-300 hover:text-orange-400 border-orange-300 hover:border-orange-400 stroke-orange-300 fill-orange-300 hover:stroke-orange-400 hover:stroke-orange-400\";\n case \"arts & culture\":\n return \"text-amber-300 hover:text-amber-400 border-amber-300 hover:border-amber-400 stroke-amber-300 fill-amber-300 hover:stroke-amber-400 hover:stroke-amber-400\";\n case \"volunteer\":\n return \"text-emerald-300 hover:text-emerald-400 border-emerald-300 hover:border-emerald-400 stroke-emerald-300 fill-emerald-300 hover:stroke-emerald-400 hover:stroke-emerald-400\";\n case \"sponsored\":\n return \"text-sky-300 hover:text-sky-400 border-sky-300 hover:border-sky-400 stroke-sky-300 fill-sky-300 hover:stroke-sky-400 hover:stroke-sky-400\";\n default:\n return \"text-gray-100 hover:text-gray-200 border-gray-100 hover:border-gray-200 stroke-gray-300 fill-gray-300 hover:stroke-gray-400 hover:stroke-gray-400\";\n }\n};\n","import React from \"react\";\nimport { background } from \"../../../utils/colors\";\nimport { Icon, IconName } from \"../../Icon\";\n\n/**\n * EventItemProps\n */\nexport type EventItemProps = {\n headline?: string;\n pathway?: string;\n onClick?: () => void;\n};\n\n/**\n * EventItem\n * @param props\n * @constructor\n */\nexport const EventItem = (props: EventItemProps) => {\n return (\n <div\n onClick={props.onClick}\n className={`flex flex-col shadow-md cursor-pointer transition ease-in-out ${background(\n props.pathway\n )} p-4 rounded-md text-gray-500 h-28`}\n >\n <div className=\"w-5 h-5 min-h-5 drop-shadow-md text-slate-600 mb-5\">\n <Icon name={(props.pathway as IconName) || \"explore\"} />\n </div>\n <p className=\"capitalize text-slate-600 text-sm\">{props.pathway}</p>\n <div className=\"relative h-full\">\n <p className=\"font-semibold capitalize text-slate-600 text-md absolute bottom-0\">{props.headline}</p>\n </div>\n </div>\n );\n};\n","import React from \"react\";\nimport { Icon } from \"../../Icon\";\nimport { Loader } from \"../../Loader\";\nimport { Widget, WidgetBody, WidgetHeader, WidgetHeaderLink, WidgetTitle } from \"../../Widget\";\n\n/**\n * EventList props.\n */\nexport type EventListProps = {\n isLoading?: boolean;\n date: Date | null;\n onSetDate: (date: Date | null) => void;\n children?: React.ReactNode;\n};\n\n/**\n * EventList component.\n * @param props\n * @constructor\n */\nexport const EventList = (props: EventListProps) => {\n const date = props.date || new Date();\n const hasChildren = props.children && React.Children.count(props.children) > 0;\n\n return (\n <Widget>\n <WidgetHeader divide>\n <WidgetTitle>\n <DateTitle>{date}</DateTitle>\n </WidgetTitle>\n <WidgetHeaderLink onClick={() => props.onSetDate(previousDate(date))} display={!!props.date}>\n <Icon name=\"leftArrow\" />\n </WidgetHeaderLink>\n <WidgetHeaderLink onClick={() => props.onSetDate(nextDate(date))} display={!!props.date}>\n <Icon name=\"rightArrow\" />\n </WidgetHeaderLink>\n </WidgetHeader>\n <WidgetBody>\n <Loader isLoading={props.isLoading}>\n {hasChildren && <div className=\"grid grid-cols-1 max-h-[30rem] overflow-auto gap-2\">{props.children}</div>}\n {!hasChildren && (\n <div className=\"grid justify-items-center content-center h-[16rem] lg:h-[22rem]\">\n <p className=\"text-sm text-center align-middle leading-6 font-semibold text-slate-300\">\n No events for the day.\n </p>\n </div>\n )}\n </Loader>\n </WidgetBody>\n </Widget>\n );\n};\n\n/**\n * The properties for the date title.\n */\ntype DateTitleProps = {\n children: Date;\n};\n\n/**\n * A component for displaying date titles.\n * @constructor\n */\nconst DateTitle = (props: DateTitleProps) => {\n return (\n <>\n <span className=\"font-semibold text-3xl text-slate-600\">{formatDate(props.children, { month: \"long\" })}</span>\n <span className=\"font-semibold ml-2 text-3xl text-slate-600\">{ordNumber(props.children.getDate())}</span>\n <span className=\"text-3xl ml-2 text-slate-600\">{formatDate(props.children, { year: \"numeric\" })}</span>\n </>\n );\n};\n\n/**\n * A utility to format dates.\n * @param date\n * @param options\n */\nconst formatDate = (date: Date, options: Intl.DateTimeFormatOptions) => {\n return Intl.DateTimeFormat(\"en-US\", options).format(date);\n};\n\n/**\n * A utility to determine the previous date.\n * @param date\n */\nconst previousDate = (date: Date) => {\n return new Date(date.getFullYear(), date.getMonth(), date.getDate() - 1);\n};\n\n/**\n * A utility to determine the next date.\n * @param date\n */\nconst nextDate = (date: Date) => {\n return new Date(date.getFullYear(), date.getMonth(), date.getDate() + 1);\n};\n\n/**\n * A utility to get a number as its ordinal representation.\n * https://community.shopify.com/c/shopify-design/ordinal-number-in-javascript-1st-2nd-3rd-4th/m-p/72156\n * @param n\n */\nconst ordNumber = (n: number) => {\n const s = [\"th\", \"st\", \"nd\", \"rd\"],\n v = n % 100;\n return n + (s[(v - 20) % 10] || s[v] || s[0]);\n};\n","import * as React from \"react\"\n\n/**\n * Home\n * @constructor\n */\nexport const Home = () => {\n return (\n <div className=\"relative h-full w-full\">\n <img\n className=\"absolute h-full w-full top-0 left-0 object-cover\"\n alt=\"landing\"\n src=\"https://cdn.localcivics.io/hub/landing.jpg\"\n />\n <div className=\"absolute z-10 bottom-1/4 left-0 w-full -mb-[3rem] px-6 lg:px-36\">\n <div className=\"max-w-[62.5rem] m-auto inset-z-0 text-white\">\n <p className=\"text-[3rem] font-bold\">Learning that powers your future!</p>\n <p className=\"mt-5 text-[2rem]\">\n Explore pathways, earn badges and build skills for success in college, career, and community.\n </p>\n </div>\n </div>\n </div>\n );\n};\n","import React from \"react\";\nimport { Button } from \"../../../components/Button\";\nimport { Icon } from \"../../../components/Icon\";\nimport { Modal } from \"../../../components/Modal\";\n\n/**\n * FormExitDialogProps\n */\nexport type FormExitDialogProps = {\n onYes?: () => void;\n onNo?: () => void;\n};\n\n/**\n * FormExitDialog\n * @param props\n * @constructor\n */\nexport const FormExitDialog = (props: FormExitDialogProps) => {\n return (\n <Modal visible transparent onClose={props.onNo}>\n <div className=\"w-full md:w-[24rem] px-8 py-5 shadow-sm grid grid-cols-1 gap-4 content-center justify-items-center\">\n <div className=\"text-slate-500 w-14 h-14\">\n <Icon name=\"edit\" />\n </div>\n\n <div className=\"text-slate-600 text-center\">\n <div className=\"font-bold text-lg\">\n <span>Are you sure you want to leave?</span>\n </div>\n <p className=\"text-sm max-w-[16rem]\">Your progress will be saved.</p>\n </div>\n\n <div className=\"my-5 grid grid-cols-2 gap-4\">\n <Button\n wide\n spacing=\"md\"\n border=\"rounded\"\n color=\"blue\"\n theme=\"dark\"\n text=\"Yes\"\n size=\"md\"\n onClick={props.onYes}\n />\n\n <Button\n wide\n spacing=\"md\"\n border=\"rounded\"\n color=\"secondary\"\n theme=\"dark\"\n text=\"No\"\n size=\"md\"\n onClick={props.onNo}\n />\n </div>\n </div>\n </Modal>\n );\n};\n","import React from \"react\";\nimport LinkifyIt from \"linkify-it\";\nimport reactStringReplace from \"react-string-replace\"\n\nexport const linkify = (text: React.ReactNode) => {\n if(typeof text !== 'string'){\n return text\n }\n\n const matches = LinkifyIt().match(text)\n let replacedText = reactStringReplace(text)\n matches?.forEach(match => {\n replacedText = reactStringReplace(replacedText, match.raw, () => <a\n href={match.url}\n target=\"_blank\"\n rel=\"noreferrer\"\n className=\"hover:underline text-blue-500\"\n >{match.text}</a>)\n })\n\n return replacedText\n}","import React from \"react\";\r\nimport { Icon } from \"../../../components/Icon\";\r\nimport { linkify } from \"../../../utils/url\";\r\n\r\n/**\r\n * FormItemProps\r\n */\r\nexport type FormItemProps = {\r\n itemId?: string;\r\n displayName?: string | React.ReactNode;\r\n description?: string;\r\n format?: \"question\" | \"image\" | \"embed\" | \"text\";\r\n questionType?: \"radio\" | \"checkbox\" | \"drop down\" | \"file upload\" | \"text\" | \"date\" | \"time\";\r\n options?: string[];\r\n paragraph?: boolean;\r\n required?: boolean;\r\n disabled?: boolean;\r\n url?: string;\r\n answerId?: string;\r\n journalId?: string;\r\n questionId?: string;\r\n responses?: string[];\r\n minText?: number;\r\n children?: React.ReactNode;\r\n\r\n onResponseChange?: (responses?: string[], file?: Blob) => void;\r\n onTextBlur?: () => void;\r\n};\r\n\r\n/**\r\n * FormItem\r\n * @param props\r\n * @constructor\r\n */\r\nexport const FormItem = (props: FormItemProps) => {\r\n const responses = props.responses || [];\r\n const notEmpty = responses.length > 0 && responses[0].trim() !== \"\";\r\n const minimum = props.minText !== undefined ? props.minText : 100;\r\n const isTextError = notEmpty && props.questionType === \"text\" && responses[0].trim().length < minimum;\r\n const isValidAnswer = notEmpty && (props.questionType !== \"text\" || !isTextError);\r\n const checkIconColor = isValidAnswer ? \"text-green-500\" : \"text-gray-300\";\r\n const contentMaxWidth = props.format === \"question\" ? \"max-w-lg\" : \"\";\r\n const [showError, setShowError] = React.useState(false);\r\n const itemContainerError = showError && isTextError ? \"border-2 border-rose-300\" : \"\";\r\n\r\n const onTextBlur = () => {\r\n if (isTextError) {\r\n setShowError(true);\r\n } else {\r\n setShowError(false);\r\n }\r\n\r\n if (props.onTextBlur) {\r\n props.onTextBlur();\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n if (!isTextError) {\r\n setShowError(false);\r\n }\r\n }, [isTextError]);\r\n\r\n const marginBottom = props.format === \"text\" ? \"-mb-7\" : \"\";\r\n\r\n return (\r\n <div className={`bg-white rounded-md p-5 shadow-sm grid grid-cols-1 gap-y-8 ${itemContainerError} ${marginBottom}`}>\r\n {props.displayName && (\r\n <div className=\"flex gap-x-1\">\r\n <div className=\"flex items-start gap-x-4\">\r\n {props.format === \"question\" && (\r\n <div className={`${checkIconColor} w-5 h-5 mt-1`}>\r\n <Icon name=\"positive\" />\r\n </div>\r\n )}\r\n <div className=\"grow max-w-lg\">\r\n {props.displayName && (\r\n <p className=\"flex-auto text-lg text-slate-600 font-semibold whitespace-pre-line\">\r\n {linkify(props.displayName)}\r\n </p>\r\n )}\r\n {props.description && (\r\n <p className=\"text-sm text-slate-400 whitespace-pre-line\">{linkify(props.description)}</p>\r\n )}\r\n </div>\r\n </div>\r\n {props.required && <p className=\"text-sm text-rose-600\">*</p>}\r\n </div>\r\n )}\r\n\r\n {!props.children && props.format !== \"text\" && (\r\n <div className={`${contentMaxWidth} ml-1`}>\r\n <Switch {...props} onTextBlur={onTextBlur} />\r\n {showError && (\r\n <div className=\"text-rose-300 flex items-center gap-x-2 mt-4\">\r\n <div className=\"w-4 h-4\">\r\n <Icon name=\"negative\" />\r\n </div>\r\n <span className=\"grow text-sm\">Must be a minimum of {minimum} characters.</span>\r\n </div>\r\n )}\r\n </div>\r\n )}\r\n\r\n {props.children}\r\n </div>\r\n );\r\n};\r\n\r\nconst Switch = (props: FormItemProps) => {\r\n switch (true) {\r\n case props.format === \"embed\":\r\n return <Embed {...props} />;\r\n case props.format === \"image\":\r\n return <Image {...props} />;\r\n case props.questionType === \"radio\":\r\n return <RadioQuestion {...props} />;\r\n case props.questionType === \"checkbox\":\r\n return <CheckboxQuestion {...props} />;\r\n case props.questionType === \"drop down\":\r\n return <DropDownQuestion {...props} />;\r\n case props.questionType === \"file upload\":\r\n return <FileUploadQuestion {...props} />;\r\n case props.questionType === \"text\":\r\n return <TextQuestion {...props} />;\r\n case props.questionType === \"date\":\r\n return <DateQuestion {...props} />;\r\n case props.questionType === \"time\":\r\n return <TimeQuestion {...props} />;\r\n default:\r\n return null;\r\n }\r\n};\r\n\r\nconst RadioQuestion = (props: FormItemProps) => {\r\n const options = props.options || [];\r\n const responses = props.responses || [];\r\n const values: { [key: string]: boolean } = {};\r\n responses.forEach((key) => (values[key] = true));\r\n\r\n const onChange = (e: React.ChangeEvent<HTMLInputElement>) => {\r\n if (props.onResponseChange) {\r\n props.onResponseChange([e.target.value]);\r\n }\r\n };\r\n\r\n return (\r\n <fieldset className=\"grid grid-cols-1 gap-y-8\">\r\n {options.map((option, index) => {\r\n return (\r\n <div key={option}>\r\n <label className=\"flex gap-x-4 items-center\">\r\n <input\r\n className=\"cursor-pointer\"\r\n checked={values[option]}\r\n onChange={onChange}\r\n required={props.required}\r\n type=\"radio\"\r\n value={option}\r\n disabled={props.disabled}\r\n name={displayNameString(props.displayName)}\r\n />\r\n <div>\r\n <span className=\"font-bold\">{String.fromCharCode(65 + index)}.</span> {option}\r\n </div>\r\n </label>\r\n </div>\r\n );\r\n })}\r\n </fieldset>\r\n );\r\n};\r\n\r\nconst CheckboxQuestion = (props: FormItemProps) => {\r\n const options = props.options || [];\r\n const responses = props.responses || [];\r\n const values: { [key: string]: boolean } = {};\r\n let rawResponse: string = \"\";\r\n for (const val of responses) {\r\n if (val.startsWith(\"Other: \")) {\r\n rawResponse = val;\r\n break\r\n }\r\n };\r\n\r\n\r\n\r\n const response = rawResponse && rawResponse.replace(\"Other: \", \"\");\r\n const isOtherResponse = rawResponse && rawResponse.startsWith(\"Other: \");\r\n\r\n responses.forEach((key) => (values[key] = true));\r\n\r\n const onOtherChange = (e: React.ChangeEvent<HTMLInputElement>) =>\r\n setResponseValue(e.target.value ? `Other: ${e.target.value}` : \"\");\r\n const onChange = (e: React.ChangeEvent<HTMLInputElement>) => setResponseValue(e.target.value);\r\n const setResponseValue = (value: string) => {\r\n if (value && props.onResponseChange) {\r\n const newResponses = [];\r\n responses.forEach((v) => {\r\n\r\n const outOfScope = !(v.startsWith(\"Other: \") && value.startsWith(\"Other: \")) && v !== value;\r\n if (outOfScope) {\r\n newResponses.push(v);\r\n }\r\n });\r\n\r\n if (!responses.includes(value)) {\r\n newResponses.push(value);\r\n }\r\n\r\n props.onResponseChange(newResponses);\r\n }\r\n };\r\n let isOneChecked = false;\r\n React.useEffect(() => { }, []);\r\n\r\n return (\r\n <fieldset className=\"grid grid-cols-1 gap-y-8\">\r\n {options.map((option) => {\r\n isOneChecked = Object.keys(values).length ? true : false;\r\n return (\r\n <div key={option}>\r\n <label className=\"flex gap-x-4 items-center\">\r\n <input\r\n id=\"checkbox\"\r\n disabled={props.disabled}\r\n className=\"cursor-pointer shrink-0\"\r\n required={option ? props.required && !isOneChecked && !!isOtherResponse : props.required && !isOneChecked}\r\n checked={values[option] || (!option && values[`Other: ${response}`])}\r\n onChange={option ? onChange : onOtherChange}\r\n type=\"checkbox\"\r\n value={option || response}\r\n name={displayNameString(props.displayName)}\r\n />\r\n {option && <div>{option}</div>}\r\n {!option && (\r\n <>\r\n Other:{\" \"}\r\n <input\r\n className=\"w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 text-sm placeholder-slate-400 border border-slate-300 rounded-sm shadow-sm\r\n focus:outline-none focus:ring-1 focus:ring-sky-500\"\r\n value={isOtherResponse ? response : \"\"}\r\n required={props.required && !isOneChecked}\r\n disabled={props.disabled}\r\n onChange={onOtherChange}\r\n placeholder=\"Input another option\"\r\n\r\n />\r\n </>\r\n )}\r\n </label>\r\n </div>\r\n );\r\n })}\r\n </fieldset>\r\n );\r\n};\r\n\r\nconst DropDownQuestion = (props: FormItemProps) => {\r\n const options = props.options || [];\r\n const responses = props.responses || [];\r\n const values: { [key: string]: boolean } = {};\r\n responses.forEach((key) => (values[key] = true));\r\n\r\n const onChange = (e: React.ChangeEvent<HTMLSelectElement>) => {\r\n if (props.onResponseChange) {\r\n props.onResponseChange([e.target.value]);\r\n }\r\n };\r\n\r\n return (\r\n <select\r\n disabled={props.disabled}\r\n className={`cursor-pointer appearance-none mt-1 block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-sm text-sm shadow-sm placeholder-slate-400\r\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\r\n disabled:bg-slate-50 disabled:text-gray-600 disabled:border-slate-200 disabled:shadow-none`}\r\n required={props.required}\r\n name={displayNameString(props.displayName)}\r\n onChange={onChange}\r\n >\r\n <option className=\"cursor-pointer\" value=\"\">\r\n Select one\r\n </option>\r\n\r\n {options.map((option) => {\r\n return (\r\n <option key={option} selected={values[option]} value={option}>\r\n {option}\r\n </option>\r\n );\r\n })}\r\n </select>\r\n );\r\n};\r\n\r\nconst FileUploadQuestion = (props: FormItemProps) => {\r\n const responses = props.responses || [];\r\n const response = responses.length > 0 ? responses[0] : \"\";\r\n const [imageURL, setImageURL] = React.useState(response);\r\n const onChange = (e: React.ChangeEvent<HTMLInputElement>) => {\r\n if (props.onResponseChange) {\r\n props.onResponseChange([e.target.value]);\r\n }\r\n };\r\n const onImageUpload = (e: React.ChangeEvent<HTMLInputElement>) => {\r\n let reader = new FileReader();\r\n const target = e.target as HTMLInputElement;\r\n const file: File = (target.files as FileList)[0];\r\n reader.onloadend = () => {\r\n if (typeof reader.result === \"string\") {\r\n setImageURL(reader.result);\r\n if (props.onResponseChange) {\r\n props.onResponseChange(undefined, file);\r\n }\r\n }\r\n };\r\n\r\n if (file) {\r\n reader.readAsDataURL(file);\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n setImageURL(response);\r\n }, [props.questionId, response]);\r\n\r\n return (\r\n <div className=\"grid grid-cols-1 gap-4\">\r\n <div className=\"flex items-center space-x-3\">\r\n <label className=\"block\">\r\n <span className=\"sr-only\">Choose image photo</span>\r\n <input\r\n disabled={props.disabled}\r\n onChange={onImageUpload}\r\n name=\"image\"\r\n type=\"file\"\r\n className=\"block w-full text-sm text-slate-500 disabled:text-gray-600\r\n file:mr-4 file:py-2 file:px-4\r\n file:rounded-full file:border-0\r\n file:text-sm file:font-semibold\r\n file:bg-violet-50 file:text-violet-700\r\n hover:file:bg-violet-100\"\r\n />\r\n </label>\r\n </div>\r\n\r\n <div className=\"-ml-2\">\r\n <input\r\n type=\"url\"\r\n disabled={props.disabled}\r\n name={displayNameString(props.displayName)}\r\n required={props.required}\r\n onChange={onChange}\r\n value={imageURL}\r\n placeholder=\"Paste a url or select a file above\"\r\n className=\"w-full mt-1 block px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-sm text-sm shadow-sm placeholder-slate-400\r\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\r\n disabled:bg-slate-50 disabled:text-gray-600 disabled:border-slate-200 disabled:shadow-none\"\r\n />\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nconst TextQuestion = (props: FormItemProps) => {\r\n const minimum = props.minText !== undefined ? props.minText : 100;\r\n const responses = props.responses || [];\r\n const response = responses.length > 0 ? responses[0] : \"\";\r\n\r\n const onChange = (e: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => {\r\n if (props.onResponseChange) {\r\n props.onResponseChange([e.target.value]);\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n {!props.paragraph && (\r\n <input\r\n className=\"mt-1 block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 text-sm placeholder-slate-400 border border-slate-300 rounded-sm shadow-sm\r\n focus:outline-none focus:ring-1 focus:ring-sky-500 focus:border-sky-500\r\n disabled:bg-slate-50 disabled:text-gray-600 disabled:border-slate-200 disabled:shadow-none\"\r\n required={props.required}\r\n minLength={minimum}\r\n onChange={onChange}\r\n onBlur={props.onTextBlur}\r\n name={displayNameString(props.displayName)}\r\n disabled={props.disabled}\r\n type=\"text\"\r\n placeholder=\"Your answer\"\r\n value={response}\r\n />\r\n )}\r\n {props.paragraph && (\r\n <textarea\r\n className=\"resize-none text-slate-500 focus:text-slate-600 h-24 mt-1 block w-full px-3 py-2 bg-white border border-slate-300 rounded-sm text-sm shadow-sm placeholder-slate-400\r\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\r\n disabled:bg-slate-50 disabled:text-gray-600 disabled:border-slate-200 disabled:shadow-none\"\r\n required={props.required}\r\n minLength={minimum}\r\n onChange={onChange}\r\n onBlur={props.onTextBlur}\r\n name={displayNameString(props.displayName)}\r\n disabled={props.disabled}\r\n value={response}\r\n placeholder=\"Your answer\"\r\n />\r\n )}\r\n </>\r\n );\r\n};\r\n\r\nconst DateQuestion = (props: FormItemProps) => {\r\n const responses = props.responses || [];\r\n const response = responses.length > 0 ? responses[0] : \"\";\r\n\r\n const onChange = (e: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => {\r\n if (props.onResponseChange) {\r\n props.onResponseChange([e.target.value]);\r\n }\r\n };\r\n\r\n return (\r\n <input\r\n className=\"mt-1 block w-full px-3 pt-3 pb-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-sm text-sm shadow-sm placeholder-slate-400\r\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\r\n disabled:bg-slate-50 disabled:text-gray-600 disabled:border-slate-200 disabled:shadow-none\"\r\n required={props.required}\r\n onChange={onChange}\r\n name={displayNameString(props.displayName)}\r\n disabled={props.disabled}\r\n type=\"date\"\r\n value={response}\r\n />\r\n );\r\n};\r\n\r\nconst TimeQuestion = (props: FormItemProps) => {\r\n const responses = props.responses || [];\r\n const response = responses.length > 0 ? responses[0] : \"\";\r\n\r\n const onChange = (e: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => {\r\n if (props.onResponseChange) {\r\n props.onResponseChange([e.target.value]);\r\n }\r\n };\r\n\r\n return (\r\n <input\r\n className=\"mt-1 block w-full px-3 pt-3 pb-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-sm text-sm shadow-sm placeholder-slate-400\r\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\r\n disabled:bg-slate-50 disabled:text-gray-600 disabled:border-slate-200 disabled:shadow-none\"\r\n required={props.required}\r\n onChange={onChange}\r\n name={displayNameString(props.displayName)}\r\n disabled={props.disabled}\r\n type=\"time\"\r\n value={response}\r\n />\r\n );\r\n};\r\n\r\nconst Image = (props: FormItemProps) => {\r\n const [scale, setScale] = React.useState(\"\");\r\n const scaleUp = () => {\r\n switch (scale) {\r\n case \"scale-[0.50]\":\r\n setScale(\"scale-[0.75]\");\r\n return;\r\n case \"scale-[0.75]\":\r\n setScale(\"\");\r\n return;\r\n case \"\":\r\n setScale(\"scale-[1.25]\");\r\n return;\r\n case \"scale-[1.25]\":\r\n setScale(\"scale-[1.50]\");\r\n return;\r\n case \"scale-[1.50]\":\r\n setScale(\"scale-[1.75]\");\r\n return;\r\n case \"scale-[1.75]\":\r\n setScale(\"scale-[2.00]\");\r\n return;\r\n }\r\n };\r\n\r\n const scaleDown = () => {\r\n switch (scale) {\r\n case \"scale-[0.75]\":\r\n setScale(\"scale-[0.50]\");\r\n return;\r\n case \"\":\r\n setScale(\"scale-[0.75]\");\r\n return;\r\n case \"scale-[1.25]\":\r\n setScale(\"\");\r\n return;\r\n case \"scale-[1.50]\":\r\n setScale(\"scale-[1.25]\");\r\n return;\r\n case \"scale-[1.75]\":\r\n setScale(\"scale-[1.50]\");\r\n return;\r\n case \"scale-[2.00]\":\r\n setScale(\"scale-[1.75]\");\r\n return;\r\n }\r\n };\r\n\r\n return (\r\n <div className=\"relative max-w-[25rem] md:max-w-[40rem] md:w-[40rem] overflow-hidden\">\r\n <img\r\n referrerPolicy=\"no-referrer\"\r\n className={`h-full max-h-[25rem] w-full object-cover ${scale}`}\r\n alt={displayNameString(props.displayName)}\r\n src={props.url}\r\n />\r\n <div className=\"absolute rounded-sm shadow-md bottom-5 right-5 z-5 bg-gray-100 font-bold\">\r\n <span className=\"p-5 cursor-pointer text-md text-gray-400 hover:text-gray-600\" onClick={scaleUp}>\r\n +\r\n </span>\r\n <span className=\"p-5 cursor-pointer text-xl text-gray-400 hover:text-gray-600\" onClick={scaleDown}>\r\n -\r\n </span>\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nconst Embed = (props: FormItemProps) => {\r\n return (\r\n <div className=\"max-w-[25rem] md:max-w-[40rem] md:w-[40rem]\">\r\n <iframe\r\n className=\"w-full\"\r\n height=\"315\"\r\n src={props.url}\r\n title={displayNameString(props.displayName)}\r\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\r\n allowFullScreen\r\n />\r\n </div>\r\n );\r\n};\r\n\r\nconst displayNameString = (displayName: React.ReactNode) => {\r\n if (!displayName) {\r\n return \"\";\r\n }\r\n\r\n return displayName.toString();\r\n};\r\n","import React from \"react\";\nimport { Button } from \"../../../components/Button\";\nimport { Icon } from \"../../../components/Icon\";\nimport { Modal } from \"../../../components/Modal\";\n\n/**\n * FormSubmitDialogProps\n */\nexport type FormSubmitDialogProps = {\n onEditLesson?: () => void;\n onBackToBadge?: () => void;\n};\n\n/**\n * FormSubmitDialog\n * @param props\n * @constructor\n */\nexport const FormSubmitDialog = (props: FormSubmitDialogProps) => {\n return (\n <Modal visible transparent onClose={props.onEditLesson}>\n <div className=\"w-full md:w-[24rem] px-8 py-5 shadow-sm grid grid-cols-1 gap-4 content-center justify-items-center\">\n <div className=\"text-green-500 w-14 h-14\">\n <Icon name=\"positive\" />\n </div>\n\n <div className=\"text-slate-600 text-center\">\n <div className=\"font-bold text-lg\">\n <span>Great Job!</span>\n </div>\n <p className=\"text-sm max-w-[16rem]\">Your responses have been submitted.</p>\n </div>\n\n <div className=\"my-5 grid grid-cols-2 gap-4\">\n <Button\n wide\n spacing=\"sm\"\n justify=\"center\"\n border=\"rounded\"\n color=\"blue\"\n theme=\"dark\"\n text=\"Edit Lesson\"\n size=\"sm\"\n onClick={props.onEditLesson}\n />\n\n <Button\n wide\n spacing=\"sm\"\n justify=\"center\"\n border=\"rounded\"\n color=\"blue\"\n theme=\"dark\"\n text=\"Back to Badge\"\n size=\"sm\"\n onClick={props.onBackToBadge}\n />\n </div>\n </div>\n </Modal>\n );\n};\n","import React, { useCallback } from \"react\";\r\nimport { Button } from \"../../../components/Button/Button\";\r\nimport { Icon } from \"../../../components/Icon/v0/Icon\";\r\nimport { FormExitDialog } from \"../FormExitDialog/FormExitDialog\";\r\nimport { FormItem, FormItemProps } from \"../FormItem/FormItem\";\r\nimport { FormSubmitDialog } from \"../FormSubmitDialog/FormSubmitDialog\";\r\n\r\nconst AUTOSAVE_TIMEOUT = 30 * 1000;\r\nconst MIN_REFLECTION_LENGTH = 0;\r\n\r\n// A utility for auto-saving drafts\r\nconst autoSave = (\r\n run?: boolean,\r\n func?: (items: FormItemProps[], reflection: string, rating?: number) => Promise<any>,\r\n callback?: () => void\r\n) => {\r\n let timeout: NodeJS.Timeout;\r\n return (items: FormItemProps[], reflection: string, rating?: number) => {\r\n clearTimeout(timeout);\r\n timeout = setTimeout(\r\n async () =>\r\n run &&\r\n func &&\r\n (await func(items, reflection, rating).then((e) => {\r\n if (!e && callback) {\r\n callback();\r\n }\r\n })),\r\n AUTOSAVE_TIMEOUT\r\n );\r\n return timeout;\r\n };\r\n};\r\n\r\n/**\r\n * LearningFormProps\r\n */\r\nexport type LearningFormProps = {\r\n formId?: string;\r\n displayName?: string;\r\n description?: string;\r\n eta?: string;\r\n imageURL?: string;\r\n reflection?: string;\r\n rating?: number;\r\n items?: FormItemProps[];\r\n preview?: boolean;\r\n timeSpent?: number;\r\n elapsedTime?: number;\r\n stopWatchStarted?: boolean;\r\n stopWatch?: React.ReactNode;\r\n\r\n onBackToBadge?: () => void;\r\n onEditLesson?: () => void;\r\n onSubmit?: (reflection: string, rating?: number) => Promise<any>;\r\n onSaveDraft?: (items: FormItemProps[], reflection: string, rating?: number) => Promise<any>;\r\n};\r\n\r\n/**\r\n * LearningForm\r\n * @param props\r\n * @constructor\r\n */\r\nexport const LearningForm = (props: LearningFormProps) => {\r\n const [answersKey, setAnswersKey] = React.useState(null as null | string);\r\n const [reflection, setReflection] = React.useState(props.reflection || \"\");\r\n const [rating, setRating] = React.useState(props.rating);\r\n const [showExitDialogue, setShowExitDialogue] = React.useState(false);\r\n const [showSubmitDialogue, setShowSubmitDialogue] = React.useState(false);\r\n const [isDraft, setIsDraft] = React.useState(false);\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n const autoSaveHandler = useCallback(\r\n autoSave(isDraft, props.onSaveDraft, () => setIsDraft(false)),\r\n [isDraft]\r\n );\r\n const elapsedTime = props?.elapsedTime || 0\r\n const timeSpent = props?.timeSpent || 0\r\n const saveVisibility = isDraft ? \"opacity-100 visible\" : \"opacity-0 invisible\";\r\n const answers: FormItemProps[] = [];\r\n const saveDraft = async () => {\r\n if (!isDraft && elapsedTime <= timeSpent) {\r\n return;\r\n }\r\n\r\n return props.onSaveDraft && props.onSaveDraft(answers, reflection, rating).then((e) => !e && setIsDraft(false));\r\n };\r\n\r\n let answeredAllRequired = true;\r\n props.items?.forEach((item) => {\r\n if (item.format === \"question\") {\r\n answeredAllRequired &&= !item.required || (!!item.responses && item.responses.length > 0);\r\n if (item.responses !== undefined) {\r\n answers.push(item);\r\n }\r\n }\r\n });\r\n\r\n const canReflect = !!reflection || answeredAllRequired;\r\n const canSubmit = answeredAllRequired && reflection.length >= MIN_REFLECTION_LENGTH;\r\n const items = props.items || [];\r\n const currentAnswersKey = answers && answers.length > 0 ? JSON.stringify(answers) : null;\r\n\r\n React.useEffect(() => {\r\n setRating(props.rating);\r\n }, [props.rating]);\r\n\r\n React.useEffect(() => {\r\n setReflection(props.reflection || \"\");\r\n }, [props.reflection]);\r\n\r\n React.useEffect(() => {\r\n autoSaveHandler(answers, reflection, rating);\r\n }, [currentAnswersKey, reflection, rating, isDraft]);\r\n\r\n React.useEffect(() => {\r\n if (props.formId) {\r\n setAnswersKey(currentAnswersKey);\r\n }\r\n }, [props.formId]);\r\n\r\n React.useEffect(() => {\r\n if (answersKey === null) {\r\n return;\r\n }\r\n\r\n if (answersKey !== currentAnswersKey) {\r\n setAnswersKey(currentAnswersKey);\r\n setIsDraft(true);\r\n }\r\n }, [currentAnswersKey]);\r\n\r\n\r\n\r\n const onReflectionChange = (responses?: string[]) => {\r\n if (!responses || responses.length === 0) {\r\n setReflection(\"\");\r\n return;\r\n }\r\n setReflection(responses[0]);\r\n setIsDraft(true);\r\n };\r\n\r\n const onSubmit = (e: React.FormEvent) => {\r\n e.preventDefault();\r\n if (props.onSubmit) {\r\n props.onSubmit(reflection, rating).then((err) => {\r\n if (!err) {\r\n setShowSubmitDialogue(true);\r\n setIsDraft(false);\r\n }\r\n });\r\n }\r\n };\r\n\r\n const bg = props.preview ? \"\" : \"bg-gray-100\";\r\n return (\r\n <div className={`grid grid-cols-1 gap-y-12 ${bg} px-12 pb-24 lg:px-56`}>\r\n <div className=\"w-full max-w-[64rem] m-auto md:grid md:grid-cols-2 bg-white rounded-b overflow-hidden shadow-sm\">\r\n <div className=\"grid grid-cols-1 gap-y-6 px-8 py-8 text-slate-600 max-w-md\">\r\n <div\r\n onClick={() => {\r\n if (props.preview && props.onEditLesson) {\r\n props.onEditLesson();\r\n } else {\r\n setShowExitDialogue(true);\r\n }\r\n }}\r\n className=\"flex h-max gap-x-2 cursor-pointer items-center text-slate-300 hover:text-slate-500\"\r\n >\r\n <div className=\"w-3 h-3 min-w-3\">\r\n <Icon name=\"leftArrow\" />\r\n </div>\r\n <span className=\"text-md\">Back</span>\r\n </div>\r\n {!!props.displayName && <h2 className=\"h-max font-semibold text-2xl\">{props.displayName}</h2>}\r\n {!!props.description && (\r\n <p className=\"h-max max-h-[14rem] overflow-y-auto whitespace-pre-line\">{props.description}</p>\r\n )}\r\n {!!props.eta && <p className=\"text-sm h-max font-semibold\">Estimated Completion Time: {props.eta}</p>}\r\n </div>\r\n <img className=\"grow h-full max-h-[30rem] w-full object-cover\" alt={props.displayName} src={props.imageURL} />\r\n </div>\r\n\r\n <form className=\"w-full max-w-[64rem] m-auto grid grid-cols-1 gap-y-12\" onSubmit={onSubmit}>\r\n {items.map((item: FormItemProps) => {\r\n return <FormItem key={item.itemId} {...item} minText={0} disabled={!!props.preview} />;\r\n })}\r\n\r\n <FormItem\r\n displayName={\r\n <>\r\n <p>Optional: What is one takeaway from this lesson?</p>\r\n </>\r\n }\r\n description=\"\"\r\n format=\"question\"\r\n questionType=\"text\"\r\n disabled={!canReflect || !!props.preview}\r\n onResponseChange={onReflectionChange}\r\n paragraph\r\n minText={MIN_REFLECTION_LENGTH}\r\n responses={reflection ? [reflection] : [\"My Reflection: \"]}\r\n />\r\n\r\n <FormItem>\r\n <Rating disabled={!canReflect || !!props.preview} rating={rating} setRating={setRating} />\r\n </FormItem>\r\n\r\n {!props.preview && (\r\n <div className=\"w-max m-auto\">\r\n <Button\r\n // disabled={!canSubmit}\r\n type=\"submit\"\r\n color=\"blue\"\r\n size=\"md\"\r\n spacing=\"md\"\r\n border=\"rounded\"\r\n theme=\"dark\"\r\n text=\"Submit\"\r\n />\r\n </div>\r\n )}\r\n </form>\r\n {props.stopWatch && (\r\n <div className={`fixed bottom-20 right-5 transition ease-in-out mb-5`}>{props.stopWatch}</div>\r\n )}\r\n {!props.preview && (\r\n <div className={`fixed bottom-5 right-14 transition ease-in-out ${saveVisibility}`}>\r\n <Button\r\n type=\"button\"\r\n color=\"dark-blue\"\r\n size=\"md\"\r\n spacing=\"md\"\r\n border=\"rounded\"\r\n theme=\"dark\"\r\n text=\"Save\"\r\n onClick={saveDraft}\r\n />\r\n </div>\r\n )}\r\n\r\n {showExitDialogue && (\r\n <div className=\"fixed top-0 left-0 px-4 md:px-2 w-screen h-screen py-5 transition ease-in-out duration-400 bg-gray-200/75 z-40\">\r\n <div className=\"flex md:w-max h-screen gap-x-2 justify-items-center content-center m-auto\">\r\n <FormExitDialog\r\n onYes={() => saveDraft().then(() => props.onEditLesson && props.onEditLesson())}\r\n onNo={() => setShowExitDialogue(false)}\r\n />\r\n </div>\r\n </div>\r\n )}\r\n\r\n {showSubmitDialogue && (\r\n <div className=\"fixed top-0 left-0 px-4 md:px-2 w-screen h-screen py-5 transition ease-in-out duration-400 bg-gray-200/75 z-40\">\r\n <div className=\"flex md:w-max h-screen gap-x-2 justify-items-center content-center m-auto\">\r\n <FormSubmitDialog onEditLesson={() => setShowSubmitDialogue(false)} onBackToBadge={props.onBackToBadge} />\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\nconst Rating = (props: { disabled?: boolean; rating?: number; setRating?: (rating: number) => void }) => {\r\n /**\r\n * Max points for reflection.\r\n */\r\n const [confidence, setConfidence] = React.useState(props.rating || -1);\r\n const onMouseEnter = (i: number) => !props.disabled && setConfidence(i);\r\n const onMouseLeave = () => !props.disabled && setConfidence(props.rating || -1);\r\n const onClick = (i: number) => !props.disabled && props.setRating && props.setRating(i);\r\n const maxPoints = 5;\r\n const circlePointer = props.disabled ? \"\" : \"cursor-pointer\";\r\n\r\n const buttons = Array.from({ length: maxPoints }, (_, i) => {\r\n const color = i < confidence ? \"text-sky-200\" : \"text-slate-200\";\r\n return (\r\n <div key={i} onMouseEnter={() => onMouseEnter(i + 1)} onMouseLeave={onMouseLeave}>\r\n <div className={`${circlePointer} h-4 w-4 ${color}`} onClick={() => onClick(i + 1)}>\r\n <Icon name=\"circle\" />\r\n </div>\r\n </div>\r\n );\r\n });\r\n const labels = Array.from({ length: maxPoints }, (_, i) => {\r\n if (i === 0) {\r\n return (\r\n <p key={i} className=\"inline-block text-sm text-monochrome-500\">\r\n Poor\r\n </p>\r\n );\r\n }\r\n\r\n if (i === maxPoints - 1) {\r\n return (\r\n <p key={i} className=\"inline-block text-sm text-monochrome-500\">\r\n Amazing\r\n </p>\r\n );\r\n }\r\n\r\n return <p key={i} className=\"inline-block text-monochrome-500\" />;\r\n });\r\n\r\n React.useEffect(() => {\r\n if (props.rating && props.rating !== confidence) {\r\n setConfidence(props.rating);\r\n }\r\n }, [props.rating]);\r\n\r\n return (\r\n <div className=\"m-auto inline-block py-4\">\r\n <h6 className=\"font-bold pb-2 mb-4 text-md text-slate-600 font-semibold\">\r\n {\"Almost there, rate this activity before submitting.\"}\r\n </h6>\r\n <div className=\"w-max m-auto\">\r\n <div className={`ml-5 w-[17.7rem] grid grid-cols-5 justify-self-center items-center gap-7 mb-2`}>{buttons}</div>\r\n <div\r\n className={`ml-5 w-[16.7rem] text-[0.5rem] text-slate-600 grid grid-cols-5 justify-self-center items-center`}\r\n >\r\n {labels}\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n};\r\n","import React from \"react\";\nimport { Button, ButtonProps } from \"../../Button\";\n\n/**\n * The nav link name.\n */\nexport type NavLinkName =\n | \"home\"\n | \"profile\"\n | \"explore\"\n | \"calendar\"\n | \"login\"\n | \"logout\"\n | \"menu\"\n | \"menu-close\"\n | \"faq\"\n | \"terms\"\n | \"privacy\";\n\n/**\n * The properties for navigation links.\n */\nexport type NavLinkProps = {\n name?: NavLinkName | string;\n menu?: boolean;\n active?: boolean;\n disabled?: boolean;\n onClick?: () => void;\n};\n\n/**\n * A component for navigation links.\n * @param props\n * @constructor\n */\nexport const NavLink = (props: NavLinkProps) => {\n const onClick = () => props.onClick && props.onClick();\n const config = defaultConfig();\n withMenu(config, props.menu);\n withName(config, props.name);\n\n return <Button disabled={props.disabled} active={props.active} onClick={onClick} {...config} />;\n};\n\nconst defaultConfig = () => {\n return {} as ButtonProps;\n};\n\nconst withMenu = (config: ButtonProps, menu?: boolean) => {\n if (menu) {\n config.size = \"full:sm\";\n config.color = \"slate:sky\";\n config.spacing = \"lg\";\n }\n};\n\nconst withName = (config: ButtonProps, name?: NavLinkName | string) => {\n if (config.size === \"full:sm\") {\n config.text = name;\n return;\n }\n\n switch (name) {\n case \"home\":\n config.logo = true;\n config.size = \"lg\";\n break;\n case \"profile\":\n config.icon = name;\n config.size = \"lg\";\n config.color = \"slate:icon\";\n break;\n case \"explore\":\n config.icon = name;\n config.size = \"lg\";\n config.color = \"slate:icon\";\n break;\n case \"calendar\":\n config.icon = name;\n config.size = \"lg\";\n config.color = \"slate:icon\";\n break;\n case \"login\":\n config.size = \"sm\";\n config.spacing = \"sm\";\n config.text = \"Login\";\n config.border = \"rounded\";\n break;\n case \"menu\":\n config.icon = name;\n break;\n case \"menu-close\":\n config.icon = name;\n break;\n case \"faq\":\n config.text = \"Help Center\";\n config.size = \"sm\";\n break;\n case \"terms\":\n config.text = \"Terms\";\n config.size = \"sm\";\n break;\n case \"privacy\":\n config.text = \"Privacy\";\n config.size = \"sm\";\n break;\n case \"switch accounts\":\n config.icon = \"bolt\";\n config.size = \"lg\";\n config.color = \"slate:icon\";\n break;\n default:\n config.size = \"sm\";\n config.spacing = \"sm\";\n config.text = name;\n config.border = \"rounded\";\n break\n }\n};\n","import React from \"react\";\nimport { builder } from \"../../utils/classname/classname\";\nimport { NavLink, NavLinkProps } from \"./NavLink/NavLink\";\n\n/**\n * The properties for the nav bar.\n */\nexport type NavBarProps = {\n children?: (React.ReactElement<NavLinkProps> | undefined)[] | React.ReactElement<NavLinkProps>;\n};\n\n/**\n * A component for navigating the platform.\n */\nexport const NavBar = (props: NavBarProps) => {\n const className = builder(\"flex items-center justify-between flex-wrap sticky top-0 z-30 w-full h-16 border-b\")\n .append(\"bg-white px-4 py text-center\")\n .append(\"md:border-t-none md:border-b md:border-monochrome-50 lg:px-36 md:shadow-sm\")\n .build();\n\n const [secondary, setSecondary] = React.useState(false);\n const secondaryClassName = builder(\"w-full shadow-sm absolute z-30 top-11 left-0 grid grid-cols-1 bg-gray-50\")\n .append(\"md:invisible\")\n .append(\"transition duration-500 ease-in-out\")\n .if(secondary, \"opacity-full visible\")\n .else(\"invisible opacity-0\")\n .build();\n\n const menuIcon = secondary ? \"menu-close\" : \"menu\";\n return (\n <nav className={className}>\n <div className=\"w-full flex items-center justify-between flex-wrap sticky max-w-[62.5rem] m-auto\">\n {React.Children.map(props.children, (Link) => {\n if (Link && Link.props.name === \"home\") {\n return <div className=\"grow items-center flex-shrink-0 md:mr-6\">{Link}</div>;\n }\n\n return null;\n })}\n\n <div className=\"hidden md:flex md:items-center gap-x-8\">\n {React.Children.map(props.children, (Link) => {\n if (Link && Link.props.name !== \"home\") {\n return <div className=\"relative\">{Link}</div>;\n }\n return null;\n })}\n </div>\n\n <div className=\"inline-block md:hidden\">\n <NavLink onClick={() => setSecondary(!secondary)} name={menuIcon} />\n </div>\n\n <div className={secondaryClassName}>\n {React.Children.map(props.children, (Link) => {\n if (Link && Link.props.name !== \"home\") {\n return (\n <div className=\"relative\">\n <NavLink {...Link.props} menu />\n </div>\n );\n }\n return null;\n })}\n </div>\n </div>\n </nav>\n );\n};\n","import React from \"react\";\nimport { Button } from \"../Button\";\nimport { Modal } from \"../Modal\";\n\n/**\n * NotFoundProps\n */\nexport type NotFoundProps = {\n visible?: boolean;\n onHome?: () => void;\n};\n\n/**\n * NotFound\n * @param props\n * @constructor\n */\nexport const NotFound = (props: NotFoundProps) => {\n return (\n <>\n <img\n className=\"object-cover w-screen h-screen -z-10\"\n alt=\"landing\"\n src=\"https://cdn.localcivics.io/hub/landing.jpg\"\n />\n <Modal onClose={props.onHome} visible={props.visible}>\n <div className=\"grid grid-cols-1 p-8 justify-items-center text-slate-500 gap-y-4\">\n <div className=\"grid grid-cols-1 justify-items-center gap-y-2\">\n <p className=\"text-sm font-semibold\">Not found</p>\n </div>\n\n <p className=\"text-sm text-center text-slate-500 max-w-[12rem]\">The page you've landed on does not exist.</p>\n\n <div className=\"mt-2\">\n <Button spacing=\"sm\" border=\"rounded\" color=\"slate\" theme=\"dark\" text=\"Go home\" onClick={props.onHome} />\n </div>\n </div>\n </Modal>\n </>\n );\n};\n","import React from \"react\";\nimport { builder } from \"../../../utils/classname/classname\";\nimport { Button } from \"../../Button/Button\";\n\n/**\n * The properties for the search button.\n */\nexport type SearchButtonProps = {\n disabled?: boolean;\n placeholder?: string;\n onClick?: () => void;\n};\n\n/**\n * A component for starting a search via click.\n * @param props\n * @constructor\n */\nexport const SearchButton = (props: SearchButtonProps) => {\n const className = builder(\"placeholder:text-slate-400 text-slate-400\")\n .append(\"block bg-white w-full text-sm border border-slate-300\")\n .append(\"rounded-md py-3 px-8 shadow-sm\")\n .if(!props.disabled, \"cursor-pointer\")\n .if(!props.disabled, \"focus:outline-none focus:border-sky-100 focus:ring-sky-100 focus:ring-1\")\n .if(!props.disabled, \"hover:bg-sky-50 hover:border-sky-100\")\n .if(!props.disabled, \"hover:text-slate-500 hover:placeholder:text-slate-600\")\n .build();\n\n return (\n <label onClick={() => !props.disabled && props.onClick && props.onClick()} className=\"relative block\">\n <span className=\"absolute inset-y-0 left-0 top-0 flex items-center pl-2\">\n <Button icon=\"search\" />\n </span>\n <input className={className} type=\"text\" name=\"search\" placeholder={props.placeholder} />\n </label>\n );\n};\n","import * as React from \"react\"\nimport { Button } from \"../../Button/Button\";\nimport { IconName } from \"../../Icon/v0/Icon\";\n\nexport type SearchResultProps = {\n title?: string;\n icon?: IconName;\n onClick?: () => void;\n};\n\nexport const SearchResult = (props: SearchResultProps) => {\n return (\n <Button\n spacing=\"lg\"\n border=\"icon:circle\"\n icon={props.icon}\n text={props.title}\n color=\"slate:sky\"\n justify=\"start\"\n size=\"full:sm\"\n onClick={props.onClick}\n />\n );\n};\n","import React, { useCallback } from \"react\";\nimport { Button } from \"../Button/Button\";\nimport { Modal } from \"../Modal/Modal\";\nimport { SearchButton } from \"./SearchButton/SearchButton\";\nimport { SearchResultProps } from \"./SearchResult/SearchResult\";\nimport { debounce } from \"../../utils/search\";\n\nexport type SearchProps = {\n autofocus?: boolean;\n category?: string;\n open?: boolean;\n disabled?: boolean;\n placeholder?: string;\n value?: string;\n onOpen?: () => void;\n onClose?: () => void;\n results?: React.ReactElement<SearchResultProps> | React.ReactElement<SearchResultProps>[] | null;\n onSearch?: (search: string) => void;\n};\n\nexport const Search = (props: SearchProps) => {\n const hasResults = !!props.results && React.Children.count(props.results) > 0;\n const placeholder = props.placeholder || \"Quick search...\";\n const searchRef = React.useRef<HTMLInputElement>(null);\n const handler = useCallback(\n debounce((search) => props.onSearch && props.onSearch(search)),\n []\n );\n React.useEffect(() => {\n if (searchRef.current) {\n searchRef.current.focus();\n }\n }, [!!props.open]);\n\n return (\n <>\n <SearchButton disabled={props.disabled} placeholder={placeholder} onClick={props.onOpen} />\n <Modal onClose={props.onClose} visible={props.open}>\n <div className=\"w-full md:w-[28rem]\">\n <label className=\"relative block w-full top-4 px-12 border-b border-slate-100\">\n <span className=\"absolute inset-y-0 left-0 top-0 flex items-center px-5\">\n <Button active icon=\"search\" />\n </span>\n <input\n ref={searchRef}\n autoFocus={props.autofocus}\n defaultValue={props.value}\n autoComplete=\"off\"\n onChange={(e) => handler(e.target.value)}\n className=\"placeholder:text-slate-400 text-slate-400 block bg-white w-full -mt-4 py-4 pr-7 focus:outline-none text-xs\"\n type=\"text\"\n name=\"search\"\n placeholder={`Search ${props.category || \"\"}`.trim()}\n />\n <span className=\"absolute inset-y-0 right-0 top-0 flex items-center px-5\">\n <Button spacing=\"xs\" border=\"rounded\" size=\"tiny\" text=\"esc\" onClick={props.onClose} />\n </span>\n </label>\n {!!hasResults && (\n <div className=\"grid grid-cols-1 w-full gap-1 mt-4 max-h-[24rem] overflow-auto\">{props.results}</div>\n )}\n\n {!hasResults && <div className=\"h-4\" />}\n </div>\n </Modal>\n </>\n );\n};\n","import React from \"react\";\nimport { Button } from \"../../Button\";\nimport { Icon } from \"../../Icon\";\n\n/**\n * LegalAgreementProps\n */\nexport type LegalAgreementProps = {\n onDecline?: () => void;\n onAccept?: () => void;\n};\n\n/**\n * A component for the onboarding legal agreements\n * @param props\n * @constructor\n */\nexport const LegalAgreement = (props: LegalAgreementProps) => {\n return (\n <div className=\"w-full md:w-[24rem] rounded-md bg-white border border-slate-200 px-8 py-5 shadow-sm grid grid-cols-1 gap-4 justify-items-center\">\n <div className=\"text-slate-600 w-14 h-14\">\n <Icon name=\"shield\" />\n </div>\n\n <div className=\"text-slate-600 text-center w-[14rem] md:w-[16rem]\">\n <p className=\"font-bold text-2xl\">Local Civics Policies</p>\n <p className=\"text-sm\">\n Confirm that you have read and agree to our{\" \"}\n <button\n className=\"text-sky-400 underline hover:text-sky-600 cursor-pointer\"\n onClick={() => window.open(\"https://www.localcivics.io/terms-of-service\", \"_blank\")}\n >\n Terms of Service\n </button>{\" \"}\n and{\" \"}\n <button\n className=\"text-sky-400 underline hover:text-sky-600 cursor-pointer\"\n onClick={() => window.open(\"https://www.localcivics.io/privacy-policy\", \"_blank\")}\n >\n Privacy Policy\n </button>\n .\n </p>\n </div>\n\n <div className=\"my-5 grid grid-cols-1 md:grid-cols-2 gap-y-2 gap-x-8 justify-between\">\n <Button spacing=\"md\" border=\"rounded\" color=\"sky\" text=\"Decline\" size=\"md\" onClick={props.onDecline} />\n <Button\n icon=\"accept\"\n spacing=\"md\"\n border=\"rounded\"\n color=\"sky\"\n theme=\"dark\"\n text=\"Accept\"\n size=\"md\"\n onClick={props.onAccept}\n />\n </div>\n </div>\n );\n};\n","import React from \"react\";\nimport { Button } from \"../../Button\";\nimport { Search, SearchProps } from \"../../Search\";\n\n/**\n * CommunitySearchProps\n */\nexport type CommunitySearchProps = SearchProps & {\n disabled?: boolean;\n name?: string;\n accessCode?: string;\n onSearch?: (search: string) => void;\n onJoin?: (accessCode?: string) => void;\n};\n\n/**\n * A component for searching for communities\n * @param props\n * @constructor\n */\nexport const CommunitySearch = (props: CommunitySearchProps) => {\n const [accessCode, setAccessCode] = React.useState(\"\");\n return (\n <div className=\"w-full md:w-[30rem] bg-white grid grid-cols-1 gap-4 rounded-md border border-slate-200 px-8 py-5 shadow-sm\">\n <div className=\"text-slate-600\">\n <p className=\"font-bold text-2xl\">Which is your community?</p>\n <p className=\"text-sm\">Pick your community.</p>\n </div>\n\n <Search {...props} autofocus={!accessCode} placeholder={props.name} />\n\n {!!props.name && (\n <div className=\"text-slate-600 grid-cols-1 gap-2\">\n <div>\n <span className=\"text-sm\">Enter the access code for</span>\n <span className=\"ml-1 font-semibold text-sm\">{props.name}</span>\n <span className=\"text-sm\">.</span>\n </div>\n\n <div className=\"mt-2 content-center grid grid-cols-3 gap-x-2\">\n <input\n disabled={props.disabled}\n autoFocus={!!accessCode}\n type=\"password\"\n onChange={(e) => setAccessCode(e.target.value)}\n defaultValue={props.accessCode}\n className=\"col-span-2 h-full w-full block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\n invalid:border-pink-500 invalid:text-pink-600\n focus:invalid:border-pink-500 focus:invalid:ring-pink-500\"\n />\n\n <div className=\"col-span-1\">\n <Button\n disabled={!accessCode || props.disabled}\n spacing=\"md\"\n border=\"rounded\"\n color=\"sky\"\n theme=\"dark\"\n text=\"Join\"\n size=\"full:sm\"\n onClick={() => props.onJoin && props.onJoin(accessCode)}\n />\n </div>\n </div>\n </div>\n )}\n </div>\n );\n};\n","import React from \"react\";\nimport { Button } from \"../../Button\";\n\n/**\n * RegistrationProps\n */\nexport type RegistrationProps = {\n givenName?: string;\n familyName?: string;\n grade?: number;\n impactStatement?: string;\n persona?: string;\n onRegister?: (changes: { givenName?: string; familyName?: string; grade?: number; impactStatement?: string }) => void;\n};\n\n/**\n * A component for onboarding registration\n * @param props\n * @constructor\n */\nexport const Registration = (props: RegistrationProps) => {\n const [givenName, setGivenName] = React.useState(props.givenName);\n const [familyName, setFamilyName] = React.useState(props.familyName);\n const [grade, setGrade] = React.useState(props.grade);\n const [impactStatement, setImpactStatement] = React.useState(props.impactStatement);\n\n const onRegister = () =>\n props.onRegister &&\n props.onRegister({\n givenName,\n familyName,\n grade,\n impactStatement: impactStatement || \"None\",\n });\n\n return (\n <form\n onSubmit={(e) => {\n e.preventDefault();\n onRegister();\n }}\n className=\"w-full md:w-[32rem] rounded-md border bg-white border-slate-200 shadow-sm px-8 py-5 grid grid-cols-1 gap-4 -mt-4\"\n >\n <div className=\"text-slate-600 text-start\">\n <p className=\"font-bold text-2xl\">Welcome to Local!</p>\n <p className=\"text-sm\">Tell us a bit more about yourself.</p>\n </div>\n\n <div className=\"grid grid-cols-1 pb-4 gap-6\">\n <div className=\"grid grid-cols-1 gap-6 h-[18rem] md:h-[24rem] px-1 overflow-y-scroll\">\n <div>\n <p className=\"mb-2 w-full font-semibold text-slate-500 text-sm\">First Name</p>\n <input\n required\n type=\"text\"\n placeholder=\"Insert your first name\"\n onChange={(e) => setGivenName(e.target.value)}\n defaultValue={givenName || \"\"}\n className=\"mt-1 block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\"\n />\n </div>\n\n <div className=\"w-full\">\n <p className=\"mb-2 font-semibold text-slate-500 text-sm\">Last Name</p>\n <input\n required\n placeholder=\"Insert your last name\"\n onChange={(e) => setFamilyName(e.target.value)}\n defaultValue={familyName || \"\"}\n className=\"mt-1 block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\"\n />\n </div>\n\n {props.persona === \"educator\" && (\n <div>\n <p className=\"mb-2 font-semibold text-slate-500 text-sm\">Subject</p>\n <select\n onChange={(e) => setGrade(parseInt(e.target.value, 10))}\n defaultValue={grade || \"\"}\n className=\"appearance-none mt-1 block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\"\n >\n <option>Select a subject</option>\n <option value=\"social-studies-teacher\">Social Studies Teacher</option>\n <option value=\"english-teacher\">English Teacher</option>\n <option value=\"math-teacher\">Math Teacher</option>\n <option value=\"science-teacher\">Science Teacher</option>\n <option value=\"special-education-teacher\">Special Education Teacher (Generalist)</option>\n <option value=\"counseling-or-college-and-career\">Counseling/College & Career Readiness</option>\n <option value=\"non-instructional-staff\">Non-Instructional Staff</option>\n <option value=\"school-leadership\">School Leadership</option>\n </select>\n </div>\n )}\n\n <div>\n <p className=\"mb-2 font-semibold text-slate-500 text-sm\">Grade</p>\n <select\n onChange={(e) => setGrade(parseInt(e.target.value, 10))}\n defaultValue={grade}\n className=\"appearance-none mt-1 block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\"\n >\n <option>Select a grade</option>\n <option value=\"6\">6th</option>\n <option value=\"7\">7th</option>\n <option value=\"8\">8th</option>\n <option value=\"9\">9th</option>\n <option value=\"10\">10th</option>\n <option value=\"11\">11th</option>\n <option value=\"12\">12th</option>\n </select>\n </div>\n\n <div>\n <p className=\"mb-2 font-semibold text-slate-500 text-sm\">Impact Statement</p>\n <textarea\n // required\n // minLength={100} no longer required\n placeholder=\"E.g., I would like to encourage my community to become more educated on issues that directly affect us, as well as make sure my community is a place where everyone is welcome.\"\n onChange={(e) => setImpactStatement(e.target.value)}\n defaultValue={impactStatement}\n className=\"resize-none text-slate-500 focus:text-slate-600 h-24 mt-1 block w-full px-3 py-2 bg-white border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\"\n />\n </div>\n </div>\n </div>\n\n <Button\n type=\"submit\"\n color={props.persona === \"educator\" ? \"slate\" : \"sky\"}\n size=\"md\"\n spacing=\"md\"\n border=\"rounded\"\n theme=\"dark\"\n text=\"Submit\"\n />\n </form>\n );\n};\n","import React from \"react\";\nimport { Button } from \"../../Button\";\nimport { Icon } from \"../../Icon\";\n\n/**\n * WelcomeProps\n */\nexport type WelcomeProps = {\n givenName?: string;\n onContinue?: () => void;\n};\n\n/**\n * A component for the onboarding welcome\n * @param props\n * @constructor\n */\nexport const Welcome = (props: WelcomeProps) => {\n return (\n <div className=\"w-full md:w-[24rem] rounded-md bg-white border border-slate-200 px-8 py-5 shadow-sm grid grid-cols-1 gap-4 content-center justify-items-center\">\n <div className=\"text-slate-600 w-14 h-14\">\n <Icon name=\"explore\" />\n </div>\n\n <div className=\"text-slate-600 text-center\">\n <div className=\"font-bold text-2xl\">\n <span>You're all set</span>\n {props.givenName && <span className=\"capitalize\">, {props.givenName}</span>}\n <span>!</span>\n </div>\n <p className=\"text-sm max-w-[16rem]\">Click continue to start exploring Local.</p>\n </div>\n\n <div className=\"my-5 grid grid-cols-1\">\n <Button\n spacing=\"md\"\n border=\"rounded\"\n color=\"sky\"\n theme=\"dark\"\n text=\"Continue\"\n size=\"md\"\n onClick={props.onContinue}\n />\n </div>\n </div>\n );\n};\n","import React from \"react\";\nimport { Modal } from \"../Modal\";\nimport { SearchResult } from \"../Search\";\nimport { LegalAgreement } from \"./LegalAgreement/LegalAgreement\";\nimport { CommunitySearch } from \"./CommunitySearch/CommunitySearch\";\nimport { RoleSelection } from \"./RoleSelection/RoleSelection\";\nimport { Registration } from \"./Registration/Registration\";\nimport { ImpactQuiz } from \"./ImpactQuiz/ImpactQuiz\";\nimport { Welcome } from \"./Welcome/Welcome\";\n\n/**\n * OnboardingProps\n */\nexport type OnboardingProps = {\n isLoading?: boolean;\n hasOrganization?: boolean;\n hasRegistration?: boolean;\n hasInterests?: boolean;\n\n search?: string;\n persona?: string;\n givenName?: string;\n familyName?: string;\n grade?: number;\n impactStatement?: string;\n interests?: string[];\n organizations?: any[];\n\n onDeclineLegalAgreement?: () => void;\n onOrganizationSearch?: (search: string) => void;\n onJoinOrganization?: (organizationId: string, accessCode?: string) => void;\n onConfigureTenant: (changes: any) => void;\n onFinish?: () => void;\n};\n\n/**\n * A component for onboarding\n * @param props\n * @constructor\n */\nexport const Onboarding = (props: OnboardingProps) => {\n return (\n <Modal stage isLoading={props.isLoading} inline plain visible>\n <Delegate {...props} />\n </Modal>\n );\n};\n\n/**\n * Delegate component for onboarding\n * @param props\n * @constructor\n */\nconst Delegate = (props: OnboardingProps) => {\n const [agreed, setAgreed] = React.useState(!!props.hasOrganization || props.search !== null);\n const [interests, setInterests] = React.useState(false);\n const [organization, setOrganization] = React.useState(null as any);\n const [organizationOpen, setOrganizationOpen] = React.useState(!!props.search);\n const [persona, setPersona] = React.useState(\"\")\n\n if (!agreed) {\n return <LegalAgreement onDecline={props.onDeclineLegalAgreement} onAccept={() => setAgreed(true)} />;\n }\n\n if (!props.hasOrganization) {\n return (\n <CommunitySearch\n {...organization}\n open={organizationOpen}\n value={props.search}\n results={\n props.organizations &&\n props.organizations.map((organization) => {\n return (\n <SearchResult\n key={organization.organizationId}\n title={organization.displayName}\n onClick={() => {\n setOrganization(organization);\n setOrganizationOpen(false);\n }}\n />\n );\n })\n }\n onSearch={props.onOrganizationSearch}\n onJoin={(accessCode) => props.onJoinOrganization && props.onJoinOrganization(organization.organizationId, accessCode)}\n onOpen={() => setOrganizationOpen(true)}\n onClose={() => setOrganizationOpen(false)}\n />\n );\n }\n\n if (!props.hasRegistration) {\n if (!persona) {\n // return (\n // <RoleSelection\n // onStudent={() => setPersona(\"student\")} // integration time from our Notion page dictates educator accounts, not role selection\n // onEducator={() => setPersona(\"educator\")}\n // />\n // );\n setPersona(\"student\")\n }\n\n\n return (\n <Registration\n persona={persona}\n givenName={props.givenName}\n familyName={props.familyName}\n grade={props.grade}\n impactStatement={props.impactStatement}\n onRegister={(registration) => props.onConfigureTenant && props.onConfigureTenant(registration)}\n />\n );\n }\n\n if (!interests && !props.hasInterests) {\n // return (\n // <ImpactQuiz\n // persona={persona}\n // interests={props.interests}\n // onFinish={(interests) => {\n // setInterests(true)\n // props.onConfigureTenant && props.onConfigureTenant({ interests })\n // }}\n // />\n // );\n //Impact Quiz skipped for now; give blank interests to not disrupt flow\n setInterests(true)\n props.onConfigureTenant({})\n }\n\n return <Welcome givenName={props.givenName} onContinue={props.onFinish} />;\n};\n","import React from \"react\";\nimport { Icon } from \"../../Icon\";\n\n/**\n * PathwayProps\n */\nexport type PathwayButtonProps = {\n active?: boolean;\n name?: \"policy & government\" | \"arts & culture\" | \"college & career\" | \"volunteer\" | \"recreation\";\n onClick?: () => void;\n};\n\n/**\n * A component for displaying a single pathway\n * @param props\n * @constructor\n */\nexport const PathwayButton = (props: PathwayButtonProps) => {\n const base = \"px-2 py-4 text-left cursor-pointer hover:bg-white active:bg-white\";\n const bg = props.active ? \"bg-sky-100\" : \"bg-gray-50\";\n const className = [base, bg].join(\" \");\n return (\n <button onClick={props.onClick} className={className}>\n <div className=\"inline-block align-middle w-3 h-3 min-w-3 stroke-slate-600 fill-slate-600\">\n <Icon name={props.name || \"pathway\"} />\n </div>\n <span className=\"ml-2 align-middle capitalize font-semibold text-sm text-slate-600\"> {props.name} </span>\n </button>\n );\n};\n","import React, { FunctionComponent } from \"react\";\nimport { PathwayButton } from \"../PathwayButton/PathwayButton\";\n\n/**\n * PathwayFilter props\n */\nexport interface PathwayFilterProps {\n title: string;\n pathways?: string[];\n onChange?: (pathways: string[]) => void;\n}\n\n/**\n * PathwayFilter\n * @param props\n * @constructor\n */\nexport const PathwayFilter: FunctionComponent<PathwayFilterProps> = (props) => {\n const pathways = props.pathways || [];\n const togglePathway = (pathway: string) => {\n const newPathways = [...pathways];\n const i = newPathways.indexOf(pathway);\n if (i >= 0) {\n newPathways.splice(i, 1);\n } else {\n newPathways.push(pathway);\n }\n if (props.onChange) {\n props.onChange(newPathways);\n }\n };\n\n return (\n <div\n className=\"border-gray-200 border shadow-sm rounded-md min-h-48 w-full overflow-hidden\"\n aria-labelledby=\"modal-title\"\n role=\"dialog\"\n aria-modal=\"true\"\n >\n <div className=\"px-2 py-2 bg-gray-200\" />\n <div className=\"grid grid-cols-1\">\n <div className=\"p-2 border-b border-gray-200\">\n <div className=\"flex items-center\">\n <div className=\"grow\">\n <h4 className=\"capitalize align-middle font-semibold text-slate-600 inline-block\">{props.title}</h4>\n </div>\n </div>\n </div>\n\n <div className=\"grid grid-cols-1\">\n <PathwayButton\n onClick={() => togglePathway(\"policy & government\")}\n active={pathways.indexOf(\"policy & government\") >= 0}\n name=\"policy & government\"\n />\n <PathwayButton\n onClick={() => togglePathway(\"arts & culture\")}\n active={pathways.indexOf(\"arts & culture\") >= 0}\n name=\"arts & culture\"\n />\n <PathwayButton\n onClick={() => togglePathway(\"recreation\")}\n active={pathways.indexOf(\"recreation\") >= 0}\n name=\"recreation\"\n />\n <PathwayButton\n onClick={() => togglePathway(\"volunteer\")}\n active={pathways.indexOf(\"volunteer\") >= 0}\n name=\"volunteer\"\n />\n <PathwayButton\n onClick={() => togglePathway(\"college & career\")}\n active={pathways.indexOf(\"college & career\") >= 0}\n name=\"college & career\"\n />\n </div>\n </div>\n </div>\n );\n};\n","/**\n * Compact number\n * @param num\n */\nexport const compact = (num?: number) => {\n return Intl.NumberFormat(\"en-US\", {\n notation: \"compact\",\n maximumFractionDigits: 1,\n }).format(num || 0);\n};\n","import React from \"react\";\nimport { classname } from \"../../../utils/classname/classname\";\nimport { compact } from \"../../../utils/numbers\";\nimport { Button, ButtonSize } from \"../../Button\";\nimport { IconName } from \"../../Icon\";\nimport { Progress } from \"../../Progress\";\n\n/**\n * The activity progress height.\n */\nexport type PathwayProgressHeight = \"sm\" | \"md\";\n\n/**\n * The properties for the pathway progress.\n */\nexport type PathwayProgressProps = {\n xp?: number;\n nextXP?: number;\n level?: number;\n open?: boolean;\n title?: string;\n icon?: IconName;\n height?: PathwayProgressHeight;\n onOpen?: () => void;\n};\n\n/**\n * A component for displaying pathway progress.\n * @param props\n * @constructor\n */\nexport const PathwayProgress = (props: PathwayProgressProps) => {\n const proficiency = props.xp || 0;\n const nextProficiency = props.nextXP || 1;\n const config = defaultActivityProgressConfig();\n const height = props.height || \"sm\";\n withHeight(config, height);\n\n return (\n <div className=\"grid grid-cols-1 gap-2\">\n <div className=\"flex gap-x-2 items-center\">\n {props.icon && (\n <div className={config.icon.container}>\n <Button disabled={!props.open} size={config.icon.size} icon={props.icon} onClick={props.onOpen} />\n </div>\n )}\n <div className=\"grow grid grid-cols-1 gap-2 items-center\">\n <div>\n {props.title && <p className=\"capitalize text-xs text-slate-400\">{props.title}</p>}\n <div className={classname(config.progress)}>\n <Progress start={proficiency} end={nextProficiency} />\n </div>\n </div>\n\n <div className=\"flex\">\n {height !== \"sm\" && (\n <div className=\"grow flex gap-x-1\">\n <p className={classname(config.xp.value)}>{compact(proficiency)}</p>\n <p className={classname(config.xp.suffix)}>XP</p>\n </div>\n )}\n {height !== \"sm\" && !!props.level && (\n <p className={classname(config.magnitude)}>\n {compact(nextProficiency - proficiency)} exp. until level {props.level + 1}\n </p>\n )}\n </div>\n </div>\n </div>\n </div>\n );\n};\n\ntype ActivityProgressConfig = {\n progress: {\n height: string;\n };\n xp: {\n suffix: {\n base: string;\n text: string;\n };\n value: {\n base: string;\n text: string;\n };\n };\n magnitude: {\n base: string;\n text: string;\n };\n icon: {\n container: string;\n size: ButtonSize;\n };\n};\n\nconst defaultActivityProgressConfig = () => {\n const config: ActivityProgressConfig = {\n progress: {\n height: \"\",\n },\n xp: {\n suffix: {\n base: \"text-slate-600 inline-block\",\n text: \"\",\n },\n value: {\n base: \"font-bold text-slate-600 inline-block\",\n text: \"\",\n },\n },\n magnitude: {\n base: \"text-gray-400\",\n text: \"\",\n },\n icon: {\n container: \"\",\n size: \"md\",\n },\n };\n\n return config;\n};\n\nconst withHeight = (config: ActivityProgressConfig, height?: PathwayProgressHeight) => {\n height = height || \"sm\";\n switch (height) {\n case \"sm\":\n config.progress.height = \"h-4\";\n config.icon.size = \"md\";\n config.icon.container = \"mt-1\";\n config.xp.value.text = \"text-sm\";\n config.xp.suffix.text = \"text-sm\";\n config.magnitude.text = \"text-sm\";\n break;\n case \"md\":\n config.progress.height = \"h-8\";\n config.icon.size = \"xl\";\n config.icon.container = \"mt-2\";\n config.xp.value.text = \"text-xl\";\n config.xp.suffix.text = \"text-xl\";\n config.magnitude.text = \"text-sm\";\n break;\n }\n};\n","import React from \"react\";\nimport { Icon } from \"../../Icon\";\nimport { Widget, WidgetBody, WidgetHeader, WidgetHeaderLink, WidgetTitle } from \"../../Widget\";\n/**\n * The properties for the pathway progress widget\n */\nexport interface PathwayWidgetProps {\n isLoading?: boolean;\n edit?: boolean;\n onHelp?: () => void;\n children?: React.ReactNode;\n}\n\n/**\n * A widget to display pathway progress\n * @param props\n * @constructor\n */\nexport const PathwayWidget = (props: PathwayWidgetProps) => {\n const hasContent = props.children && React.Children.count(props.children) > 0;\n return (\n <Widget isLoading={props.isLoading}>\n <WidgetHeader>\n <WidgetTitle icon=\"pathway\">Pathways</WidgetTitle>\n <WidgetHeaderLink onClick={props.onHelp} display={props.edit}>\n <Icon name=\"help\" />\n </WidgetHeaderLink>\n </WidgetHeader>\n <WidgetBody>{hasContent && <div className=\"grid gap-2\">{props.children}</div>}</WidgetBody>\n </Widget>\n );\n};\n","import React from \"react\";\nimport { Icon } from \"../../Icon\";\nimport { Widget, WidgetBody, WidgetHeader, WidgetHeaderLink, WidgetTitle } from \"../../Widget\";\n\n/**\n * The properties for the about widget.\n */\nexport type AboutWidgetProps = {\n isLoading?: boolean;\n edit?: boolean;\n impactStatement?: string;\n placeName?: string;\n communityName?: string;\n onEdit?: () => void;\n};\n\n/**\n * A widget for displaying additional info about the resident.\n * @param props\n * @constructor\n */\nexport const AboutWidget = (props: AboutWidgetProps) => {\n const hasContent = props.impactStatement || props.placeName || props.communityName;\n return (\n <Widget isLoading={props.isLoading}>\n <WidgetHeader>\n <WidgetTitle icon=\"profile\">About Me</WidgetTitle>\n <WidgetHeaderLink onClick={props.onEdit} display={props.edit}>\n <Icon name=\"edit\" />\n </WidgetHeaderLink>\n </WidgetHeader>\n <WidgetBody>\n {hasContent && (\n <div className=\"grid gap-2\">\n <p className=\"line-clamp-10 text-sm text-slate-400\">{props.impactStatement}</p>\n {!!props.placeName && (\n <div className=\"mt-2 flex gap-x-2 items-center\">\n <div className=\"w-4 h-4 text-slate-600 inline-block\">\n <Icon name=\"pin\" />\n </div>\n <h4 className=\"grow text-sm text-slate-500\">{props.placeName}</h4>\n </div>\n )}\n {props.communityName && (\n <div className=\"mt-2 flex gap-x-2 items-center\">\n <div className=\"w-4 h-4 text-slate-600 inline-block\">\n <Icon name=\"college & career\" />\n </div>\n <h4 className=\"grow text-sm text-slate-500\">{props.communityName}</h4>\n </div>\n )}\n </div>\n )}\n </WidgetBody>\n </Widget>\n );\n};\n","import React from \"react\";\nimport { compact } from \"../../../utils/numbers\";\nimport { Widget, WidgetBody, WidgetHeader, WidgetHeaderLink, WidgetTitle } from \"../../Widget\";\nimport { Icon, IconName } from \"../../Icon\";\n\n/**\n * The properties for the achievement widget.\n */\nexport interface AchievementWidgetProps {\n isLoading?: boolean;\n lessonsCompleted?: number;\n badgesEarned?: number;\n civicMilestones?: number;\n serviceHours?: number;\n openDisabled?: boolean;\n openIcon?: IconName;\n\n onOpen?: () => void;\n}\n\n/**\n * A widget for displaying resident a achievement report.\n * @param props\n * @constructor\n */\nexport const AchievementWidget = (props: AchievementWidgetProps) => {\n return (\n <Widget isLoading={props.isLoading}>\n <WidgetHeader>\n <WidgetTitle icon=\"achievements\">My Achievements</WidgetTitle>\n </WidgetHeader>\n <WidgetBody>\n <div className=\"flex justify-between gap-x-2 justify-items-center\">\n <div>\n <p className=\"font-bold text-3xl w-max m-auto text-green-500\">{compact(props.lessonsCompleted || 0)}</p>\n <p className=\"text-xs text-center w-max m-auto text-slate-500\">\n Lessons\n <br />\n Completed\n </p>\n </div>\n\n <div>\n <p className=\"font-bold text-3xl w-max m-auto text-green-500\">{compact((props.badgesEarned || 0) + 1)}</p>\n <p className=\"text-xs text-center w-max m-auto text-slate-500\">\n Badges\n <br />\n Earned\n </p>\n </div>\n\n <div>\n <p className=\"font-bold text-3xl w-max m-auto text-green-500\">{compact(props.civicMilestones || 0)}</p>\n <p className=\"text-xs text-center w-max m-auto text-slate-500\">\n Civic\n <br />\n Milestones\n </p>\n </div>\n\n <div>\n <p className=\"font-bold text-3xl w-max m-auto text-green-500\">{compact(props.serviceHours || 0)}</p>\n <p className=\"text-xs text-center w-max m-auto text-slate-500\">\n Service\n <br />\n Hours\n </p>\n </div>\n </div>\n </WidgetBody>\n </Widget>\n );\n};\n","import React from \"react\";\nimport { Button } from \"../../Button\";\nimport { Modal } from \"../../Modal\";\n\n/**\n * SettingsCardProps\n */\nexport type SettingsCardProps = {\n givenName?: string;\n familyName?: string;\n grade?: number;\n impactStatement?: string;\n avatarURL?: string;\n accessToken?: string;\n isLoading?: boolean;\n visible?: boolean;\n hasChanges?: boolean;\n onClose?: () => void;\n onSave?: (changes?: {\n name?: string;\n givenName?: string;\n familyName?: string;\n grade?: number;\n subject?: string;\n persona?: string;\n impactStatement?: string;\n interests?: string[];\n avatar?: Blob;\n }) => void;\n};\n\n/**\n * SettingsCard\n * @param props\n * @constructor\n */\nexport const SettingsCard = (props: SettingsCardProps) => {\n // https://stackoverflow.com/questions/55075604/react-hooks-useeffect-only-on-update\n const [avatarFile, setAvatarFile] = React.useState(undefined as Blob | undefined);\n const [avatarURL, setAvatarURL] = React.useState(props.avatarURL);\n const [givenName, setGivenName] = React.useState(props.givenName);\n const [familyName, setFamilyName] = React.useState(props.familyName);\n const [grade, setGrade] = React.useState(props.grade);\n const [impactStatement, setImpactStatement] = React.useState(props.impactStatement);\n const [focus, setFocus] = React.useState(\"\");\n const hasChanges =\n props.hasChanges ||\n givenName !== props.givenName ||\n familyName !== props.familyName ||\n grade !== props.grade ||\n impactStatement !== props.impactStatement ||\n avatarURL !== props.avatarURL;\n\n const onSave = () =>\n hasChanges &&\n props.onSave &&\n props.onSave({\n givenName: givenName,\n familyName: familyName,\n grade: grade,\n impactStatement: impactStatement,\n avatar: avatarFile,\n });\n\n const onAvatarChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n let reader = new FileReader();\n const target = e.target as HTMLInputElement;\n const file: File = (target.files as FileList)[0];\n reader.onloadend = () => {\n if (typeof reader.result === \"string\") {\n setAvatarURL(reader.result);\n setAvatarFile(file);\n onSave();\n }\n };\n\n if(file){\n reader.readAsDataURL(file);\n }\n\n setFocus(\"\");\n };\n\n return (\n <Modal isLoading={props.isLoading} visible={props.visible} onClose={props.onClose}>\n <div className=\"grid grid-cols-1 gap-2 md:w-[30rem]\">\n <p className=\"text-sm font-semibold text-slate-500 mb-2 px-6\">Settings</p>\n\n <div className=\"grid grid-cols-1 pb-4 px-6 gap-6\">\n <div className=\"flex items-center space-x-6\">\n <div className=\"shrink-0\">\n <img\n className=\"h-16 w-16 object-cover rounded-full\"\n src={avatarURL || props.avatarURL || \"https://cdn.localcivics.io/hub/avatar.jpg\"}\n alt=\"Current profile photo\"\n />\n </div>\n <label className=\"block\">\n <span className=\"sr-only\">Choose profile photo</span>\n <input\n onChange={(e) => onAvatarChange(e)}\n name=\"avatar\"\n type=\"file\"\n className=\"block w-full text-sm text-slate-500\n file:mr-4 file:py-2 file:px-4\n file:rounded-full file:border-0\n file:text-sm file:font-semibold\n file:bg-violet-50 file:text-violet-700\n hover:file:bg-violet-100\"\n />\n </label>\n </div>\n\n <div className=\"grid grid-cols-1 gap-6 h-[18rem] md:h-[24rem] px-1 overflow-y-scroll\">\n <div>\n <p className=\"mb-2 w-full font-semibold text-slate-500 text-sm\">First Name</p>\n <p className=\"mb-2 text-slate-500 text-xs\">What is your given name?</p>\n <input\n max={3000}\n autoFocus={focus === \"givenName\"}\n onChange={(e) => {\n setFocus(\"givenName\");\n setGivenName(e.target.value);\n }}\n defaultValue={givenName}\n className=\"mt-1 block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\n invalid:border-pink-500 invalid:text-pink-600\n focus:invalid:border-pink-500 focus:invalid:ring-pink-500\"\n />\n </div>\n\n <div className=\"w-full\">\n <p className=\"mb-2 font-semibold text-slate-500 text-sm\">Last Name</p>\n <p className=\"mb-2 text-slate-500 text-xs\">What is your family name?</p>\n <input\n max={3000}\n autoFocus={focus === \"familyName\"}\n onChange={(e) => {\n setFocus(\"familyName\");\n setFamilyName(e.target.value);\n }}\n defaultValue={familyName}\n className=\"mt-1 block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\n invalid:border-pink-500 invalid:text-pink-600\n focus:invalid:border-pink-500 focus:invalid:ring-pink-500\"\n />\n </div>\n\n <div>\n <p className=\"mb-2 font-semibold text-slate-500 text-sm\">Grade</p>\n <p className=\"mb-2 text-slate-500 text-xs\">What grade are you in?</p>\n <select\n onChange={(e) => setGrade(parseInt(e.target.value, 10))}\n defaultValue={grade}\n className=\"appearance-none mt-1 block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\"\n >\n <option>Select a grade</option>\n <option value=\"6\">6th</option>\n <option value=\"7\">7th</option>\n <option value=\"8\">8th</option>\n <option value=\"9\">9th</option>\n <option value=\"10\">10th</option>\n <option value=\"11\">11th</option>\n <option value=\"12\">12th</option>\n </select>\n </div>\n\n <div>\n <p className=\"mb-2 font-semibold text-slate-500 text-sm\">Impact Statement</p>\n <p className=\"mb-2 text-slate-500 text-xs\">How would you like to contribute to your community?</p>\n <textarea\n maxLength={3000}\n autoFocus={focus === \"impactStatement\"}\n onChange={(e) => {\n setFocus(\"impactStatement\");\n setImpactStatement(e.target.value);\n }}\n defaultValue={impactStatement}\n className=\"resize-none text-slate-500 focus:text-slate-600 h-24 mt-1 block w-full px-3 py-2 bg-white border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\n invalid:border-pink-500 invalid:text-pink-600\n focus:invalid:border-pink-500 focus:invalid:ring-pink-500\"\n />\n </div>\n\n <div>\n <p className=\"mb-2 font-semibold text-slate-500 text-sm\">Access Token</p>\n <p className=\"mb-2 text-slate-500 text-xs\">Treat this like your password, keep it safe.</p>\n <input\n disabled\n defaultValue={props.accessToken || \"\"}\n className=\"mt-1 block w-full px-3 py-2 bg-white text-slate-500 focus:text-slate-600 border border-slate-300 rounded-md text-sm shadow-sm placeholder-slate-400\n focus:outline-none focus:border-sky-500 focus:ring-1 focus:ring-sky-500\n disabled:bg-slate-50 disabled:text-slate-500 disabled:border-slate-200 disabled:shadow-none\n invalid:border-pink-500 invalid:text-pink-600\n focus:invalid:border-pink-500 focus:invalid:ring-pink-500\"\n />\n </div>\n </div>\n </div>\n\n {hasChanges && (\n <Button spacing=\"lg\" border=\"rectangle\" color=\"slate\" theme=\"dark\" text=\"Save\" onClick={onSave} />\n )}\n </div>\n </Modal>\n );\n};\n","import React from \"react\";\nimport { PathwayProgress } from \"../../Pathway\";\nimport { Widget, WidgetBody, WidgetHeader, WidgetTitle } from \"../../Widget\";\n\n/**\n * The properties for the impact score widget.\n */\nexport type ImpactWidgetProps = {\n level?: number;\n xp?: number;\n nextXP?: number;\n isLoading?: boolean;\n};\n\n/**\n * A widget for displaying the impact score.\n * @param props\n * @constructor\n */\nexport const ImpactWidget = (props: ImpactWidgetProps) => {\n return (\n <Widget color=\"sky\" borderless headless isLoading={props.isLoading}>\n <WidgetHeader>\n <WidgetTitle icon=\"objective\">Impact Score</WidgetTitle>\n </WidgetHeader>\n <WidgetBody>\n <PathwayProgress height=\"md\" level={props.level} xp={props.xp} nextXP={props.nextXP} />\n </WidgetBody>\n </Widget>\n );\n};\n","import React from \"react\";\nimport { Widget, WidgetBody } from \"../../Widget\";\n\n/**\n * The properties for the resident.\n */\nexport type ResidentWidgetProps = {\n isLoading?: boolean;\n avatarURL?: string;\n tenantName?: string;\n givenName?: string;\n familyName?: string;\n createdAt?: string;\n online?: boolean;\n};\n\n/**\n * A component for displaying a resident.\n * @param props\n * @constructor\n */\nexport const ProfileWidget = (props: ResidentWidgetProps) => {\n const hasContent = props.givenName || props.familyName;\n\n return (\n <Widget isLoading={props.isLoading}>\n <WidgetBody>\n {hasContent && (\n <div className=\"p-2\">\n <div className=\"flex gap-x-4 items-center\">\n <div className=\"relative\">\n <img\n src={props.avatarURL || \"https://cdn.localcivics.io/hub/avatar.jpg\"}\n alt=\"avatar\"\n className=\"border border-gray-200 shadow-sm w-16 h-16 lg:w-32 lg:h-32 rounded-full object-cover\"\n />\n {props.online && (\n <span className=\"absolute h-3.5 w-3.5 lg:w-4 lg:h-4 top-0 right-0 lg:top-2 lg:right-3 rounded-full bg-green-500 border-4 border-white\" />\n )}\n </div>\n <div className=\"grid grid-cols-1 content-center align-middle\">\n <div className=\"grid lg:gap-1\">\n <div className=\"grid grid-cols-1\">\n {props.tenantName && <span className=\"text-slate-300 text-sm\">@{props.tenantName}</span>}\n <h4 className=\"inline-block font-semibold capitalize text-2xl lg:text-4xl text-slate-600\">\n {props.givenName} {props.familyName}\n </h4>\n </div>\n {props.createdAt && (\n <p className=\"text-sm text-slate-300\">Member since {new Date(props.createdAt).getFullYear()}</p>\n )}\n </div>\n </div>\n </div>\n </div>\n )}\n </WidgetBody>\n </Widget>\n );\n};\n","import React from \"react\";\n\n/**\n * FormInputProps\n */\nexport type FormInputProps = {\n headline?: string;\n summary?: string;\n value?: string;\n type?: \"text\" | \"number\" | \"tel\" | \"email\" | \"date\" | \"dropdown\";\n options?: string[];\n placeholder?: string;\n paragraph?: boolean;\n readonly?: boolean;\n required?: boolean;\n min?: string | number;\n max?: string | number;\n\n onChange?: (value: string) => void;\n};\n\n/**\n * FormInput\n * @param props\n * @constructor\n */\nexport const FormInput = (props: FormInputProps) => {\n return (\n <div className=\"grid grid-cols-1 gap-y-2\">\n {props.headline && (\n <div className=\"flex gap-x-1\">\n <div className=\"flex items-start gap-x-4\">\n <div className=\"grow\">\n {props.headline && <p className=\"text-sm text-slate-600 font-semibold\">{props.headline}</p>}\n {props.summary && <p className=\"text-xs text-slate-500\">{props.summary}</p>}\n </div>\n </div>\n {!props.readonly && props.required && <p className=\"text-sm text-rose-600\">*</p>}\n </div>\n )}\n\n <div>\n {(() => {\n switch (props.type) {\n case \"dropdown\":\n return <DropDownInput {...props} />;\n default:\n return <Input {...props} />;\n }\n })()}\n </div>\n </div>\n );\n};\n\nconst DropDownInput = (props: FormInputProps) => {\n const writeClass = props.readonly\n ? \"cursor-default\"\n : \"cursor-pointer px-3 py-2 border border-slate-300 shadow-sm focus:text-slate-600 focus:border-sky-500 focus:ring-1 focus:ring-sky-500\";\n const options = props.options || [];\n\n const onChange = (e: React.ChangeEvent<HTMLSelectElement>) => {\n if (props.onChange) {\n props.onChange(e.target.value);\n }\n };\n\n return (\n <select\n disabled={props.readonly}\n className={`appearance-none focus:outline-none mt-1 block w-full bg-white text-slate-500 ${writeClass} rounded-sm text-sm placeholder-slate-400`}\n required={props.required}\n name={props.headline}\n onChange={onChange}\n >\n <option value=\"\">{props.readonly && !props.value ? \"N/A\" : \"Select one\"}</option>\n\n {options.map((option) => {\n return (\n <option key={option} selected={props.value === option} value={option}>\n {option}\n </option>\n );\n })}\n </select>\n );\n};\n\nconst Input = (props: FormInputProps) => {\n const type = props.readonly ? \"text\" : props.type;\n const value = props.readonly ? props.value || \"N/A\" : props.value;\n const writeClass = props.readonly\n ? \"appearance-none cursor-default\"\n : \"px-3 py-2 border border-slate-300 shadow-sm focus:text-slate-600 focus:border-sky-500 focus:ring-1 focus:ring-sky-500\";\n\n const onChange = (e: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => {\n if (props.onChange) {\n props.onChange(e.target.value);\n }\n };\n\n return (\n <>\n {!props.paragraph && (\n <input\n className={`mt-1 block w-full bg-white text-slate-500 ${writeClass} focus:outline-none rounded-sm text-sm placeholder-slate-400`}\n required={props.required}\n readOnly={props.readonly}\n onChange={onChange}\n name={props.headline}\n type={type}\n placeholder={props.placeholder}\n value={value}\n min={props.min}\n max={props.max}\n />\n )}\n {props.paragraph && (\n <textarea\n className={`resize-none text-slate-500 h-24 mt-1 block w-full bg-white focus:outline-none ${writeClass} rounded-sm text-sm placeholder-slate-400`}\n readOnly={props.readonly}\n required={props.required}\n onChange={onChange}\n name={props.headline}\n value={value}\n placeholder={props.placeholder}\n />\n )}\n </>\n );\n};\n","import React from \"react\";\nimport { Icon } from \"../../../components/Icon\";\nimport { Button } from \"../../../components/Button\";\nimport { Modal } from \"../../../components/Modal\";\n\n/**\n * FormExitDialogProps\n */\nexport type FormExitDialogProps = {\n onYes?: () => void;\n onNo?: () => void;\n};\n\n/**\n * FormExitDialog\n * @param props\n * @constructor\n */\nexport const FormExitDialog = (props: FormExitDialogProps) => {\n return (\n <Modal visible transparent onClose={props.onNo}>\n <div className=\"w-full md:w-[24rem] px-8 py-5 shadow-sm grid grid-cols-1 gap-4 content-center justify-items-center\">\n <div className=\"text-slate-500 w-14 h-14\">\n <Icon name=\"help\" />\n </div>\n\n <div className=\"text-slate-600 text-center\">\n <div className=\"font-bold text-lg\">\n <span>Are you sure you want to leave?</span>\n </div>\n <p className=\"text-sm max-w-[16rem]\">Your progress will not be saved.</p>\n </div>\n\n <div className=\"my-5 grid grid-cols-2 gap-4\">\n <Button\n wide\n spacing=\"md\"\n border=\"rounded\"\n color=\"blue\"\n theme=\"dark\"\n text=\"Yes\"\n size=\"md\"\n onClick={props.onYes}\n />\n\n <Button\n wide\n spacing=\"md\"\n border=\"rounded\"\n color=\"secondary\"\n theme=\"dark\"\n text=\"No\"\n size=\"md\"\n onClick={props.onNo}\n />\n </div>\n </div>\n </Modal>\n );\n};\n","import React from \"react\";\nimport { Button } from \"../../../components/Button\";\nimport { Icon } from \"../../../components/Icon\";\nimport { Modal } from \"../../../components/Modal\";\n\n/**\n * FormSubmitDialogProps\n */\nexport type FormSubmitDialogProps = {\n onGoBack?: () => void;\n onContinue?: () => void;\n};\n\n/**\n * FormSubmitDialog\n * @param props\n * @constructor\n */\nexport const FormSubmitDialog = (props: FormSubmitDialogProps) => {\n return (\n <Modal visible transparent onClose={props.onGoBack}>\n <div className=\"w-full md:w-[24rem] px-8 py-5 shadow-sm grid grid-cols-1 gap-10 content-center justify-items-center\">\n <div className=\"grid grid-cols-1 gap-4 content-center justify-items-center\">\n <div className=\"text-sky-500 w-14 h-14\">\n <Icon name=\"service-tracking\" />\n </div>\n\n <div className=\"text-slate-700 text-center\">\n <div className=\"font-bold text-lg\">\n <span>Your hours are logged!</span>\n </div>\n <p className=\"text-sm max-w-[16rem]\">Click continue to go back home.</p>\n </div>\n </div>\n\n <div className=\"px-16 w-full\">\n <Button\n wide\n spacing=\"md\"\n border=\"rounded\"\n color=\"dark-blue\"\n theme=\"dark\"\n text=\"Continue\"\n size=\"full:md\"\n onClick={props.onContinue}\n />\n </div>\n </div>\n </Modal>\n );\n};\n","import React from \"react\";\nimport {Card } from \"../../../components/Card/Card\";\nimport { Button } from \"../../../components/Button\";\nimport { Icon } from \"../../../components/Icon\";\nimport { Overlay } from \"../../../components/Overlay/Overlay\";\nimport { FormInput } from \"../FormInput/FormInput\";\nimport { FormExitDialog } from \"../FormExitDialog/FormExitDialog\";\nimport { FormSubmitDialog } from \"../FormSubmitDialog/FormSubmitDialog\";\n\n/**\n * FormProps\n */\nexport type FormProps = {\n inReview?: boolean;\n showSubmitDialogue?: boolean;\n showExitDialogue?: boolean;\n children?: React.ReactNode;\n\n onSubmit?: (responses: any) => Promise<any>;\n onClose?: () => void;\n};\n\n/**\n * Form\n * @param props\n * @constructor\n */\nexport const Form = (props: FormProps) => {\n const [showExitDialogue, setShowExitDialogue] = React.useState(!!props.showExitDialogue);\n const [showSubmitDialogue, setShowSubmitDialogue] = React.useState(!!props.showSubmitDialogue);\n const [responses, setResponses] = React.useState({} as any);\n const [inReview, setInReview] = React.useState(!!props.inReview);\n const setResponse = (key: string, value: string) => {\n setResponses({ ...responses, [key]: value });\n };\n const onSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n if (!inReview) {\n setInReview(true);\n } else if (inReview && props.onSubmit) {\n props.onSubmit(responses).then((err) => {\n if (!err) {\n setShowSubmitDialogue(true);\n }\n });\n }\n };\n\n React.useEffect(() => setInReview(!!props.inReview), [props.inReview]);\n React.useEffect(() => setShowExitDialogue(!!props.showExitDialogue), [props.showExitDialogue]);\n React.useEffect(() => setShowSubmitDialogue(!!props.showSubmitDialogue), [props.showSubmitDialogue]);\n\n return (\n <>\n <Overlay>\n <div className=\"flex overflow-auto md:w-max h-screen gap-x-2 justify-items-center content-center m-auto\">\n <Card onClose={() => setShowExitDialogue(true)}>\n <div className=\"h-max w-max overflow-x-hidden md:w-[50rem] px-16 py-4 grid grid-cols-1 gap-y-12\">\n <div className=\"flex gap-x-2 items-center\">\n <div className=\"text-sky-500 w-14 h-14\">\n <Icon name=\"service-tracking\" />\n </div>\n <div className=\"text-slate-600\">\n <p className=\"font-bold text-xl\">Service Log</p>\n <p className=\"text-sm\">\n {inReview ? \"Please review your submission.\" : \"Tell us about your service below.\"}\n </p>\n </div>\n </div>\n <form className=\"w-full m-auto grid grid-cols-1 gap-y-12 pb-8\" onSubmit={onSubmit}>\n {props.children}\n\n {!props.children && (\n <>\n <div className=\"grid grid-cols-1 lg:grid-cols-2 gap-x-6 gap-y-8 items-start max-h-96 overflow-auto\">\n <FormInput\n required\n readonly={inReview}\n headline=\"Organization Name\"\n value={responses[\"organizationName\"]}\n onChange={(value) => setResponse(\"organizationName\", value)}\n />\n\n <FormInput\n readonly={inReview}\n headline=\"Contact Person\"\n value={responses[\"contactPerson\"]}\n onChange={(value) => setResponse(\"contactPerson\", value)}\n />\n\n <FormInput\n readonly={inReview}\n headline=\"Contact Phone Number\"\n type=\"tel\"\n value={responses[\"contactPhoneNumber\"]}\n onChange={(value) => setResponse(\"contactPhoneNumber\", value)}\n />\n\n <FormInput\n readonly={inReview}\n headline=\"Contact Email\"\n type=\"email\"\n value={responses[\"contactEmail\"]}\n onChange={(value) => setResponse(\"contactEmail\", value)}\n />\n\n <div className=\"grid lg:grid-cols-2 gap-y-8 gap-x-2\">\n <FormInput\n required\n readonly={inReview}\n headline=\"Service Date\"\n type=\"date\"\n value={responses[\"date\"]}\n onChange={(value) => setResponse(\"date\", value)}\n />\n\n <FormInput\n required\n readonly={inReview}\n headline=\"Service Hours\"\n min={0}\n max={24}\n type=\"number\"\n value={responses[\"totalHours\"]}\n onChange={(value) => setResponse(\"totalHours\", value)}\n />\n </div>\n\n <FormInput\n required\n readonly={inReview}\n headline=\"Service Type\"\n type=\"dropdown\"\n value={responses[\"type\"]}\n options={[\"Community Service\", \"Capstone\", \"Internship\", \"Project\", \"Other\"]}\n onChange={(value) => setResponse(\"type\", value)}\n />\n\n <div className=\"lg:col-span-2\">\n <FormInput\n required\n readonly={inReview}\n headline=\"Tell us about your experience\"\n paragraph\n value={responses[\"description\"]}\n onChange={(value) => setResponse(\"description\", value)}\n />\n </div>\n </div>\n\n <div className=\"flex gap-x-4 w-max m-auto\">\n {inReview && (\n <Button\n onClick={() => setInReview(false)}\n color=\"dark-blue\"\n size=\"md\"\n spacing=\"md\"\n border=\"rounded\"\n text=\"Edit\"\n />\n )}\n <Button\n type=\"submit\"\n color=\"dark-blue\"\n size=\"md\"\n spacing=\"md\"\n border=\"rounded\"\n theme=\"dark\"\n text={inReview ? \"Submit\" : \"Continue\"}\n />\n </div>\n </>\n )}\n </form>\n </div>\n </Card>\n </div>\n </Overlay>\n\n {showExitDialogue && (\n <div className=\"fixed top-0 left-0 px-4 md:px-2 w-screen h-screen py-5 transition ease-in-out duration-400 bg-gray-200/75 z-40\">\n <div className=\"flex md:w-max h-screen gap-x-2 justify-items-center content-center m-auto\">\n <FormExitDialog onYes={props.onClose} onNo={() => setShowExitDialogue(false)} />\n </div>\n </div>\n )}\n\n {showSubmitDialogue && (\n <div className=\"fixed top-0 left-0 px-4 md:px-2 w-screen h-screen py-5 transition ease-in-out duration-400 bg-gray-200/75 z-40\">\n <div className=\"flex md:w-max h-screen gap-x-2 justify-items-center content-center m-auto\">\n <FormSubmitDialog onGoBack={() => setShowSubmitDialogue(false)} onContinue={props.onClose} />\n </div>\n </div>\n )}\n </>\n );\n};\n","import React from \"react\";\nimport { Form, FormProps } from \"../Form/Form\";\nimport { Button } from \"../../../components/Button/Button\";\n\n/**\n * LogServiceButtonProps\n */\nexport type LogServiceButtonProps = {\n text?: string;\n isOpen?: boolean;\n form?: FormProps;\n\n onSubmit?: (responses: any) => Promise<any>;\n onClick?: () => void;\n};\n\n/**\n * LogServiceButton\n * @param props\n * @constructor\n */\nexport const LogServiceButton = (props: LogServiceButtonProps) => {\n const [isOpen, setIsOpen] = React.useState(!!props.isOpen);\n const text = props.text || \"Log Service\";\n const onOpen = () => {\n if (props.onClick) {\n props.onClick();\n }\n setIsOpen(true);\n };\n const onClose = () => {\n if (props.form && props.form.onClose) {\n props.form.onClose();\n }\n setIsOpen(false);\n };\n\n React.useEffect(() => {\n setIsOpen(!!props.isOpen);\n }, [props.isOpen]);\n\n return (\n <>\n <Button\n wide\n spacing=\"md\"\n border=\"rounded\"\n color=\"dark-blue\"\n theme=\"dark\"\n text={text}\n size=\"full:md\"\n onClick={onOpen}\n />\n\n {isOpen && <Form onSubmit={props.onSubmit} {...props.form} onClose={onClose} />}\n </>\n );\n};\n","import React from \"react\";\r\nimport { Button } from \"../Button/Button\";\r\n\r\n/**\r\n * StopwatchProps\r\n */\r\nexport type CtaListProps = {\r\n readOnly?: boolean;\r\n ctaLabel?: string;\r\n};\r\nexport type StopwatchProps = {\r\n time?: string;\r\n ctaList?: CtaListProps[];\r\n onCTAClick?: (ctaLabel: string) => void;\r\n hide?: boolean\r\n};\r\n\r\n/**\r\n * A component for Stopwatch.\r\n * @param props\r\n * @constructor\r\n */\r\nexport const Stopwatch = (props: StopwatchProps) => {\r\n const [hide, setHide] = React.useState(props.hide)\r\n React.useEffect(() => {\r\n setHide(props.hide)\r\n }, [props.hide])\r\n\r\n const ctaList = props?.ctaList || [];\r\n const getColor = (label: string) => {\r\n if (label.toLowerCase() === \"start\") {\r\n return \"green\";\r\n } else if (label.toLowerCase() === \"stop\") {\r\n return \"rose\";\r\n }\r\n return \"blue\";\r\n };\r\n\r\n const visibility = hide ? \"opacity-0 invisible\" : \"visible\"\r\n return (\r\n <>\r\n <div>\r\n <label className=\"relative inline-flex items-center cursor-pointer\">\r\n <input\r\n type=\"checkbox\"\r\n value=\"\"\r\n className=\"sr-only peer\"\r\n checked={hide}\r\n onChange={() => setHide(!hide)}\r\n />\r\n <div className=\"w-11 h-6 bg-gray-200 rounded-full peer peer-focus:ring-4 peer-focus:ring-blue-300 dark:peer-focus:ring-blue-800 dark:bg-gray-700 peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-0.5 after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-5 after:w-5 after:transition-all dark:border-gray-600 peer-checked:bg-blue-600\"></div>\r\n <span\r\n className=\"ml-3 text-sm font-bold text-gray-700\"\r\n onChange={() => setHide(!hide)}\r\n >\r\n Hide Stopwatch?\r\n </span>\r\n </label>\r\n </div>\r\n <div className={`shadow-2xl shadow-gray-400 h-30 w-48 grid grid-cols-1 justify-items-center text-slate-600 text-md gap-4 p-4 box-border ${visibility}`}>\r\n <div className=\"shadow-xl w-36 text-center text-lg p-2\">{props.time}</div>\r\n <div className=\"grid grid-cols-2 gap-2\">\r\n {ctaList &&\r\n ctaList.length &&\r\n ctaList.map((ctaObj, i) => {\r\n const color = getColor(ctaObj.ctaLabel || \"\");\r\n return (\r\n <Button\r\n key={i}\r\n onClick={() => props.onCTAClick && props.onCTAClick(ctaObj.ctaLabel || \"\")}\r\n theme=\"dark\"\r\n border=\"rounded\"\r\n size=\"sm\"\r\n spacing=\"xs\"\r\n color={color}\r\n text={ctaObj.ctaLabel}\r\n active={false}\r\n disabled={ctaObj.readOnly}\r\n />\r\n );\r\n })}\r\n </div>\r\n </div >\r\n </>\r\n );\r\n};\r\n","import React from \"react\";\nimport { Icon, IconName } from \"../../Icon\";\n\n/**\n * TaskItemProps\n */\nexport type TaskItemProps = {\n headline?: string;\n full?: boolean;\n status?: \"todo\" | \"in-progress\" | \"done\";\n onAction?: () => void;\n};\n\n/**\n * TaskItem\n * @param props\n * @constructor\n */\nexport const TaskItem = (props: TaskItemProps) => {\n const color =\n props.status === \"done\" ? \"text-green-500\" : props.status === \"in-progress\" ? \"text-cyan-100\" : \"text-gray-300\";\n const border = props.full\n ? \"border-b border-gray-100\"\n : props.status === \"done\"\n ? \"border rounded border-gray-200\"\n : \"border rounded border-gray-200\";\n const opacity = props.status === \"done\" ? \"opacity-50\" : \"\";\n const icon: IconName = props.status === \"done\" ? \"accept\" : \"circle\";\n const cursor = props.status === \"done\" ? \"\" : \"cursor-pointer hover:text-cyan-400 hover:bg-slate-50\";\n return (\n <div\n onClick={() => props.onAction && props.onAction()}\n className={`flex px-3 py-2 gap-5 align-middle leading-6 items-center ${color} ${cursor} ${border} ${opacity}`}\n >\n <div className=\"h-3 w-3\">\n <Icon name={icon} />\n </div>\n <p className=\"grow font-semibold text-slate-500 text-sm truncate\">{props.headline}</p>\n </div>\n );\n};\n","import React from \"react\";\nimport { Board, Tab } from \"../../Board\";\n\n/**\n * The properties for the task workflow.\n */\nexport type TaskListProps = {\n isLoading?: boolean;\n active?: \"todo\" | \"in-progress\" | \"done\";\n onTodo?: () => void;\n onInProgress?: () => void;\n onDone?: () => void;\n children?: React.ReactNode;\n};\n\n/**\n * A component for the task workflow.\n * @param props\n * @constructor\n */\nexport const TaskList = (props: TaskListProps) => {\n const active = props.active || \"todo\";\n const tabs = (\n <>\n <Tab disabled secondary icon=\"todo\" title=\"todo\" active={active === \"todo\"} onClick={props.onTodo} />\n <Tab secondary icon=\"review\" title=\"in-progress\" active={active === \"in-progress\"} onClick={props.onInProgress} />\n <Tab secondary icon=\"done\" title=\"done\" active={active === \"done\"} onClick={props.onDone} />\n </>\n );\n\n const hasContent = props.children && React.Children.count(props.children) > 0;\n const workflow = (\n <>\n {!hasContent && (\n <div className=\"grid justify-items-center content-center h-[12rem] lg:h-[18rem]\">\n <p className=\"text-sm text-center align-middle leading-6 font-semibold text-slate-300\">\n No content to display.\n </p>\n </div>\n )}\n {hasContent && <div className=\"grid grid-cols-1 overflow-auto\">{props.children}</div>}\n </>\n );\n return (\n <div className=\"h-[16rem] lg:h-[22rem] w-full\">\n <Board isLoading={props.isLoading} tabs={tabs} workflow={workflow} secondary />\n </div>\n );\n};\n","import * as React from \"react\";\nimport { classname } from \"../../../utils/classname/classname\";\nimport { Progress } from \"../../../components/Progress\";\n\n\nexport type PathwayProgressBarHeight = \"sm\" | \"md\";\n\nexport type PathwayProgressBarChartProps = {\n targets: Record<string, number>;\n points: Record<string, number>;\n height?: PathwayProgressBarHeight;\n};\n\nexport const PathwayProgressBarChart = ({\n targets,\n points,\n height = \"sm\",\n}: PathwayProgressBarChartProps) => {\n const entries = Object.entries(targets);\n const config = defaultChartConfig();\n\n withHeight(config, height);\n\n if (!entries.length) return null;\n\n return (\n <div className=\"grid grid-cols-1 gap-2\">\n {entries.map(([categoryId, max]) => {\n const value = points[categoryId] ?? 0;\n\n return (\n <div key={categoryId} className=\"grid grid-cols-1 gap-1\">\n <div className=\"flex justify-between items-center\">\n <p className=\"capitalize text-xs text-slate-400\">{categoryId}</p>\n <p className={classname(config.magnitude)}>\n {value} / {max}\n </p>\n </div>\n\n <div className={classname(config.progress)}>\n <Progress start={value} end={max || 1} />\n </div>\n </div>\n );\n })}\n </div>\n );\n};\n\ntype ChartConfig = {\n progress: {\n height: string;\n };\n magnitude: {\n base: string;\n text: string;\n };\n};\n\nconst defaultChartConfig = (): ChartConfig => {\n return {\n progress: {\n height: \"\",\n },\n magnitude: {\n base: \"text-gray-400\",\n text: \"\",\n },\n };\n};\n\nconst withHeight = (config: ChartConfig, height: PathwayProgressBarHeight) => {\n switch (height) {\n case \"sm\":\n config.progress.height = \"h-4\";\n config.magnitude.text = \"text-sm\";\n break;\n case \"md\":\n config.progress.height = \"h-8\";\n config.magnitude.text = \"text-sm\";\n break;\n }\n};","import * as React from \"react\";\nimport { Icon, IconName } from \"../../../components/Icon/Icon\";\nimport { Button } from \"../../../components/Button/Button\";\nimport { Card } from \"../../../components/Card/Card\";\nimport { BadgeEmblem } from \"../../badges/BadgeEmblem/BadgeEmblem\";\nimport {PathwayProgressBarChart} from \"../PathwayProgressBarChart/PathwayProgressBarChart\";\n\n/**\n * BadgeItem\n */\nexport type BadgeItem = {\n badgeId: string;\n displayName: string;\n categories: string[];\n completedAt?: string | null;\n startedAt?: string | null;\n weight: number;\n onClick?: () => void;\n};\n\nexport type PathwayCriteria = Record<string,number>;\n\n/**\n * PathwayCardProps\n */\nexport type PathwayCardProps = {\n imageURL?: string;\n title?: string;\n description?: string;\n badges?: BadgeItem[];\n progress?: number;\n target?: number;\n displayTags?: string[];\n criteria?: PathwayCriteria;\n categoryNames?: Record<string, string>;\n points?: Record<string, number>;\n onClose?: () => void;\n onSubmit?: () => void;\n};\n\n/**\n * PathwayCard\n * @param props\n * @constructor\n */\nexport const PathwayCard = (props: PathwayCardProps) => {\n\n const badges = props.badges || [];\n const completedCount = badges.filter(b => b.completedAt).length;\n const target = props.target || badges.length;\n const categoryTargets = props.criteria ?? {};\n const points = props.points ?? {};\n\n \n const categoryIds = React.useMemo(\n () => Object.keys(props.criteria ?? {}),\n [props.criteria]\n );\n\n const [activeFilters, setActiveFilters] = React.useState<Set<string>>(\n () => new Set()\n );\n\n const filteredBadges =\n activeFilters.size === 0\n ? badges\n : badges.filter(b =>\n b.categories?.some(c => activeFilters.has(c))\n );\n\n const filterClassName = \"inline-block px-4 py-2 bg-gray-600 text-white rounded-full cursor-pointer text-sm\";\n\n console.log(\"ACTIVE FILTERS:\", Array.from(activeFilters));\n console.log(\"BADGE SAMPLE:\", badges.slice(0, 5).map(b => b.categories));\n console.log(\"MATCH TEST:\", badges.slice(0, 5).map(b =>\n b.categories?.map(c => activeFilters.has(c))\n ));\n\n const toggleFilter = (id: string) => {\n setActiveFilters(prev => {\n const next = new Set(prev);\n next.has(id) ? next.delete(id) : next.add(id);\n return next;\n });\n };\n\n//TODO: should pass this to a PathwayEmblem instead making a file at \n//design-components/packages/hub-ui/src/features/pathways/PathwayEmblem/PathwayEmblem.tsx\n return (\n <Card onClose={props.onClose}>\n <div className=\"pb-5 text-zinc-600\">\n <div className=\"pb-5 px-5 flex gap-x-2\">\n\n <BadgeEmblem\n iconURL={props.imageURL} //This is correct, the iconrl is populated in the BadgeEmblem for badges. level, imageUARL, and icon are undefined.\n alt={props.title}\n size=\"md\"\n />\n\n <div className=\"max-w-[20rem]\">\n <p className=\"font-semibold\">{props.title}</p>\n <div className=\"text-xs\">\n <span className=\"text-zinc-500 font-semibold\">Tags</span>\n {(props.displayTags ?? []).length > 0 && (\n <div className=\"inline-block ml-1 text-green-500\">\n {(props.displayTags ?? []).map((tag, index) => (\n <span key={index} className=\"font-semibold mr-1\">\n {tag}\n </span>\n ))}\n </div>\n )}\n\n </div>\n {!!props.description && <p className=\"mt-2 text-sm\">{props.description}</p>}\n </div>\n </div>\n <div className=\"p-5 grid grid-cols-1 gap-y-3 md:min-w-[30rem] max-w-[40rem] border-t border-zinc-200\">\n <p className=\"font-semibold\">Pathway Badges & Criteria</p>\n <p className=\"text-xs\">This pathway is comprised of {target} Badges. It includes required and elective programming.</p>\n\n <p className=\"text-xs\">Progress: {completedCount} / {target} badges completed.</p>\n\n <PathwayProgressBarChart\n targets={categoryTargets}\n points={points}\n height=\"sm\"\n />\n\n <div className=\"flex flex-wrap gap-2 mt-3\">\n {categoryIds.map((id) => {\n const isActive = activeFilters.has(id);\n const label = props.categoryNames?.[id] ?? id;\n\n return (\n <div\n key={id}\n onClick={() => toggleFilter(id)}\n className={\n isActive\n ? `${filterClassName} bg-gray-700`\n : \"inline-block px-4 py-2 rounded-full hover:bg-gray-200 cursor-pointer text-sm\"\n }\n >\n {label}\n </div>\n );\n })}\n </div>\n\n <div className=\"mt-2 grid grid-cols-1 gap-y-2 max-h-[18rem] overflow-y-auto\">\n\n {filteredBadges.map((b) => {\n const buttonText = b.completedAt ? \"Completed\" : b.startedAt ? \"Continue\" : \"Start\";\n const buttonTheme = b.completedAt ? \"light\" : \"dark\";\n const iconName = b.completedAt ? \"check & circle\" : \"circle\";\n const iconColor = b.completedAt ? \"text-green-500\" : \"text-zinc-300\";\n\n return (\n <div key={b.badgeId} className=\"flex gap-x-2 items-center\">\n <div className={`shrink-0 h-4 w-4 ${iconColor}`}>\n <Icon name={iconName} />\n </div>\n <div className=\"grow\">\n <div>\n <span className=\"font-semibold\">{b.displayName}</span>\n </div>\n <div className=\"text-xs\">\n {/* <span>{b.TagsOfSomeSort TODO: }</span> */}\n {<span className=\"ml-1 text-green-500 font-semibold whitespace-nowrap\">\n {b.weight} {b.weight === 1 ? \"point\" : \"points\"}\n </span>}\n </div>\n </div>\n { <div className=\"shrink-0 w-full max-w-[7rem]\">\n <Button\n onClick={b.onClick}\n spacing=\"sm\"\n border=\"rounded\"\n size=\"full:sm\"\n color=\"blue\"\n theme={buttonTheme}\n text={buttonText}\n />\n </div> }\n </div>\n );\n })}\n \n </div>\n\n\n </div>\n <div className=\"pt-5 px-5 flex border-t border-zinc-200\">\n <div className=\"w-full max-w-[7rem] ml-auto\">\n <Button\n disabled={true} //TODO: enable Pathway Submission?\n onClick={props.onSubmit}\n spacing=\"sm\"\n border=\"rounded\"\n size=\"full:sm\"\n color=\"blue\"\n theme=\"dark\"\n text=\"Submit\"\n />\n </div>\n </div>\n </div>\n </Card>\n );\n};","import * as React from \"react\";\nimport { PathwayCard, PathwayCardProps } from \"../PathwayCard/PathwayCard\";\n\n/**\n * PathwayProps\n */\nexport type PathwayProps = PathwayCardProps & {\n pathwayId?: string;\n title?: string;\n description?: string;\n imageURL?: string;\n displayTags?: string[];\n\n onClose?: () => void;\n };\n\n/**\n * Pathway\n * @param props\n * @constructor\n */\nexport const Pathway = (props: PathwayProps) => {\n\n return (\n <>\n <PathwayCard {...props} />\n </>\n );\n};\n","import * as React from \"react\";\nimport { BadgeEmblem } from \"../../badges/BadgeEmblem/BadgeEmblem\";\n\n\nexport type PathwayButtonProps = {\n title?: string;\n description?: string;\n imageURL?: string;\n compact?: boolean;\n\n onClick?: () => void;\n};\n\nexport const PathwayButton = (props: PathwayButtonProps) => {\n const cursorClass = \"cursor-pointer\";\n const bgHover = \"hover:bg-sky-50\";\n\n const onClick = () => {\n if (props.onClick) props.onClick();\n };\n\n //list mode\n if (props.compact) {\n return <div\n onClick={onClick}\n className={`text-zinc-600 relative overflow-hidden py-3 px-5 transition ease-in-out duration-600 ${cursorClass} ${bgHover}`}\n >\n <div className=\"flex gap-3\">\n <div className={`w-max my-auto`}>\n <BadgeEmblem\n iconURL={props.imageURL}\n alt={props.title}\n size=\"xxs\"\n />\n </div>\n <div className=\"text-sm my-auto flex gap-x-2\">\n <span className=\"font-semibold text-zinc-600\">{props.title}</span>\n </div>\n </div>\n </div>;\n }\n \n\n //grid mode\nreturn (\n <div className=\"grid grid-cols-1 w-44 overflow-x-hidden gap-y-3 text-zinc-600\">\n <div className=\"flex flex-col border h-max border-zinc-100 rounded-md bg-gray-100\">\n <div\n onClick={onClick}\n className={`relative overflow-hidden p-5 transition ease-in-out duration-600 ${cursorClass} ${bgHover}`}\n >\n\n <div className={`w-max my-auto`}>\n <BadgeEmblem\n iconURL={props.imageURL}\n alt={props.title}\n size=\"md\"\n />\n </div>\n </div>\n\n </div>\n\n {!!props.title && (\n <div className=\"text-sm m-auto flex gap-x-2\">\n <span className=\"font-semibold text-zinc-600\">{props.title}</span>\n </div>\n )}\n </div>\n);\n};","import * as React from \"react\";\nimport { Widget, WidgetBody, WidgetHeader } from \"../../../components/Widget\";\nimport { Pathway, PathwayProps } from \"../Pathway/Pathway\";\nimport { PathwayButton, PathwayButtonProps } from \"../PathwayButton/PathwayButton\";\nimport { Icon } from \"../../../components/Icon/Icon\";\n\nconst DEFAULT_FILTERS = [\n {label: \"In Progress\"},\n {label: \"Completed\"},\n {label: \"Available\"},\n {label: \"Locked\"}\n]\n\nexport type PathwayFilterOption = {\n label: string;\n isActive?: boolean;\n};\n\n/**\n * PathwaySectionProps\n */\nexport type PathwaySectionProps = {\n pathways: PathwayProps[];\n isLoading?: boolean;\n readonly?: boolean;\n list?: boolean\n onToggleLayout?: (next: boolean) => void;\n};\n\n/**\n * PathwaySection\n * @param props\n * @constructor\n */\nexport const PathwaySection = (props: PathwaySectionProps) => {\n const progress: PathwayProps[] = [];\n const locked: PathwayProps[] = [];\n const available: PathwayProps[] = [];\n const collected: PathwayProps[] = [];\n\n props.pathways.map((p) => {\n if (true) {\n // if (b.finishedAt) { //TODO FIXME implement pathway completed logic\n // collected.push(b);\n // } else if (b.isLocked) {\n // locked.push(b);\n // } else if (b.startedAt) {\n // progress.push(b);\n // } else {\n // available.push(b);\n // }\n progress.push(p)\n }\n });\n\n const [list, setList] = React.useState(props.list)\n const preview = props.readonly ? collected.slice(0, 10) : props.pathways.slice(0, 3);\n const layoutClassName = getLayout(list)\n const showSectionHeaders = true\n React.useEffect(() => {\n setList(props.list)\n }, [props.list])\n\n React.useEffect(() => {\n if(list !== undefined && props.list !== list && props.onToggleLayout){\n props.onToggleLayout(list)\n }\n }, [list])\n\n return (\n <div>\n <Widget isLoading={props.isLoading}>\n <WidgetHeader divide>\n <div className=\"py-2 flex w-full gap-x-2 text-zinc-600\">\n <div className=\"shrink-0 h-10 w-10\">\n <Icon name=\"award ribbon\" />\n </div>\n <p className=\"shrink-0 my-auto font-semibold\">Pathways and Seals</p>\n\n <div className=\"shrink-0 mt-auto ml-auto text-sm\">\n <span className=\"font-semibold\">\n {collected.length}\n {props.readonly ? \"\" : \"/\" + props.pathways.length} Pathways\n </span>\n <span className=\"ml-1\">completed</span>\n </div>\n </div>\n </WidgetHeader>\n <WidgetBody>\n <div className=\"pb-5\">\n <div className=\"grid grid-cols-1 gap-y-5\">\n <div className=\"flex flex-wrap gap-4 items-center justify-between text-sm\">\n <div className=\"flex justify-center col-span-3 space-x-4 text-sm\">\n </div>\n <div>\n <label className=\"relative inline-flex items-center cursor-pointer\">\n <input\n type=\"checkbox\"\n value=\"\"\n className=\"sr-only peer\"\n checked={!list}\n onChange={() => setList(!list)}\n />\n <div className=\"w-11 h-6 bg-gray-200 rounded-full peer peer-focus:ring-4 peer-focus:ring-blue-300 dark:peer-focus:ring-blue-800 dark:bg-gray-700 peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-0.5 after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-5 after:w-5 after:transition-all dark:border-gray-600 peer-checked:bg-blue-600\"></div>\n <span\n className=\"ml-3 text-sm font-bold text-gray-700\"\n onChange={() => setList(!list)}\n >\n Grid View?\n </span>\n </label>\n </div>\n </div>\n <div>\n {!!props.readonly && (\n <div className={layoutClassName}>\n {preview.map((p, i) => {\n return <PathwayButton key={i} {...p} compact={list} />;\n })}\n </div>\n )}\n {!props.readonly && (\n <div className=\"text-zinc-600 grid grid-cols-1 gap-y-4\">\n { progress.length > 0 && (\n <div>\n {showSectionHeaders && <p className=\"mb-3 text-md underline font-bold\">In Progress</p>}\n <div className={layoutClassName}>\n {progress.map((p, i) => {\n return <PathwayButton key={i} {...p} compact={list}/>;\n })}\n </div>\n </div>\n )}\n\n { collected.length > 0 && (\n <div>\n {showSectionHeaders && <p className=\"mb-3 text-md underline font-bold\">Completed</p> }\n <div className={layoutClassName}>\n {collected.map((p, i) => {\n return <PathwayButton key={i} {...p} compact={list}/>;\n })}\n </div>\n </div>\n )}\n\n { available.length > 0 && (\n <div>\n {showSectionHeaders && <p className=\"mb-3 text-md underline font-bold\">Available</p> }\n <div className={layoutClassName}>\n {available.map((p, i) => {\n return <PathwayButton key={i} {...p} compact={list}/>;\n })}\n </div>\n </div>\n )}\n\n { locked.length > 0 && (\n <div>\n {showSectionHeaders && <p className=\"mb-3 text-md underline font-bold\">Locked</p> }\n <div className={layoutClassName}>\n {locked.map((p, i) => {\n return <PathwayButton key={i} {...p} compact={list}/>;\n })}\n </div>\n </div>\n )}\n </div>\n )}\n </div>\n </div>\n </div>\n </WidgetBody>\n </Widget>\n </div>\n );\n};\n\nconst getLayout = (list?: boolean) => {\n if(list){\n return \"grid grid-cols-1 overflow-y-auto max-h-96\"\n }\n\n return \"flex flex-wrap gap-3\"\n}","import React from \"react\";\nimport { Loader, NavBar, NavBarProps, NavLink } from \"../../components\";\n\n/**\n * AuthLayoutProps\n */\nexport type AuthLayoutProps = {\n isLoading?: boolean;\n pathname?: string;\n page?: \"profile\" | \"explore\" | \"calendar\";\n disabled?: boolean;\n header?: React.ReactNode;\n subheader?: React.ReactNode;\n sidebar?: React.ReactNode;\n main?: React.ReactNode;\n outlet?: React.ReactNode;\n children?: React.ReactNode;\n\n onHome?: () => void;\n onProfile?: () => void;\n onExplore?: () => void;\n onCalendar?: () => void;\n onLogout?: () => void;\n onFAQ?: () => void;\n onPrivacy?: () => void;\n onTerms?: () => void;\n onSwitchAccount?: () => void;\n};\n\n/**\n * AuthLayout\n * @constructor\n */\nexport const AuthLayout = (props: AuthLayoutProps & NavBarProps) => {\n return (\n <main className=\"relative h-screen w-full bg-white font-proxima\">\n <Loader isLoading={props.isLoading}>\n <NavBar>\n <NavLink disabled={!props.onHome || props.disabled} name=\"home\" onClick={props.onHome} />\n {props.onFAQ && <NavLink name=\"faq\" onClick={props.onFAQ} />}\n {props.onPrivacy && <NavLink name=\"privacy\" onClick={props.onPrivacy} />}\n {props.onTerms && <NavLink name=\"terms\" onClick={props.onTerms} />}\n {props.onProfile && (\n <NavLink\n disabled={props.disabled}\n name=\"profile\"\n onClick={props.onProfile}\n active={props.page === \"profile\"}\n />\n )}\n {props.onExplore && (\n <NavLink\n disabled={props.disabled}\n name=\"explore\"\n onClick={props.onExplore}\n active={props.page === \"explore\"}\n />\n )}\n {props.onCalendar && (\n <NavLink\n disabled={props.disabled}\n name=\"calendar\"\n onClick={props.onCalendar}\n active={props.page === \"calendar\"}\n />\n )}\n {props.onSwitchAccount && <NavLink name=\"switch accounts\" onClick={props.onSwitchAccount}/>}\n {props.onLogout && <NavLink name=\"Logout\" onClick={props.onLogout} />}\n </NavBar>\n\n {props.children && (\n <section className=\"absolute top-0 left-0 h-full overflow-auto pt-16 w-full\">{props.children}</section>\n )}\n\n {!props.children && (\n <section className=\"w-full px-4 py-5 lg:px-36 flex flex-col gap-4\">\n {props.header && (\n <div className=\"w-full max-w-[64rem] m-auto min-h-16 lg:min-h-24 lg:flex\">{props.header}</div>\n )}\n\n <div className=\"grow w-full min-h-96\">\n {/* Body */}\n <div className=\"w-full max-w-[64rem] m-auto grid grid-cols-1 gap-y-4 lg:flex lg:gap-x-2\">\n {/* Left Panel */}\n {props.sidebar && (\n <div className=\"grid grid-cols-1 max-w-full md:flex md:flex-col gap-2 lg:w-[16rem] shrink-0\">\n <div className=\"flex flex-col gap-4 lg:gap-x-2 lg:gap-y-3\">{props.sidebar}</div>\n <p className=\"hidden place-self-center lg:inline-block text-xs text-slate-300\">\n Local Civics © {new Date().getFullYear()}\n </p>\n </div>\n )}\n\n {/* Right Panel */}\n {(props.subheader || props.main) && (\n <div className=\"grow grid grid-cols-1 max-w-full overflow-x-hidden md:flex md:flex-col gap-4 lg:gap-2\">\n {props.subheader && (\n <div className=\"relative grid grid-cols-1 md:flex w-full gap-4 lg:gap-2\">\n {props.subheader}\n </div>\n )}\n {props.main && <div className=\"relative grid grid-cols-1 w-full gap-4 lg:gap-2\">{props.main}</div>}\n </div>\n )}\n </div>\n </div>\n </section>\n )}\n </Loader>\n {props.outlet}\n </main>\n );\n};\n","import React from \"react\";\nimport { NavBar, NavLink } from \"../../components\";\n\n/**\n * HomeLayoutProps\n */\nexport type HomeLayoutProps = {\n isLoading?: boolean;\n nickname?: string;\n pathname?: string;\n children?: React.ReactNode;\n\n onProfile?: () => void;\n onHome?: () => void;\n onLogin?: () => void;\n onFAQ?: () => void;\n onPrivacy?: () => void;\n onTerms?: () => void;\n};\n\n/**\n * HomeLayout\n * @constructor\n */\nexport const HomeLayout = (props: HomeLayoutProps) => {\n const onProfile = () => props.onProfile && props.onProfile();\n\n React.useEffect(() => {\n if (props.isLoading) {\n return;\n }\n\n if (props.nickname) {\n if (props.pathname === `/`) {\n onProfile();\n return;\n }\n }\n }, [props.isLoading, props.pathname, props.nickname]);\n\n return (\n <main className=\"relative h-screen w-full overflow-hidden bg-white font-proxima\">\n <NavBar>\n <NavLink name=\"home\" onClick={props.onHome} active />\n <NavLink name=\"login\" onClick={props.onLogin} />\n <NavLink name=\"faq\" onClick={props.onFAQ} />\n <NavLink name=\"privacy\" onClick={props.onPrivacy} />\n <NavLink name=\"terms\" onClick={props.onTerms} />\n </NavBar>\n\n <section className=\"absolute top-0 left-0 h-full overflow-hidden pt-16 w-full\">{props.children}</section>\n </main>\n );\n};\n"],"names":["Icon","__spreadValues","defaultConfig","withActive","withDisabled","React","__spreadProps","active","tag","Search","useCallback","Rating","_path","_excluded","_extends","_objectWithoutProperties","_objectWithoutPropertiesLoose","_circle","_path2","_path3","_path4","FourteenPointStar","AwardRibbon","UpDownArrow","Circle","CheckCircle","CheckCircleDark","Lock","Progress","PartyPopper","PlusCircle","XCircle","XSquare","PenPaper","CaretLeft","FormalBackpack","FormalBallotBox","FormalBarGraph","FormalBolt","FormalBriefcase","FormalBullseye","FormalBurger","FormalCameraLens","FormalDesignBulb","FormalDoublePanBalance","FormalEasel","FormalEye","FormalGavel","FormalClass","FormalHandshake","FormalHeart","FormalMagnifyingGlass","FormalMedicine","FormalMicrophone","FormalMolecule","FormalMoneybag","FormalMortarboard","FormalParthenon","FormalPencil","FormalPieChart","FormalPin","FormalRocket","FormalScholar","FormalStopwatch","ordNumber","i","id","getLayout","formatDate","nextDate","weeks","FormExitDialog","FormSubmitDialog","organization","PathwayButton","withHeight","_a","_b"],"mappings":"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"}
|