UNPKG

payload-lucide-picker

Version:

A custom field for Payload CMS that allows you to select and configure Lucide icons in your admin panel

178 lines 6.64 kB
"use strict"; function _define_property(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function _object_spread(target) { for(var i = 1; i < arguments.length; i++){ var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === "function") { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function(key) { _define_property(target, key, source[key]); }); } return target; } function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function(sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; } function _object_spread_props(target, source) { source = source != null ? source : {}; if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function(key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } function _type_of(obj) { "@swc/helpers - typeof"; return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj; } var __create = Object.create; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __getProtoOf = Object.getPrototypeOf; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = function(target, all) { for(var name in all)__defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = function(to, from, except, desc) { if (from && (typeof from === "undefined" ? "undefined" : _type_of(from)) === "object" || typeof from === "function") { var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined; try { var _loop = function() { var key = _step.value; if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: function() { return from[key]; }, enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); }; for(var _iterator = __getOwnPropNames(from)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true)_loop(); } catch (err) { _didIteratorError = true; _iteratorError = err; } finally{ try { if (!_iteratorNormalCompletion && _iterator.return != null) { _iterator.return(); } } finally{ if (_didIteratorError) { throw _iteratorError; } } } } return to; }; var __toESM = function(mod, isNodeMode, target) { return target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(// If the importer is in node compatibility mode or this is not an ESM // file that has been converted to a CommonJS file using a Babel- // compatible transform (i.e. "__esModule" has not been set), then set // "default" to the CommonJS "module.exports" for node compatibility. isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod); }; var __toCommonJS = function(mod) { return __copyProps(__defProp({}, "__esModule", { value: true }), mod); }; // src/index.tsx var src_exports = {}; __export(src_exports, { LucideIconPicker: function() { return LucideIconPicker; }, getLucideIcon: function() { return getLucideIcon; } }); module.exports = __toCommonJS(src_exports); var import_react = __toESM(require("react"), 1); // src/fields/lucide-icon-picker.ts var LucideIconPicker = function() { var overrides = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}; return { type: "json", name: overrides.name || "LucideIconPicker", label: overrides.label || "Lucide Icon Picker", defaultValue: overrides.defaultValue || { name: "", size: 24, color: "currentColor", strokeWidth: 2, absoluteStrokeWidth: false }, admin: { components: { Field: { path: "payload-lucide-picker/dist/fields/component/index#IconSelectField" } } }, required: overrides.required || false }; }; // src/index.tsx var import_dynamicIconImports = __toESM(require("lucide-react/dynamicIconImports"), 1); var import_lucide_react = require("lucide-react"); var import_dynamic = __toESM(require("next/dynamic"), 1); var iconCache = {}; var getLucideIcon = function(iconConfig) { var IconComponent = iconConfig.name && import_dynamicIconImports.default[iconConfig.name] ? function() { if (!iconCache[iconConfig.name]) { iconCache[iconConfig.name] = (0, import_dynamic.default)(import_dynamicIconImports.default[iconConfig.name]); } return iconCache[iconConfig.name]; }() : import_lucide_react.HelpCircle; return function IconWithProps(props) { return /* @__PURE__ */ import_react.default.createElement(IconComponent, _object_spread_props(_object_spread({}, props), { size: iconConfig.size, color: iconConfig.color, strokeWidth: iconConfig.strokeWidth, absoluteStrokeWidth: iconConfig.absoluteStrokeWidth })); }; }; // Annotate the CommonJS export names for ESM import in node: 0 && (module.exports = { LucideIconPicker: LucideIconPicker, getLucideIcon: getLucideIcon }); //# sourceMappingURL=index.cjs.map