@bigbinary/neeto-molecules 3.7.33 → 3.8.1

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GoogleFontPicker.js","sources":["../../node_modules/@samuelmeuli/font-manager/dist/index.es.js","../../src/components/GoogleFontPicker/utils.js","../../src/components/GoogleFontPicker/constants.js","../../src/components/GoogleFontPicker/index.jsx"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n\r\nvar __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\r\n\r\nfunction __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nfunction __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nfunction __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\n\nfunction 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\nvar css = \"@charset \\\"UTF-8\\\";\\ndiv[id^=font-picker] {\\n position: relative;\\n display: inline-block;\\n width: 200px;\\n box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);\\n}\\ndiv[id^=font-picker] * {\\n box-sizing: border-box;\\n}\\ndiv[id^=font-picker] p {\\n margin: 0;\\n padding: 0;\\n}\\ndiv[id^=font-picker] button {\\n color: inherit;\\n font-size: inherit;\\n background: none;\\n border: 0;\\n outline: none;\\n cursor: pointer;\\n}\\ndiv[id^=font-picker] .dropdown-button {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n width: 100%;\\n height: 35px;\\n padding: 0 10px;\\n background: #cbcbcb;\\n}\\ndiv[id^=font-picker] .dropdown-button:hover, div[id^=font-picker] .dropdown-button:focus {\\n background: #bebebe;\\n}\\ndiv[id^=font-picker] .dropdown-button .dropdown-font-name {\\n overflow: hidden;\\n white-space: nowrap;\\n}\\ndiv[id^=font-picker] .dropdown-icon {\\n margin-left: 10px;\\n}\\n@-webkit-keyframes spinner {\\n to {\\n transform: rotate(360deg);\\n }\\n}\\n@keyframes spinner {\\n to {\\n transform: rotate(360deg);\\n }\\n}\\ndiv[id^=font-picker] .dropdown-icon.loading::before {\\n display: block;\\n width: 10px;\\n height: 10px;\\n border: 2px solid #b2b2b2;\\n border-top-color: #000000;\\n border-radius: 50%;\\n -webkit-animation: spinner 0.6s linear infinite;\\n animation: spinner 0.6s linear infinite;\\n content: \\\"\\\";\\n}\\ndiv[id^=font-picker] .dropdown-icon.finished::before {\\n display: block;\\n width: 0;\\n height: 0;\\n margin: 0 2px;\\n border-top: 6px solid #000000;\\n border-right: 5px solid transparent;\\n border-left: 5px solid transparent;\\n transition: transform 0.3s;\\n content: \\\"\\\";\\n}\\ndiv[id^=font-picker] .dropdown-icon.error::before {\\n content: \\\"⚠\\\";\\n}\\ndiv[id^=font-picker].expanded .dropdown-icon.finished::before {\\n transform: rotate(-180deg);\\n}\\ndiv[id^=font-picker].expanded ul {\\n max-height: 200px;\\n}\\ndiv[id^=font-picker] ul {\\n position: absolute;\\n z-index: 1;\\n width: 100%;\\n max-height: 0;\\n margin: 0;\\n padding: 0;\\n overflow-x: hidden;\\n overflow-y: auto;\\n background: #eaeaea;\\n box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);\\n transition: 0.3s;\\n -webkit-overflow-scrolling: touch;\\n}\\ndiv[id^=font-picker] ul li {\\n height: 35px;\\n list-style: none;\\n}\\ndiv[id^=font-picker] ul li button {\\n display: flex;\\n align-items: center;\\n width: 100%;\\n height: 100%;\\n padding: 0 10px;\\n white-space: nowrap;\\n}\\ndiv[id^=font-picker] ul li button:hover, div[id^=font-picker] ul li button:focus {\\n background: #dddddd;\\n}\\ndiv[id^=font-picker] ul li button.active-font {\\n background: #d1d1d1;\\n}\";\nstyleInject(css);\n\nfunction getFontId(fontFamily) {\n return fontFamily.replace(/\\s+/g, \"-\").toLowerCase();\n}\nfunction validatePickerId(pickerId) {\n if (pickerId.match(/[^0-9a-z]/i)) {\n throw Error(\"The `pickerId` parameter may only contain letters and digits\");\n }\n}\n\nfunction get(url) {\n return new Promise(function (resolve, reject) {\n var request = new XMLHttpRequest();\n request.overrideMimeType(\"application/json\");\n request.open(\"GET\", url, true);\n request.onreadystatechange = function () {\n if (request.readyState === 4) {\n if (request.status !== 200) {\n reject(new Error(\"Response has status code \" + request.status));\n }\n else {\n resolve(request.responseText);\n }\n }\n };\n request.send();\n });\n}\n\nvar LIST_BASE_URL = \"https://www.googleapis.com/webfonts/v1/webfonts\";\nfunction getFontList(apiKey) {\n return __awaiter(this, void 0, void 0, function () {\n var url, response, json, fontsOriginal;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = new URL(LIST_BASE_URL);\n url.searchParams.append(\"sort\", \"popularity\");\n url.searchParams.append(\"key\", apiKey);\n return [4, get(url.href)];\n case 1:\n response = _a.sent();\n json = JSON.parse(response);\n fontsOriginal = json.items;\n return [2, fontsOriginal.map(function (fontOriginal) {\n var family = fontOriginal.family, subsets = fontOriginal.subsets, others = __rest(fontOriginal, [\"family\", \"subsets\"]);\n return __assign(__assign({}, others), { family: family, id: getFontId(family), scripts: subsets });\n })];\n }\n });\n });\n}\n\nvar previewFontsStylesheet = document.createElement(\"style\");\ndocument.head.appendChild(previewFontsStylesheet);\nfunction applyFontPreview(previewFont, selectorSuffix) {\n var fontId = getFontId(previewFont.family);\n var style = \"\\n\\t\\t\\t#font-button-\" + fontId + selectorSuffix + \" {\\n\\t\\t\\t\\tfont-family: \\\"\" + previewFont.family + \"\\\";\\n\\t\\t\\t}\\n\\t\\t\";\n previewFontsStylesheet.appendChild(document.createTextNode(style));\n}\nfunction getActiveFontStylesheet(selectorSuffix) {\n var stylesheetId = \"active-font-\" + selectorSuffix;\n var activeFontStylesheet = document.getElementById(stylesheetId);\n if (!activeFontStylesheet) {\n activeFontStylesheet = document.createElement(\"style\");\n activeFontStylesheet.id = stylesheetId;\n document.head.appendChild(activeFontStylesheet);\n }\n return activeFontStylesheet;\n}\nfunction applyActiveFont(activeFont, previousFontFamily, selectorSuffix) {\n var style = \"\\n\\t\\t.apply-font\" + selectorSuffix + \" {\\n\\t\\t\\tfont-family: \\\"\" + activeFont.family + \"\\\"\" + (previousFontFamily ? \", \\\"\" + previousFontFamily + \"\\\"\" : \"\") + \";\\n\\t\\t}\\n\\t\";\n var activeFontStylesheet = getActiveFontStylesheet(selectorSuffix);\n activeFontStylesheet.innerHTML = style;\n}\n\nvar PREVIEW_ATTRIBUTE_NAME = \"data-is-preview\";\nfunction getStylesheetId(fontId) {\n return \"font-\" + fontId;\n}\nfunction stylesheetExists(fontId, isPreview) {\n var stylesheetNode = document.getElementById(getStylesheetId(fontId));\n if (isPreview === null || isPreview === undefined) {\n return stylesheetNode !== null;\n }\n return (stylesheetNode !== null &&\n stylesheetNode.getAttribute(PREVIEW_ATTRIBUTE_NAME) === isPreview.toString());\n}\nfunction createStylesheet(fontId, isPreview) {\n var stylesheetNode = document.createElement(\"style\");\n stylesheetNode.id = getStylesheetId(fontId);\n stylesheetNode.setAttribute(PREVIEW_ATTRIBUTE_NAME, isPreview.toString());\n document.head.appendChild(stylesheetNode);\n}\nfunction fillStylesheet(fontId, styles) {\n var stylesheetId = getStylesheetId(fontId);\n var stylesheetNode = document.getElementById(stylesheetId);\n if (stylesheetNode) {\n stylesheetNode.textContent = styles;\n }\n else {\n console.error(\"Could not fill stylesheet: Stylesheet with ID \\\"\" + stylesheetId + \"\\\" not found\");\n }\n}\nfunction setStylesheetType(fontId, isPreview) {\n var stylesheetId = getStylesheetId(fontId);\n var stylesheetNode = document.getElementById(stylesheetId);\n if (stylesheetNode) {\n stylesheetNode.setAttribute(PREVIEW_ATTRIBUTE_NAME, isPreview.toString());\n }\n else {\n console.error(\"Could not change stylesheet type: Stylesheet with ID \\\"\" + stylesheetId + \"\\\" not found\");\n }\n}\n\nfunction getMatches(regex, str) {\n var matches = [];\n var match;\n do {\n match = regex.exec(str);\n if (match) {\n matches.push(match[1]);\n }\n } while (match);\n return matches;\n}\n\nvar FONT_FACE_REGEX = /@font-face {([\\s\\S]*?)}/gm;\nvar FONT_FAMILY_REGEX = /font-family: ['\"](.*?)['\"]/gm;\nfunction extractFontStyles(allFontStyles) {\n var rules = getMatches(FONT_FACE_REGEX, allFontStyles);\n var fontStyles = {};\n rules.forEach(function (rule) {\n var fontFamily = getMatches(FONT_FAMILY_REGEX, rule)[0];\n var fontId = getFontId(fontFamily);\n if (!(fontId in fontStyles)) {\n fontStyles[fontId] = \"\";\n }\n fontStyles[fontId] += \"@font-face {\\n\" + rule + \"\\n}\\n\\n\";\n });\n return fontStyles;\n}\n\nvar FONT_BASE_URL = \"https://fonts.googleapis.com/css\";\nfunction getStylesheet(fonts, scripts, variants, previewsOnly) {\n return __awaiter(this, void 0, void 0, function () {\n var url, variantsStr, familiesStr, familyNamesConcat, downloadChars;\n return __generator(this, function (_a) {\n url = new URL(FONT_BASE_URL);\n variantsStr = variants.join(\",\");\n familiesStr = fonts.map(function (font) { return font.family + \":\" + variantsStr; });\n url.searchParams.append(\"family\", familiesStr.join(\"|\"));\n url.searchParams.append(\"subset\", scripts.join(\",\"));\n if (previewsOnly) {\n familyNamesConcat = fonts.map(function (font) { return font.family; }).join(\"\");\n downloadChars = familyNamesConcat\n .split(\"\")\n .filter(function (char, pos, self) { return self.indexOf(char) === pos; })\n .join(\"\");\n url.searchParams.append(\"text\", downloadChars);\n }\n url.searchParams.append(\"font-display\", \"swap\");\n return [2, get(url.href)];\n });\n });\n}\n\nfunction loadFontPreviews(fonts, scripts, variants, selectorSuffix) {\n return __awaiter(this, void 0, void 0, function () {\n var fontsArray, fontsToFetch, response, fontStyles;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n fontsArray = Array.from(fonts.values());\n fontsToFetch = fontsArray\n .map(function (font) { return font.id; })\n .filter(function (fontId) { return !stylesheetExists(fontId); });\n fontsToFetch.forEach(function (fontId) { return createStylesheet(fontId, true); });\n return [4, getStylesheet(fontsArray, scripts, variants, true)];\n case 1:\n response = _a.sent();\n fontStyles = extractFontStyles(response);\n fontsArray.forEach(function (font) {\n applyFontPreview(font, selectorSuffix);\n if (fontsToFetch.includes(font.id)) {\n if (!(font.id in fontStyles)) {\n console.error(\"Missing styles for font \\\"\" + font.family + \"\\\" (fontId \\\"\" + font.id + \"\\\") in Google Fonts response\");\n return;\n }\n fillStylesheet(font.id, fontStyles[font.id]);\n }\n });\n return [2];\n }\n });\n });\n}\nfunction loadActiveFont(font, previousFontFamily, scripts, variants, selectorSuffix) {\n return __awaiter(this, void 0, void 0, function () {\n var fontStyle;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!stylesheetExists(font.id, false)) return [3, 1];\n applyActiveFont(font, previousFontFamily, selectorSuffix);\n return [3, 3];\n case 1:\n if (stylesheetExists(font.id, true)) {\n setStylesheetType(font.id, false);\n }\n else {\n createStylesheet(font.id, false);\n }\n return [4, getStylesheet([font], scripts, variants, false)];\n case 2:\n fontStyle = _a.sent();\n applyActiveFont(font, previousFontFamily, selectorSuffix);\n fillStylesheet(font.id, fontStyle);\n _a.label = 3;\n case 3: return [2];\n }\n });\n });\n}\n\nvar FONT_FAMILY_DEFAULT = \"Open Sans\";\nvar OPTIONS_DEFAULTS = {\n pickerId: \"\",\n families: [],\n categories: [],\n scripts: [\"latin\"],\n variants: [\"regular\"],\n filter: function () { return true; },\n limit: 50,\n sort: \"alphabet\",\n};\n\nvar FontManager = (function () {\n function FontManager(apiKey, defaultFamily, _a, onChange) {\n if (defaultFamily === void 0) { defaultFamily = FONT_FAMILY_DEFAULT; }\n var _b = _a.pickerId, pickerId = _b === void 0 ? OPTIONS_DEFAULTS.pickerId : _b, _c = _a.families, families = _c === void 0 ? OPTIONS_DEFAULTS.families : _c, _d = _a.categories, categories = _d === void 0 ? OPTIONS_DEFAULTS.categories : _d, _e = _a.scripts, scripts = _e === void 0 ? OPTIONS_DEFAULTS.scripts : _e, _f = _a.variants, variants = _f === void 0 ? OPTIONS_DEFAULTS.variants : _f, _g = _a.filter, filter = _g === void 0 ? OPTIONS_DEFAULTS.filter : _g, _h = _a.limit, limit = _h === void 0 ? OPTIONS_DEFAULTS.limit : _h, _j = _a.sort, sort = _j === void 0 ? OPTIONS_DEFAULTS.sort : _j;\n if (onChange === void 0) { onChange = function () { }; }\n this.fonts = new Map();\n validatePickerId(pickerId);\n this.selectorSuffix = pickerId ? \"-\" + pickerId : \"\";\n this.apiKey = apiKey;\n this.options = {\n pickerId: pickerId,\n families: families,\n categories: categories,\n scripts: scripts,\n variants: variants,\n filter: filter,\n limit: limit,\n sort: sort,\n };\n this.onChange = onChange;\n this.addFont(defaultFamily, false);\n this.setActiveFont(defaultFamily, false);\n }\n FontManager.prototype.init = function () {\n return __awaiter(this, void 0, void 0, function () {\n var fonts, _loop_1, this_1, i, state_1, fontsToLoad;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, getFontList(this.apiKey)];\n case 1:\n fonts = _a.sent();\n _loop_1 = function (i) {\n var font = fonts[i];\n if (this_1.fonts.size >= this_1.options.limit) {\n return \"break\";\n }\n if (!this_1.fonts.has(font.family) &&\n (this_1.options.families.length === 0 || this_1.options.families.includes(font.family)) &&\n (this_1.options.categories.length === 0 || this_1.options.categories.includes(font.category)) &&\n this_1.options.scripts.every(function (script) { return font.scripts.includes(script); }) &&\n this_1.options.variants.every(function (variant) { return font.variants.includes(variant); }) &&\n this_1.options.filter(font) === true) {\n this_1.fonts.set(font.family, font);\n }\n };\n this_1 = this;\n for (i = 0; i < fonts.length; i += 1) {\n state_1 = _loop_1(i);\n if (state_1 === \"break\")\n break;\n }\n fontsToLoad = new Map(this.fonts);\n fontsToLoad[\"delete\"](this.activeFontFamily);\n loadFontPreviews(fontsToLoad, this.options.scripts, this.options.variants, this.selectorSuffix);\n return [2, this.fonts];\n }\n });\n });\n };\n FontManager.prototype.getFonts = function () {\n return this.fonts;\n };\n FontManager.prototype.addFont = function (fontFamily, downloadPreview) {\n if (downloadPreview === void 0) { downloadPreview = true; }\n var font = {\n family: fontFamily,\n id: getFontId(fontFamily),\n };\n this.fonts.set(fontFamily, font);\n if (downloadPreview) {\n var fontMap = new Map();\n fontMap.set(fontFamily, font);\n loadFontPreviews(fontMap, this.options.scripts, this.options.variants, this.selectorSuffix);\n }\n };\n FontManager.prototype.removeFont = function (fontFamily) {\n this.fonts[\"delete\"](fontFamily);\n };\n FontManager.prototype.getActiveFont = function () {\n var activeFont = this.fonts.get(this.activeFontFamily);\n if (!activeFont) {\n throw Error(\"Cannot get active font: \\\"\" + this.activeFontFamily + \"\\\" is not in the font list\");\n }\n else {\n return activeFont;\n }\n };\n FontManager.prototype.setActiveFont = function (fontFamily, runOnChange) {\n var _this = this;\n if (runOnChange === void 0) { runOnChange = true; }\n var previousFontFamily = this.activeFontFamily;\n var activeFont = this.fonts.get(fontFamily);\n if (!activeFont) {\n throw Error(\"Cannot update active font: \\\"\" + fontFamily + \"\\\" is not in the font list\");\n }\n this.activeFontFamily = fontFamily;\n loadActiveFont(activeFont, previousFontFamily, this.options.scripts, this.options.variants, this.selectorSuffix).then(function () {\n if (runOnChange) {\n _this.onChange(activeFont);\n }\n });\n };\n FontManager.prototype.setOnChange = function (onChange) {\n this.onChange = onChange;\n };\n return FontManager;\n}());\n\nexport { FONT_FAMILY_DEFAULT, FontManager, OPTIONS_DEFAULTS, getFontId };\n","import { toLabelAndValue } from \"neetocist\";\nimport { pluck } from \"ramda\";\n\nimport { UNWANTED_FAMILIES } from \"./constants\";\n\nexport const defaultFilterOptions = font =>\n !UNWANTED_FAMILIES.includes(font.family);\n\nexport const sortAndFormatFonts = availableFonts =>\n pluck(\"family\", availableFonts)\n .sort((a, b) => a.localeCompare(b))\n .map(toLabelAndValue);\n","import { OPTIONS_DEFAULTS } from \"@samuelmeuli/font-manager\";\n\nimport { defaultFilterOptions } from \"./utils\";\n\nexport const UNWANTED_FAMILIES = [\n \"Material Icons\",\n \"Material Icons Rounded\",\n \"Material Icons Sharp\",\n \"Material Icons Two Tone\",\n];\n\nexport const DEFAULT_PICKER_PROPS = {\n pickerId: OPTIONS_DEFAULTS.pickerId,\n families: OPTIONS_DEFAULTS.families,\n categories: OPTIONS_DEFAULTS.categories,\n scripts: OPTIONS_DEFAULTS.scripts,\n variants: OPTIONS_DEFAULTS.variants,\n filter: defaultFilterOptions,\n limit: OPTIONS_DEFAULTS.limit,\n sort: OPTIONS_DEFAULTS.sort,\n};\n","import { useEffect, memo, useMemo, useState } from \"react\";\n\nimport { FontManager } from \"@samuelmeuli/font-manager\";\nimport { noop, toLabelAndValue } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport Select from \"neetoui/Select\";\nimport PropTypes from \"prop-types\";\nimport { mergeLeft } from \"ramda\";\n\nimport { DEFAULT_PICKER_PROPS } from \"./constants\";\nimport { sortAndFormatFonts } from \"./utils\";\n\nconst GoogleFontPicker = ({\n activeFontFamily,\n fontManagerOptions = { limit: 300 },\n onChange = noop,\n ...otherProps\n}) => {\n const [selectedFontFamily, setSelectedFontFamily] =\n useState(activeFontFamily);\n const [isLoading, setIsLoading] = useState(false);\n const [fonts, setFonts] = useState([]);\n\n const options = mergeLeft(fontManagerOptions, DEFAULT_PICKER_PROPS);\n\n useEffect(() => {\n initializeFontManager();\n }, []);\n\n const fontManager = useMemo(\n () =>\n new FontManager(\n globalProps.googleFontsApiKey,\n selectedFontFamily,\n options,\n onChange\n ),\n []\n );\n\n const initializeFontManager = async () => {\n try {\n setIsLoading(true);\n await fontManager.init();\n const availableFonts = Array.from(fontManager.getFonts().values());\n setFonts(sortAndFormatFonts(availableFonts));\n } catch (error) {\n throw error.message;\n } finally {\n setIsLoading(false);\n }\n };\n\n const handleChange = fontFamily => {\n const { value } = fontFamily;\n fontManager.setActiveFont(value, false);\n setSelectedFontFamily(value);\n onChange(value);\n };\n\n return (\n <Select\n data-testid=\"google-font-picker\"\n options={fonts}\n strategy=\"fixed\"\n value={toLabelAndValue(selectedFontFamily)}\n styles={{\n option: (styles, { data }) => ({\n ...styles,\n fontFamily: data.value,\n }),\n singleValue: (styles, { data }) => ({\n ...styles,\n fontFamily: data.value,\n }),\n }}\n {...{ ...otherProps, isLoading }}\n onChange={handleChange}\n />\n );\n};\n\nGoogleFontPicker.propTypes = {\n /**\n * Specifies the currently selected font family\n */\n activeFontFamily: PropTypes.string,\n /**\n * Function receives the newly selected font family name as its argument.\n * Use it to update the parent component's state or perform any other necessary actions when the font changes.\n */\n onChange: PropTypes.func,\n /**\n * Object that configures the FontManager's options.\n * These options are merged with the default configuration extracted from @samuelmeuli/font-manager.\n */\n fontManagerOptions: PropTypes.shape({\n limit: PropTypes.number,\n pickerId: PropTypes.string,\n families: PropTypes.arrayOf(PropTypes.string),\n categories: PropTypes.arrayOf(PropTypes.string),\n scripts: PropTypes.arrayOf(PropTypes.string),\n variants: PropTypes.arrayOf(PropTypes.string),\n filter: PropTypes.func,\n sort: PropTypes.oneOf([\"alphabet\", \"popularity\"]),\n }),\n /**\n * Any extra props not explicitly defined will be spread onto the Select component. This can include properties\n * like placeholder, isDisabled, or any other prop accepted by the `neetoui` Select component.\n */\n otherProps: PropTypes.shape({}),\n};\n\nexport default memo(GoogleFontPicker);\n"],"names":["defaultFilterOptions","font","UNWANTED_FAMILIES","includes","family","sortAndFormatFonts","availableFonts","pluck","sort","a","b","localeCompare","map","toLabelAndValue","DEFAULT_PICKER_PROPS","pickerId","OPTIONS_DEFAULTS","families","categories","scripts","variants","filter","limit","GoogleFontPicker","_ref","activeFontFamily","_ref$fontManagerOptio","fontManagerOptions","_ref$onChange","onChange","noop","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","selectedFontFamily","setSelectedFontFamily","_useState3","_useState4","isLoading","setIsLoading","_useState5","_useState6","fonts","setFonts","options","mergeLeft","useEffect","initializeFontManager","fontManager","useMemo","FontManager","globalProps","googleFontsApiKey","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","prev","next","init","Array","from","getFonts","values","t0","message","finish","stop","apply","arguments","handleChange","fontFamily","value","setActiveFont","_jsx","Select","_objectSpread","strategy","styles","option","_ref3","data","singleValue","_ref4","memo"],"mappings":"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","x_google_ignoreList":[0]}
@@ -103,7 +103,8 @@ var getIcon = function getIcon(_ref2) {
103
103
  var isValuePresent = ramda.pipe(ramda.prop("value"), neetoCist.isPresent);
104
104
 
105
105
  var Item = function Item(_ref) {
106
- var handleCancel = _ref.handleCancel,
106
+ var allowMultiline = _ref.allowMultiline,
107
+ handleCancel = _ref.handleCancel,
107
108
  handleSubmit = _ref.handleSubmit,
108
109
  iconSize = _ref.iconSize,
109
110
  item = _ref.item,
@@ -184,7 +185,8 @@ var Item = function Item(_ref) {
184
185
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
185
186
  ref: containerRef,
186
187
  className: classnames("mb-2 flex place-items-center gap-2 align-middle", extraWrapperClasses, {
187
- "flex-wrap": name !== PHONE_NUMBER
188
+ "flex-wrap": name !== PHONE_NUMBER && allowMultiline,
189
+ "flex-nowrap": !allowMultiline
188
190
  }),
189
191
  children: [showIcons && neetoCist.isPresent(iconToRender) ? /*#__PURE__*/jsxRuntime.jsx(Tooltip, {
190
192
  content: label || t("neetoMolecules.sessionEnvironment.details.keys.".concat(name)),
@@ -201,19 +203,26 @@ var Item = function Item(_ref) {
201
203
  date: value,
202
204
  typographyProps: {
203
205
  style: "body2",
204
- className: "overflow-hidden truncate whitespace-normal break-all ".concat(extraClasses)
206
+ className: classnames("overflow-hidden truncate whitespace-normal break-all ".concat(extraClasses), {
207
+ "whitespace-nowrap": !allowMultiline
208
+ })
205
209
  }
206
- }) : /*#__PURE__*/jsxRuntime.jsx(Typography, {
207
- "data-testid": "metadata-value-".concat(name),
208
- style: "body2",
209
- weight: "normal",
210
- className: classnames("overflow-hidden truncate whitespace-normal break-all ".concat(extraClasses), {
211
- "neeto-molecules-session-environment-editable-text cursor-pointer p-0.5": isEditable
212
- }),
213
- onClick: function onClick() {
214
- return isEditable && setIsEditing(true);
215
- },
216
- children: valueToRender
210
+ }) : /*#__PURE__*/jsxRuntime.jsx(Tooltip, {
211
+ content: valueToRender,
212
+ position: "top",
213
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography, {
214
+ "data-testid": "metadata-value-".concat(name),
215
+ style: "body2",
216
+ weight: "normal",
217
+ className: classnames("overflow-hidden truncate whitespace-normal break-all ".concat(extraClasses), {
218
+ "neeto-molecules-session-environment-editable-text cursor-pointer p-0.5": isEditable,
219
+ "whitespace-nowrap": !allowMultiline
220
+ }),
221
+ onClick: function onClick() {
222
+ return isEditable && setIsEditing(true);
223
+ },
224
+ children: valueToRender
225
+ })
217
226
  }), showCopyButton && /*#__PURE__*/jsxRuntime.jsx(CopyToClipboardButton, {
218
227
  className: "flex-shrink-0",
219
228
  size: "small",
@@ -266,7 +275,9 @@ var Item = function Item(_ref) {
266
275
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
267
276
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
268
277
  var DetailsBlock = function DetailsBlock(_ref) {
269
- var details = _ref.details,
278
+ var _ref$allowMultiline = _ref.allowMultiline,
279
+ allowMultiline = _ref$allowMultiline === void 0 ? true : _ref$allowMultiline,
280
+ details = _ref.details,
270
281
  _ref$handleCancel = _ref.handleCancel,
271
282
  handleCancel = _ref$handleCancel === void 0 ? neetoCist.noop : _ref$handleCancel,
272
283
  _ref$handleSubmit = _ref.handleSubmit,
@@ -293,6 +304,7 @@ var DetailsBlock = function DetailsBlock(_ref) {
293
304
  return detail.isEditable || isValuePresent(detail);
294
305
  }).map(function (detail, index) {
295
306
  return /*#__PURE__*/React.createElement(Item, {
307
+ allowMultiline: allowMultiline,
296
308
  handleCancel: handleCancel,
297
309
  handleSubmit: handleSubmit,
298
310
  iconSize: iconSize,
@@ -309,7 +321,9 @@ var css = ".neeto-molecules-session-environment-editable-field .neeto-ui-input__
309
321
  injectCss.n(css,{});
310
322
 
311
323
  var SessionEnvironment = function SessionEnvironment(_ref) {
312
- var details = _ref.details,
324
+ var _ref$allowMultiline = _ref.allowMultiline,
325
+ allowMultiline = _ref$allowMultiline === void 0 ? false : _ref$allowMultiline,
326
+ details = _ref.details,
313
327
  _ref$handleCancel = _ref.handleCancel,
314
328
  handleCancel = _ref$handleCancel === void 0 ? neetoCist.noop : _ref$handleCancel,
315
329
  _ref$handleSubmit = _ref.handleSubmit,
@@ -344,6 +358,7 @@ var SessionEnvironment = function SessionEnvironment(_ref) {
344
358
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
345
359
  className: "w-full",
346
360
  children: [/*#__PURE__*/jsxRuntime.jsx(DetailsBlock$1, {
361
+ allowMultiline: allowMultiline,
347
362
  details: details,
348
363
  handleCancel: handleCancel,
349
364
  handleSubmit: handleSubmit,
@@ -1 +1 @@
1
- {"version":3,"file":"SessionEnvironment.js","sources":["../../src/components/SessionEnvironment/constants.js","../../src/components/SessionEnvironment/utils.jsx","../../src/components/SessionEnvironment/Item.jsx","../../src/components/SessionEnvironment/DetailsBlock.jsx","../../src/components/SessionEnvironment/index.jsx"],"sourcesContent":["import {\n Computer,\n Email,\n Location,\n Mobile,\n Phone,\n Subdomain,\n User,\n} from \"neetoicons\";\nimport {\n Apple,\n Chrome,\n Edge,\n Firefox,\n Safari,\n Ubuntu,\n Windows,\n} from \"neetoicons/misc\";\n\nexport const BOOLEAN_VALUES_MAP = { true: \"Yes\", false: \"No\" };\nexport const ENTER = \"enter\";\nexport const ESCAPE = \"escape\";\nexport const PHONE_NUMBER = \"phone_number\";\nexport const INTEGER = \"integer\";\nexport const ICONS_MAP = {\n name: User,\n user: User,\n email: Email,\n phone_number: Phone,\n location: Location,\n timezone: Subdomain,\n chrome: Chrome,\n safari: Safari,\n firefox: Firefox,\n edge: Edge,\n ie: Edge,\n windows: Windows,\n mac_os: Apple,\n linux: Ubuntu,\n mobile: Mobile,\n desktop: Computer,\n};\n","import { isPresent } from \"neetocist\";\nimport { prop, pipe } from \"ramda\";\n\nimport { ICONS_MAP, INTEGER, PHONE_NUMBER } from \"./constants\";\n\nexport const getInputType = ({ name, kind }) => {\n if (name === PHONE_NUMBER) return \"tel\";\n else if (kind === INTEGER) return \"number\";\n\n return \"text\";\n};\n\nexport const getIcon = ({ iconSize, name, value }) => {\n const Icon =\n name === \"browser\" || name === \"os\"\n ? ICONS_MAP[value?.toLowerCase().replace(\" \", \"_\")]\n : ICONS_MAP[name];\n\n return isPresent(Icon) ? <Icon size={iconSize} /> : null;\n};\n\nexport const isValuePresent = pipe(prop(\"value\"), isPresent);\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Check, Close } from \"neetoicons\";\nimport { Button, Input, Tooltip, Typography } from \"neetoui\";\nimport { isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\nimport { PhoneNumberInput } from \"components/PhoneNumber\";\nimport TimeFormat from \"components/TimeFormat\";\n\nimport { BOOLEAN_VALUES_MAP, ENTER, ESCAPE, PHONE_NUMBER } from \"./constants\";\nimport { getIcon, getInputType } from \"./utils\";\n\nconst Item = ({ handleCancel, handleSubmit, iconSize, item, showIcons }) => {\n const [isEditing, setIsEditing] = useState(item.isEditing);\n const [value, setValue] = useState(item.value);\n\n const { t } = useTranslation();\n\n const containerRef = useHotkeys(ESCAPE, () => handleCancel(name), {\n mode: \"scoped\",\n });\n\n const {\n icon,\n isEditable = false,\n extraClasses = \"\",\n extraWrapperClasses = \"\",\n id,\n fieldValueId,\n custom = false,\n name,\n kind,\n error,\n label,\n showCopyButton = false,\n } = item;\n\n const valueToRender = useMemo(() => {\n if (isNil(value)) return \"-\";\n\n if (typeof value === \"boolean\") return BOOLEAN_VALUES_MAP[value.toString()];\n\n return value;\n }, [value]);\n\n const iconToRender = useMemo(\n () => icon || getIcon({ iconSize, name, value }),\n [icon, iconSize, name, value]\n );\n\n const onSuccess = () => setIsEditing(false);\n\n const handleMetadataSubmit = () =>\n handleSubmit({ fieldId: id, fieldValueId, name, value, custom, onSuccess });\n\n const handleMetadataCancel = () => {\n setIsEditing(false);\n setValue(item.value);\n handleCancel(name);\n };\n\n const inputRef = useHotkeys(ENTER, handleMetadataSubmit, {\n mode: \"scoped\",\n });\n\n const InputComponent = name === PHONE_NUMBER ? PhoneNumberInput : Input;\n\n const handleChange = event => {\n const value = name === PHONE_NUMBER ? event : event.target.value;\n setValue(value);\n };\n\n useEffect(() => {\n setValue(item.value);\n }, [item]);\n\n return (\n <div\n ref={containerRef}\n className={classNames(\n \"mb-2 flex place-items-center gap-2 align-middle\",\n extraWrapperClasses,\n { \"flex-wrap\": name !== PHONE_NUMBER }\n )}\n >\n {showIcons && isPresent(iconToRender) ? (\n <Tooltip\n content={\n label || t(`neetoMolecules.sessionEnvironment.details.keys.${name}`)\n }\n >\n <div className=\"flex-shrink-0\">{iconToRender}</div>\n </Tooltip>\n ) : (\n <Typography\n className=\"neeto-molecules-session-environment-editable-field whitespace-nowrap\"\n style=\"h5\"\n >\n {label || t(`neetoMolecules.sessionEnvironment.details.keys.${name}`)}\n </Typography>\n )}\n {!isEditing ? (\n <>\n {kind === \"datetime\" ? (\n <TimeFormat.DateWeekTime\n date={value}\n typographyProps={{\n style: \"body2\",\n className: `overflow-hidden truncate whitespace-normal break-all ${extraClasses}`,\n }}\n />\n ) : (\n <Typography\n data-testid={`metadata-value-${name}`}\n style=\"body2\"\n weight=\"normal\"\n className={classNames(\n `overflow-hidden truncate whitespace-normal break-all ${extraClasses}`,\n {\n \"neeto-molecules-session-environment-editable-text cursor-pointer p-0.5\":\n isEditable,\n }\n )}\n onClick={() => isEditable && setIsEditing(true)}\n >\n {valueToRender}\n </Typography>\n )}\n {showCopyButton && (\n <CopyToClipboardButton\n className=\"flex-shrink-0\"\n size=\"small\"\n style=\"text\"\n value={valueToRender}\n />\n )}\n </>\n ) : (\n <div className=\"neeto-molecules-session-environment-editable-field relative flex min-w-0 flex-grow items-center\">\n <InputComponent\n {...{ error }}\n autoFocus\n data-testid={`metadata-input-${name}`}\n placeholder={t(\"neetoMolecules.common.enter\", { what: label })}\n ref={inputRef}\n type={getInputType({ name, kind })}\n value={value || \"\"}\n onChange={handleChange}\n />\n <div className=\"neeto-molecules-session-environment-editable-field__actions absolute right-0 top-0 flex h-8 items-center pr-1\">\n <Button\n icon={Close}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.cancel\"),\n position: \"top\",\n }}\n onClick={handleMetadataCancel}\n />\n <Button\n data-testid={`metadata-submit-${name}`}\n icon={Check}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.save\"),\n position: \"top\",\n }}\n onClick={handleMetadataSubmit}\n />\n </div>\n </div>\n )}\n </div>\n );\n};\n\nexport default Item;\n","import { memo } from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport HelpPopover from \"components/HelpPopover\";\n\nimport Item from \"./Item\";\nimport { isValuePresent } from \"./utils\";\n\nconst DetailsBlock = ({\n details,\n handleCancel = noop,\n handleSubmit = noop,\n helpPopoverProps,\n iconSize,\n showIcons = false,\n title = \"\",\n}) => (\n <div className=\"mb-4\" data-testid=\"details-block-items-parent\">\n {title && (\n <div className=\"mb-2 flex\">\n <Typography\n className=\"mr-2\"\n style=\"h4\"\n textTransform=\"uppercase\"\n weight=\"bold\"\n >\n {title}\n </Typography>\n {isPresent(helpPopoverProps) && <HelpPopover {...helpPopoverProps} />}\n </div>\n )}\n {details\n .filter(detail => detail.isEditable || isValuePresent(detail))\n .map((detail, index) => (\n <Item\n {...{ handleCancel, handleSubmit, iconSize, showIcons }}\n item={detail}\n key={index}\n />\n ))}\n </div>\n);\n\nexport default memo(DetailsBlock);\n","import { memo, useMemo, useState } from \"react\";\n\nimport { filterBy, isPresent, noop, removeBy } from \"neetocist\";\nimport { Down, Up } from \"neetoicons\";\nimport { Button, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { pluck, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DetailsBlock from \"./DetailsBlock\";\nimport \"./session-environment.scss\";\n\nconst SessionEnvironment = ({\n details,\n handleCancel = noop,\n handleSubmit = noop,\n helpPopoverProps = {},\n iconSize = 20,\n isLoading = false,\n moreDetails = [],\n title = \"\",\n}) => {\n const [showViewMore, setShowViewMore] = useState(false);\n\n const customViewMoreItems = useMemo(\n () => filterBy({ kind: \"custom\" }, moreDetails),\n [moreDetails]\n );\n\n const { t } = useTranslation();\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <div className=\"w-full\">\n <DetailsBlock\n {...{\n details,\n handleCancel,\n handleSubmit,\n helpPopoverProps,\n iconSize,\n title,\n }}\n showIcons\n />\n {showViewMore && (\n <>\n <hr className=\"neeto-ui-border-gray-200 m-4\" />\n <DetailsBlock\n {...{\n handleCancel,\n handleSubmit,\n helpPopoverProps,\n iconSize,\n }}\n details={removeBy({ kind: \"custom\" }, moreDetails)}\n />\n {isPresent(customViewMoreItems) && (\n <>\n <hr className=\"neeto-ui-border-gray-200 m-4\" />\n {pluck(\"value\", customViewMoreItems)}\n </>\n )}\n </>\n )}\n <Button\n className=\"mb-4\"\n icon={showViewMore ? Up : Down}\n style=\"link\"\n label={\n showViewMore\n ? t(\"neetoMolecules.sessionEnvironment.viewLess\")\n : t(\"neetoMolecules.sessionEnvironment.viewMore\")\n }\n onClick={() => setShowViewMore(not)}\n />\n </div>\n );\n};\n\nSessionEnvironment.propTypes = {\n /*\n details can be an array of fields to be displayed.\n */\n details: PropTypes.array,\n /*\n handleCancel is a function that will be called when the cancel button is clicked.\n */\n handleCancel: PropTypes.func,\n /*\n handleSubmit is a function that will be called when the form is submitted.\n */\n handleSubmit: PropTypes.func,\n /*\n helpPopoverProps are the props that will be passed to the HelpPopover component.\n */\n helpPopoverProps: PropTypes.object,\n /*\n iconSize is a number that will be used to set the size of the icon.\n */\n iconSize: PropTypes.number,\n /*\n isLoading is a boolean that will be used to show a spinner when true.\n */\n isLoading: PropTypes.bool,\n /*\n moreDetails can be an array of fields to be displayed when the view more button is clicked.\n */\n moreDetails: PropTypes.array,\n /*\n The title to be displayed above the details.\n */\n title: PropTypes.string,\n};\n\nexport default memo(SessionEnvironment);\n"],"names":["BOOLEAN_VALUES_MAP","ENTER","ESCAPE","PHONE_NUMBER","INTEGER","ICONS_MAP","name","User","user","email","Email","phone_number","Phone","location","Location","timezone","Subdomain","chrome","Chrome","safari","Safari","firefox","Firefox","edge","Edge","ie","windows","Windows","mac_os","Apple","linux","Ubuntu","mobile","Mobile","desktop","Computer","getInputType","_ref","kind","getIcon","_ref2","iconSize","value","Icon","toLowerCase","replace","isPresent","_jsx","size","isValuePresent","pipe","prop","Item","handleCancel","handleSubmit","item","showIcons","_useState","useState","isEditing","_useState2","_slicedToArray","setIsEditing","_useState3","_useState4","setValue","_useTranslation","useTranslation","t","containerRef","useHotkeys","mode","icon","_item$isEditable","isEditable","_item$extraClasses","extraClasses","_item$extraWrapperCla","extraWrapperClasses","id","fieldValueId","_item$custom","custom","error","label","_item$showCopyButton","showCopyButton","valueToRender","useMemo","isNil","toString","iconToRender","onSuccess","handleMetadataSubmit","fieldId","handleMetadataCancel","inputRef","InputComponent","PhoneNumberInput","Input","handleChange","event","target","useEffect","_jsxs","ref","className","classNames","children","Tooltip","content","concat","Typography","style","_Fragment","TimeFormat","DateWeekTime","date","typographyProps","weight","onClick","CopyToClipboardButton","autoFocus","placeholder","what","type","onChange","Button","Close","tooltipProps","position","Check","DetailsBlock","details","_ref$handleCancel","noop","_ref$handleSubmit","helpPopoverProps","_ref$showIcons","_ref$title","title","textTransform","HelpPopover","_objectSpread","filter","detail","map","index","_createElement","key","memo","SessionEnvironment","_ref$helpPopoverProps","_ref$iconSize","_ref$isLoading","isLoading","_ref$moreDetails","moreDetails","showViewMore","setShowViewMore","customViewMoreItems","filterBy","Spinner","removeBy","pluck","Up","Down","not"],"mappings":"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"}
1
+ {"version":3,"file":"SessionEnvironment.js","sources":["../../src/components/SessionEnvironment/constants.js","../../src/components/SessionEnvironment/utils.jsx","../../src/components/SessionEnvironment/Item.jsx","../../src/components/SessionEnvironment/DetailsBlock.jsx","../../src/components/SessionEnvironment/index.jsx"],"sourcesContent":["import {\n Computer,\n Email,\n Location,\n Mobile,\n Phone,\n Subdomain,\n User,\n} from \"neetoicons\";\nimport {\n Apple,\n Chrome,\n Edge,\n Firefox,\n Safari,\n Ubuntu,\n Windows,\n} from \"neetoicons/misc\";\n\nexport const BOOLEAN_VALUES_MAP = { true: \"Yes\", false: \"No\" };\nexport const ENTER = \"enter\";\nexport const ESCAPE = \"escape\";\nexport const PHONE_NUMBER = \"phone_number\";\nexport const INTEGER = \"integer\";\nexport const ICONS_MAP = {\n name: User,\n user: User,\n email: Email,\n phone_number: Phone,\n location: Location,\n timezone: Subdomain,\n chrome: Chrome,\n safari: Safari,\n firefox: Firefox,\n edge: Edge,\n ie: Edge,\n windows: Windows,\n mac_os: Apple,\n linux: Ubuntu,\n mobile: Mobile,\n desktop: Computer,\n};\n","import { isPresent } from \"neetocist\";\nimport { prop, pipe } from \"ramda\";\n\nimport { ICONS_MAP, INTEGER, PHONE_NUMBER } from \"./constants\";\n\nexport const getInputType = ({ name, kind }) => {\n if (name === PHONE_NUMBER) return \"tel\";\n else if (kind === INTEGER) return \"number\";\n\n return \"text\";\n};\n\nexport const getIcon = ({ iconSize, name, value }) => {\n const Icon =\n name === \"browser\" || name === \"os\"\n ? ICONS_MAP[value?.toLowerCase().replace(\" \", \"_\")]\n : ICONS_MAP[name];\n\n return isPresent(Icon) ? <Icon size={iconSize} /> : null;\n};\n\nexport const isValuePresent = pipe(prop(\"value\"), isPresent);\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Check, Close } from \"neetoicons\";\nimport { Button, Input, Tooltip, Typography } from \"neetoui\";\nimport { isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\nimport { PhoneNumberInput } from \"components/PhoneNumber\";\nimport TimeFormat from \"components/TimeFormat\";\n\nimport { BOOLEAN_VALUES_MAP, ENTER, ESCAPE, PHONE_NUMBER } from \"./constants\";\nimport { getIcon, getInputType } from \"./utils\";\n\nconst Item = ({\n allowMultiline,\n handleCancel,\n handleSubmit,\n iconSize,\n item,\n showIcons,\n}) => {\n const [isEditing, setIsEditing] = useState(item.isEditing);\n const [value, setValue] = useState(item.value);\n\n const { t } = useTranslation();\n\n const containerRef = useHotkeys(ESCAPE, () => handleCancel(name), {\n mode: \"scoped\",\n });\n\n const {\n icon,\n isEditable = false,\n extraClasses = \"\",\n extraWrapperClasses = \"\",\n id,\n fieldValueId,\n custom = false,\n name,\n kind,\n error,\n label,\n showCopyButton = false,\n } = item;\n\n const valueToRender = useMemo(() => {\n if (isNil(value)) return \"-\";\n\n if (typeof value === \"boolean\") return BOOLEAN_VALUES_MAP[value.toString()];\n\n return value;\n }, [value]);\n\n const iconToRender = useMemo(\n () => icon || getIcon({ iconSize, name, value }),\n [icon, iconSize, name, value]\n );\n\n const onSuccess = () => setIsEditing(false);\n\n const handleMetadataSubmit = () =>\n handleSubmit({ fieldId: id, fieldValueId, name, value, custom, onSuccess });\n\n const handleMetadataCancel = () => {\n setIsEditing(false);\n setValue(item.value);\n handleCancel(name);\n };\n\n const inputRef = useHotkeys(ENTER, handleMetadataSubmit, {\n mode: \"scoped\",\n });\n\n const InputComponent = name === PHONE_NUMBER ? PhoneNumberInput : Input;\n\n const handleChange = event => {\n const value = name === PHONE_NUMBER ? event : event.target.value;\n setValue(value);\n };\n\n useEffect(() => {\n setValue(item.value);\n }, [item]);\n\n return (\n <div\n ref={containerRef}\n className={classNames(\n \"mb-2 flex place-items-center gap-2 align-middle\",\n extraWrapperClasses,\n {\n \"flex-wrap\": name !== PHONE_NUMBER && allowMultiline,\n \"flex-nowrap\": !allowMultiline,\n }\n )}\n >\n {showIcons && isPresent(iconToRender) ? (\n <Tooltip\n content={\n label || t(`neetoMolecules.sessionEnvironment.details.keys.${name}`)\n }\n >\n <div className=\"flex-shrink-0\">{iconToRender}</div>\n </Tooltip>\n ) : (\n <Typography\n className=\"neeto-molecules-session-environment-editable-field whitespace-nowrap\"\n style=\"h5\"\n >\n {label || t(`neetoMolecules.sessionEnvironment.details.keys.${name}`)}\n </Typography>\n )}\n {!isEditing ? (\n <>\n {kind === \"datetime\" ? (\n <TimeFormat.DateWeekTime\n date={value}\n typographyProps={{\n style: \"body2\",\n className: classNames(\n `overflow-hidden truncate whitespace-normal break-all ${extraClasses}`,\n { \"whitespace-nowrap\": !allowMultiline }\n ),\n }}\n />\n ) : (\n <Tooltip content={valueToRender} position=\"top\">\n <Typography\n data-testid={`metadata-value-${name}`}\n style=\"body2\"\n weight=\"normal\"\n className={classNames(\n `overflow-hidden truncate whitespace-normal break-all ${extraClasses}`,\n {\n \"neeto-molecules-session-environment-editable-text cursor-pointer p-0.5\":\n isEditable,\n \"whitespace-nowrap\": !allowMultiline,\n }\n )}\n onClick={() => isEditable && setIsEditing(true)}\n >\n {valueToRender}\n </Typography>\n </Tooltip>\n )}\n {showCopyButton && (\n <CopyToClipboardButton\n className=\"flex-shrink-0\"\n size=\"small\"\n style=\"text\"\n value={valueToRender}\n />\n )}\n </>\n ) : (\n <div className=\"neeto-molecules-session-environment-editable-field relative flex min-w-0 flex-grow items-center\">\n <InputComponent\n {...{ error }}\n autoFocus\n data-testid={`metadata-input-${name}`}\n placeholder={t(\"neetoMolecules.common.enter\", { what: label })}\n ref={inputRef}\n type={getInputType({ name, kind })}\n value={value || \"\"}\n onChange={handleChange}\n />\n <div className=\"neeto-molecules-session-environment-editable-field__actions absolute right-0 top-0 flex h-8 items-center pr-1\">\n <Button\n icon={Close}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.cancel\"),\n position: \"top\",\n }}\n onClick={handleMetadataCancel}\n />\n <Button\n data-testid={`metadata-submit-${name}`}\n icon={Check}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.save\"),\n position: \"top\",\n }}\n onClick={handleMetadataSubmit}\n />\n </div>\n </div>\n )}\n </div>\n );\n};\n\nexport default Item;\n","import { memo } from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport HelpPopover from \"components/HelpPopover\";\n\nimport Item from \"./Item\";\nimport { isValuePresent } from \"./utils\";\n\nconst DetailsBlock = ({\n allowMultiline = true,\n details,\n handleCancel = noop,\n handleSubmit = noop,\n helpPopoverProps,\n iconSize,\n showIcons = false,\n title = \"\",\n}) => (\n <div className=\"mb-4\" data-testid=\"details-block-items-parent\">\n {title && (\n <div className=\"mb-2 flex\">\n <Typography\n className=\"mr-2\"\n style=\"h4\"\n textTransform=\"uppercase\"\n weight=\"bold\"\n >\n {title}\n </Typography>\n {isPresent(helpPopoverProps) && <HelpPopover {...helpPopoverProps} />}\n </div>\n )}\n {details\n .filter(detail => detail.isEditable || isValuePresent(detail))\n .map((detail, index) => (\n <Item\n {...{\n allowMultiline,\n handleCancel,\n handleSubmit,\n iconSize,\n showIcons,\n }}\n item={detail}\n key={index}\n />\n ))}\n </div>\n);\n\nexport default memo(DetailsBlock);\n","import { memo, useMemo, useState } from \"react\";\n\nimport { filterBy, isPresent, noop, removeBy } from \"neetocist\";\nimport { Down, Up } from \"neetoicons\";\nimport { Button, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { pluck, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DetailsBlock from \"./DetailsBlock\";\nimport \"./session-environment.scss\";\n\nconst SessionEnvironment = ({\n allowMultiline = false,\n details,\n handleCancel = noop,\n handleSubmit = noop,\n helpPopoverProps = {},\n iconSize = 20,\n isLoading = false,\n moreDetails = [],\n title = \"\",\n}) => {\n const [showViewMore, setShowViewMore] = useState(false);\n\n const customViewMoreItems = useMemo(\n () => filterBy({ kind: \"custom\" }, moreDetails),\n [moreDetails]\n );\n\n const { t } = useTranslation();\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <div className=\"w-full\">\n <DetailsBlock\n {...{\n allowMultiline,\n details,\n handleCancel,\n handleSubmit,\n helpPopoverProps,\n iconSize,\n title,\n }}\n showIcons\n />\n {showViewMore && (\n <>\n <hr className=\"neeto-ui-border-gray-200 m-4\" />\n <DetailsBlock\n {...{\n handleCancel,\n handleSubmit,\n helpPopoverProps,\n iconSize,\n }}\n details={removeBy({ kind: \"custom\" }, moreDetails)}\n />\n {isPresent(customViewMoreItems) && (\n <>\n <hr className=\"neeto-ui-border-gray-200 m-4\" />\n {pluck(\"value\", customViewMoreItems)}\n </>\n )}\n </>\n )}\n <Button\n className=\"mb-4\"\n icon={showViewMore ? Up : Down}\n style=\"link\"\n label={\n showViewMore\n ? t(\"neetoMolecules.sessionEnvironment.viewLess\")\n : t(\"neetoMolecules.sessionEnvironment.viewMore\")\n }\n onClick={() => setShowViewMore(not)}\n />\n </div>\n );\n};\n\nSessionEnvironment.propTypes = {\n /*\n details can be an array of fields to be displayed.\n */\n details: PropTypes.array,\n /*\n handleCancel is a function that will be called when the cancel button is clicked.\n */\n handleCancel: PropTypes.func,\n /*\n handleSubmit is a function that will be called when the form is submitted.\n */\n handleSubmit: PropTypes.func,\n /*\n helpPopoverProps are the props that will be passed to the HelpPopover component.\n */\n helpPopoverProps: PropTypes.object,\n /*\n iconSize is a number that will be used to set the size of the icon.\n */\n iconSize: PropTypes.number,\n /*\n isLoading is a boolean that will be used to show a spinner when true.\n */\n isLoading: PropTypes.bool,\n /*\n moreDetails can be an array of fields to be displayed when the view more button is clicked.\n */\n moreDetails: PropTypes.array,\n /*\n The title to be displayed above the details.\n */\n title: PropTypes.string,\n /*\n allowMultiline is a boolean that will be used to decide whether the items should be displayed in a single line or multiple lines.\n */\n allowMultiline: PropTypes.bool,\n};\n\nexport default memo(SessionEnvironment);\n"],"names":["BOOLEAN_VALUES_MAP","ENTER","ESCAPE","PHONE_NUMBER","INTEGER","ICONS_MAP","name","User","user","email","Email","phone_number","Phone","location","Location","timezone","Subdomain","chrome","Chrome","safari","Safari","firefox","Firefox","edge","Edge","ie","windows","Windows","mac_os","Apple","linux","Ubuntu","mobile","Mobile","desktop","Computer","getInputType","_ref","kind","getIcon","_ref2","iconSize","value","Icon","toLowerCase","replace","isPresent","_jsx","size","isValuePresent","pipe","prop","Item","allowMultiline","handleCancel","handleSubmit","item","showIcons","_useState","useState","isEditing","_useState2","_slicedToArray","setIsEditing","_useState3","_useState4","setValue","_useTranslation","useTranslation","t","containerRef","useHotkeys","mode","icon","_item$isEditable","isEditable","_item$extraClasses","extraClasses","_item$extraWrapperCla","extraWrapperClasses","id","fieldValueId","_item$custom","custom","error","label","_item$showCopyButton","showCopyButton","valueToRender","useMemo","isNil","toString","iconToRender","onSuccess","handleMetadataSubmit","fieldId","handleMetadataCancel","inputRef","InputComponent","PhoneNumberInput","Input","handleChange","event","target","useEffect","_jsxs","ref","className","classNames","children","Tooltip","content","concat","Typography","style","_Fragment","TimeFormat","DateWeekTime","date","typographyProps","position","weight","onClick","CopyToClipboardButton","autoFocus","placeholder","what","type","onChange","Button","Close","tooltipProps","Check","DetailsBlock","_ref$allowMultiline","details","_ref$handleCancel","noop","_ref$handleSubmit","helpPopoverProps","_ref$showIcons","_ref$title","title","textTransform","HelpPopover","_objectSpread","filter","detail","map","index","_createElement","key","memo","SessionEnvironment","_ref$helpPopoverProps","_ref$iconSize","_ref$isLoading","isLoading","_ref$moreDetails","moreDetails","showViewMore","setShowViewMore","customViewMoreItems","filterBy","Spinner","removeBy","pluck","Up","Down","not"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neeto-molecules",
3
- "version": "3.7.33",
3
+ "version": "3.8.1",
4
4
  "description": "A package of reusable molecular components for neeto products.",
5
5
  "repository": "git@github.com:bigbinary/neeto-molecules.git",
6
6
  "author": "Amaljith K <amaljith.k@bigbinary.com>",
@@ -50,8 +50,8 @@
50
50
  "@babel/preset-typescript": "^7.18.6",
51
51
  "@babel/runtime": "7.19.0",
52
52
  "@bigbinary/babel-preset-neeto": "^1.0.3",
53
- "@bigbinary/eslint-plugin-neeto": "1.5.4",
54
- "@bigbinary/neeto-audit-frontend": "2.0.15",
53
+ "@bigbinary/eslint-plugin-neeto": "1.5.5",
54
+ "@bigbinary/neeto-audit-frontend": "^2.0.18",
55
55
  "@bigbinary/neeto-cist": "1.0.11",
56
56
  "@bigbinary/neeto-commons-frontend": "4.4.6",
57
57
  "@bigbinary/neeto-editor": "1.43.8",
@@ -77,6 +77,7 @@
77
77
  "@rollup/plugin-commonjs": "25.0.7",
78
78
  "@rollup/plugin-json": "6.0.1",
79
79
  "@rollup/plugin-node-resolve": "15.2.3",
80
+ "@samuelmeuli/font-manager": "^1.4.0",
80
81
  "@storybook/addon-actions": "^7.6.0",
81
82
  "@storybook/addon-essentials": "^7.6.0",
82
83
  "@storybook/preset-scss": "^1.0.3",
@@ -0,0 +1,61 @@
1
+ import React from "react";
2
+ import { SelectProps } from "neetoui";
3
+ declare type Category = "sans-serif" | "serif" | "display" | "handwriting" | "monospace";
4
+ declare type Script = "arabic" | "bengali" | "chinese-simplified" | "chinese-traditional" | "cyrillic" | "cyrillic-ext" | "devanagari" | "greek" | "greek-ext" | "gujarati" | "gurmukhi" | "hebrew" | "japanese" | "kannada" | "khmer" | "korean" | "latin" | "latin-ext" | "malayalam" | "myanmar" | "oriya" | "sinhala" | "tamil" | "​telugu" | "thai" | "vietnamese";
5
+ declare type Variant = "100" | "100italic" | "200" | "200italic" | "300" | "300italic" | "regular" | "italic" | "500" | "500italic" | "600" | "600italic" | "700" | "700italic" | "800" | "800italic" | "900" | "900italic";
6
+ declare type SortOption = "alphabet" | "popularity";
7
+ interface Font {
8
+ family?: string;
9
+ variants?: Variant[];
10
+ scripts?: Script[];
11
+ category?: Category;
12
+ popularity?: number;
13
+ }
14
+ interface fontManagerOptions {
15
+ limit?: number;
16
+ pickerId?: string;
17
+ families?: string[];
18
+ categories?: Category[];
19
+ scripts?: Script[];
20
+ variants?: Variant[];
21
+ filter?: (font: Font) => boolean;
22
+ sort?: SortOption;
23
+ }
24
+ interface GoogleFontPickerProps extends SelectProps {
25
+ activeFontFamily?: string;
26
+ onChange?: (fontFamily: string) => void;
27
+ fontManagerOptions?: fontManagerOptions;
28
+ }
29
+ /**
30
+ *
31
+ * A component that allows users to choose an option from a list of font choices, presented as a dropdown menu.
32
+ *
33
+ * ![image](https://github.com/user-attachments/assets/72a74d39-0f73-4701-a324-6ae6a81791a9|height=200|width=300)
34
+ *
35
+ * @example
36
+ *
37
+ * import { useState } from "react";
38
+ * import GoogleFontPicker from "@bigbinary/neeto-molecules/GoogleFontPicker";
39
+ *
40
+ * const GoogleFontPickerContainer = () => {
41
+ * const [selectedFont, setSelectedFont] = useState("Open Sans");
42
+ *
43
+ * const handleFontChange = (fontFamily) => {
44
+ * setSelectedFont(fontFamily);
45
+ * };
46
+ *
47
+ * return (
48
+ * <div>
49
+ * <h2>Selected Font: {selectedFont}</h2>
50
+ * <GoogleFontPicker
51
+ * activeFontFamily={selectedFont}
52
+ * fontManagerOptions={{ limit: 300 }}
53
+ * onChange={handleFontChange}
54
+ * />
55
+ * </div>
56
+ * );
57
+ * };
58
+ * @endexample
59
+ */
60
+ const GoogleFontPicker: React.FC<GoogleFontPickerProps>;
61
+ export default GoogleFontPicker;
@@ -154,6 +154,7 @@ interface Details {
154
154
  * @endexample
155
155
  */
156
156
  const SessionEnvironment: React.FC<{
157
+ allowMultiline?: boolean;
157
158
  details: Details[];
158
159
  handleCancel?: (string) => void;
159
160
  handleSubmit?: (object) => void;