1.2.3 • Published 7 months ago

@daoyi/coordinates-editor-modal v1.2.3

Weekly downloads
-
License
ISC
Repository
gitlab
Last release
7 months ago

@daoyi/coordinates-editor-modal

A React modal component for editing coordinates (latitude & longitude) easily, with integrated map and table interface.

🗺️ 經緯度編輯元件,整合地圖與表格輸入,支援自訂樣式、外部查詢、自動同步。


📦 Installation

npm install @daoyi/coordinates-editor-modal

此元件依賴以下套件,請一併安裝(若尚未安裝):

npm install react react-dom @mui/material @mui/icons-material react-leaflet leaflet axios uuid

🚀 Usage

import React, { useState } from "react";
import { CoordinatesModal } from "@daoyi/coordinates-editor-modal";

export default function App() {
  const [open, setOpen] = useState(false);

  return (
    <CoordinatesModal
      open={open}
      setOpen={setOpen}
      title="測試地區"
      coordinateOptions={[
        { label: "地點 A", longitude: "121.5", latitude: "25.0" },
        { label: "地點 B", longitude: "121.6", latitude: "25.1" }
      ]}
      onClick={(coords) => console.log("儲存結果", coords)}
    />
  );
}

⚙️ Props 說明

PropTypeDescription
openboolean控制 modal 是否開啟
setOpen(val: boolean) => void切換開關狀態
readOnlyboolean是否為唯讀模式
isLoadingboolean是否顯示 loading 效果
locationsstring[]初始地點(字串)陣列
titlestringmodal 顯示標題
tableInfostring表格上方提示文字
tableHeaderstring[]表格欄位標題(預設為名稱/經度/緯度)
mapInfostring地圖上方提示文字
coordinateOptions{ label, longitude, latitude }[]可選的地點與經緯度資料
googleMapsGeoApiKeystringGoogle Maps Geocoding API Key(可選)
getCoordinates(label: string) => Promise<{ label, longitude, latitude }>自定查詢座標函式
mapCenter[number, number]地圖中央預設經緯度
mapZoomnumber地圖遠近
onClick(coordinates) => void按下「確定」時觸發,回傳目前所有經緯度資料
infoIcon, addCoordinatesIcon, deleteIcon, mapPinIconReact.ReactNode自訂圖示元件
xxxSxobject提供 MUI sx 自訂樣式,包含 modal、button、表格、地圖等元件

🛠 Peer Dependencies

套件說明
react, react-domReact 16.8+
@mui/material, @mui/icons-materialUI 元件(button, modal, icon)
react-leaflet, leaflet地圖功能
axios查詢外部 API
uuid產生唯一 ID

請確保這些依賴已安裝:

npm install react react-dom @mui/material @mui/icons-material react-leaflet leaflet axios uuid

📦 原始碼與套件資訊

此專案托管於 GitLab,並發佈於 npm:


📄 License

ISC License
© DaoYi Technology © Johnny 蔡政軒

1.2.3

7 months ago

1.2.2

7 months ago

1.2.1

7 months ago

1.2.0

7 months ago

1.1.1

7 months ago

1.1.0

7 months ago

1.0.10

7 months ago

1.0.9

8 months ago

1.0.8

8 months ago

1.0.7

8 months ago

1.0.6

8 months ago

1.0.5

8 months ago

1.0.4

8 months ago

1.0.3

8 months ago

1.0.2

8 months ago

1.0.1

8 months ago

1.0.0

8 months ago