{"version":3,"file":"index-DGQz0YIG.mjs","sources":["../../admin/src/pluginId.ts","../../admin/src/components/Initializer.tsx","../../admin/src/components/CustomInputIcon.tsx","../../admin/src/components/PluginIcon.tsx","../../admin/src/index.ts"],"sourcesContent":["const PLUGIN_ID = 'strapi-google-maps';\n\nexport { PLUGIN_ID };","import { useEffect, useRef } from 'react';\n\nimport { PLUGIN_ID } from '../pluginId';\n\ntype InitializerProps = {\n  setPlugin: (id: string) => void;\n};\n\nconst Initializer = ({ setPlugin }: InitializerProps) => {\n  const ref = useRef(setPlugin);\n\n  useEffect(() => {\n    ref.current(PLUGIN_ID);\n  }, []);\n\n  return null;\n};\n\nexport { Initializer };\n","import React from 'react';\n\nconst CustomInputIcon = () => {\n    return (\n        <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n            <path d=\"M14.5 2.25H1.5C0.809644 2.25 0.25 2.80964 0.25 3.5V12.5C0.25 13.1904 0.809644 13.75 1.5 13.75H14.5C15.1904 13.75 15.75 13.1904 15.75 12.5V3.5C15.75 2.80964 15.1904 2.25 14.5 2.25Z\" fill=\"#EAFBE7\" stroke=\"#C6F0C2\" stroke-width=\"0.5\" />\n            <g clip-path=\"url(#clip0_498_201)\">\n                <path d=\"M9.591 9.34098L8 10.932L6.409 9.34098C6.09434 9.02631 5.88005 8.6254 5.79323 8.18894C5.70642 7.75249 5.75098 7.30009 5.92127 6.88896C6.09157 6.47782 6.37996 6.12642 6.74997 5.87919C7.11998 5.63196 7.55499 5.5 8 5.5C8.44501 5.5 8.88002 5.63196 9.25003 5.87919C9.62004 6.12642 9.90843 6.47782 10.0787 6.88896C10.249 7.30009 10.2936 7.75249 10.2068 8.18894C10.12 8.6254 9.90567 9.02631 9.591 9.34098ZM8 8.24998C8.13261 8.24998 8.25979 8.1973 8.35355 8.10353C8.44732 8.00977 8.5 7.88259 8.5 7.74998C8.5 7.61737 8.44732 7.4902 8.35355 7.39643C8.25979 7.30266 8.13261 7.24998 8 7.24998C7.86739 7.24998 7.74022 7.30266 7.64645 7.39643C7.55268 7.4902 7.5 7.61737 7.5 7.74998C7.5 7.88259 7.55268 8.00977 7.64645 8.10353C7.74022 8.1973 7.86739 8.24998 8 8.24998Z\" fill=\"#328048\" />\n            </g>\n            <defs>\n                <clipPath id=\"clip0_498_201\">\n                    <rect width=\"6\" height=\"6\" fill=\"white\" transform=\"translate(5 5)\" />\n                </clipPath>\n            </defs>\n        </svg>\n\n    );\n};\n\nexport default CustomInputIcon;\n","import CustomInputIcon from './CustomInputIcon';\n\nconst PluginIcon = () => <CustomInputIcon />;\n\nexport { PluginIcon };\n","import { PLUGIN_ID } from './pluginId';\nimport { Initializer } from './components/Initializer';\nimport { PluginIcon } from './components/PluginIcon';\n\nexport default {\n    register(app: any) {\n        app.createSettingSection(\n            {\n                id: PLUGIN_ID,\n                intlLabel: {\n                    id: 'settings.section-label',\n                    defaultMessage: 'Google Maps',\n                },\n            }, // Section to create\n            [\n                // links\n                {\n                    intlLabel: {\n                        id: 'settings.link-label',\n                        defaultMessage: 'Configuration',\n                    },\n                    id: PLUGIN_ID,\n                    to: `/settings/${PLUGIN_ID}`,\n                    Component: () => import('./pages/Settings'),\n                    permissions: [\n                        { action: `plugin::${PLUGIN_ID}.config`, subject: null },\n                    ],\n                },\n            ]\n        );\n\n        app.customFields.register({\n            name: 'location-picker',\n            pluginId: PLUGIN_ID,\n            type: 'json',\n            intlLabel: {\n                id: 'input.label',\n                defaultMessage: 'Location Picker',\n            },\n            intlDescription: {\n                id: 'input.description',\n                defaultMessage: 'Pick your location',\n            },\n            icon: PluginIcon,\n            components: {\n                Input: () => import('./components/Input'),\n            },\n            options: {\n                advanced: [\n                    {\n                        name: 'optionsDefaultLat',\n                        type: 'string',\n                        intlLabel: {\n                            id: 'attribute.item.default-lat',\n                            defaultMessage: 'Default latitude',\n                        },\n                    },\n                    {\n                        name: 'optionsDefaultLng',\n                        type: 'string',\n                        intlLabel: {\n                            id: 'attribute.item.default-lng',\n                            defaultMessage: 'Default longitude',\n                        },\n                    },\n                    {\n                        sectionTitle: {\n                            id: 'global.settings',\n                            defaultMessage: 'Settings',\n                        },\n                        items: [\n                            {\n                                name: 'required',\n                                type: 'checkbox',\n                                intlLabel: {\n                                    id: 'form.attribute.item.required-field',\n                                    defaultMessage: 'Required field',\n                                },\n                                description: {\n                                    id: 'form.attribute.item.required-field.description',\n                                    defaultMessage:\n                                        \"You won't be able to create an entry if this field is empty\",\n                                },\n                            },\n                        ],\n                    },\n                ],\n            },\n        });\n\n        app.registerPlugin({\n            id: PLUGIN_ID,\n            initializer: Initializer,\n            isReady: false,\n            name: PLUGIN_ID,\n        });\n    },\n\n    async registerTrads({ locales }: { locales: string[] }) {\n        return Promise.all(\n            locales.map(async (locale) => {\n                try {\n                    const { default: data } = await import(`./translations/${locale}.json`);\n\n                    return { data, locale };\n                } catch {\n                    return { data: {}, locale };\n                }\n            })\n        );\n    },\n};\n"],"names":[],"mappings":"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"}