@power-maverick/tool-entity-field-catalog 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,114 @@
1
+ # Entity Field Catalog
2
+
3
+ Export entity and field metadata from Dataverse solutions to Excel format.
4
+
5
+ ## Overview
6
+
7
+ The Entity Field Catalog is a React-based tool designed exclusively for Power Platform ToolBox (PPTB) that allows users to:
8
+
9
+ - Select a Dataverse solution
10
+ - Choose multiple entities from that solution
11
+ - Export comprehensive entity and field metadata to Excel (.xlsx) formats
12
+
13
+ ## Features
14
+
15
+ - **Modern Fluent UI Design**: Built with Microsoft's Fluent UI React components for a consistent, professional look
16
+ - **Multi-Entity Selection**: Select one or multiple entities to export at once
17
+ - **Comprehensive Metadata Export**: Exports entity and field information including:
18
+ - Entity logical name, display name, schema name, and description
19
+ - Field logical name, display name, schema name, type, and description
20
+ - Field properties: isPrimaryId, isPrimaryName, isRequired
21
+ - **Multiple Export Formats**:
22
+ - Excel (.xlsx) - Entities tab plus one tab per entity
23
+ - CSV (.zip) - Entities summary CSV plus one CSV per entity, packaged together
24
+ - **PPTB Integration**: Full integration with Power Platform ToolBox API for seamless connectivity
25
+
26
+ ## Technical Stack
27
+
28
+ - **React 18** with TypeScript
29
+ - **Fluent UI React Components** for modern, accessible UI
30
+ - **Vite** for fast development and optimized builds
31
+ - **ExcelJS** for secure Excel export functionality
32
+ - **PPTB API** for all Dataverse operations (no direct HTTP calls)
33
+
34
+ ## Installation
35
+
36
+ This tool is distributed as part of the PPTB-Tools monorepo and can be installed in Power Platform ToolBox.
37
+
38
+ ### Prerequisites
39
+
40
+ - Node.js >= 18.0.0
41
+ - npm >= 9.0.0
42
+
43
+ ### Build
44
+
45
+ ```bash
46
+ cd tools/entity-field-catalog
47
+ npm install
48
+ npm run build
49
+ ```
50
+
51
+ ## Usage in PPTB
52
+
53
+ 1. Install the tool in Power Platform ToolBox
54
+ 2. Connect to your Dataverse environment
55
+ 3. Open the Entity Field Catalog tool
56
+ 4. Select a solution from the dropdown
57
+ 5. Check the entities you want to export
58
+ 6. Choose your export format (Excel or CSV)
59
+ 7. Click "Export" to download the file
60
+
61
+ ## Export Format
62
+
63
+ Both export options share the same structure:
64
+
65
+ - **Excel**: One `Entities` tab with consolidated info and an additional tab per entity for field details.
66
+ - **CSV**: A `.zip` file containing `Entities.csv` plus a separate CSV for each entity's fields.
67
+
68
+ ### Entities Summary
69
+
70
+ | Column | Description |
71
+ | ---------------------- | --------------------------------- |
72
+ | Entity Display Name | Human-friendly name of the entity |
73
+ | Entity Logical Name | Dataverse logical name |
74
+ | Entity Schema Name | Dataverse schema name |
75
+ | Primary ID Attribute | Primary key column |
76
+ | Primary Name Attribute | Primary name column |
77
+ | Object Type Code | Numeric identifier (if available) |
78
+ | Description | Entity description |
79
+ | Field Count | Number of fields exported |
80
+
81
+ ### Field Details (per entity)
82
+
83
+ | Column | Description |
84
+ | ------------------ | ------------------------------------------ |
85
+ | Field Display Name | Human-friendly field label |
86
+ | Field Logical Name | Dataverse logical name |
87
+ | Field Schema Name | Dataverse schema name |
88
+ | Field Type | Data type |
89
+ | Is Primary ID | Indicates if the field is the primary ID |
90
+ | Is Primary Name | Indicates if the field is the primary name |
91
+ | Is Required | Indicates if the field is required |
92
+ | Field Description | Field description |
93
+
94
+ ## Development
95
+
96
+ To run the tool in development mode:
97
+
98
+ ```bash
99
+ npm run dev
100
+ ```
101
+
102
+ This will start the Vite development server with hot module replacement.
103
+
104
+ ## License
105
+
106
+ This project is licensed under the GPL-2.0 License - see the [LICENSE](../../LICENSE) file for details.
107
+
108
+ ## Contributing
109
+
110
+ Contributions are welcome! Please feel free to submit a Pull Request.
111
+
112
+ ## Author
113
+
114
+ Power Maverick - [GitHub](https://github.com/Power-Maverick)
@@ -0,0 +1,12 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
+ <title>Entity Field Catalog</title>
7
+ <script type="module" crossorigin src="/index.js"></script>
8
+ </head>
9
+ <body>
10
+ <div id="root"></div>
11
+ </body>
12
+ </html>