@mcp-consultant-tools/powerplatform-core 26.0.0-beta.2

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.
Files changed (153) hide show
  1. package/build/auth/index.d.ts +64 -0
  2. package/build/auth/index.d.ts.map +1 -0
  3. package/build/auth/index.js +39 -0
  4. package/build/auth/index.js.map +1 -0
  5. package/build/auth/interactive-auth.d.ts +60 -0
  6. package/build/auth/interactive-auth.d.ts.map +1 -0
  7. package/build/auth/interactive-auth.js +429 -0
  8. package/build/auth/interactive-auth.js.map +1 -0
  9. package/build/auth/service-principal-auth.d.ts +26 -0
  10. package/build/auth/service-principal-auth.d.ts.map +1 -0
  11. package/build/auth/service-principal-auth.js +60 -0
  12. package/build/auth/service-principal-auth.js.map +1 -0
  13. package/build/auth/token-cache.d.ts +40 -0
  14. package/build/auth/token-cache.d.ts.map +1 -0
  15. package/build/auth/token-cache.js +108 -0
  16. package/build/auth/token-cache.js.map +1 -0
  17. package/build/client/PowerPlatformClient.d.ts +78 -0
  18. package/build/client/PowerPlatformClient.d.ts.map +1 -0
  19. package/build/client/PowerPlatformClient.js +198 -0
  20. package/build/client/PowerPlatformClient.js.map +1 -0
  21. package/build/client/index.d.ts +6 -0
  22. package/build/client/index.d.ts.map +1 -0
  23. package/build/client/index.js +6 -0
  24. package/build/client/index.js.map +1 -0
  25. package/build/client/types.d.ts +300 -0
  26. package/build/client/types.d.ts.map +1 -0
  27. package/build/client/types.js +5 -0
  28. package/build/client/types.js.map +1 -0
  29. package/build/index.d.ts +36 -0
  30. package/build/index.d.ts.map +1 -0
  31. package/build/index.js +55 -0
  32. package/build/index.js.map +1 -0
  33. package/build/services/AppManagementService.d.ts +95 -0
  34. package/build/services/AppManagementService.d.ts.map +1 -0
  35. package/build/services/AppManagementService.js +322 -0
  36. package/build/services/AppManagementService.js.map +1 -0
  37. package/build/services/AppService.d.ts +39 -0
  38. package/build/services/AppService.d.ts.map +1 -0
  39. package/build/services/AppService.js +173 -0
  40. package/build/services/AppService.js.map +1 -0
  41. package/build/services/AttributeService.d.ts +28 -0
  42. package/build/services/AttributeService.d.ts.map +1 -0
  43. package/build/services/AttributeService.js +86 -0
  44. package/build/services/AttributeService.js.map +1 -0
  45. package/build/services/BusinessRuleService.d.ts +22 -0
  46. package/build/services/BusinessRuleService.d.ts.map +1 -0
  47. package/build/services/BusinessRuleService.js +85 -0
  48. package/build/services/BusinessRuleService.js.map +1 -0
  49. package/build/services/DataService.d.ts +53 -0
  50. package/build/services/DataService.d.ts.map +1 -0
  51. package/build/services/DataService.js +204 -0
  52. package/build/services/DataService.js.map +1 -0
  53. package/build/services/DependencyService.d.ts +27 -0
  54. package/build/services/DependencyService.d.ts.map +1 -0
  55. package/build/services/DependencyService.js +47 -0
  56. package/build/services/DependencyService.js.map +1 -0
  57. package/build/services/EntityService.d.ts +42 -0
  58. package/build/services/EntityService.d.ts.map +1 -0
  59. package/build/services/EntityService.js +132 -0
  60. package/build/services/EntityService.js.map +1 -0
  61. package/build/services/FlowService.d.ts +55 -0
  62. package/build/services/FlowService.d.ts.map +1 -0
  63. package/build/services/FlowService.js +608 -0
  64. package/build/services/FlowService.js.map +1 -0
  65. package/build/services/FormService.d.ts +36 -0
  66. package/build/services/FormService.d.ts.map +1 -0
  67. package/build/services/FormService.js +55 -0
  68. package/build/services/FormService.js.map +1 -0
  69. package/build/services/MetadataService.d.ts +63 -0
  70. package/build/services/MetadataService.d.ts.map +1 -0
  71. package/build/services/MetadataService.js +176 -0
  72. package/build/services/MetadataService.js.map +1 -0
  73. package/build/services/OptionSetService.d.ts +40 -0
  74. package/build/services/OptionSetService.d.ts.map +1 -0
  75. package/build/services/OptionSetService.js +91 -0
  76. package/build/services/OptionSetService.js.map +1 -0
  77. package/build/services/PluginDeploymentService.d.ts +102 -0
  78. package/build/services/PluginDeploymentService.d.ts.map +1 -0
  79. package/build/services/PluginDeploymentService.js +412 -0
  80. package/build/services/PluginDeploymentService.js.map +1 -0
  81. package/build/services/PluginService.d.ts +61 -0
  82. package/build/services/PluginService.d.ts.map +1 -0
  83. package/build/services/PluginService.js +289 -0
  84. package/build/services/PluginService.js.map +1 -0
  85. package/build/services/PublishingService.d.ts +37 -0
  86. package/build/services/PublishingService.d.ts.map +1 -0
  87. package/build/services/PublishingService.js +65 -0
  88. package/build/services/PublishingService.js.map +1 -0
  89. package/build/services/RelationshipService.d.ts +29 -0
  90. package/build/services/RelationshipService.d.ts.map +1 -0
  91. package/build/services/RelationshipService.js +46 -0
  92. package/build/services/RelationshipService.js.map +1 -0
  93. package/build/services/SolutionService.d.ts +60 -0
  94. package/build/services/SolutionService.d.ts.map +1 -0
  95. package/build/services/SolutionService.js +125 -0
  96. package/build/services/SolutionService.js.map +1 -0
  97. package/build/services/ValidationService.d.ts +31 -0
  98. package/build/services/ValidationService.d.ts.map +1 -0
  99. package/build/services/ValidationService.js +391 -0
  100. package/build/services/ValidationService.js.map +1 -0
  101. package/build/services/ViewService.d.ts +36 -0
  102. package/build/services/ViewService.d.ts.map +1 -0
  103. package/build/services/ViewService.js +55 -0
  104. package/build/services/ViewService.js.map +1 -0
  105. package/build/services/WebResourceService.d.ts +40 -0
  106. package/build/services/WebResourceService.d.ts.map +1 -0
  107. package/build/services/WebResourceService.js +64 -0
  108. package/build/services/WebResourceService.js.map +1 -0
  109. package/build/services/WorkflowManagementService.d.ts +157 -0
  110. package/build/services/WorkflowManagementService.d.ts.map +1 -0
  111. package/build/services/WorkflowManagementService.js +567 -0
  112. package/build/services/WorkflowManagementService.js.map +1 -0
  113. package/build/services/WorkflowService.d.ts +28 -0
  114. package/build/services/WorkflowService.d.ts.map +1 -0
  115. package/build/services/WorkflowService.js +285 -0
  116. package/build/services/WorkflowService.js.map +1 -0
  117. package/build/services/index.d.ts +29 -0
  118. package/build/services/index.d.ts.map +1 -0
  119. package/build/services/index.js +31 -0
  120. package/build/services/index.js.map +1 -0
  121. package/build/utils/auditLogger.d.ts +76 -0
  122. package/build/utils/auditLogger.d.ts.map +1 -0
  123. package/build/utils/auditLogger.js +110 -0
  124. package/build/utils/auditLogger.js.map +1 -0
  125. package/build/utils/best-practices-formatters.d.ts +26 -0
  126. package/build/utils/best-practices-formatters.d.ts.map +1 -0
  127. package/build/utils/best-practices-formatters.js +238 -0
  128. package/build/utils/best-practices-formatters.js.map +1 -0
  129. package/build/utils/bestPractices.d.ts +150 -0
  130. package/build/utils/bestPractices.d.ts.map +1 -0
  131. package/build/utils/bestPractices.js +324 -0
  132. package/build/utils/bestPractices.js.map +1 -0
  133. package/build/utils/iconManager.d.ts +84 -0
  134. package/build/utils/iconManager.d.ts.map +1 -0
  135. package/build/utils/iconManager.js +338 -0
  136. package/build/utils/iconManager.js.map +1 -0
  137. package/build/utils/index.d.ts +11 -0
  138. package/build/utils/index.d.ts.map +1 -0
  139. package/build/utils/index.js +18 -0
  140. package/build/utils/index.js.map +1 -0
  141. package/build/utils/prompt-templates.d.ts +9 -0
  142. package/build/utils/prompt-templates.d.ts.map +1 -0
  143. package/build/utils/prompt-templates.js +31 -0
  144. package/build/utils/prompt-templates.js.map +1 -0
  145. package/build/utils/publisherConfig.d.ts +33 -0
  146. package/build/utils/publisherConfig.d.ts.map +1 -0
  147. package/build/utils/publisherConfig.js +54 -0
  148. package/build/utils/publisherConfig.js.map +1 -0
  149. package/build/utils/rate-limiter.d.ts +108 -0
  150. package/build/utils/rate-limiter.d.ts.map +1 -0
  151. package/build/utils/rate-limiter.js +242 -0
  152. package/build/utils/rate-limiter.js.map +1 -0
  153. package/package.json +65 -0
