{"version":3,"file":"CHbOWnm3.js","sources":["../../../../node_modules/@nuxt/ui/dist/runtime/composables/useShortcuts.mjs","../../../../node_modules/@vueuse/math/index.mjs","../../../../node_modules/@nuxt/ui/dist/runtime/composables/defineShortcuts.mjs","../../../../components/airtable/forms/components/BlockTypeIcon.vue","../../../../components/forms/components/MentionDropdown.vue"],"sourcesContent":["import { createSharedComposable, useActiveElement } from \"@vueuse/core\";\nimport { ref, computed, onMounted } from \"vue\";\nexport const _useShortcuts = () => {\n const macOS = computed(() => import.meta.client && navigator && navigator.userAgent && navigator.userAgent.match(/Macintosh;/));\n const metaSymbol = ref(\" \");\n const activeElement = useActiveElement();\n const usingInput = computed(() => {\n const tagName = activeElement.value?.tagName;\n const contentEditable = activeElement.value?.contentEditable;\n const usingInput2 = !!(tagName === \"INPUT\" || tagName === \"TEXTAREA\" || contentEditable === \"true\" || contentEditable === \"plaintext-only\");\n if (usingInput2) {\n return activeElement.value?.name || true;\n }\n return false;\n });\n onMounted(() => {\n metaSymbol.value = macOS.value ? \"\\u2318\" : \"Ctrl\";\n });\n return {\n macOS,\n metaSymbol,\n activeElement,\n usingInput\n };\n};\nexport const useShortcuts = createSharedComposable(_useShortcuts);\n","import { computed, isReadonly, ref } from 'vue-demi';\nimport { toValue, clamp, reactify } from '@vueuse/shared';\n\nfunction createGenericProjection(fromDomain, toDomain, projector) {\n return (input) => {\n return computed(() => projector(toValue(input), toValue(fromDomain), toValue(toDomain)));\n };\n}\n\nfunction defaultNumericProjector(input, from, to) {\n return (input - from[0]) / (from[1] - from[0]) * (to[1] - to[0]) + to[0];\n}\nfunction createProjection(fromDomain, toDomain, projector = defaultNumericProjector) {\n return createGenericProjection(fromDomain, toDomain, projector);\n}\n\nfunction logicAnd(...args) {\n return computed(() => args.every((i) => toValue(i)));\n}\n\nfunction logicNot(v) {\n return computed(() => !toValue(v));\n}\n\nfunction logicOr(...args) {\n return computed(() => args.some((i) => toValue(i)));\n}\n\nfunction useAbs(value) {\n return computed(() => Math.abs(toValue(value)));\n}\n\nfunction toValueArgsFlat(args) {\n return args.flatMap((i) => {\n const v = toValue(i);\n if (Array.isArray(v))\n return v.map((i2) => toValue(i2));\n return [v];\n });\n}\n\nfunction useAverage(...args) {\n return computed(() => {\n const array = toValueArgsFlat(args);\n return array.reduce((sum, v) => sum += v, 0) / array.length;\n });\n}\n\nfunction useCeil(value) {\n return computed(() => Math.ceil(toValue(value)));\n}\n\nfunction useClamp(value, min, max) {\n if (typeof value === \"function\" || isReadonly(value))\n return computed(() => clamp(toValue(value), toValue(min), toValue(max)));\n const _value = ref(value);\n return computed({\n get() {\n return _value.value = clamp(_value.value, toValue(min), toValue(max));\n },\n set(value2) {\n _value.value = clamp(value2, toValue(min), toValue(max));\n }\n });\n}\n\nfunction useFloor(value) {\n return computed(() => Math.floor(toValue(value)));\n}\n\nfunction useMath(key, ...args) {\n return reactify(Math[key])(...args);\n}\n\nfunction useMax(...args) {\n return computed(() => {\n const array = toValueArgsFlat(args);\n return Math.max(...array);\n });\n}\n\nfunction useMin(...args) {\n return computed(() => {\n const array = toValueArgsFlat(args);\n return Math.min(...array);\n });\n}\n\nfunction accurateMultiply(value, power) {\n const valueStr = value.toString();\n if (value > 0 && valueStr.includes(\".\")) {\n const decimalPlaces = valueStr.split(\".\")[1].length;\n const multiplier = 10 ** decimalPlaces;\n return value * multiplier * power / multiplier;\n } else {\n return value * power;\n }\n}\nfunction usePrecision(value, digits, options) {\n return computed(() => {\n var _a;\n const _value = toValue(value);\n const _digits = toValue(digits);\n const power = 10 ** _digits;\n return Math[((_a = toValue(options)) == null ? void 0 : _a.math) || \"round\"](accurateMultiply(_value, power)) / power;\n });\n}\n\nfunction useProjection(input, fromDomain, toDomain, projector) {\n return createProjection(fromDomain, toDomain, projector)(input);\n}\n\nfunction useRound(value) {\n return computed(() => Math.round(toValue(value)));\n}\n\nfunction useSum(...args) {\n return computed(() => toValueArgsFlat(args).reduce((sum, v) => sum += v, 0));\n}\n\nfunction useTrunc(value) {\n return computed(() => Math.trunc(toValue(value)));\n}\n\nexport { logicAnd as and, createGenericProjection, createProjection, logicAnd, logicNot, logicOr, logicNot as not, logicOr as or, useAbs, useAverage, useCeil, useClamp, useFloor, useMath, useMax, useMin, usePrecision, useProjection, useRound, useSum, useTrunc };\n","import { ref, computed } from \"vue\";\nimport { logicAnd, logicNot } from \"@vueuse/math\";\nimport { useEventListener, useDebounceFn } from \"@vueuse/core\";\nimport { useShortcuts } from \"./useShortcuts.mjs\";\nconst chainedShortcutRegex = /^[^-]+.*-.*[^-]+$/;\nconst combinedShortcutRegex = /^[^_]+.*_.*[^_]+$/;\nexport const defineShortcuts = (config, options = {}) => {\n const { macOS, usingInput } = useShortcuts();\n let shortcuts = [];\n const chainedInputs = ref([]);\n const clearChainedInput = () => {\n chainedInputs.value.splice(0, chainedInputs.value.length);\n };\n const debouncedClearChainedInput = useDebounceFn(clearChainedInput, options.chainDelay ?? 800);\n const onKeyDown = (e) => {\n if (!e.key) {\n return;\n }\n const alphabeticalKey = /^[a-z]{1}$/i.test(e.key);\n let chainedKey;\n chainedInputs.value.push(e.key);\n if (chainedInputs.value.length >= 2) {\n chainedKey = chainedInputs.value.slice(-2).join(\"-\");\n for (const shortcut of shortcuts.filter((s) => s.chained)) {\n if (shortcut.key !== chainedKey) {\n continue;\n }\n if (shortcut.condition.value) {\n e.preventDefault();\n shortcut.handler();\n }\n clearChainedInput();\n return;\n }\n }\n for (const shortcut of shortcuts.filter((s) => !s.chained)) {\n if (e.key.toLowerCase() !== shortcut.key) {\n continue;\n }\n if (e.metaKey !== shortcut.metaKey) {\n continue;\n }\n if (e.ctrlKey !== shortcut.ctrlKey) {\n continue;\n }\n if (alphabeticalKey && e.shiftKey !== shortcut.shiftKey) {\n continue;\n }\n if (shortcut.condition.value) {\n e.preventDefault();\n shortcut.handler();\n }\n clearChainedInput();\n return;\n }\n debouncedClearChainedInput();\n };\n shortcuts = Object.entries(config).map(([key, shortcutConfig]) => {\n if (!shortcutConfig) {\n return null;\n }\n let shortcut;\n if (key.includes(\"-\") && key !== \"-\" && !key.match(chainedShortcutRegex)?.length) {\n console.trace(`[Shortcut] Invalid key: \"${key}\"`);\n }\n if (key.includes(\"_\") && key !== \"_\" && !key.match(combinedShortcutRegex)?.length) {\n console.trace(`[Shortcut] Invalid key: \"${key}\"`);\n }\n const chained = key.includes(\"-\") && key !== \"-\";\n if (chained) {\n shortcut = {\n key: key.toLowerCase(),\n metaKey: false,\n ctrlKey: false,\n shiftKey: false,\n altKey: false\n };\n } else {\n const keySplit = key.toLowerCase().split(\"_\").map((k) => k);\n shortcut = {\n key: keySplit.filter((k) => ![\"meta\", \"ctrl\", \"shift\", \"alt\"].includes(k)).join(\"_\"),\n metaKey: keySplit.includes(\"meta\"),\n ctrlKey: keySplit.includes(\"ctrl\"),\n shiftKey: keySplit.includes(\"shift\"),\n altKey: keySplit.includes(\"alt\")\n };\n }\n shortcut.chained = chained;\n if (!macOS.value && shortcut.metaKey && !shortcut.ctrlKey) {\n shortcut.metaKey = false;\n shortcut.ctrlKey = true;\n }\n if (typeof shortcutConfig === \"function\") {\n shortcut.handler = shortcutConfig;\n } else if (typeof shortcutConfig === \"object\") {\n shortcut = { ...shortcut, handler: shortcutConfig.handler };\n }\n if (!shortcut.handler) {\n console.trace(\"[Shortcut] Invalid value\");\n return null;\n }\n const conditions = [];\n if (!shortcutConfig.usingInput) {\n conditions.push(logicNot(usingInput));\n } else if (typeof shortcutConfig.usingInput === \"string\") {\n conditions.push(computed(() => usingInput.value === shortcutConfig.usingInput));\n }\n shortcut.condition = logicAnd(...conditions, ...shortcutConfig.whenever || []);\n return shortcut;\n }).filter(Boolean);\n useEventListener(\"keydown\", onKeyDown);\n};\n","\n \n \n \n\n\n","\n \n \n \n \n \n \n Insert Mention\n \n \n \n \n \n \n Select a field\n \n \n \n \n \n {{ field.name }}\n \n \n \n \n \n \n \n \n Insert\n \n \n Cancel\n \n \n \n \n \n \n \n "],"names":["_useShortcuts","macOS","computed","metaSymbol","ref","activeElement","useActiveElement","usingInput","tagName","_a","contentEditable","_b","_c","onMounted","useShortcuts","createSharedComposable","logicAnd","args","i","toValue","logicNot","v","chainedShortcutRegex","combinedShortcutRegex","defineShortcuts","config","options","shortcuts","chainedInputs","clearChainedInput","debouncedClearChainedInput","useDebounceFn","onKeyDown","alphabeticalKey","chainedKey","shortcut","s","key","shortcutConfig","chained","keySplit","k","conditions","useEventListener","props","__props","bgClass","blocksTypes","textClass","icon","open","onInsert","onCancel","toRefs","selectedField","fallbackValue","filteredMentions","mention","selectField","field","insert","insertMention","watch","newValue","cancel"],"mappings":"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","x_google_ignoreList":[0,1,2]}
\n {{ field.name }}\n