{"_id":"publisher-property-editor","_rev":"41-69b274a782d5ed001a078f72534e680d","name":"publisher-property-editor","dist-tags":{"latest":"0.8.0"},"versions":{"0.0.0-dev1":{"name":"publisher-property-editor","version":"0.0.0-dev1","_id":"publisher-property-editor@0.0.0-dev1","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"7a4b8a109f898139a8307d4d4d202a362c332bce","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.0.0-dev1.tgz","fileCount":188,"integrity":"sha512-aUEfWlXszSgNvzJLNE6X9d0Wm3JdbNcdpOV9+5j5IqRVjv3HKF65gHkJ5TvkCbkHsMTsrSdeSdJZYNhnOr+tFg==","signatures":[{"sig":"MEUCIQDhxMKcA8VvLfnc2hTE74i7tpJPUq5fDKYP+KHFCfv48AIgezLEfnrsRDT5x6u4V7YPGebYy1FJcWIh2Dwa9mHdJLU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":338187},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"dependencies":{"lodash":"^4.17.21","moment":"^2.29.4","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","publisher-sdk":"^1.15.3","@tippyjs/react":"^4.2.6","react-spinners":"^0.13.8","react-toastify":"^9.1.3","postcss-nesting":"^12.0.1","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"latest","sass":"^1.69.5","axios":"^1.6.2","dexie":"^3.2.4","react":"latest","eslint":"latest","postcss":"latest","react-dom":"latest","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","react-dropzone":"^14.2.3","@types/react-dom":"latest","dexie-react-hooks":"^1.1.7","selector-provider":"^1.0.0","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.0.0-dev1_1700250385821_0.8233395432026158","host":"s3://npm-registry-packages"}},"0.0.0-dev2":{"name":"publisher-property-editor","version":"0.0.0-dev2","_id":"publisher-property-editor@0.0.0-dev2","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"7ca91ada19535af8334bc7ed5e16763af63309ff","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.0.0-dev2.tgz","fileCount":319,"integrity":"sha512-MWW4CfEltp1u6fsKnYMEViUyQeVztHGd09GXkWhlFF9tdX6DtS3omHJTdB20/iB5lLj/IX2Ojc15oI9Lw0WHOQ==","signatures":[{"sig":"MEUCIQCFAgfit51YULvou5rWrccRARiHV6Vg+KcfcHM5k0DzugIgaHpZ8vGbHu9rmi90f0GwDrgOjOGO2pX3PEhx90MDK4U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":407085},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"dependencies":{"lodash":"^4.17.21","moment":"^2.29.4","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","publisher-sdk":"^1.15.3","@tippyjs/react":"^4.2.6","react-spinners":"^0.13.8","react-toastify":"^9.1.3","postcss-nesting":"^12.0.1","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","publisher-property-editor":"^0.0.0-dev1","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"latest","sass":"^1.69.5","axios":"^1.6.2","dexie":"^3.2.4","react":"latest","eslint":"latest","postcss":"latest","react-dom":"latest","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","react-dropzone":"^14.2.3","@types/react-dom":"latest","dexie-react-hooks":"^1.1.7","selector-provider":"^1.0.0","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.0.0-dev2_1700250865512_0.4052870286820025","host":"s3://npm-registry-packages"}},"0.0.0-dev3":{"name":"publisher-property-editor","version":"0.0.0-dev3","_id":"publisher-property-editor@0.0.0-dev3","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"7d74733ef8ae1f77562cb253a4c95a9d017b24dd","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.0.0-dev3.tgz","fileCount":319,"integrity":"sha512-E/xLCSadl2RVbaw6Gf+XHljMHxc9FkBhDve7abMvANhK/hdrJDeb3Yb+uVoLC+QeTOxCuLpoQeVpa/bJaSHGnA==","signatures":[{"sig":"MEUCIBLDO2Pb7dBVliJr9d8a2LfX2qMiY+Il4oxLFxVu2quKAiEAt/nKY2oeoTRu1mQBZY0GRDHXm2WCy3wcu7JUfOlGw0M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":407085},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"dependencies":{"lodash":"^4.17.21","moment":"^2.29.4","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","publisher-sdk":"^1.15.3","@tippyjs/react":"^4.2.6","react-spinners":"^0.13.8","react-toastify":"^9.1.3","postcss-nesting":"^12.0.1","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","publisher-property-editor":"^0.0.0-dev2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"latest","sass":"^1.69.5","axios":"^1.6.2","dexie":"^3.2.4","react":"latest","eslint":"latest","postcss":"latest","react-dom":"latest","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","react-dropzone":"^14.2.3","@types/react-dom":"latest","dexie-react-hooks":"^1.1.7","selector-provider":"^1.0.0","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.0.0-dev3_1700250986576_0.7876870398494957","host":"s3://npm-registry-packages"}},"0.0.0-dev4":{"name":"publisher-property-editor","version":"0.0.0-dev4","_id":"publisher-property-editor@0.0.0-dev4","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"63fe712699a45ff380328b79e9c012388b309b75","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.0.0-dev4.tgz","fileCount":293,"integrity":"sha512-BqaspwUlvNd5Kfqu6hnCzkTiozOhgkUP91Vr7M5WDsI/j4A0I4KV0gC7w1M5qV1HwPWflYoX87JzuAEcSAjW4A==","signatures":[{"sig":"MEQCID0pI/wlnXVQU8JQk4JqvTiz14m9gqQhpmcBt4354HyVAiBSGR2v1szcolddp4w//yac3qrN8F7nZNmAA2zfE4wV3g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":374196},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"dependencies":{"lodash":"^4.17.21","moment":"^2.29.4","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","publisher-sdk":"^1.15.3","@tippyjs/react":"^4.2.6","react-spinners":"^0.13.8","react-toastify":"^9.1.3","postcss-nesting":"^12.0.1","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"latest","sass":"^1.69.5","axios":"^1.6.2","dexie":"^3.2.4","react":"latest","eslint":"latest","postcss":"latest","react-dom":"latest","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","react-dropzone":"^14.2.3","@types/react-dom":"latest","dexie-react-hooks":"^1.1.7","selector-provider":"^1.0.0","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.0.0-dev4_1700273507521_0.6921882249286961","host":"s3://npm-registry-packages"}},"0.0.0-dev5":{"name":"publisher-property-editor","version":"0.0.0-dev5","_id":"publisher-property-editor@0.0.0-dev5","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"2cf9857adce00a71731c56cae427878e29f10433","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.0.0-dev5.tgz","fileCount":293,"integrity":"sha512-dOB8oh3fmrg5JC5QXob7K7CSwuAChSR9ZwZ5KzipVK4xjQb8+kcaA+IOTHWxDIodyMXxHPRyb0wVeM+Ekwtvfg==","signatures":[{"sig":"MEYCIQDFbHeuUTiu0T1Z8VcMsUBczCLDPJpnVHOlSG0FOptAzAIhAPou6iKcUa98NQufMKVVGQH4mgwXZqKagvpkpV1/sztq","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":364568},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"dependencies":{"lodash":"^4.17.21","moment":"^2.29.4","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","publisher-sdk":"^1.15.3","@tippyjs/react":"^4.2.6","react-spinners":"^0.13.8","react-toastify":"^9.1.3","postcss-nesting":"^12.0.1","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"latest","sass":"^1.69.5","axios":"^1.6.2","dexie":"^3.2.4","react":"latest","eslint":"latest","postcss":"latest","react-dom":"latest","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","react-dropzone":"^14.2.3","@types/react-dom":"latest","dexie-react-hooks":"^1.1.7","selector-provider":"^1.0.0","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.0.0-dev5_1700275032237_0.7373471771419227","host":"s3://npm-registry-packages"}},"0.0.0-dev6":{"name":"publisher-property-editor","version":"0.0.0-dev6","_id":"publisher-property-editor@0.0.0-dev6","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"b24a36f34624452c464d37a24eeb244dfdd22aab","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.0.0-dev6.tgz","fileCount":293,"integrity":"sha512-CApOFWn5sopthlDez0d0rCHqfbRcJAu6+eap2yUhJ7mOrZBJtGXLpclIG6c9AQCSpc2izoYDXu9qv0tPT7Tm3A==","signatures":[{"sig":"MEUCIHYsOfgR4nWf2gN+iwE7oBjseBjRuAkz+GEDlspvFte7AiEAlIniSUsnBqv1YfjfsMxSjG3/bGicFikBxP+daDRqcAg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":364771},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.0.0-dev6_1700313071874_0.1791647563361327","host":"s3://npm-registry-packages"}},"0.0.0-dev7":{"name":"publisher-property-editor","version":"0.0.0-dev7","_id":"publisher-property-editor@0.0.0-dev7","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"18396b31865697d641c98ca9790963f997c9242a","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.0.0-dev7.tgz","fileCount":297,"integrity":"sha512-FvO6QO9/0tpL1FUjYGp8U8n1ekx9W4400RdqzZLzQl09HI5Fs8uY529P86dI9NRhuIUHCjsJ1hRmmljg5NmBiQ==","signatures":[{"sig":"MEUCIGfAGmQEfSNGt0XlpsaHVj+3cggwrv/wewcWgNcGyoIQAiEA5LdAnSX9PyvuJmNs7wjExP1mtW+ATOW8+V1o3gf5h2o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":380173},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.0.0-dev7_1700438319228_0.7989330736824893","host":"s3://npm-registry-packages"}},"0.0.0-dev8":{"name":"publisher-property-editor","version":"0.0.0-dev8","_id":"publisher-property-editor@0.0.0-dev8","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"c2ee343c6e555366840f1164e100bab486fca98b","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.0.0-dev8.tgz","fileCount":297,"integrity":"sha512-6/Iy6TTRT1pijBTe41C/mdKY5kD9LklqTIrpoQTNVTa/wzJ5w865K10UXoXEl6Noc8wtckBkTSa27LxP/tbYKw==","signatures":[{"sig":"MEUCIQCJRukaA20b269ThFEEvTS3iW75JxFIOEDUq53GmIN0QAIgQqg8dZH5Up1DFEycLRvpRWN+9zO5kDa7kYgjxuFMq1Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":385849},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.0.0-dev8_1700447201221_0.9527833530189465","host":"s3://npm-registry-packages"}},"0.0.0-dev9":{"name":"publisher-property-editor","version":"0.0.0-dev9","_id":"publisher-property-editor@0.0.0-dev9","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"6485e6de86c5ce0385e30c193df238b47d646fda","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.0.0-dev9.tgz","fileCount":297,"integrity":"sha512-LnCj7Rc2q/gVgwXRb7YnJnJ/BwtPtjN2m9dSB2sCHu4o/cbLicgqBiy7f0ubvU9eqQArAlpKpHzE5LsQFLHxGw==","signatures":[{"sig":"MEYCIQD0pXjxZtJdXuumXDPueCnqrRSy5pZp7jVQaRvf4tw4WwIhAIuIpXKd+aa3hio9MbzH7J7s+hqOCBq/bijFMqknfich","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":385922},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.0.0-dev9_1700568953338_0.7425369455426492","host":"s3://npm-registry-packages"}},"0.0.0-dev10":{"name":"publisher-property-editor","version":"0.0.0-dev10","_id":"publisher-property-editor@0.0.0-dev10","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"12a69037a43a5422bf9a7daebe7087d78e40119d","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.0.0-dev10.tgz","fileCount":297,"integrity":"sha512-z/O4Us30oTlAXJROauoQe7iTsm+bn8+XvSkUyXV8wkZqF/3DzWrv0YkOgPcZEsJwrSeMCBAd1fm4O9VSqt6rFQ==","signatures":[{"sig":"MEUCIQC9ZTtTCCne0sbTjLnrV7ZGl6YVPjlPOF6WrKnSftCXhwIgRYptNPoRnyruDyaBYSjBVuSrLyEhcRAVMRj69Xs1cvM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":386070},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.0.0-dev10_1700689468912_0.6490128328669547","host":"s3://npm-registry-packages"}},"0.0.1":{"name":"publisher-property-editor","version":"0.0.1","_id":"publisher-property-editor@0.0.1","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"57c5ac31b24925d8fc61328fc8804744c10e7c13","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.0.1.tgz","fileCount":297,"integrity":"sha512-2PE03+2dgnrIGDc9PfEH7sNj8XocSg1wU+b1BpKPoZDMGImGN+xq3UqcmXttGJQxiU4TBAj1rLFV80Z4QzTuUw==","signatures":[{"sig":"MEUCIDkWB72BiBL059/deLwykbamN0szuJ41a2A2+nxrS5k4AiEAuwHl7/eUYlD4JI8oCcrTPQ5z/pLmVMPgPKoo0/hj7wg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":386582},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.0.1_1700773600042_0.6433668031822517","host":"s3://npm-registry-packages"}},"0.0.2":{"name":"publisher-property-editor","version":"0.0.2","_id":"publisher-property-editor@0.0.2","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"701894885d572a8dc66b0f67ba247e439bd151f2","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.0.2.tgz","fileCount":297,"integrity":"sha512-6k0fncrh07SSq7prgYBsuO6n3SwBbDbDAonSLpZ/EUVaCzW8NV/wDdgoOx0Up6NAjTUhG0N/fCD0rbPZ+ZExNg==","signatures":[{"sig":"MEYCIQDheOwNpwWqIZ+YL9EkCzuMwBHP4xKTF4Wh2tHP0fd8GAIhAOQ6NZPUem8uKGH/KYoS/5wXOWlqB4Yu3RPUCe+341hn","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":385764},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.0.2_1701096886178_0.2351488244752622","host":"s3://npm-registry-packages"}},"0.0.3":{"name":"publisher-property-editor","version":"0.0.3","_id":"publisher-property-editor@0.0.3","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"cac63fb26592acc5d0d430dae137bcb9b7b93c1a","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.0.3.tgz","fileCount":297,"integrity":"sha512-ipd9N95C7ManXotbSgExZx4enD794B6+5ntju32NA3dZJ1rZW0j6AVk0/2JMGR+BGwRgm8zqJSSgg4s6LRTWkg==","signatures":[{"sig":"MEYCIQCngyiiWCnL2ki9lT1O0eGgPmWXnaAxfCwYI/aU1sTpHAIhAMLV3kfH95xsr541MXad7ZZLuLxpJJFr/Cr3Asapdrrj","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":385908},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.0.3_1701097986565_0.25129078751128486","host":"s3://npm-registry-packages"}},"0.0.4":{"name":"publisher-property-editor","version":"0.0.4","_id":"publisher-property-editor@0.0.4","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"16e2976c82342598f9915ddccc73b4297f14d764","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.0.4.tgz","fileCount":297,"integrity":"sha512-SZB0uLRZ/9RsfrCUQOS5OQ4SSe24O2lge/Njkkn9MooLw/y4bgrwEub6XaZ7dBtQGfsBx9gMSc5FyUUkDmMiwQ==","signatures":[{"sig":"MEUCIQC/+zYf6dAfHL5dYcjP10cm6WL128EMe9o6V0JSkRnowgIgUNFUTrOVgO/6fU9metjQhQwMsX8V7RXEFtNSQMUgUaY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":386006},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.0.4_1701098525273_0.9907812454174489","host":"s3://npm-registry-packages"}},"0.0.5":{"name":"publisher-property-editor","version":"0.0.5","_id":"publisher-property-editor@0.0.5","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"1cf8c1d5448f7dfe66d2019109510485b14abf9a","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.0.5.tgz","fileCount":297,"integrity":"sha512-9yKfXrZ0mSx31lVmL8u62LQWn8DStbIU7gKxolXF+6q8P3FJlomm6eZCVJxP3hHr+FQDnH2ynHW0iqZv5ntn8Q==","signatures":[{"sig":"MEUCIQDKvyiVCkX9wV7HhT2+xBUNLmj8rheW8wYda6Z1NM/JowIgCmiNVJklVjwjPnecD9Ez1ewUQ7YI4ovCBFVWUyCClYw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":387556},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.0.5_1701303046001_0.3999528732751516","host":"s3://npm-registry-packages"}},"0.0.6":{"name":"publisher-property-editor","version":"0.0.6","_id":"publisher-property-editor@0.0.6","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"0e859f7f4bbdbc046509a391e4c1315f2a909214","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.0.6.tgz","fileCount":297,"integrity":"sha512-nQNkyrQEG+TNqdAqRv8vvvL3RWLG4koTl0zhARawXSW2cgg34z7xnO3jB6hzLY4akcca/MLGBFm9ulylNMteQA==","signatures":[{"sig":"MEYCIQCkKzt/MIxZ1i0XEkEUS72uIZKP9fKjGMpNmCvK6QCUhQIhAK5rzjwWlej1h0hLH7BaN8kat9Ch9DosKTMnCRzvlnHf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":387628},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.0.6_1701688083292_0.38061869341121213","host":"s3://npm-registry-packages"}},"0.0.7":{"name":"publisher-property-editor","version":"0.0.7","_id":"publisher-property-editor@0.0.7","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"38bad5f5023dd48ad3933f2cac1a68e9fac58192","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.0.7.tgz","fileCount":297,"integrity":"sha512-y+734+hyfYq0+M0Gi9x/In9Zgxu2yjmnihK46ZxzOCCSK0At4VF0Ogp7eksPcI4kMTjwn3wTCL5Suu/m9z0ENw==","signatures":[{"sig":"MEYCIQDf5wMQY4N9h4/RF2siIZMf0LZ0+cBkDrgmQ3xRicRaKwIhAKPlK4AChOhieyuzz9Kq1VKYXYLY93pKVlKHASF+fpTa","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":388974},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.0.7_1701884593451_0.890401460529731","host":"s3://npm-registry-packages"}},"0.0.8":{"name":"publisher-property-editor","version":"0.0.8","_id":"publisher-property-editor@0.0.8","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"91fe74dd022a38e735d7f322f3e8cc133f91d378","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.0.8.tgz","fileCount":297,"integrity":"sha512-uypcRCRutiDUz8Bp4HVQPQPNHVwNndn9el+9xMjClDKQnARB1eoeX8+hUZxUlMKDaDWIxcT//qbrcKGQ+oseYA==","signatures":[{"sig":"MEQCIGZGx+k5zHraqYNtwTC95vaS/PqEYIkPwAcKNlBY5ccKAiAu8wmrMj3vw/CjEeaw4K2JU0um9EmzI9bgI6FSZMoFCA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":389716},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.0.8_1701885318505_0.7049643501986844","host":"s3://npm-registry-packages"}},"0.0.9":{"name":"publisher-property-editor","version":"0.0.9","_id":"publisher-property-editor@0.0.9","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"bd1218bd847d6664d85121b7b9361b7ba0444a0d","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.0.9.tgz","fileCount":297,"integrity":"sha512-Qp/79D1EeblLJLG2LratMaiTGf9shZa5car7P8QbJ6Lzd/mipwVaNOQt2MrilYciB2IQMgNzMdwpYqReIlp1lQ==","signatures":[{"sig":"MEUCIQCe8RN+I8sioNesNK313dkCs6CVWuhUGZohgqAfwiEjvwIgV5p13TE3YlHq5Sfi9GkvY4GcFNJJrFoa0tkD3kvZ4+c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":390082},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.0.9_1701954602923_0.5132145697543276","host":"s3://npm-registry-packages"}},"0.1.0":{"name":"publisher-property-editor","version":"0.1.0","_id":"publisher-property-editor@0.1.0","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"cd2f7b25e1b032bed02baba37c5c7e2a5a03f65b","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.1.0.tgz","fileCount":297,"integrity":"sha512-Ib+nlDVbWrdiKDjqjxUEAjt9xiQiDbgWRcbXmcES7WjKUssSXaCBMEGxIUnNkhK1WKLi7RNJF6RlpVJ1TYrhlA==","signatures":[{"sig":"MEUCIA67wEI/HtuxUwLpi5dFY6p65fEHX7U5ExjYtwU+80TlAiEA0kfIN0ikBk5Qr/snXvswihJ0UsgNii0h4YSvaE99XQU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":390102},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.1.0_1702035598346_0.4319824088602162","host":"s3://npm-registry-packages"}},"0.1.2":{"name":"publisher-property-editor","version":"0.1.2","_id":"publisher-property-editor@0.1.2","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"8f7ffbb512138d4f0bb2be05f3d6be12ccfeca5b","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.1.2.tgz","fileCount":297,"integrity":"sha512-n85G7QBLRxLK+G3NlJCDsDIPJCH6itIeYrdnF8PujzhIng2yVIBv5rxRt3Z228ZNkFg2vOZedL0mA6xp3dk75A==","signatures":[{"sig":"MEUCIQDRsw5lpTkipXEwJtDIs5eQNGL/5J6FCxLgzmZ87UijaQIgCE2K0+sAJ5xbGLIiaiXEDkwCojl+xL4ZVSTFtKbeN2U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":390244},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.1.2_1703984458622_0.19387573368643674","host":"s3://npm-registry-packages"}},"0.2.0":{"name":"publisher-property-editor","version":"0.2.0","_id":"publisher-property-editor@0.2.0","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"b912c3dd585565206e9222e78fc0061e16c6059b","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.2.0.tgz","fileCount":243,"integrity":"sha512-3ieT4YRDJDOQ/y6mBMk9ocwRQV4kChxFRihBl6jpkXJh7lJ9tZyaC8Eaz2MT+CYh8qGXlEmx1pWljUAx+Eun7w==","signatures":[{"sig":"MEYCIQDSZEP/FxGatnoh4HANuua3SR844ZEWf+en3hsYmeOBpQIhAP0qWQD4yU/vu7Ewnc+yn5MKAfgYX+kT03UPNA82uSMm","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":372234},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","jaster-form":"^0.0.0-dev3","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.1.15","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.2.0_1704722268739_0.3243399939841989","host":"s3://npm-registry-packages"}},"0.2.1":{"name":"publisher-property-editor","version":"0.2.1","_id":"publisher-property-editor@0.2.1","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"3bb194ecbd3ac74be286e1ac933ad8070cd6573b","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.2.1.tgz","fileCount":243,"integrity":"sha512-jl0ObjW+6sOt8tBqnEC1kDvy084BzFYHFkKQBqaDPV80Ek40QsrGf+EdHGycdAYJ0sm5tl9XppSqYWAfpKMkaw==","signatures":[{"sig":"MEUCIQCAvtnPSM5QiMdVWZN5oKs3pfIFGPwnMlZYJr6nD+gJLQIgc66HWy/qn3kgF4uT2EXVCmRy+TBCWAOY8nPS8znt8qk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":375970},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","jaster-form":"^0.0.0-dev3","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.2.0","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.2.1_1706834820587_0.2252780798967715","host":"s3://npm-registry-packages"}},"0.2.2":{"name":"publisher-property-editor","version":"0.2.2","_id":"publisher-property-editor@0.2.2","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"31d473f17fbe28324045f6ffdfd1f331aa76412d","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.2.2.tgz","fileCount":243,"integrity":"sha512-3GdwpeQWr4Y7HMHyE2rnvb6GHX+g3M0C3y8PFjKQ94e5gIB2FmxZDA1GUHO1VlFbGbjX29YPm43b1oOrhOrtng==","signatures":[{"sig":"MEUCIQC8JXN/f5dovMJueVK2GMQ4dEsRI0mwLb1CUZUq0aKQOAIgAR/Bas0x3Hb2H7l6pQTJlSWOiixtzMMiRNGs0KqZzPw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":376099},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","jaster-form":"^0.0.0-dev3","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.2.0-dev3","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.2.2_1706840558665_0.20697912175774236","host":"s3://npm-registry-packages"}},"0.2.3":{"name":"publisher-property-editor","version":"0.2.3","_id":"publisher-property-editor@0.2.3","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"8cc0934aef5cde9e0ae0eb7172c1d91f78a4a230","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.2.3.tgz","fileCount":243,"integrity":"sha512-b5X47mc3a4ED/uulLLvfKL2IBM46VNJIbFwnB/HuDLFuecX1xNTM/2dzMhLT8YRPIJaekO83MiRwT3B8MxV2KQ==","signatures":[{"sig":"MEUCIQD8XiSN6vsl4kDR7Kz97/hwH50ESXYVi1lrbccYnu+KdgIgEtSnvP9QITYZ2dIe2aO4EXOgFWCitf55BUmEpzXmY7Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":376094},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","jaster-form":"^0.0.0-dev3","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.2.1","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.2.3_1706841480815_0.10924025122946168","host":"s3://npm-registry-packages"}},"0.2.4":{"name":"publisher-property-editor","version":"0.2.4","_id":"publisher-property-editor@0.2.4","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"95c0c1095c2b87d710ab56f61659efdd5efea377","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.2.4.tgz","fileCount":243,"integrity":"sha512-Fw0n3VQHcD0kIzu2X16Rg9GTVr3ffQ6Sm9k0WcZySrYIQHYTDdQJ2fK1MSH4GoVsxDYMRet4I4AqNmb1OUebMg==","signatures":[{"sig":"MEQCIE4hPt37C8IKHVVDEJpS54zT2Lo2yR5wo0MUsBF67puyAiAmBbiXsJIeypn5K80pJDVyjbPx1+8/uiS/3WJUYxr+Wg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":376094},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","jaster-form":"^0.0.0-dev3","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.2.4","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.2.4_1706841799367_0.622004356660661","host":"s3://npm-registry-packages"}},"0.2.5":{"name":"publisher-property-editor","version":"0.2.5","_id":"publisher-property-editor@0.2.5","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"cfd51e1c5242abc2273a8c8b7b7e2e0faf2b5958","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.2.5.tgz","fileCount":243,"integrity":"sha512-NHc11rJy2ySfMhEJEeEinx4epcSJ9AWTAiuwouC84rHHlvMV4s+ZCtMsESCg4l8ei4/uRdTkxjqMnfSJJfKoXg==","signatures":[{"sig":"MEUCIDShPptOnBqZXukDKtgSvzrbqaLmL0PKElq8prXNEXb3AiEAgv0Y4FYa8Kj6dEYkTWJOZoWI6S/SY0HtbZr/BZCcIWE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":376432},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","jaster-form":"^0.0.0-dev3","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.2.4","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.2.5_1706882658567_0.34461375773835057","host":"s3://npm-registry-packages"}},"0.2.6":{"name":"publisher-property-editor","version":"0.2.6","_id":"publisher-property-editor@0.2.6","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"631706be0fe33506381ef815e6df86071409f96b","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.2.6.tgz","fileCount":243,"integrity":"sha512-uu125/frI8c3/u3zs20DI41Ft/BmD1Ak9R+WnN2/t6UQWwfP9yfs4KfZvBpZdgc8bKJD5EtDsJIXcxlisD9cmA==","signatures":[{"sig":"MEUCIBw6MdUPN/FHZBinNkQ6A2s5AJzpRd3ovlL59eerXzsvAiEAqdN/IFIJjHo2jFxsEnTRHAVFkHGJoadQg6DKogSXNCY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":376768},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","jaster-form":"^0.0.0-dev3","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.2.4","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.2.6_1707079194227_0.23917799680272878","host":"s3://npm-registry-packages"}},"0.2.7":{"name":"publisher-property-editor","version":"0.2.7","_id":"publisher-property-editor@0.2.7","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"9b613b94af18dfa7e716b26171fc8b4105844a72","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.2.7.tgz","fileCount":243,"integrity":"sha512-oktpAgsK42XYVm3TuwpUsVgtWxjAln/if56QuPOiUv/+IEAez8pCDcLQZ3VbVS//cF2kWXRMcZyIVFC6wSI7iA==","signatures":[{"sig":"MEYCIQDtYAdFqLcyO/4axrHAW6fw5sqxEujzAgg+yVkDutEXmAIhAIOdAa5amQuzUn5mC6ZlTmy9RYgVIEvXy69O1okl1LuF","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":381510},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","jaster-form":"^0.0.0-dev3","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","react-master-gallery":"^0.2.4","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.2.7_1708103703536_0.33817326465073694","host":"s3://npm-registry-packages"}},"0.2.8":{"name":"publisher-property-editor","version":"0.2.8","_id":"publisher-property-editor@0.2.8","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"3ca5357c824331e36012b3c7937339fef9bd928f","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.2.8.tgz","fileCount":243,"integrity":"sha512-Z9xaTRMVj7+ZgbIx5MN49ja1aizYLFeqb73T7InEdJ4OxnwcmKghegiB2pzV09maQX17eoBQqanc57BMG4oA1g==","signatures":[{"sig":"MEYCIQDZkfEW0qWv8WriWEWV5GxpfwrlVrPm9rq/fppANWF83AIhALKWjnJk8ql4KG8oucUqvkxmUZ3HsHCqcaTRILa0CUvr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":384420},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","jaster-form":"^0.0.0-dev3","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","br-address-formatter":"^1.3.0","react-master-gallery":"^0.2.4","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.2.8_1708107548784_0.9186203252788347","host":"s3://npm-registry-packages"}},"0.3.0":{"name":"publisher-property-editor","version":"0.3.0","_id":"publisher-property-editor@0.3.0","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"c39632c8e07a60a4202bdd3736a9696bba3f5c40","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.3.0.tgz","fileCount":243,"integrity":"sha512-k2QUTpIgZgXUQsA/JwqryPAC8WGBLQIuQjYb8ueWNFeChYpvoHYqSih/QRtU/5wY17ZFdIjF5ccsgzxBKa/Qrg==","signatures":[{"sig":"MEUCIQCbqXyeIG1IgCdaFI5WZ24KVOIiMydx1bjXmpFOIr++qwIgSFZpTfPq8VCqDtyj5shCiwnQuWzAmYQuQZHCgfVyBY4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":384239},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","form-grid":"^0.1.4","jaster-form":"^0.0.0-dev3","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","br-address-formatter":"^1.3.0","react-master-gallery":"^0.2.4","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.3.0_1708113777875_0.3946454921901359","host":"s3://npm-registry-packages"}},"0.3.1":{"name":"publisher-property-editor","version":"0.3.1","_id":"publisher-property-editor@0.3.1","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"d2904d24d3a93d9ac634ceaae93245cd5020a37e","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.3.1.tgz","fileCount":250,"integrity":"sha512-tHxaAsIKLhaWfSQqki1YOEJfGChpD43hB0pSZ+8GJYxKD0vMyc2LQG5TUeHz4fGfBKulzZcx8F8VTNOYk1ranA==","signatures":[{"sig":"MEUCICUwjCM4XvPkTt7ShdIp06AaEI6FKLbIecfRdx8buz0HAiEA9rBUQQAFPcRtoadNrOsAiPFrSFo/t9YdOwAgRrlGyGY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":318780},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","tippy.js":"^6.3.7","form-grid":"^0.1.4","jaster-form":"^0.0.0-dev3","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","br-address-formatter":"^1.3.0","react-master-gallery":"^0.2.4","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.3.1_1740236987120_0.4339211648684733","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"publisher-property-editor","version":"0.3.2","_id":"publisher-property-editor@0.3.2","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"bd0832122fafeeaec7e1cc932a378bf8dcebff72","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.3.2.tgz","fileCount":251,"integrity":"sha512-+8pJOQRI8B8kw3zsOqK8t0TDGXapSJJDNqUM3Dz5DghQsKoI19uYzgeGm12CZSdvEG9XiyP6V0BMQvCz+J+a1w==","signatures":[{"sig":"MEQCIDbIks7rkvedx056pSejmwE0E0vyZCxBOnfczBfGXfHoAiAdHnUYHVGm4KdP7EHXJ+pE1NAslhjl8acClbzmi6hXow==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":388819},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","tippy.js":"^6.3.7","form-grid":"^0.1.4","jaster-form":"^0.0.0-dev3","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","br-address-formatter":"^1.3.0","react-master-gallery":"^0.2.4","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.3.2_1740237121890_0.9290001301213351","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"publisher-property-editor","version":"0.3.3","_id":"publisher-property-editor@0.3.3","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"4543981df3633cfedbef601e765b674d69510af6","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.3.3.tgz","fileCount":251,"integrity":"sha512-dx5e/Dzdr0FTrNFewXpNpv+dN8b5U+A9bfzIuUWMCEw2cZhV1NnFPz+HRV061y1Ye+mTNszVSJcTwkFTdMnIZg==","signatures":[{"sig":"MEUCIF8Mh3uajVwB/1+ZPD7c4HP75QZYQGmn2TFaIgZPrQRnAiEAyqoraJXjlpPehhnpku65JyHNaKL/8sE8mfp3U9/+mbE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":388829},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","tippy.js":"^6.3.7","form-grid":"^0.1.4","jaster-form":"^0.0.0-dev3","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","br-address-formatter":"^1.3.0","react-master-gallery":"^0.2.4","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.3.3_1740237217107_0.19413015107750153","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"publisher-property-editor","version":"0.3.4","_id":"publisher-property-editor@0.3.4","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"4342267b908cf17689c59694d946cd01d653e689","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.3.4.tgz","fileCount":251,"integrity":"sha512-SwRKqEvX6dp6I97DSqP/+9EwFuvoK3BxVz5QXWPrpF5KYn/1SGPWs3ZAisiTEm5ZSKicIo+spA2l/EcZhkZIJA==","signatures":[{"sig":"MEUCIQCBbrvS3QUGRaZqenkBI/1L4EBtHfnCW7XzBSEDc+SPRgIgJJhD69Q2SWoxDI7sGJ3iRMO2X6f5doOlWswLujH3avs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":393599},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","tippy.js":"^6.3.7","form-grid":"^0.1.4","jaster-form":"^0.0.0-dev3","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","br-address-formatter":"^1.3.0","react-master-gallery":"^0.2.4","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.3.4_1740486658342_0.4149413056013376","host":"s3://npm-registry-packages-npm-production"}},"0.3.5":{"name":"publisher-property-editor","version":"0.3.5","_id":"publisher-property-editor@0.3.5","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"4368e8760296d0c0e1448028a5b32d60e4b405f5","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.3.5.tgz","fileCount":251,"integrity":"sha512-RNCLypIgL1aByE/9/Zb1jc3dmpcRuzOXNLWnqVt+kWervhqlKlwWb7rFUsB7NzPc5CyMGDWbr4RARHxYB5pzJg==","signatures":[{"sig":"MEYCIQCMVHpKJXHpwlbna25GuYLHHsAwhj+2DwZYFBwSa+iUWAIhAIDp8/D5fHDmLhBqy/D+/0sPwhVsA725JoV2VicG3qAf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":393599},"main":"dist/cjs/index.js","module":"dist/esm/index.js","scripts":{"dev":"next dev","lint":"next lint","build":"next build","start":"next start","build:cjs":"rm -rf dist/cjs && tsc --build tsconfig.cjs.json","build:css":"rm -rf ./dist/style.css && npx tailwindcss -i ./src/styles.css -o ./dist/style.css","build:esm":"rm -rf dist/esm && tsc --build tsconfig.esm.json"},"typings":"dist/cjs/index.d.ts","_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"description":"First, run the development server:","directories":{},"resolutions":{"@types/react":"^17.0.38"},"dependencies":{"ramda":"^0.29.1","lodash":"^4.17.21","moment":"^2.29.4","slugify":"^1.6.6","filesize":"^10.1.0","tippy.js":"^6.3.7","form-grid":"^0.1.4","jaster-form":"^0.0.0-dev3","react-icons":"^4.11.0","usehooks-ts":"^2.9.1","react-select":"^5.8.0","@tippyjs/react":"^4.2.6","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","react-toastify":"^9.1.3","@reduxjs/toolkit":"^1.9.6","@headlessui/react":"^1.7.17","selector-provider":"^1.0.0","br-address-formatter":"^1.3.0","react-master-gallery":"^0.2.4","@react-google-maps/api":"^2.19.2","react-master-file-uploader":"^0.1.9"},"_hasShrinkwrap":false,"devDependencies":{"next":"^13.4.1","sass":"^1.69.5","axios":"^1.6.2","react":"18.2.0","eslint":"latest","postcss":"latest","react-dom":"18.2.0","typescript":"latest","@types/node":"latest","react-redux":"^8.1.2","tailwindcss":"latest","@types/react":"latest","autoprefixer":"latest","monaco-editor":"^0.44.0","redux-persist":"^6.0.0","postcss-nesting":"^12.0.1","@types/react-dom":"latest","eslint-config-next":"latest","@monaco-editor/react":"^4.6.0","typescript-plugin-css-modules":"^5.0.2"},"peerDependencies":{"react":"18.2.0","react-dom":"18.2.0","react-icons":"^4.4.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.3.5_1740496818712_0.33343604541349414","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"publisher-property-editor","version":"0.5.0","author":{"url":"https://github.com/andersondrosa","name":"Anderson D. Rosa"},"license":"MIT","_id":"publisher-property-editor@0.5.0","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"1947f51a927dea69996af0d7599d199be9c63970","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.5.0.tgz","fileCount":6,"integrity":"sha512-OG6/8wXncKchWu7nRZB0Dvn9QaWm4zTALVUzEvu3QNoCIevZPV4vLHoYbwK5ZRsGGsuU4iKBVXrNq54eRjhxdg==","signatures":[{"sig":"MEUCID01k4Ocs3Cbe284gSGNXz3u+VYNoIZuqD5tCoYx1UOVAiEAr8LuQWcZDj6Lx+7I6oCcJZimkjHFrOM6JLCiX0u+TWE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":441905},"main":"./dist/index.js","type":"module","_from":"file:publisher-property-editor-0.5.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./style.css":"./dist/style.css"},"scripts":{"dev":"tsup --watch","test":"vitest run --passWithNoTests","build":"tsup && pnpm build:css","clean":"rm -rf dist coverage","build:css":"tailwindcss -i ./src/styles.css -o ./dist/style.css --minify","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"_resolved":"/tmp/6bbfb8e25f56e69e79d6aa7b6eadad0b/publisher-property-editor-0.5.0.tgz","_integrity":"sha512-OG6/8wXncKchWu7nRZB0Dvn9QaWm4zTALVUzEvu3QNoCIevZPV4vLHoYbwK5ZRsGGsuU4iKBVXrNq54eRjhxdg==","_npmVersion":"11.16.0","description":"Editor de imóveis em React — componente único com contrato de injeção (services + commands), sem estado global nem dependência de rede.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"clsx":"^2.1.1","axios":"^1.6.2","ramda":"^0.29.1","moment":"^2.29.4","filesize":"^10.1.0","tippy.js":"^6.3.7","form-grid":"^0.1.4","jaster-form":"^0.0.0-dev3","react-icons":"^4.11.0","react-select":"^5.8.0","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","tailwind-merge":"^3.6.0","@headlessui/react":"^2.2.0","selector-provider":"^1.0.0","br-address-formatter":"^1.3.0","react-master-gallery":"^0.2.4","@react-google-maps/api":"^2.19.2","class-variance-authority":"^0.7.1","@radix-ui/react-context-menu":"^2.3.7","@radix-ui/react-toggle-group":"^1.1.19"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","vite":"^8.1.5","jsdom":"^29.1.1","react":"^19.2.8","vitest":"^4.1.10","postcss":"^8.4.0","react-dom":"^19.2.8","typescript":"^5.9.3","tailwindcss":"^3.4.0","@types/ramda":"^0.29.9","@types/react":"^19.2.0","autoprefixer":"^10.4.0","postcss-nesting":"^12.0.1","@types/react-dom":"^19.2.0","@testing-library/dom":"^10.4.0","@vitejs/plugin-react":"^6.0.4","@testing-library/react":"^16.3.0","@tailwindcss/container-queries":"^0.1.1"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.5.0_1785084417571_0.37239308869849697","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"publisher-property-editor","version":"0.6.0","author":{"url":"https://github.com/andersondrosa","name":"Anderson D. Rosa"},"license":"MIT","_id":"publisher-property-editor@0.6.0","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"e5241a84c6ac9515681a581633742db73e00c843","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.6.0.tgz","fileCount":6,"integrity":"sha512-DHel/a+eNmAJURcCTP6u7lEow/EFxCYDNbHa/ROYKbd1hUfnx3w/sb2PAZWUKHJw1to2HElFNYLsS2ZzgGyknw==","signatures":[{"sig":"MEYCIQCJIiJrc8MqYrVVp+fjP1SKMj1DS7wbS0IZ284Eimmn0QIhAL0JjQno93JMucEAIK7b3ppYe/GC8G7IGMEiOc89rcoY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":483889},"main":"./dist/index.js","type":"module","_from":"file:publisher-property-editor-0.6.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./style.css":"./dist/style.css"},"scripts":{"dev":"tsup --watch","test":"vitest run --passWithNoTests","build":"tsup && pnpm build:css","clean":"rm -rf dist coverage","build:css":"tailwindcss -i ./src/styles.css -o ./dist/style.css --minify","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"_resolved":"/tmp/ad0067394ad9bd8348b9ebce032f6bd3/publisher-property-editor-0.6.0.tgz","_integrity":"sha512-DHel/a+eNmAJURcCTP6u7lEow/EFxCYDNbHa/ROYKbd1hUfnx3w/sb2PAZWUKHJw1to2HElFNYLsS2ZzgGyknw==","_npmVersion":"11.16.0","description":"Editor de imóveis em React — componente único com contrato de injeção (services + commands), sem estado global nem dependência de rede.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"clsx":"^2.1.1","axios":"^1.6.2","ramda":"^0.29.1","moment":"^2.29.4","filesize":"^10.1.0","tippy.js":"^6.3.7","form-grid":"^0.1.4","jaster-form":"^0.0.0-dev3","react-icons":"^4.11.0","react-select":"^5.8.0","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","tailwind-merge":"^3.6.0","@headlessui/react":"^2.2.0","selector-provider":"^1.0.0","br-address-formatter":"^1.3.0","react-master-gallery":"^0.2.4","@react-google-maps/api":"^2.19.2","class-variance-authority":"^0.7.1","@radix-ui/react-context-menu":"^2.3.7","@radix-ui/react-toggle-group":"^1.1.19"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","vite":"^8.1.5","jsdom":"^29.1.1","react":"^19.2.8","vitest":"^4.1.10","postcss":"^8.4.0","react-dom":"^19.2.8","typescript":"^5.9.3","tailwindcss":"^3.4.0","@types/ramda":"^0.29.9","@types/react":"^19.2.0","autoprefixer":"^10.4.0","postcss-nesting":"^12.0.1","@types/react-dom":"^19.2.0","@testing-library/dom":"^10.4.0","@vitejs/plugin-react":"^6.0.4","@testing-library/react":"^16.3.0","@tailwindcss/container-queries":"^0.1.1"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.6.0_1785290837644_0.1519780991898998","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"publisher-property-editor","version":"0.7.0","author":{"url":"https://github.com/andersondrosa","name":"Anderson D. Rosa"},"license":"MIT","_id":"publisher-property-editor@0.7.0","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"60c675f9ea3f64d3f5757640e5ee1bd4404a2213","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.7.0.tgz","fileCount":6,"integrity":"sha512-gdJEQc8G5QU/WM31IdWdkjuKwa+oHU/H0P2u83VnkmCPnhUBCJ8f9cY3yHd6UZbebzyNTCouVBgMEzmMKqJRaA==","signatures":[{"sig":"MEQCIEs2CSwqSNoQZvO7J7GcUszqBwe7q2y4snkuC17Uz6sFAiADQzuFlWztuGuSp5ePuGWETWO20FUfBStOp7u4krMETg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":487883},"main":"./dist/index.js","type":"module","_from":"file:publisher-property-editor-0.7.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./style.css":"./dist/style.css"},"scripts":{"dev":"tsup --watch","test":"vitest run --passWithNoTests","build":"tsup && pnpm build:css","clean":"rm -rf dist coverage","build:css":"tailwindcss -i ./src/styles.css -o ./dist/style.css --minify","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"_resolved":"/tmp/de8dfa0a336d087d861c9bc71071bf93/publisher-property-editor-0.7.0.tgz","_integrity":"sha512-gdJEQc8G5QU/WM31IdWdkjuKwa+oHU/H0P2u83VnkmCPnhUBCJ8f9cY3yHd6UZbebzyNTCouVBgMEzmMKqJRaA==","_npmVersion":"11.16.0","description":"Editor de imóveis em React — componente único com contrato de injeção (services + commands), sem estado global nem dependência de rede.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"clsx":"^2.1.1","axios":"^1.6.2","ramda":"^0.29.1","moment":"^2.29.4","filesize":"^10.1.0","tippy.js":"^6.3.7","form-grid":"^0.1.4","jaster-form":"^0.0.0-dev3","react-icons":"^4.11.0","react-select":"^5.8.0","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","tailwind-merge":"^3.6.0","@headlessui/react":"^2.2.0","selector-provider":"^1.0.0","br-address-formatter":"^1.3.0","react-master-gallery":"^0.2.4","@react-google-maps/api":"^2.19.2","class-variance-authority":"^0.7.1","@radix-ui/react-context-menu":"^2.3.7","@radix-ui/react-toggle-group":"^1.1.19"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","vite":"^8.1.5","jsdom":"^29.1.1","react":"^19.2.8","vitest":"^4.1.10","postcss":"^8.4.0","react-dom":"^19.2.8","typescript":"^5.9.3","tailwindcss":"^3.4.0","@types/ramda":"^0.29.9","@types/react":"^19.2.0","autoprefixer":"^10.4.0","postcss-nesting":"^12.0.1","@types/react-dom":"^19.2.0","@testing-library/dom":"^10.4.0","@vitejs/plugin-react":"^6.0.4","@testing-library/react":"^16.3.0","@tailwindcss/container-queries":"^0.1.1"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.7.0_1785325174464_0.6382184235785011","host":"s3://npm-registry-packages-npm-production"}},"0.7.1":{"name":"publisher-property-editor","version":"0.7.1","author":{"url":"https://github.com/andersondrosa","name":"Anderson D. Rosa"},"license":"MIT","_id":"publisher-property-editor@0.7.1","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"dist":{"shasum":"326f11a230134b4e45611883382103e8672ae972","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.7.1.tgz","fileCount":6,"integrity":"sha512-Oqiv8PW3GNxd3HUzYL81ZfmbIxcafGYVrzTwkS+5rYVZWEQMOijaJjZcVNFUCYGZjqb0b82EOT9CcuY3r8Ly0A==","signatures":[{"sig":"MEUCIBo1614kMQPB1Wg7Sv/ycoUnWAQLy3weNodtFT9kWzKZAiEA2xbOgUwvs/NCk/6fU6KMzei1LiwLWVx3pUa+bTQkX9A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":487957},"main":"./dist/index.js","type":"module","_from":"file:publisher-property-editor-0.7.1.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./style.css":"./dist/style.css"},"scripts":{"dev":"tsup --watch","test":"vitest run --passWithNoTests","build":"tsup && pnpm build:css","clean":"rm -rf dist coverage","build:css":"tailwindcss -i ./src/styles.css -o ./dist/style.css --minify","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"_resolved":"/tmp/7bceecc152c8eb052c378522c4bbaeba/publisher-property-editor-0.7.1.tgz","_integrity":"sha512-Oqiv8PW3GNxd3HUzYL81ZfmbIxcafGYVrzTwkS+5rYVZWEQMOijaJjZcVNFUCYGZjqb0b82EOT9CcuY3r8Ly0A==","_npmVersion":"11.16.0","description":"Editor de imóveis em React — componente único com contrato de injeção (services + commands), sem estado global nem dependência de rede.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"clsx":"^2.1.1","axios":"^1.6.2","ramda":"^0.29.1","moment":"^2.29.4","filesize":"^10.1.0","tippy.js":"^6.3.7","form-grid":"^0.1.4","jaster-form":"^0.0.0-dev3","react-icons":"^4.11.0","react-select":"^5.8.0","react-dropzone":"^14.2.3","react-spinners":"^0.13.8","tailwind-merge":"^3.6.0","@headlessui/react":"^2.2.0","selector-provider":"^1.0.0","br-address-formatter":"^1.3.0","react-master-gallery":"^0.2.4","@react-google-maps/api":"^2.19.2","class-variance-authority":"^0.7.1","@radix-ui/react-context-menu":"^2.3.7","@radix-ui/react-toggle-group":"^1.1.19"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","vite":"^8.1.5","jsdom":"^29.1.1","react":"^19.2.8","vitest":"^4.1.10","postcss":"^8.4.0","react-dom":"^19.2.8","typescript":"^5.9.3","tailwindcss":"^3.4.0","@types/ramda":"^0.29.9","@types/react":"^19.2.0","autoprefixer":"^10.4.0","postcss-nesting":"^12.0.1","@types/react-dom":"^19.2.0","@testing-library/dom":"^10.4.0","@vitejs/plugin-react":"^6.0.4","@testing-library/react":"^16.3.0","@tailwindcss/container-queries":"^0.1.1"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/publisher-property-editor_0.7.1_1785328604614_0.5730175964222475","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"publisher-property-editor","version":"0.8.0","type":"module","description":"Editor de imóveis em React — componente único com contrato de injeção (services + commands), sem estado global nem dependência de rede.","license":"MIT","author":{"name":"Anderson D. Rosa","url":"https://github.com/andersondrosa"},"publishConfig":{"access":"public"},"main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./style.css":"./dist/style.css"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0"},"dependencies":{"@headlessui/react":"^2.2.0","@radix-ui/react-context-menu":"^2.3.7","@radix-ui/react-toggle-group":"^1.1.19","axios":"^1.6.2","br-address-formatter":"^1.3.0","class-variance-authority":"^0.7.1","clsx":"^2.1.1","filesize":"^10.1.0","form-grid":"^0.1.4","jaster-form":"^0.0.0-dev3","moment":"^2.29.4","ramda":"^0.29.1","react-dropzone":"^14.2.3","react-icons":"^4.11.0","react-master-gallery":"^0.2.4","react-select":"^5.8.0","react-spinners":"^0.13.8","selector-provider":"^1.0.0","tailwind-merge":"^3.6.0","tippy.js":"^6.3.7"},"devDependencies":{"@tailwindcss/container-queries":"^0.1.1","@testing-library/dom":"^10.4.0","@testing-library/react":"^16.3.0","@types/ramda":"^0.29.9","@types/react":"^19.2.0","@types/react-dom":"^19.2.0","@vitejs/plugin-react":"^6.0.4","autoprefixer":"^10.4.0","jsdom":"^29.1.1","postcss":"^8.4.0","postcss-nesting":"^12.0.1","react":"^19.2.8","react-dom":"^19.2.8","tailwindcss":"^3.4.0","tsup":"^8.0.2","typescript":"^5.9.3","vite":"^8.1.5","vitest":"^4.1.10"},"scripts":{"build":"tsup && pnpm build:css","build:css":"tailwindcss -i ./src/styles.css -o ./dist/style.css --minify","dev":"tsup --watch","typecheck":"tsc --noEmit","test":"vitest run --passWithNoTests","test:watch":"vitest","clean":"rm -rf dist coverage"},"_id":"publisher-property-editor@0.8.0","_integrity":"sha512-MdJsPu6AKROBPAraO8vIzxfjH8cYN23uwVcYZjS7b8lnR+na1hQ5GMqHewlGeZZjQ/KsJLfnJX/riQBT/of6cA==","_resolved":"/tmp/2c4f8bb5be8b1d27cda3061b65e3cc14/publisher-property-editor-0.8.0.tgz","_from":"file:publisher-property-editor-0.8.0.tgz","_nodeVersion":"24.18.0","_npmVersion":"11.16.0","dist":{"integrity":"sha512-MdJsPu6AKROBPAraO8vIzxfjH8cYN23uwVcYZjS7b8lnR+na1hQ5GMqHewlGeZZjQ/KsJLfnJX/riQBT/of6cA==","shasum":"8b821321ea2e9b3c59f9f1a6308403a676c61e5e","tarball":"https://registry.npmjs.org/publisher-property-editor/-/publisher-property-editor-0.8.0.tgz","fileCount":6,"unpackedSize":520882,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCtC6yfidE2pGKvbA2uOnuP6zT1Ih1dmgc7LY6NQjVXKwIgQTwPqUL856vBOe9amISthPN8P7tlMVB5p3z5IXdX2/A="}]},"_npmUser":{"name":"andersondrosa","email":"andersondrosa@outlook.com"},"directories":{},"maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/publisher-property-editor_0.8.0_1785432842012_0.9762435766495032"},"_hasShrinkwrap":false}},"time":{"created":"2023-11-17T19:46:25.820Z","modified":"2026-07-30T17:34:03.116Z","0.0.0-dev1":"2023-11-17T19:46:25.980Z","0.0.0-dev2":"2023-11-17T19:54:25.727Z","0.0.0-dev3":"2023-11-17T19:56:26.790Z","0.0.0-dev4":"2023-11-18T02:11:47.750Z","0.0.0-dev5":"2023-11-18T02:37:12.750Z","0.0.0-dev6":"2023-11-18T13:11:12.043Z","0.0.0-dev7":"2023-11-19T23:58:39.481Z","0.0.0-dev8":"2023-11-20T02:26:41.614Z","0.0.0-dev9":"2023-11-21T12:15:53.487Z","0.0.0-dev10":"2023-11-22T21:44:29.192Z","0.0.1":"2023-11-23T21:06:40.335Z","0.0.2":"2023-11-27T14:54:46.363Z","0.0.3":"2023-11-27T15:13:06.818Z","0.0.4":"2023-11-27T15:22:05.444Z","0.0.5":"2023-11-30T00:10:46.207Z","0.0.6":"2023-12-04T11:08:03.553Z","0.0.7":"2023-12-06T17:43:13.682Z","0.0.8":"2023-12-06T17:55:18.741Z","0.0.9":"2023-12-07T13:10:03.138Z","0.1.0":"2023-12-08T11:39:58.518Z","0.1.2":"2023-12-31T01:00:58.823Z","0.2.0":"2024-01-08T13:57:48.932Z","0.2.1":"2024-02-02T00:47:00.797Z","0.2.2":"2024-02-02T02:22:38.885Z","0.2.3":"2024-02-02T02:38:00.964Z","0.2.4":"2024-02-02T02:43:19.623Z","0.2.5":"2024-02-02T14:04:18.747Z","0.2.6":"2024-02-04T20:39:54.493Z","0.2.7":"2024-02-16T17:15:03.794Z","0.2.8":"2024-02-16T18:19:08.992Z","0.3.0":"2024-02-16T20:02:58.028Z","0.3.1":"2025-02-22T15:09:47.331Z","0.3.2":"2025-02-22T15:12:02.164Z","0.3.3":"2025-02-22T15:13:37.320Z","0.3.4":"2025-02-25T12:30:58.613Z","0.3.5":"2025-02-25T15:20:18.922Z","0.5.0":"2026-07-26T16:46:57.736Z","0.6.0":"2026-07-29T02:07:17.832Z","0.7.0":"2026-07-29T11:39:34.593Z","0.7.1":"2026-07-29T12:36:44.822Z","0.8.0":"2026-07-30T17:34:02.246Z"},"author":{"name":"Anderson D. Rosa","url":"https://github.com/andersondrosa"},"license":"MIT","description":"Editor de imóveis em React — componente único com contrato de injeção (services + commands), sem estado global nem dependência de rede.","maintainers":[{"name":"andersondrosa","email":"andersondrosa@outlook.com"}],"readme":"# publisher-property-editor\n\nEditor de imóveis em React — um componente, dirigido por injeção. Você monta o\n`<PropertyEditor>`, passa os dados do imóvel e implementa as **portas** (`services`,\n`commands`, …); a biblioteca cuida da UI e da edição. Ela não fala com rede, não tem store\nglobal e não decide nada sobre persistência ou permissão — tudo isso entra por você.\n\n|           |                                                                        |\n| --------- | ---------------------------------------------------------------------- |\n| Pacote    | `publisher-property-editor`                                            |\n| Versão    | 0.7.x (ver `package.json` / CHANGELOG)                                 |\n| Formato   | ESM — `dist/index.js` · tipos `dist/index.d.ts` · CSS `dist/style.css` |\n| Peer deps | `react@^18.2 \\|\\| ^19` · `react-dom@^18.2 \\|\\| ^19`                    |\n\nDocs internas: [arquitetura](docs/ARCHITECTURE.md) · [decisões](docs/DECISIONS.md) ·\n[atributos e modelos](docs/ATTRIBUTES.md).\n\n**Índice** — [Instalação](#instalação) · [Início rápido](#início-rápido) ·\n[Contrato de injeção](#o-contrato-de-injeção) · [Props](#props) · [`services`](#services--porta-de-io) ·\n[`commands`](#commands--porta-de-ações) · [`data`](#data--estado-volátil) ·\n[Mapa](#mapa-localização--componentsmapview--servicesgeocode) · [Permissões](#permissões--can) ·\n[Seções e layout](#seções-e-layout--sections) · [Componentes de UI](#componentes-de-ui--components) ·\n[Atributos](#atributos) · [Tipos](#tipos-exportados).\n\n---\n\n## Instalação\n\n```bash\npnpm add publisher-property-editor\n```\n\nO CSS é distribuído à parte e **é obrigatório** — já embute os estilos de\n`react-master-gallery`, `jaster-form` e `tippy.js`:\n\n```ts\nimport \"publisher-property-editor/style.css\";\n```\n\nTodos os estilos vivem sob o escopo `.property-editor`, aplicado na raiz do `<main>`\nrenderizado — sem reset global nem vazamento pra fora.\n\n`react` e `react-dom` são peer dependencies (você já os tem). Runtime extra que a lib traz\ne o seu bundler resolve: `@radix-ui/*`, `@headlessui/react`, `react-select`,\n`react-master-gallery`, `moment`, `ramda` e afins. O **mapa não vem embutido** — é injetado\npor você (`components.MapView`), então nenhum SDK de mapa entra no bundle da lib.\n\n---\n\n## Início rápido\n\nO mínimo para renderizar e salvar. `services` e `commands` têm suas seções abaixo — aqui\nsó o essencial:\n\n```tsx\nimport PropertyEditor from \"publisher-property-editor\";\nimport \"publisher-property-editor/style.css\";\n\n<PropertyEditor\n  user={{ id: \"usr_1\", name: \"Ana\", email: \"ana@x.com\", role: \"master\" }}\n  attributes={[\n    { key: \"reference\", value: \"REF-001\" },\n    { key: \"model\", value: \"casa-padrao@1.0\" },\n    { key: \"title\", value: \"Casa à venda no Centro\" },\n    { key: \"published\", value: true },\n    // …definições do modelo + valores salvos (ver Atributos)\n  ]}\n  models={{ \"casa-padrao@1.0\": { name: \"casa-padrao\", label: \"Casa Padrão\" } }}\n  categories={[\n    { name: \"main\", label: \"Principal\" },\n    { name: \"feature\", label: \"Benfeitorias\" },\n    { name: \"improvement\", label: \"Características\" },\n  ]}\n  permissions={[\"property:edit\", \"property:publish\"]}\n  settings={{ mobile: false }}\n  services={services} // ver \"services\"\n  commands={commands} // ver \"commands\"\n  data={{}}\n  onUpdate={(values) => salvarNoBackend(values)}\n/>;\n```\n\n> **`attributes` é copiado para o estado interno na montagem.** Alterações posteriores da\n> prop são ignoradas — para carregar outro imóvel, **remonte** com `key={propertyId}`.\n\n---\n\n## Montagem — montado ou em peças\n\nO `PropertyEditor` acima é o **all-in-one**: provider + view num componente. Quando você quer\ncompor UI própria ao redor do editor **compartilhando o mesmo estado**, use as peças\nseparadas:\n\n| Peça                 | O que é                                                                                                              |\n| -------------------- | -------------------------------------------------------------------------------------------------------------------- |\n| `PropertyProvider`   | Cria o contexto (atributos, `data`, portas, permissão, UI) — **sem cromo**. Recebe as props de estado; aceita `ref`. |\n| `PropertyEditorView` | O cromo (cabeçalho, abas, seções, rodapé). Lê o contexto; recebe só `active`/`sections`/`chrome`.                    |\n| `PropertyEditor`     | `PropertyProvider` + `PropertyEditorView`. O caso simples.                                                           |\n\n```tsx\nimport {\n  PropertyProvider,\n  PropertyEditorView,\n  useEditor,\n} from \"publisher-property-editor\";\n\n// Componente SEU, fora do cromo, lendo o mesmo estado:\nfunction ResumoDoImovel() {\n  const { data, can, run, service } = useEditor();\n  return (\n    <aside>\n      <b>{service.get(\"reference\")?.value}</b> — {data.publishState}\n      <button\n        disabled={!can(\"property:publish\")}\n        onClick={() => run(\"publish\", { id: service.get(\"id\")?.value })}\n      >\n        Publicar\n      </button>\n    </aside>\n  );\n}\n\n<PropertyProvider {...props}>\n  <PropertyEditorView />\n  <ResumoDoImovel /> {/* mesmo contexto do editor */}\n</PropertyProvider>;\n```\n\n**Hooks** para os componentes compostos (assine o facade ou só uma fatia):\n\n- `useEditor()` — facade: `{ attributes, data, setData, owner, service, services, command, run, runAsync, can, canEdit, user, permissions, … }`.\n- Pontuais (menos re-render): `useAttrValue` · `useAttr` · `useAttributes` · `useData` · `useSetData` · `useService` · `useServices` · `useCommand` · `useRun` · `useRunAsync` · `useACL` · `useNotify`.\n\n> Não aninhe os dois modos: dentro de um `PropertyProvider`, renderize `PropertyEditorView`,\n> não o `PropertyEditor` all-in-one. Se o fizer, o editor detecta o provider acima, reaproveita\n> o contexto e avisa no console (dev) — mas as props de dados do all-in-one são ignoradas.\n\n---\n\n## O contrato de injeção\n\nA biblioteca dispara intenções; o host as realiza. As portas seguem sempre o mesmo\nprincípio — a lib declara a necessidade, você decide a implementação.\n\n| Porta                                 | Prop                            | Obrig. | O host fornece                                                                              |\n| ------------------------------------- | ------------------------------- | :----: | ------------------------------------------------------------------------------------------- |\n| **`services`**                        | `services`                      |   ✅   | I/O e leituras: CEP, cidades, integrações, menu de opções, upload                           |\n| **`commands`**                        | `commands`                      |   ✅   | Ações de negócio disparadas pelo editor: salvar, publicar…                                  |\n| `services.notify`                     | (em `services`)                 |   —    | Como apresentar notificações                                                                |\n| `services.inspect` / `getInspectMenu` | (em `services`)                 |   —    | Modo inspeção / itens do menu de contexto                                                   |\n| `services.geocode`                    | (em `services`)                 |   —    | Endereço → coordenadas. Ver [Mapa](#mapa-localização--componentsmapview--servicesgeocode)        |\n| **permissão**                         | `can` / `permissions`           |  ✅¹   | Decisão de permissão por chave                                                              |\n| **componentes de UI**                 | `components` / `<LinkProvider>` |   —    | Primitivos de apresentação (link, hover card, card de usuário) e o **mapa** (`MapView`)     |\n| **política do mapa**                  | `settings.maps`                 |   —    | Só `autoSync` — a lib não conhece provedor de mapa                                          |\n| **layout**                            | `sections` / `chrome`           |   —    | Quais abas, em que ordem, e o cromo                                                         |\n\n¹ `permissions` é obrigatório no tipo, mas ignorado se você passar `can`.\n\nAs opcionais têm _fallback_: sem `notify` o editor fica calado; sem `inspect` o modo\ninspeção não existe; sem `geocode` o mapa some o botão _Sincronizar_; sem `can` a permissão\nvem de `permissions[]`; sem `components` os primitivos usam defaults embutidos (link vira\nâncora, e sem `components.MapView` a seção Localização mostra só os controles de coordenada);\nsem `sections` usa o conjunto padrão com cromo.\n\n---\n\n## Props\n\n| Prop               | Tipo                        | Obrig. | Descrição                                                                                                                                                              |\n| ------------------ | --------------------------- | :----: | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `attributes`       | `AttributeType[]`           |   ✅   | Estado editável do imóvel. Ver [Atributos](#atributos).                                                                                                                |\n| `models`           | `{ [id]: { name, label } }` |   ✅   | Catálogo de modelos. O `label` do modelo corrente aparece no cabeçalho.                                                                                                |\n| `user`             | `User`                      |   ✅   | Usuário logado. Define o ACL junto de `permissions`/`can`.                                                                                                             |\n| `permissions`      | `string[]`                  |   ✅   | Chaves de permissão do usuário. Ignorado se `can` for passado.                                                                                                         |\n| `categories`       | `{ name, label }[]`         |   ✅   | Grupos da aba Atributos. `name` casa com `categories.view` do atributo.                                                                                                |\n| `services`         | `PropertyServices`          |   ✅   | Porta de I/O. Ver [`services`](#services--porta-de-io).                                                                                                                |\n| `commands`         | `CommandFunctions`          |   ✅   | Porta de ações. Ver [`commands`](#commands--porta-de-ações).                                                                                                           |\n| `settings`         | `Settings`                  |   ✅   | `{ mobile?, readOnly?, darkMode?, maps? }`. `maps` liga o mapa (ver [Mapa](#mapa-localização--componentsmapview--servicesgeocode)); `readOnly`/`darkMode` ainda sem efeito. |\n| `data`             | `object`                    |   ✅   | Semente do [estado volátil](#data--estado-volátil). Pode ser `{}`.                                                                                                     |\n| `onUpdate`         | `(data) => any`             |   ✅   | Repassado ao contexto; **quem chama é o seu command**, não o componente.                                                                                               |\n| `owner`            | `User`                      |   —    | Responsável pelo imóvel. Exibido no rodapé e usado no ACL de edição.                                                                                                   |\n| `can`              | `PermissionCheck`           |   —    | Verificação de permissão injetada. Ver [Permissões](#permissões--can).                                                                                                 |\n| `sections`         | `SectionSchema[]`           |   —    | Quais abas e em que ordem. Ver [Seções](#seções-e-layout--sections).                                                                                                   |\n| `chrome`           | `boolean`                   |   —    | `false` renderiza só as seções, sem cabeçalho/abas/rodapé. Padrão `true`.                                                                                              |\n| `active`           | `boolean`                   |   —    | Foco do painel. `false` esmaece e desliga o modo inspeção. Omitido, detecta por clique.                                                                                |\n| `pinnedAttributes` | `string[]`                  |   —    | Chaves fixadas no topo da aba Atributos.                                                                                                                               |\n| `tags`             | `string[]`                  |   —    | Tags do imóvel. `\"highlighted\"` liga o selo de destaque.                                                                                                               |\n\n### Comportamento a conhecer\n\n- `attributes` é copiado no mount — remonte com `key` para trocar de imóvel.\n- `settings.readOnly` e `settings.darkMode` existem no tipo mas **ainda não têm efeito**.\n- Permissão é **literal**: uma chave só vale se estiver em `permissions` (ou se o seu `can`\n  a permitir). **Não há bypass de master** — master importa só na **posse** (`canEdit`). Ver\n  [Permissões](#permissões--can).\n\n---\n\n## `services` — porta de I/O\n\nObjeto implementado por você. Tudo que sai para a rede — e o menu de opções — passa aqui.\n\n```ts\ntype PropertyServices = {\n  // Menu \"Opções\" do cabeçalho — obrigatórios\n  getOptions(context: TableContext): Item[];\n  handleAction(key: string, item: any, context: TableContext): void;\n\n  // Aba Localização\n  fetchAddress(\n    cep: string,\n  ): Promise<{ city; uf; address; neighborhood; complement? }>;\n  fetchCities(): Promise<{ name: string; state: string }[]>;\n  createCity(data: { name: string; state: string }): Promise<any>;\n  fetchDistricts(data: { city: string }): Promise<{ name: string }[]>;\n  createDistrict(data: { name; city; state }): Promise<unknown>;\n\n  // Aba Principal — carga preguiçosa de selects\n  loadTypes(model: string, context: TableContext): Promise<Option[]>;\n  fetchItem(key: \"client\" | \"agent\", context: TableContext): Promise<Option[]>;\n\n  // Aba Publicação\n  fetchIntegrations(): Promise<Integration[]>;\n\n  // Opcionais\n  notify?(input: NotifyInput): void;\n  inspect?(key: string, context: TableContext, action?: string): void;\n  getInspectMenu?(key: string, context: TableContext): InspectMenuItem[];\n  geocode?(address: string): Promise<{ lat: number; lng: number } | null>;\n  mapLink?(point: { lat: number; lng: number }): string; // URL do mapa externo\n};\n```\n\n`Option` = `{ value: string; label: string }`. `Item` = a linha do menu de opções:\n`{ key, label, icon?, link?, target?, disabled?, reason?, danger? }`. `getOptions` pode\ndevolver `Item[]` (lista) **ou** `Item[][]` (grupos, separados por um divisor).\n\n**Quando cada um é chamado**\n\n| Método                          | Gatilho                                                                                                |\n| ------------------------------- | ------------------------------------------------------------------------------------------------------ |\n| `getOptions`                    | A cada render do cabeçalho. Deve ser **puro e barato**.                                                |\n| `handleAction`                  | Clique num item do menu _Opções_. Recebe o `key` que **você** definiu.                                 |\n| `fetchAddress`                  | Botão _Atualizar endereço_. A resposta preenche rua, cidade e bairro.                                  |\n| `fetchCities`                   | Montagem da aba Localização.                                                                           |\n| `fetchDistricts`                | Sempre que a cidade selecionada muda.                                                                  |\n| `createCity` / `createDistrict` | Após `fetchAddress` trazer cidade/bairro fora da lista, com confirmação.                               |\n| `loadTypes`                     | 1º render do select _Tipo_. Resultado cacheado em `data.options`.                                      |\n| `fetchItem`                     | 1º render dos selects _Cliente_/_Corretor_. Idem cache.                                                |\n| `fetchIntegrations`             | Montagem da aba Publicação.                                                                            |\n| `geocode`                       | Auto-sync do mapa e botão _Sincronizar_. Ver [Mapa](#mapa-localização--componentsmapview--servicesgeocode). |\n| `mapLink`                       | Renderiza o botão de link externo no painel de Localização (a URL é sua).                              |\n| `notify`                        | Cadastro de cidade/bairro, geocodificação e falha ao buscar CEP.                                       |\n\n> **Contrato morto:** o tipo ainda exige `dispatch`, `setPropertyTags` e `fileUpload` — o\n> componente **nunca os chama** (upload passa pelo command `handleUpload`). Implemente como\n> _no-op_ até serem removidos do tipo.\n\n### `notify` — notificação sem impor UI\n\nA lib **não embute** UI de notificação: descreve a intenção, você apresenta. Opcional —\nsem ela, o editor segue calado.\n\n```ts\ntype NotifyInput =\n  | { type?: \"info\" | \"success\" | \"warning\" | \"error\"; message: string }\n  | {\n      promise: Promise<unknown>;\n      pending?: string;\n      success?: string;\n      error?: string;\n    };\n\nconst notify: PropertyServices[\"notify\"] = (input) => {\n  if (\"promise\" in input) {\n    const { promise, ...messages } = input;\n    toast.promise(promise, messages); // acompanha pending/success/error\n    return;\n  }\n  toast[input.type ?? \"info\"](input.message);\n};\n```\n\n### Menu de opções — `getOptions` / `handleAction`\n\nO menu _Opções_ do cabeçalho é 100% seu: `getOptions` devolve a lista, o clique vai para\n`handleAction`. Detalhes que o item aceita:\n\n- `disabled` + `reason` — item bloqueado aparece apagado, com cadeado e o motivo num\n  tooltip, **sem sumir** (mais honesto que ocultar).\n- `danger` — estilo destrutivo (vermelho), para ações como excluir.\n- **Grupos**: devolva `Item[][]` em vez de `Item[]` para separar seções por um **divisor**\n  (ex.: ações positivas em cima, destrutivas embaixo). Lista plana continua valendo.\n\n```ts\nconst getOptions: PropertyServices[\"getOptions\"] = ({ can }) => [\n  // grupo 1 — ações comuns\n  [\n    { key: \"publish\", label: \"Publicar\", icon: <World /> },\n    { key: \"duplicate\", label: \"Duplicar\", icon: <Copy /> },\n  ],\n  // grupo 2 — destrutivas (separadas por um divisor)\n  [\n    {\n      key: \"remove\",\n      label: \"Excluir\",\n      icon: <Trash />,\n      danger: true,\n      disabled: !can(\"property:delete\"),\n      reason: \"Sem permissão para excluir o imóvel\",\n    },\n  ],\n];\n\nconst handleAction: PropertyServices[\"handleAction\"] = (key, item, { command }) => {\n  if (key === \"publish\") command(\"publish\");\n  if (key === \"remove\") command(\"DeleteProperty\");\n};\n```\n\n### Modo inspeção — `inspect` / `getInspectMenu`\n\nAjuda a documentar a própria ferramenta. **Opcional**: sem `inspect`, o modo não existe.\n\n- **ALT+clique**: com ALT segurado e o painel ativo, os componentes inspecionáveis\n  (publicar, salvar, opções, atualizar endereço) acendem; o clique — em vez de agir —\n  dispara `inspect(key, context)`. Funciona até em **botões desabilitados**.\n- **Clique-direito**: abre um menu cujos itens **você injeta** por `getInspectMenu` —\n  rótulos (no seu idioma), ícones, quais itens. No clique de um item, a lib chama\n  `inspect(key, context, item.action)`. A biblioteca não conhece item algum.\n\n```ts\ntype InspectMenuItem = { action: string; label: string; icon?: ReactNode; disabled?: boolean };\n\nconst getInspectMenu: PropertyServices[\"getInspectMenu\"] = (key) => [\n  { action: \"about\", label: \"Sobre\", icon: <Info /> },\n  { action: \"action\", label: \"O que faz\", icon: <Bolt /> },\n];\n\nconst inspect: PropertyServices[\"inspect\"] = (key, _ctx, action) => {\n  abrirDrawer(key, action); // você controla o conteúdo e o layout\n};\n```\n\nA prop `active` controla o foco quando há vários painéis na tela.\n\n---\n\n## `commands` — porta de ações\n\nMapa `{ [chave]: (props, context, controls?) => any }`. O componente dispara uma chave;\nvocê decide o que ela faz. **Nenhum é obrigatório** — chave ausente é ignorada em silêncio.\n\n**Disparados pelo componente:**\n\n| Chave                | Quando                                          | `props`                                    |\n| -------------------- | ----------------------------------------------- | ------------------------------------------ |\n| `onSubmit`           | Botão _Salvar alterações_                       | `{ values: { [key]: value }, modifiedAt }` |\n| `publish`            | Botão de publicação (e menu)                    | `{ id, isUpdate }`                         |\n| `archive`            | Menu _Opções_ (via `run` no `handleAction`)     | `{ id }`                                   |\n| `handleUpload`       | Seleção ou arraste de imagens                   | `{ id, files: File[] }`                    |\n| `Attributes_${name}` | Menu de contexto de um atributo (`jaster-form`) | `{ name, item }`                           |\n\n### Commands de ciclo assíncrono (`publish`/`archive`/`onSubmit`) — o padrão recomendado\n\nUm command **é uma operação do host** — no modelo recomendado, uma função **pura**\n`(props) => Promise<Result>`. **Quem cuida do estado visual (loading, `publishState`,\nlock) é o editor**, pelo ciclo da promise. O command só:\n\n1. faz qualquer confirmação/pré-condição;\n2. chama **`controls.begin()`** quando a operação de verdade começa;\n3. resolve com o resultado (ex.: `{ modified_at }`), que o editor aplica ao `data`.\n\n```ts\nexport const publish: CommandFunction = async (\n  { id, isUpdate },\n  _ctx,\n  controls,\n) => {\n  if (!isUpdate) await confirmar(); // antes de begin → sem \"publicando...\" mentiroso\n  controls?.begin(); // editor mostra o estado pendente + trava o botão\n  return api.publish(id); // Promise<{ modified_at }>\n};\n```\n\nO `begin` é o único acoplamento à apresentação — e é opt-in: um command que **não** o chama\nmantém o comportamento antigo (transiciona `publishState` você mesmo via `context.setData`).\nNa rejeição **após** `begin`, o editor reverte o estado; o **feedback rico do erro é seu**\n(mostre-o dentro da operação, antes de rejeitar). Rejeitar **antes** de `begin` (ex.:\ncancelar a confirmação) não muda nada.\n\nToda ação do menu _Opções_ (destacar, duplicar, excluir, trocar responsável…) **não** é\ndisparada pelo componente — vai do seu `getOptions` para o seu `handleAction`, que decide o\nque fazer. Para dar a uma ação de menu o ciclo async do editor (como `archive`), o\n`handleAction` chama `context.run(\"archive\", { id })` em vez de `command`.\n\nO 2º argumento é o `context` (leituras e o estilo antigo); o 3º é `controls` (`{ begin }`).\nA superfície de `context` (`service`, `command`, `run`, `runAsync`, `data`, `setData`,\n`services`, `user`, `can`…) está em\n[docs/ARCHITECTURE.md](docs/ARCHITECTURE.md#o-contexto).\n\n---\n\n## `data` — estado volátil\n\nEstado de UI que o componente e os commands compartilham — **não é persistido**. A prop\n`data` semeia; a maior parte é gerenciada pelo próprio editor.\n\n| Campo              | Tipo                                                                          | Efeito                                                                    |\n| ------------------ | ----------------------------------------------------------------------------- | ------------------------------------------------------------------------- |\n| `publishState`     | `\"published\" \\| \"archived\" \\| \"publishing\" \\| \"archiving\" \\| \"synchronizing\"` | Define o botão do cabeçalho. Ausente, é derivado do atributo `published`. |\n| `publishLock`      | `boolean`                                                                     | Desabilita o botão de publicação.                                         |\n| `syncRequired`     | `boolean`                                                                     | Troca _Público_ pelo _Atualizar_ pulsante.                                |\n| `deleted`          | `boolean`                                                                     | Substitui o editor pela tela de imóvel excluído.                          |\n| `tags`             | `string[]`                                                                    | `\"highlighted\"` exibe o selo de destaque.                                 |\n| `pinnedAttributes` | `string[]`                                                                    | Atributos fixados no topo da aba Atributos.                               |\n| `modifiedAt`       | `string`                                                                      | ISO date exibida no rodapé.                                               |\n| `options`          | `{ [attrKey]: Option[] }`                                                     | Cache dos selects. Gerenciado pelo componente.                            |\n\nOs estados de ciclo (`publishing`/`archiving`/`synchronizing` → `published`/`archived`) são\n**dirigidos pelo editor** pelo ciclo da promise do command — você não os transiciona. Basta\no command chamar `controls.begin()` e resolver com `{ modified_at }` (ver\n[commands](#commands--porta-de-ações)). O `modifiedAt` do resultado é aplicado aqui.\n\n---\n\n## Mapa (Localização) — `components.MapView` / `services.geocode`\n\nA aba Localização tem um mapa com pino arrastável. A biblioteca **não conhece provedor de\nmapa nenhum** (Google, Mapbox, Leaflet…): o mapa visual é um slot injetável\n(`components.MapView`) e a geocodificação é a porta `services.geocode`. Todos **opcionais**,\ndegradam com elegância. `settings.maps` guarda só a política agnóstica (`autoSync`).\n\n```tsx\nimport type { MapComponent } from \"publisher-property-editor\";\n\n// O mapa é SEU — aqui via Google, mas poderia ser qualquer provedor.\nconst MapView: MapComponent = ({ value, onChange }) => (\n  <MeuMapa\n    center={value ?? undefined}\n    pin={value}\n    onPinMove={(lat, lng) => onChange({ lat, lng })}\n  />\n);\n\n<PropertyEditor\n  …\n  components={{ MapView }}\n  settings={{ maps: { autoSync: \"cep\" } }} // \"cep\" (padrão) | \"district\" | \"off\"\n  services={{\n    …,\n    // Endereço → coordenadas. Devolva null quando não houver resultado.\n    geocode: async (address) => {\n      const { lat, lng } = await meuBackend.geocode(address);\n      return lat && lng ? { lat, lng } : null;\n    },\n    // Opcional: URL para abrir a coordenada num mapa externo (o botão é da lib).\n    mapLink: ({ lat, lng }) =>\n      `https://www.google.com/maps/search/?api=1&query=${lat},${lng}`,\n  }}\n/>;\n```\n\n### As três portas, independentes\n\n| Precisa de…            | Porta                | Contrato / sem ela                                                                          |\n| ---------------------- | -------------------- | ------------------------------------------------------------------------------------------- |\n| **Mostrar o mapa**     | `components.MapView` | `({ value, onChange }) => ReactNode`. Sem ela, a seção mostra só os controles de coordenada. |\n| **Buscar coordenadas** | `services.geocode`   | `(address) => Promise<{lat,lng} \\| null>`. Sem ela, o botão _Sincronizar_ não aparece.       |\n| **Link externo**       | `services.mapLink`   | `(point) => string`. A lib renderiza o botão; sem a porta, ele não aparece.                  |\n\nO editor passa `value` (o pino atual, do atributo `geo-position`) e recebe `onChange` quando\no usuário reposiciona. **A chave do mapa, o provedor e o carregamento são do seu `MapView`** —\no build da lib não carrega chave nem SDK de mapa algum. Para o mapa no browser use uma chave\nrestrita por **referer**; o `services.geocode` você implementa como quiser (inclusive um\nendpoint do seu backend, sem restrição de referer). O `mapLink` é opcional — a lib desenha o\nbotão de link externo e usa o retorno como `href`; **o destino é seu** (Google, OSM, Waze…).\n\n### Comportamento da sincronização\n\nO princípio: **o pino é a verdade; o endereço é palpite; o geocode é sugestão.** A partir\ndisso:\n\n- **`autoSync`** decide _quando_ geocodar sozinho, e só vale para **imóvel novo** (sem geo\n  salvo) e enquanto o pino não é manual:\n  - `\"cep\"` (padrão): ao completar o CEP — evento de alta precisão, poucas requisições.\n  - `\"district\"`: ao ter cidade + bairro — mais dinâmico.\n  - `\"off\"`: nunca automático; só pelo botão.\n- **Pino manual é respeitado.** Arrastar o pino (ou digitar lat,lng) pausa o auto-sync — um\n  chip _\"pino manual\"_ sinaliza. Um imóvel já salvo idem: nunca é auto-sobrescrito.\n- **Cache de sessão por endereço** (inclusive negativo: um endereço sem resultado não é\n  reconsultado) — não gasta requisição à toa. É o motivo de `geocode` poder ser chamado sem\n  medo: a biblioteca só chama quando o endereço mudou de verdade.\n- **Divergência**: se o endereço muda depois do pino, o botão vira **_Atualizar mapa_** em\n  destaque — inclusive em modo manual (avisando que não sincronizou sozinho). Nunca gasta\n  requisição sem o clique.\n- **Validação**: sem cidade, o editor **não** chama `geocode` — avisa por `notify` e para.\n\nO feedback (info/aviso/erro) sai por `services.notify`; a biblioteca não usa `alert`.\n\n---\n\n## Permissões — `can`\n\nO editor consulta permissões por **chaves nomeadas**. Só duas são um **contrato da\nbiblioteca** (ela lê e aplica sozinha); as demais são **convenção sua** — a lib apenas\nrepassa a chave ao seu `can`, e quem decide o efeito é o seu `getOptions`/`handleAction`.\n\n| Chave                | Lida pela lib? | Efeito / uso                                                    |\n| -------------------- | :------------: | --------------------------------------------------------------- |\n| `property:edit`      |       ✅       | Sem ela, o botão _Salvar alterações_ desabilita.                |\n| `property:publish`   |       ✅       | Sem ela, o botão de publicação desabilita.                      |\n| `property:private`   |       —        | Convenção — acesso/edição na aba Privado, gerido pelo seu host. |\n| `property:highlight` |       —        | Convenção — ação de destacar o imóvel (menu _Opções_).          |\n| `property:create`    |       —        | Convenção — ação de duplicar o imóvel (menu _Opções_).          |\n| `property:delete`    |       —        | Convenção — ação de excluir o imóvel (menu _Opções_).           |\n\n> A aba **Privado** não usa chave de permissão: ela gateia por **posse** (`canEdit` — é o\n> owner ou master), não por `can(\"...\")`. E as chaves de convenção acima são só as do host\n> de referência; você usa o vocabulário que quiser — a lib não conhece nenhuma além das\n> duas com ✅.\n\nDuas formas de responder — e **respondem igual** (literal, sem regra escondida):\n\n- **Simples** — passe `permissions: string[]`. A lib deriva `permissions.includes(key)`.\n- **Injetada** — passe `can: (key) => boolean` e mapeie cada chave para o ACL real do seu\n  app. Aí `can` é a **autoridade final** e `permissions` é ignorado.\n\n> **Sem bypass de master nas permissões.** Nenhuma das formas libera uma chave só porque o\n> usuário é master — uma chave só vale se estiver na lista (ou se o seu `can` a permitir). O\n> papel de master fica restrito à **posse** (`canEdit`: master edita imóvel de qualquer\n> owner). Se quiser que master tenha tudo, conceda as chaves a ele no `permissions`/`can`.\n\n```tsx\n<PropertyEditor can={(key) => app.can(MAPA[key])} … />\n```\n\n---\n\n## Seções e layout — `sections`\n\nAs abas do editor vêm de um **schema**. Omitido, usa o conjunto padrão; passe `sections`\npara reordenar, filtrar, renomear, exigir permissão ou registrar seções próprias.\n\n```ts\ntype SectionSchema =\n  | string // chave do registro embutido\n  | {\n      type: string; // chave, ou \"spacer\"\n      variant?: \"full\" | \"icon\"; // ícone+texto (padrão) ou só ícone (tooltip)\n      label?: string; // renomear a aba\n      icon?: ReactNode; // trocar o ícone\n      permission?: string; // só aparece se can(permission)\n      hideOnMobile?: boolean; // some quando settings.mobile\n      keepMounted?: boolean; // preserva a aba montada ao trocar (não desmonta)\n      component?: (props) => ReactNode; // seção própria (substitui a do registro)\n    };\n```\n\nSeções embutidas (chave → rótulo padrão): `main`→Principal, `attributes`→Atributos,\n`address`→Localização, `media`→Mídias, `publish`→Publicação, `inspect`→Análise,\n`private`→Privado.\n\n- `{ type: \"spacer\" }` **divide a barra em duas zonas**: à esquerda as abas normais; à\n  direita, as seções seguintes viram um grupo compacto só-ícone (auxiliares como Análise e\n  Privado). No **modo mobile** (`settings.mobile`) não há divisão — todas as abas ficam na\n  mesma fila (ícone + rótulo pequeno), e as seções `hideOnMobile` (a Análise, por padrão)\n  somem.\n- `keepMounted` **preserva a aba montada** ao trocar de aba (esconde via CSS em vez de\n  desmontar) — para conteúdo caro de reinicializar. Por padrão o editor **desmonta** a aba\n  inativa (descarta o estado local); `address` e `media` já vêm `keepMounted` (o mapa e a\n  galeria, senão, recarregam a cada visita).\n- `chrome={false}` renderiza **apenas as seções** (sem cabeçalho/abas/rodapé) — útil para\n  exibir uma página isolada, ex.: `sections={[\"address\"]} chrome={false}`.\n\n```tsx\n<PropertyEditor\n  sections={[\n    \"main\",\n    \"attributes\",\n    { type: \"media\", label: \"Fotos\" },              // renomeada\n    { type: \"publish\", permission: \"property:publish\" }, // condicional\n    \"spacer\",\n    \"inspect\",                                       // vira botão à direita\n    \"private\",\n  ]}\n  …\n/>\n```\n\nPara montar uma UI de configuração de layout, a lib exporta o catálogo sem arrastar as\nseções pesadas:\n\n```ts\nimport { SECTION_META, DEFAULT_SECTIONS } from \"publisher-property-editor\";\n// SECTION_META: { type, label }[]   ·   DEFAULT_SECTIONS: string[]\n```\n\n---\n\n## Componentes de UI — `components`\n\nO editor traz seus próprios primitivos de apresentação, mas onde você tem identidade\nprópria pode **injetá-los** pela prop `components`. Cada slot é opcional e cai num default\nembutido — o editor funciona standalone. É a fronteira \"o host veste os primitivos; a lib\nnão importa design system de ninguém\".\n\n```tsx\n<PropertyEditor\n  …\n  components={{\n    Link,        // roteamento (também via <LinkProvider>)\n    HoverCard,   // primitiva genérica: hover revela qualquer componente\n    UserHover,   // card do usuário (owner) no hover\n    MapView,     // mapa da aba Localização (ver \"Mapa\")\n  }}\n/>\n```\n\n| Slot        | Contrato                                                     | Default                         | O host provê                              |\n| ----------- | ------------------------------------------------------------ | ------------------------------- | ----------------------------------------- |\n| `Link`      | `{ href, children, …a }`                                     | âncora `<a>`                    | O link do seu roteador (SPA)              |\n| `HoverCard` | `{ trigger, children, placement?, openDelay?, closeDelay? }` | popover mínimo próprio          | O recipiente de hover (ex.: Radix/shadcn) |\n| `UserHover` | `{ user, children }`                                         | card básico sobre o `HoverCard` | O card de usuário inteiro (avatar, ações) |\n| `MapView`   | `{ value, onChange }`                                        | **sem default** (só controles)  | O mapa (Google, Mapbox…). Ver [Mapa](#mapa-localização--componentsmapview--servicesgeocode) |\n\n**Duas granularidades para o mesmo ponto (o owner no rodapé).** Injetar só `HoverCard`\ntroca o **recipiente** — o conteúdo básico do editor aparece dentro dele. Injetar `UserHover`\nentrega **recipiente e conteúdo** ao host. Como o default de `UserHover` é construído sobre\no `HoverCard`, os dois compõem:\n\n```tsx\n// A — só o recipiente (o editor ainda monta o conteúdo do card):\ncomponents={{ HoverCard: MyHoverCard }}\n\n// B — o card de usuário inteiro é seu:\ncomponents={{ UserHover: ({ user, children }) => (\n  <MyHoverCard trigger={children}><UserProfileCard user={user} /></MyHoverCard>\n) }}\n```\n\n> `HoverCard` é para painéis React interativos no hover — não é um tooltip textual. Para dica\n> curta o editor usa seu tooltip interno.\n\n### Roteamento — `Link` / `<LinkProvider>`\n\nOnde o editor renderiza um link (menu de opções, integrações), ele usa o slot `Link`. Além\nde `components.Link`, o `<LinkProvider>` continua válido (retrocompat) — a precedência é\n`components.Link` > `<LinkProvider>` > âncora:\n\n```tsx\nimport PropertyEditor, { LinkProvider } from \"publisher-property-editor\";\nimport { Link as RouterLink } from \"react-router-dom\";\n\n<LinkProvider component={({ href, ...props }) => <RouterLink to={href} {...props} />}>\n  <PropertyEditor … />\n</LinkProvider>;\n```\n\n---\n\n## Atributos\n\nO imóvel **não** é um objeto tipado — é uma **lista plana** de `AttributeType`:\n\n```ts\ntype AttributeType = {\n  key: string; // identificador único e estável\n  value?: any; // valor do usuário (ausente = não preenchido)\n  type?: \"bool\" | \"number\" | \"options\" | string;\n  label?: string;\n  categories?: { view?: string }; // casa com o `name` de `categories`\n  $custom?: boolean; // atributo fora do modelo\n};\n```\n\nMonte a lista concatenando identidade + definições do modelo + valores salvos. As chaves\nreservadas (`id`, `reference`, `model`, `title`, `published`, `media.pictures`,\n`geo-position`, `$private`…), os tipos, as categorias e os modelos estão detalhados em\n**[docs/ATTRIBUTES.md](docs/ATTRIBUTES.md)**.\n\n---\n\n## Tipos exportados\n\n```ts\nimport PropertyEditor, {\n  // montagem\n  PropertyProvider,\n  PropertyEditorView,\n  // hooks (dentro de um provider)\n  useEditor,\n  useACL,\n  useNotify,\n  useService,\n  useServices,\n  useCommand,\n  useAction,\n  useRun,\n  useRunAsync,\n  useAttr,\n  useAttrValue,\n  useAttributes,\n  useData,\n  useSetData,\n  useSelector,\n  useEditorContext,\n  // UI injetável\n  Link,\n  LinkProvider,\n  useLinkComponent,\n  UIProvider,\n  useUI,\n  SECTION_META,\n  DEFAULT_SECTIONS,\n} from \"publisher-property-editor\";\n\nimport type {\n  PropertyProps,\n  PropertyProviderProps,\n  PropertyViewProps,\n  PropertyServices,\n  CommandFunction,\n  CommandFunctions,\n  CommandControls,\n  User,\n  Integration,\n  AttributeGroup,\n  Settings,\n  PermissionCheck,\n  NotifyInput,\n  NotifyType,\n  InspectMenuItem,\n  SectionSchema,\n  SectionMeta,\n  TableContext,\n  AttributeType,\n  AttributeMethods,\n  LinkProps,\n  LinkComponent,\n  EditorComponents,\n  HoverCardProps,\n  HoverCardComponent,\n  UserHoverProps,\n  UserHoverComponent,\n  MapPoint,\n  MapViewProps,\n  MapComponent,\n} from \"publisher-property-editor\";\n```\n\n---\n\n## Desenvolvimento\n\nMonorepo pnpm. Da raiz:\n\n```bash\npnpm install\npnpm dev                                   # playground (apps/playground) em Vite\npnpm -C packages/property-editor build     # dist/index.js + .d.ts + style.css\npnpm -C packages/property-editor test      # Vitest\npnpm -C packages/property-editor typecheck\n```\n\nBuild com **tsup** (ESM + tipos) + Tailwind CLI para o CSS. O playground implementa\n`services`/`commands` com mocks e é a **referência viva de integração** — se em dúvida\nsobre como implementar uma porta, olhe `apps/playground/src/editor-host/`.\n","readmeFilename":"README.md"}