@@ -0,0 +1,289 @@
1
+ /**
2
+ * PluginService
3
+ *
4
+ * Read-only service for plugin assemblies, types, steps, images, and trace logs.
5
+ */
6
+ export class PluginService {
7
+ client;
8
+ constructor(client) {
9
+ this.client = client;
10
+ }
11
+ /**
12
+ * Get all plugin assemblies in the environment
13
+ */
14
+ async getPluginAssemblies(includeManaged = false, maxRecords = 100) {
15
+ const managedFilter = includeManaged ? '' : '$filter=ismanaged eq false&';
16
+ const assemblies = await this.client.makeRequest(`api/data/v9.2/pluginassemblies?${managedFilter}$select=pluginassemblyid,name,version,culture,publickeytoken,isolationmode,sourcetype,major,minor,createdon,modifiedon,ismanaged,ishidden&$expand=modifiedby($select=fullname)&$orderby=name&$top=${maxRecords}`);
17
+ // Filter out hidden assemblies and format results
18
+ const formattedAssemblies = assemblies.value
19
+ .filter((assembly) => {
20
+ const isHidden = assembly.ishidden?.Value !== undefined
21
+ ? assembly.ishidden.Value
22
+ : assembly.ishidden;
23
+ return !isHidden;
24
+ })
25
+ .map((assembly) => ({
26
+ pluginassemblyid: assembly.pluginassemblyid,
27
+ name: assembly.name,
28
+ version: assembly.version,
29
+ isolationMode: assembly.isolationmode === 1
30
+ ? 'None'
31
+ : assembly.isolationmode === 2
32
+ ? 'Sandbox'
33
+ : 'External',
34
+ isManaged: assembly.ismanaged,
35
+ modifiedOn: assembly.modifiedon,
36
+ modifiedBy: assembly.modifiedby?.fullname,
37
+ major: assembly.major,
38
+ minor: assembly.minor,
39
+ }));
40
+ return {
41
+ totalCount: formattedAssemblies.length,
42
+ assemblies: formattedAssemblies,
43
+ };
44
+ }
45
+ /**
46
+ * Get a plugin assembly by name with all related plugin types, steps, and images
47
+ */
48
+ async getPluginAssemblyComplete(assemblyName, includeDisabled = false) {
49
+ // Get the plugin assembly
50
+ const assemblies = await this.client.makeRequest(`api/data/v9.2/pluginassemblies?$filter=name eq '${assemblyName}'&$select=pluginassemblyid,name,version,culture,publickeytoken,isolationmode,sourcetype,major,minor,createdon,modifiedon,ismanaged,ishidden,description&$expand=modifiedby($select=fullname)`);
51
+ if (!assemblies.value || assemblies.value.length === 0) {
52
+ throw new Error(`Plugin assembly '${assemblyName}' not found`);
53
+ }
54
+ const assembly = assemblies.value[0];
55
+ const assemblyId = assembly.pluginassemblyid;
56
+ // Get plugin types
57
+ const pluginTypes = await this.client.makeRequest(`api/data/v9.2/plugintypes?$filter=_pluginassemblyid_value eq ${assemblyId}&$select=plugintypeid,typename,friendlyname,name,assemblyname,description,workflowactivitygroupname`);
58
+ // Get all steps for each plugin type
59
+ const pluginTypeIds = pluginTypes.value.map((pt) => pt.plugintypeid);
60
+ let allSteps = [];
61
+ if (pluginTypeIds.length > 0) {
62
+ const statusFilter = includeDisabled ? '' : ' and statuscode eq 1';
63
+ const typeFilter = pluginTypeIds
64
+ .map((id) => `_plugintypeid_value eq ${id}`)
65
+ .join(' or ');
66
+ const steps = await this.client.makeRequest(`api/data/v9.2/sdkmessageprocessingsteps?$filter=(${typeFilter})${statusFilter}&$select=sdkmessageprocessingstepid,name,stage,mode,rank,statuscode,asyncautodelete,filteringattributes,supporteddeployment,configuration,description,invocationsource,_plugintypeid_value,_sdkmessagefilterid_value,_impersonatinguserid_value,_eventhandler_value&$expand=sdkmessageid($select=name),plugintypeid($select=typename),impersonatinguserid($select=fullname),modifiedby($select=fullname),sdkmessagefilterid($select=primaryobjecttypecode)&$orderby=stage,rank`);
67
+ allSteps = steps.value;
68
+ }
69
+ // Get all images for these steps
70
+ const stepIds = allSteps.map((s) => s.sdkmessageprocessingstepid);
71
+ let allImages = [];
72
+ if (stepIds.length > 0) {
73
+ const imageFilter = stepIds
74
+ .map((id) => `_sdkmessageprocessingstepid_value eq ${id}`)
75
+ .join(' or ');
76
+ const images = await this.client.makeRequest(`api/data/v9.2/sdkmessageprocessingstepimages?$filter=${imageFilter}&$select=sdkmessageprocessingstepimageid,name,imagetype,messagepropertyname,entityalias,attributes,_sdkmessageprocessingstepid_value`);
77
+ allImages = images.value;
78
+ }
79
+ // Attach images to their respective steps
80
+ const stepsWithImages = allSteps.map((step) => ({
81
+ ...step,
82
+ images: allImages.filter((img) => img._sdkmessageprocessingstepid_value ===
83
+ step.sdkmessageprocessingstepid),
84
+ }));
85
+ // Validation checks
86
+ const validation = {
87
+ hasDisabledSteps: allSteps.some((s) => s.statuscode !== 1),
88
+ hasAsyncSteps: allSteps.some((s) => s.mode === 1),
89
+ hasSyncSteps: allSteps.some((s) => s.mode === 0),
90
+ stepsWithoutFilteringAttributes: stepsWithImages
91
+ .filter((s) => {
92
+ const sdkmsg = s.sdkmessageid;
93
+ const msgName = sdkmsg?.name;
94
+ return ((msgName === 'Update' || msgName === 'Delete') &&
95
+ !s.filteringattributes);
96
+ })
97
+ .map((s) => s.name),
98
+ stepsWithoutImages: stepsWithImages
99
+ .filter((s) => {
100
+ const sdkmsg = s.sdkmessageid;
101
+ const msgName = sdkmsg?.name;
102
+ return (s.images.length === 0 &&
103
+ (msgName === 'Update' || msgName === 'Delete'));
104
+ })
105
+ .map((s) => s.name),
106
+ potentialIssues: [],
107
+ };
108
+ if (validation.stepsWithoutFilteringAttributes.length > 0) {
109
+ validation.potentialIssues.push(`${validation.stepsWithoutFilteringAttributes.length} Update/Delete steps without filtering attributes (performance concern)`);
110
+ }
111
+ if (validation.stepsWithoutImages.length > 0) {
112
+ validation.potentialIssues.push(`${validation.stepsWithoutImages.length} Update/Delete steps without images (may need entity data)`);
113
+ }
114
+ return {
115
+ assembly,
116
+ pluginTypes: pluginTypes.value,
117
+ steps: stepsWithImages,
118
+ validation,
119
+ };
120
+ }
121
+ /**
122
+ * Get all plugins that execute on a specific entity
123
+ */
124
+ async getEntityPluginPipeline(entityName, messageFilter, includeDisabled = false) {
125
+ const statusFilter = includeDisabled ? '' : ' and statuscode eq 1';
126
+ const msgFilter = messageFilter
127
+ ? ` and sdkmessageid/name eq '${messageFilter}'`
128
+ : '';
129
+ const steps = await this.client.makeRequest(`api/data/v9.2/sdkmessageprocessingsteps?$filter=sdkmessagefilterid/primaryobjecttypecode eq '${entityName}'${statusFilter}${msgFilter}&$select=sdkmessageprocessingstepid,name,stage,mode,rank,statuscode,asyncautodelete,filteringattributes,supporteddeployment,configuration,description,_plugintypeid_value,_sdkmessagefilterid_value,_impersonatinguserid_value&$expand=sdkmessageid($select=name),plugintypeid($select=typename),impersonatinguserid($select=fullname),sdkmessagefilterid($select=primaryobjecttypecode)&$orderby=stage,rank`);
130
+ // Get assembly information for each plugin type
131
+ const pluginTypeIds = [
132
+ ...new Set(steps.value
133
+ .map((s) => s._plugintypeid_value)
134
+ .filter((id) => id != null)),
135
+ ];
136
+ const assemblyMap = new Map();
137
+ for (const typeId of pluginTypeIds) {
138
+ const pluginType = await this.client.makeRequest(`api/data/v9.2/plugintypes(${typeId})?$expand=pluginassemblyid($select=name,version)`);
139
+ assemblyMap.set(typeId, pluginType.pluginassemblyid);
140
+ }
141
+ // Get images for all steps
142
+ const stepIds = steps.value.map((s) => s.sdkmessageprocessingstepid);
143
+ let allImages = [];
144
+ if (stepIds.length > 0) {
145
+ const imageFilter = stepIds
146
+ .map((id) => `_sdkmessageprocessingstepid_value eq ${id}`)
147
+ .join(' or ');
148
+ const images = await this.client.makeRequest(`api/data/v9.2/sdkmessageprocessingstepimages?$filter=${imageFilter}&$select=sdkmessageprocessingstepimageid,name,imagetype,messagepropertyname,entityalias,attributes,_sdkmessageprocessingstepid_value`);
149
+ allImages = images.value;
150
+ }
151
+ // Format steps
152
+ const formattedSteps = steps.value.map((step) => {
153
+ const assembly = assemblyMap.get(step._plugintypeid_value);
154
+ const images = allImages.filter((img) => img._sdkmessageprocessingstepid_value ===
155
+ step.sdkmessageprocessingstepid);
156
+ return {
157
+ sdkmessageprocessingstepid: step.sdkmessageprocessingstepid,
158
+ name: step.name,
159
+ stage: step.stage,
160
+ stageName: step.stage === 10
161
+ ? 'PreValidation'
162
+ : step.stage === 20
163
+ ? 'PreOperation'
164
+ : 'PostOperation',
165
+ mode: step.mode,
166
+ modeName: step.mode === 0 ? 'Synchronous' : 'Asynchronous',
167
+ rank: step.rank,
168
+ message: step.sdkmessageid?.name,
169
+ pluginType: step.plugintypeid?.typename,
170
+ assemblyName: assembly?.name,
171
+ assemblyVersion: assembly?.version,
172
+ filteringAttributes: step.filteringattributes
173
+ ? step.filteringattributes.split(',')
174
+ : [],
175
+ statuscode: step.statuscode,
176
+ enabled: step.statuscode === 1,
177
+ deployment: step.supporteddeployment === 0
178
+ ? 'Server'
179
+ : step.supporteddeployment === 1
180
+ ? 'Offline'
181
+ : 'Both',
182
+ impersonatingUser: step.impersonatinguserid
183
+ ?.fullname,
184
+ hasPreImage: images.some((img) => img.imagetype === 0 || img.imagetype === 2),
185
+ hasPostImage: images.some((img) => img.imagetype === 1 || img.imagetype === 2),
186
+ images,
187
+ };
188
+ });
189
+ // Organize by message
190
+ const messageGroups = new Map();
191
+ formattedSteps.forEach((step) => {
192
+ if (!messageGroups.has(step.message)) {
193
+ messageGroups.set(step.message, {
194
+ messageName: step.message,
195
+ stages: {
196
+ preValidation: [],
197
+ preOperation: [],
198
+ postOperation: [],
199
+ },
200
+ });
201
+ }
202
+ const msg = messageGroups.get(step.message);
203
+ if (step.stage === 10)
204
+ msg.stages.preValidation.push(step);
205
+ else if (step.stage === 20)
206
+ msg.stages.preOperation.push(step);
207
+ else if (step.stage === 40)
208
+ msg.stages.postOperation.push(step);
209
+ });
210
+ return {
211
+ entity: entityName,
212
+ messages: Array.from(messageGroups.values()),
213
+ steps: formattedSteps,
214
+ executionOrder: formattedSteps.map((s) => s.name),
215
+ };
216
+ }
217
+ /**
218
+ * Get plugin trace logs with filtering
219
+ */
220
+ async getPluginTraceLogs(options) {
221
+ const { entityName, messageName, correlationId, pluginStepId, exceptionOnly = false, hoursBack = 24, maxRecords = 50, } = options;
222
+ // Build filter
223
+ const filters = [];
224
+ const dateThreshold = new Date();
225
+ dateThreshold.setHours(dateThreshold.getHours() - hoursBack);
226
+ filters.push(`createdon gt ${dateThreshold.toISOString()}`);
227
+ if (entityName)
228
+ filters.push(`primaryentity eq '${entityName}'`);
229
+ if (messageName)
230
+ filters.push(`messagename eq '${messageName}'`);
231
+ if (correlationId)
232
+ filters.push(`correlationid eq '${correlationId}'`);
233
+ if (pluginStepId)
234
+ filters.push(`_sdkmessageprocessingstepid_value eq ${pluginStepId}`);
235
+ if (exceptionOnly)
236
+ filters.push(`exceptiondetails ne null`);
237
+ const filterString = filters.join(' and ');
238
+ const logs = await this.client.makeRequest(`api/data/v9.2/plugintracelogs?$filter=${filterString}&$orderby=createdon desc&$top=${maxRecords}`);
239
+ // Parse logs for better readability
240
+ const parsedLogs = logs.value.map((log) => ({
241
+ ...log,
242
+ modeName: log.mode === 0 ? 'Synchronous' : 'Asynchronous',
243
+ operationTypeName: this.getOperationTypeName(log.operationtype),
244
+ parsed: {
245
+ hasException: !!log.exceptiondetails,
246
+ exceptionType: log.exceptiondetails
247
+ ? this.extractExceptionType(log.exceptiondetails)
248
+ : null,
249
+ exceptionMessage: log.exceptiondetails
250
+ ? this.extractExceptionMessage(log.exceptiondetails)
251
+ : null,
252
+ stackTrace: log.exceptiondetails,
253
+ },
254
+ }));
255
+ return {
256
+ totalCount: parsedLogs.length,
257
+ logs: parsedLogs,
258
+ };
259
+ }
260
+ getOperationTypeName(operationType) {
261
+ const types = {
262
+ 0: 'None',
263
+ 1: 'Create',
264
+ 2: 'Update',
265
+ 3: 'Delete',
266
+ 4: 'Retrieve',
267
+ 5: 'RetrieveMultiple',
268
+ 6: 'Associate',
269
+ 7: 'Disassociate',
270
+ };
271
+ return types[operationType] || 'Unknown';
272
+ }
273
+ extractExceptionType(exceptionDetails) {
274
+ const match = exceptionDetails.match(/^([^:]+):/);
275
+ return match ? match[1].trim() : null;
276
+ }
277
+ extractExceptionMessage(exceptionDetails) {
278
+ const lines = exceptionDetails.split('\n');
279
+ if (lines.length > 0) {
280
+ const firstLine = lines[0];
281
+ const colonIndex = firstLine.indexOf(':');
282
+ if (colonIndex > 0) {
283
+ return firstLine.substring(colonIndex + 1).trim();
284
+ }
285
+ }
286
+ return null;
287
+ }
288
+ }
289
+ //# sourceMappingURL=PluginService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PluginService.js","sourceRoot":"","sources":["../../src/services/PluginService.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,MAAM,OAAO,aAAa;IACJ;IAApB,YAAoB,MAA2B;QAA3B,WAAM,GAAN,MAAM,CAAqB;IAAG,CAAC;IAEnD;;OAEG;IACH,KAAK,CAAC,mBAAmB,CACvB,iBAA0B,KAAK,EAC/B,aAAqB,GAAG;QAExB,MAAM,aAAa,GAAG,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,6BAA6B,CAAC;QAE1E,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAC9C,kCAAkC,aAAa,qMAAqM,UAAU,EAAE,CACjQ,CAAC;QAEF,kDAAkD;QAClD,MAAM,mBAAmB,GAAG,UAAU,CAAC,KAAK;aACzC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE;YACnB,MAAM,QAAQ,GACX,QAAQ,CAAC,QAAgC,EAAE,KAAK,KAAK,SAAS;gBAC7D,CAAC,CAAE,QAAQ,CAAC,QAA+B,CAAC,KAAK;gBACjD,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACxB,OAAO,CAAC,QAAQ,CAAC;QACnB,CAAC,CAAC;aACD,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YAClB,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;YAC3C,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,aAAa,EACX,QAAQ,CAAC,aAAa,KAAK,CAAC;gBAC1B,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,QAAQ,CAAC,aAAa,KAAK,CAAC;oBAC5B,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,UAAU;YAClB,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,UAAU,EAAG,QAAQ,CAAC,UAAoC,EAAE,QAAQ;YACpE,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,KAAK,EAAE,QAAQ,CAAC,KAAK;SACtB,CAAC,CAAC,CAAC;QAEN,OAAO;YACL,UAAU,EAAE,mBAAmB,CAAC,MAAM;YACtC,UAAU,EAAE,mBAAmB;SAChC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,yBAAyB,CAC7B,YAAoB,EACpB,kBAA2B,KAAK;QAchC,0BAA0B;QAC1B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAC9C,mDAAmD,YAAY,8LAA8L,CAC9P,CAAC;QAEF,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CAAC,oBAAoB,YAAY,aAAa,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,UAAU,GAAG,QAAQ,CAAC,gBAA0B,CAAC;QAEvD,mBAAmB;QACnB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAC/C,gEAAgE,UAAU,qGAAqG,CAChL,CAAC;QAEF,qCAAqC;QACrC,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,YAAsB,CAAC,CAAC;QAC/E,IAAI,QAAQ,GAA8B,EAAE,CAAC;QAE7C,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,YAAY,GAAG,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAAC;YACnE,MAAM,UAAU,GAAG,aAAa;iBAC7B,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,0BAA0B,EAAE,EAAE,CAAC;iBAC3C,IAAI,CAAC,MAAM,CAAC,CAAC;YAChB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CACzC,oDAAoD,UAAU,IAAI,YAAY,gdAAgd,CAC/hB,CAAC;YACF,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC;QACzB,CAAC;QAED,iCAAiC;QACjC,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,0BAAoC,CAAC,CAAC;QAC5E,IAAI,SAAS,GAA8B,EAAE,CAAC;QAE9C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,WAAW,GAAG,OAAO;iBACxB,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,wCAAwC,EAAE,EAAE,CAAC;iBACzD,IAAI,CAAC,MAAM,CAAC,CAAC;YAChB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAC1C,wDAAwD,WAAW,sIAAsI,CAC1M,CAAC;YACF,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,CAAC;QAED,0CAA0C;QAC1C,MAAM,eAAe,GAEjB,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC1B,GAAG,IAAI;YACP,MAAM,EAAE,SAAS,CAAC,MAAM,CACtB,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,CAAC,iCAAiC;gBACrC,IAAI,CAAC,0BAA0B,CAClC;SACF,CAAC,CAAC,CAAC;QAEJ,oBAAoB;QACpB,MAAM,UAAU,GAAG;YACjB,gBAAgB,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC;YAC1D,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC;YACjD,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC;YAChD,+BAA+B,EAAE,eAAe;iBAC7C,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;gBACZ,MAAM,MAAM,GAAG,CAAC,CAAC,YAA6C,CAAC;gBAC/D,MAAM,OAAO,GAAG,MAAM,EAAE,IAAI,CAAC;gBAC7B,OAAO,CACL,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,QAAQ,CAAC;oBAC9C,CAAC,CAAC,CAAC,mBAAmB,CACvB,CAAC;YACJ,CAAC,CAAC;iBACD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAc,CAAC;YAC/B,kBAAkB,EAAE,eAAe;iBAChC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;gBACZ,MAAM,MAAM,GAAG,CAAC,CAAC,YAA6C,CAAC;gBAC/D,MAAM,OAAO,GAAG,MAAM,EAAE,IAAI,CAAC;gBAC7B,OAAO,CACL,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;oBACrB,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,QAAQ,CAAC,CAC/C,CAAC;YACJ,CAAC,CAAC;iBACD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAc,CAAC;YAC/B,eAAe,EAAE,EAAc;SAChC,CAAC;QAEF,IAAI,UAAU,CAAC,+BAA+B,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1D,UAAU,CAAC,eAAe,CAAC,IAAI,CAC7B,GAAG,UAAU,CAAC,+BAA+B,CAAC,MAAM,yEAAyE,CAC9H,CAAC;QACJ,CAAC;QACD,IAAI,UAAU,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7C,UAAU,CAAC,eAAe,CAAC,IAAI,CAC7B,GAAG,UAAU,CAAC,kBAAkB,CAAC,MAAM,4DAA4D,CACpG,CAAC;QACJ,CAAC;QAED,OAAO;YACL,QAAQ;YACR,WAAW,EAAE,WAAW,CAAC,KAAK;YAC9B,KAAK,EAAE,eAAe;YACtB,UAAU;SACX,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,uBAAuB,CAC3B,UAAkB,EAClB,aAAsB,EACtB,kBAA2B,KAAK;QAOhC,MAAM,YAAY,GAAG,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAAC;QACnE,MAAM,SAAS,GAAG,aAAa;YAC7B,CAAC,CAAC,8BAA8B,aAAa,GAAG;YAChD,CAAC,CAAC,EAAE,CAAC;QAEP,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CACzC,gGAAgG,UAAU,IAAI,YAAY,GAAG,SAAS,8YAA8Y,CACrhB,CAAC;QAEF,gDAAgD;QAChD,MAAM,aAAa,GAAG;YACpB,GAAG,IAAI,GAAG,CACR,KAAK,CAAC,KAAK;iBACR,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,mBAA6B,CAAC;iBAC3C,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,CAAC,CAC9B;SACF,CAAC;QACF,MAAM,WAAW,GAAG,IAAI,GAAG,EAAmB,CAAC;QAE/C,KAAK,MAAM,MAAM,IAAI,aAAa,EAAE,CAAC;YACnC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAC9C,6BAA6B,MAAM,kDAAkD,CACtF,CAAC;YACF,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC;QACvD,CAAC;QAED,2BAA2B;QAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAC7B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,0BAAoC,CAC9C,CAAC;QACF,IAAI,SAAS,GAA8B,EAAE,CAAC;QAE9C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,WAAW,GAAG,OAAO;iBACxB,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,wCAAwC,EAAE,EAAE,CAAC;iBACzD,IAAI,CAAC,MAAM,CAAC,CAAC;YAChB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAC1C,wDAAwD,WAAW,sIAAsI,CAC1M,CAAC;YACF,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,CAAC;QAED,eAAe;QACf,MAAM,cAAc,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAC9C,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,mBAA6B,CAGlE,CAAC;YACF,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAC7B,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,CAAC,iCAAiC;gBACrC,IAAI,CAAC,0BAA0B,CAClC,CAAC;YAEF,OAAO;gBACL,0BAA0B,EAAE,IAAI,CAAC,0BAA0B;gBAC3D,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,SAAS,EACP,IAAI,CAAC,KAAK,KAAK,EAAE;oBACf,CAAC,CAAC,eAAe;oBACjB,CAAC,CAAC,IAAI,CAAC,KAAK,KAAK,EAAE;wBACjB,CAAC,CAAC,cAAc;wBAChB,CAAC,CAAC,eAAe;gBACvB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc;gBAC1D,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,OAAO,EAAG,IAAI,CAAC,YAAkC,EAAE,IAAI;gBACvD,UAAU,EAAG,IAAI,CAAC,YAAsC,EAAE,QAAQ;gBAClE,YAAY,EAAE,QAAQ,EAAE,IAAI;gBAC5B,eAAe,EAAE,QAAQ,EAAE,OAAO;gBAClC,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;oBAC3C,CAAC,CAAE,IAAI,CAAC,mBAA8B,CAAC,KAAK,CAAC,GAAG,CAAC;oBACjD,CAAC,CAAC,EAAE;gBACN,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,OAAO,EAAE,IAAI,CAAC,UAAU,KAAK,CAAC;gBAC9B,UAAU,EACR,IAAI,CAAC,mBAAmB,KAAK,CAAC;oBAC5B,CAAC,CAAC,QAAQ;oBACV,CAAC,CAAC,IAAI,CAAC,mBAAmB,KAAK,CAAC;wBAC9B,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,MAAM;gBACd,iBAAiB,EAAG,IAAI,CAAC,mBAA6C;oBACpE,EAAE,QAAQ;gBACZ,WAAW,EAAE,MAAM,CAAC,IAAI,CACtB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,IAAI,GAAG,CAAC,SAAS,KAAK,CAAC,CACpD;gBACD,YAAY,EAAE,MAAM,CAAC,IAAI,CACvB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,IAAI,GAAG,CAAC,SAAS,KAAK,CAAC,CACpD;gBACD,MAAM;aACP,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,sBAAsB;QACtB,MAAM,aAAa,GAAG,IAAI,GAAG,EAU1B,CAAC;QAEJ,cAAc,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC9B,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,OAAiB,CAAC,EAAE,CAAC;gBAC/C,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,OAAiB,EAAE;oBACxC,WAAW,EAAE,IAAI,CAAC,OAAiB;oBACnC,MAAM,EAAE;wBACN,aAAa,EAAE,EAAE;wBACjB,YAAY,EAAE,EAAE;wBAChB,aAAa,EAAE,EAAE;qBAClB;iBACF,CAAC,CAAC;YACL,CAAC;YACD,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,OAAiB,CAAE,CAAC;YACvD,IAAI,IAAI,CAAC,KAAK,KAAK,EAAE;gBAAE,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBACtD,IAAI,IAAI,CAAC,KAAK,KAAK,EAAE;gBAAE,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBAC1D,IAAI,IAAI,CAAC,KAAK,KAAK,EAAE;gBAAE,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClE,CAAC,CAAC,CAAC;QAEH,OAAO;YACL,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;YAC5C,KAAK,EAAE,cAAc;YACrB,cAAc,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAc,CAAC;SAC5D,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CAAC,OAQxB;QACC,MAAM,EACJ,UAAU,EACV,WAAW,EACX,aAAa,EACb,YAAY,EACZ,aAAa,GAAG,KAAK,EACrB,SAAS,GAAG,EAAE,EACd,UAAU,GAAG,EAAE,GAChB,GAAG,OAAO,CAAC;QAEZ,eAAe;QACf,MAAM,OAAO,GAAa,EAAE,CAAC;QAE7B,MAAM,aAAa,GAAG,IAAI,IAAI,EAAE,CAAC;QACjC,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,EAAE,GAAG,SAAS,CAAC,CAAC;QAC7D,OAAO,CAAC,IAAI,CAAC,gBAAgB,aAAa,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QAE5D,IAAI,UAAU;YAAE,OAAO,CAAC,IAAI,CAAC,qBAAqB,UAAU,GAAG,CAAC,CAAC;QACjE,IAAI,WAAW;YAAE,OAAO,CAAC,IAAI,CAAC,mBAAmB,WAAW,GAAG,CAAC,CAAC;QACjE,IAAI,aAAa;YAAE,OAAO,CAAC,IAAI,CAAC,qBAAqB,aAAa,GAAG,CAAC,CAAC;QACvE,IAAI,YAAY;YACd,OAAO,CAAC,IAAI,CAAC,wCAAwC,YAAY,EAAE,CAAC,CAAC;QACvE,IAAI,aAAa;YAAE,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QAE5D,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE3C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CACxC,yCAAyC,YAAY,iCAAiC,UAAU,EAAE,CACnG,CAAC;QAEF,oCAAoC;QACpC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAC1C,GAAG,GAAG;YACN,QAAQ,EAAE,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc;YACzD,iBAAiB,EAAE,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,aAAuB,CAAC;YACzE,MAAM,EAAE;gBACN,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,gBAAgB;gBACpC,aAAa,EAAE,GAAG,CAAC,gBAAgB;oBACjC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,gBAA0B,CAAC;oBAC3D,CAAC,CAAC,IAAI;gBACR,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;oBACpC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,gBAA0B,CAAC;oBAC9D,CAAC,CAAC,IAAI;gBACR,UAAU,EAAE,GAAG,CAAC,gBAAgB;aACjC;SACF,CAAC,CAAC,CAAC;QAEJ,OAAO;YACL,UAAU,EAAE,UAAU,CAAC,MAAM;YAC7B,IAAI,EAAE,UAAU;SACjB,CAAC;IACJ,CAAC;IAEO,oBAAoB,CAAC,aAAqB;QAChD,MAAM,KAAK,GAA8B;YACvC,CAAC,EAAE,MAAM;YACT,CAAC,EAAE,QAAQ;YACX,CAAC,EAAE,QAAQ;YACX,CAAC,EAAE,QAAQ;YACX,CAAC,EAAE,UAAU;YACb,CAAC,EAAE,kBAAkB;YACrB,CAAC,EAAE,WAAW;YACd,CAAC,EAAE,cAAc;SAClB,CAAC;QACF,OAAO,KAAK,CAAC,aAAa,CAAC,IAAI,SAAS,CAAC;IAC3C,CAAC;IAEO,oBAAoB,CAAC,gBAAwB;QACnD,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAClD,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACxC,CAAC;IAEO,uBAAuB,CAAC,gBAAwB;QACtD,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YAC3B,MAAM,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC1C,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;gBACnB,OAAO,SAAS,CAAC,SAAS,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACpD,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * PublishingService
3
+ *
4
+ * Service for publishing customizations.
5
+ * Note: This service should only be used by powerplatform-customization package.
6
+ */
7
+ import type { PowerPlatformClient } from '../client/PowerPlatformClient.js';
8
+ export declare class PublishingService {
9
+ private client;
10
+ constructor(client: PowerPlatformClient);
11
+ /**
12
+ * Publish all customizations
13
+ */
14
+ publishAllCustomizations(): Promise<void>;
15
+ /**
16
+ * Publish specific customizations
17
+ */
18
+ publishXml(parameterXml: string): Promise<void>;
19
+ /**
20
+ * Publish specific entity
21
+ */
22
+ publishEntity(entityLogicalName: string): Promise<void>;
23
+ /**
24
+ * Publish specific component
25
+ */
26
+ publishComponent(componentId: string, componentType: number): Promise<void>;
27
+ /**
28
+ * Check for unpublished customizations
29
+ */
30
+ checkUnpublishedChanges(): Promise<unknown>;
31
+ /**
32
+ * Preview unpublished changes
33
+ * Returns all components that have unpublished customizations
34
+ */
35
+ previewUnpublishedChanges(): Promise<unknown>;
36
+ }
37
+ //# sourceMappingURL=PublishingService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PublishingService.d.ts","sourceRoot":"","sources":["../../src/services/PublishingService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAE5E,qBAAa,iBAAiB;IAChB,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,mBAAmB;IAE/C;;OAEG;IACG,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI/C;;OAEG;IACG,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMrD;;OAEG;IACG,aAAa,CAAC,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK7D;;OAEG;IACG,gBAAgB,CACpB,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC;IAiBhB;;OAEG;IACG,uBAAuB,IAAI,OAAO,CAAC,OAAO,CAAC;IAQjD;;;OAGG;IACG,yBAAyB,IAAI,OAAO,CAAC,OAAO,CAAC;CAOpD"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * PublishingService
3
+ *
4
+ * Service for publishing customizations.
5
+ * Note: This service should only be used by powerplatform-customization package.
6
+ */
7
+ export class PublishingService {
8
+ client;
9
+ constructor(client) {
10
+ this.client = client;
11
+ }
12
+ /**
13
+ * Publish all customizations
14
+ */
15
+ async publishAllCustomizations() {
16
+ await this.client.makeRequest('api/data/v9.2/PublishAllXml', 'POST', {});
17
+ }
18
+ /**
19
+ * Publish specific customizations
20
+ */
21
+ async publishXml(parameterXml) {
22
+ await this.client.makeRequest('api/data/v9.2/PublishXml', 'POST', {
23
+ ParameterXml: parameterXml,
24
+ });
25
+ }
26
+ /**
27
+ * Publish specific entity
28
+ */
29
+ async publishEntity(entityLogicalName) {
30
+ const parameterXml = `<importexportxml><entities><entity>${entityLogicalName}</entity></entities></importexportxml>`;
31
+ await this.publishXml(parameterXml);
32
+ }
33
+ /**
34
+ * Publish specific component
35
+ */
36
+ async publishComponent(componentId, componentType) {
37
+ const typeMap = {
38
+ 1: 'entity',
39
+ 2: 'attribute',
40
+ 9: 'optionset',
41
+ 24: 'form',
42
+ 26: 'savedquery',
43
+ 29: 'workflow',
44
+ 60: 'systemform',
45
+ 61: 'webresource',
46
+ };
47
+ const componentTypeName = typeMap[componentType] || 'component';
48
+ const parameterXml = `<importexportxml><${componentTypeName}s><${componentTypeName}>${componentId}</${componentTypeName}></${componentTypeName}s></importexportxml>`;
49
+ await this.publishXml(parameterXml);
50
+ }
51
+ /**
52
+ * Check for unpublished customizations
53
+ */
54
+ async checkUnpublishedChanges() {
55
+ return this.client.makeRequest('api/data/v9.2/RetrieveUnpublished', 'POST', {});
56
+ }
57
+ /**
58
+ * Preview unpublished changes
59
+ * Returns all components that have unpublished customizations
60
+ */
61
+ async previewUnpublishedChanges() {
62
+ return this.client.makeRequest('api/data/v9.2/RetrieveUnpublished', 'POST', {});
63
+ }
64
+ }
65
+ //# sourceMappingURL=PublishingService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PublishingService.js","sourceRoot":"","sources":["../../src/services/PublishingService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,OAAO,iBAAiB;IACR;IAApB,YAAoB,MAA2B;QAA3B,WAAM,GAAN,MAAM,CAAqB;IAAG,CAAC;IAEnD;;OAEG;IACH,KAAK,CAAC,wBAAwB;QAC5B,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,6BAA6B,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,YAAoB;QACnC,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,0BAA0B,EAAE,MAAM,EAAE;YAChE,YAAY,EAAE,YAAY;SAC3B,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,iBAAyB;QAC3C,MAAM,YAAY,GAAG,sCAAsC,iBAAiB,wCAAwC,CAAC;QACrH,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CACpB,WAAmB,EACnB,aAAqB;QAErB,MAAM,OAAO,GAA2B;YACtC,CAAC,EAAE,QAAQ;YACX,CAAC,EAAE,WAAW;YACd,CAAC,EAAE,WAAW;YACd,EAAE,EAAE,MAAM;YACV,EAAE,EAAE,YAAY;YAChB,EAAE,EAAE,UAAU;YACd,EAAE,EAAE,YAAY;YAChB,EAAE,EAAE,aAAa;SAClB,CAAC;QAEF,MAAM,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC;QAChE,MAAM,YAAY,GAAG,qBAAqB,iBAAiB,MAAM,iBAAiB,IAAI,WAAW,KAAK,iBAAiB,MAAM,iBAAiB,sBAAsB,CAAC;QACrK,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,uBAAuB;QAC3B,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAC5B,mCAAmC,EACnC,MAAM,EACN,EAAE,CACH,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,yBAAyB;QAC7B,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAC5B,mCAAmC,EACnC,MAAM,EACN,EAAE,CACH,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * RelationshipService
3
+ *
4
+ * Service for relationship customization operations.
5
+ * Note: This service should only be used by powerplatform-customization package.
6
+ */
7
+ import type { PowerPlatformClient } from '../client/PowerPlatformClient.js';
8
+ export declare class RelationshipService {
9
+ private client;
10
+ constructor(client: PowerPlatformClient);
11
+ /**
12
+ * Create a one-to-many relationship
13
+ */
14
+ createOneToManyRelationship(relationshipDefinition: Record<string, unknown>, solutionUniqueName?: string): Promise<unknown>;
15
+ /**
16
+ * Create a many-to-many relationship
17
+ */
18
+ createManyToManyRelationship(relationshipDefinition: Record<string, unknown>, solutionUniqueName?: string): Promise<unknown>;
19
+ /**
20
+ * Delete a relationship
21
+ */
22
+ deleteRelationship(metadataId: string): Promise<void>;
23
+ /**
24
+ * Update a relationship
25
+ * Note: Most relationship properties are immutable, only labels can be updated
26
+ */
27
+ updateRelationship(metadataId: string, updates: Record<string, unknown>): Promise<void>;
28
+ }
29
+ //# sourceMappingURL=RelationshipService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RelationshipService.d.ts","sourceRoot":"","sources":["../../src/services/RelationshipService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAE5E,qBAAa,mBAAmB;IAClB,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,mBAAmB;IAE/C;;OAEG;IACG,2BAA2B,CAC/B,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/C,kBAAkB,CAAC,EAAE,MAAM,GAC1B,OAAO,CAAC,OAAO,CAAC;IAcnB;;OAEG;IACG,4BAA4B,CAChC,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/C,kBAAkB,CAAC,EAAE,MAAM,GAC1B,OAAO,CAAC,OAAO,CAAC;IAcnB;;OAEG;IACG,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO3D;;;OAGG;IACG,kBAAkB,CACtB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC;CAQjB"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * RelationshipService
3
+ *
4
+ * Service for relationship customization operations.
5
+ * Note: This service should only be used by powerplatform-customization package.
6
+ */
7
+ export class RelationshipService {
8
+ client;
9
+ constructor(client) {
10
+ this.client = client;
11
+ }
12
+ /**
13
+ * Create a one-to-many relationship
14
+ */
15
+ async createOneToManyRelationship(relationshipDefinition, solutionUniqueName) {
16
+ const headers = {};
17
+ if (solutionUniqueName) {
18
+ headers['MSCRM.SolutionUniqueName'] = solutionUniqueName;
19
+ }
20
+ return this.client.makeRequest('api/data/v9.2/RelationshipDefinitions', 'POST', relationshipDefinition, headers);
21
+ }
22
+ /**
23
+ * Create a many-to-many relationship
24
+ */
25
+ async createManyToManyRelationship(relationshipDefinition, solutionUniqueName) {
26
+ const headers = {};
27
+ if (solutionUniqueName) {
28
+ headers['MSCRM.SolutionUniqueName'] = solutionUniqueName;
29
+ }
30
+ return this.client.makeRequest('api/data/v9.2/RelationshipDefinitions', 'POST', relationshipDefinition, headers);
31
+ }
32
+ /**
33
+ * Delete a relationship
34
+ */
35
+ async deleteRelationship(metadataId) {
36
+ await this.client.makeRequest(`api/data/v9.2/RelationshipDefinitions(${metadataId})`, 'DELETE');
37
+ }
38
+ /**
39
+ * Update a relationship
40
+ * Note: Most relationship properties are immutable, only labels can be updated
41
+ */
42
+ async updateRelationship(metadataId, updates) {
43
+ await this.client.makeRequest(`api/data/v9.2/RelationshipDefinitions(${metadataId})`, 'PUT', updates, { 'MSCRM.MergeLabels': 'true' });
44
+ }
45
+ }
46
+ //# sourceMappingURL=RelationshipService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RelationshipService.js","sourceRoot":"","sources":["../../src/services/RelationshipService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,OAAO,mBAAmB;IACV;IAApB,YAAoB,MAA2B;QAA3B,WAAM,GAAN,MAAM,CAAqB;IAAG,CAAC;IAEnD;;OAEG;IACH,KAAK,CAAC,2BAA2B,CAC/B,sBAA+C,EAC/C,kBAA2B;QAE3B,MAAM,OAAO,GAA2B,EAAE,CAAC;QAC3C,IAAI,kBAAkB,EAAE,CAAC;YACvB,OAAO,CAAC,0BAA0B,CAAC,GAAG,kBAAkB,CAAC;QAC3D,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAC5B,uCAAuC,EACvC,MAAM,EACN,sBAAsB,EACtB,OAAO,CACR,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,4BAA4B,CAChC,sBAA+C,EAC/C,kBAA2B;QAE3B,MAAM,OAAO,GAA2B,EAAE,CAAC;QAC3C,IAAI,kBAAkB,EAAE,CAAC;YACvB,OAAO,CAAC,0BAA0B,CAAC,GAAG,kBAAkB,CAAC;QAC3D,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAC5B,uCAAuC,EACvC,MAAM,EACN,sBAAsB,EACtB,OAAO,CACR,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CAAC,UAAkB;QACzC,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAC3B,yCAAyC,UAAU,GAAG,EACtD,QAAQ,CACT,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,kBAAkB,CACtB,UAAkB,EAClB,OAAgC;QAEhC,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAC3B,yCAAyC,UAAU,GAAG,EACtD,KAAK,EACL,OAAO,EACP,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAChC,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * SolutionService
3
+ *
4
+ * Service for solution management operations.
5
+ * Note: This service should only be used by powerplatform-customization package.
6
+ */
7
+ import type { PowerPlatformClient } from '../client/PowerPlatformClient.js';
8
+ export declare class SolutionService {
9
+ private client;
10
+ constructor(client: PowerPlatformClient);
11
+ /**
12
+ * Create a publisher
13
+ */
14
+ createPublisher(publisher: Record<string, unknown>): Promise<unknown>;
15
+ /**
16
+ * Get publishers
17
+ */
18
+ getPublishers(): Promise<unknown>;
19
+ /**
20
+ * Create a solution
21
+ */
22
+ createSolution(solution: Record<string, unknown>): Promise<unknown>;
23
+ /**
24
+ * Get solutions
25
+ */
26
+ getSolutions(): Promise<unknown>;
27
+ /**
28
+ * Get solution by unique name
29
+ */
30
+ getSolution(uniqueName: string): Promise<Record<string, unknown> | null>;
31
+ /**
32
+ * Add component to solution
33
+ */
34
+ addComponentToSolution(solutionUniqueName: string, componentId: string, componentType: number, addRequiredComponents?: boolean, includedComponentSettingsValues?: string): Promise<void>;
35
+ /**
36
+ * Remove component from solution
37
+ */
38
+ removeComponentFromSolution(solutionUniqueName: string, componentId: string, componentType: number): Promise<void>;
39
+ /**
40
+ * Get solution components
41
+ */
42
+ getSolutionComponents(solutionUniqueName: string): Promise<unknown>;
43
+ /**
44
+ * Export solution
45
+ */
46
+ exportSolution(solutionName: string, managed?: boolean): Promise<unknown>;
47
+ /**
48
+ * Import solution
49
+ */
50
+ importSolution(customizationFile: string, publishWorkflows?: boolean, overwriteUnmanagedCustomizations?: boolean): Promise<unknown>;
51
+ /**
52
+ * Delete a solution
53
+ */
54
+ deleteSolution(solutionId: string): Promise<void>;
55
+ /**
56
+ * Generate a GUID
57
+ */
58
+ private generateGuid;
59
+ }
60
+ //# sourceMappingURL=SolutionService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SolutionService.d.ts","sourceRoot":"","sources":["../../src/services/SolutionService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAG5E,qBAAa,eAAe;IACd,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,mBAAmB;IAE/C;;OAEG;IACG,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAQ3E;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC;IAMvC;;OAEG;IACG,cAAc,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAQzE;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC;IAMtC;;OAEG;IACG,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAO9E;;OAEG;IACG,sBAAsB,CAC1B,kBAAkB,EAAE,MAAM,EAC1B,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,EACrB,qBAAqB,GAAE,OAAc,EACrC,+BAA+B,CAAC,EAAE,MAAM,GACvC,OAAO,CAAC,IAAI,CAAC;IAchB;;OAEG;IACG,2BAA2B,CAC/B,kBAAkB,EAAE,MAAM,EAC1B,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC;IAYhB;;OAEG;IACG,qBAAqB,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAWzE;;OAEG;IACG,cAAc,CAClB,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,OAAO,CAAC;IAkBnB;;OAEG;IACG,cAAc,CAClB,iBAAiB,EAAE,MAAM,EACzB,gBAAgB,GAAE,OAAc,EAChC,gCAAgC,GAAE,OAAe,GAChD,OAAO,CAAC,OAAO,CAAC;IAWnB;;OAEG;IACG,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOvD;;OAEG;IACH,OAAO,CAAC,YAAY;CAOrB"}