@pnp/cli-microsoft365 7.0.0-beta.b7c2a8d → 7.0.0-beta.c0afb7b

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 (131) hide show
  1. package/.eslintrc.cjs +1 -3
  2. package/dist/GlobalOptions.js +1 -7
  3. package/dist/cli/Cli.js +19 -2
  4. package/dist/m365/aad/commands/{o365group/o365group-add.js → m365group/m365group-add.js} +17 -17
  5. package/dist/m365/aad/commands/{o365group/o365group-conversation-list.js → m365group/m365group-conversation-list.js} +10 -10
  6. package/dist/m365/aad/commands/{o365group/o365group-conversation-post-list.js → m365group/m365group-conversation-post-list.js} +14 -14
  7. package/dist/m365/aad/commands/{o365group/o365group-get.js → m365group/m365group-get.js} +13 -10
  8. package/dist/m365/aad/commands/{o365group/o365group-list.js → m365group/m365group-list.js} +13 -28
  9. package/dist/m365/aad/commands/{o365group/o365group-recyclebinitem-clear.js → m365group/m365group-recyclebinitem-clear.js} +15 -15
  10. package/dist/m365/aad/commands/{o365group/o365group-recyclebinitem-list.js → m365group/m365group-recyclebinitem-list.js} +10 -10
  11. package/dist/m365/aad/commands/{o365group/o365group-recyclebinitem-remove.js → m365group/m365group-recyclebinitem-remove.js} +14 -14
  12. package/dist/m365/aad/commands/{o365group/o365group-recyclebinitem-restore.js → m365group/m365group-recyclebinitem-restore.js} +14 -14
  13. package/dist/m365/aad/commands/{o365group/o365group-remove.js → m365group/m365group-remove.js} +12 -12
  14. package/dist/m365/aad/commands/{o365group/o365group-renew.js → m365group/m365group-renew.js} +10 -10
  15. package/dist/m365/aad/commands/{o365group/o365group-report-activitycounts.js → m365group/m365group-report-activitycounts.js} +4 -4
  16. package/dist/m365/aad/commands/{o365group/o365group-report-activitydetail.js → m365group/m365group-report-activitydetail.js} +4 -4
  17. package/dist/m365/aad/commands/{o365group/o365group-report-activityfilecounts.js → m365group/m365group-report-activityfilecounts.js} +4 -4
  18. package/dist/m365/aad/commands/{o365group/o365group-report-activitygroupcounts.js → m365group/m365group-report-activitygroupcounts.js} +4 -4
  19. package/dist/m365/aad/commands/{o365group/o365group-report-activitystorage.js → m365group/m365group-report-activitystorage.js} +4 -4
  20. package/dist/m365/aad/commands/{o365group/o365group-set.js → m365group/m365group-set.js} +17 -17
  21. package/dist/m365/aad/commands/{o365group/o365group-teamify.js → m365group/m365group-teamify.js} +14 -14
  22. package/dist/m365/aad/commands/{o365group/o365group-user-add.js → m365group/m365group-user-add.js} +14 -14
  23. package/dist/m365/aad/commands/{o365group/o365group-user-list.js → m365group/m365group-user-list.js} +12 -12
  24. package/dist/m365/aad/commands/{o365group/o365group-user-remove.js → m365group/m365group-user-remove.js} +14 -14
  25. package/dist/m365/aad/commands/{o365group/o365group-user-set.js → m365group/m365group-user-set.js} +15 -15
  26. package/dist/m365/aad/commands.js +22 -22
  27. package/dist/m365/pa/commands/app/app-permission-list.js +2 -2
  28. package/dist/m365/pa/commands/app/app-permission-remove.js +3 -3
  29. package/dist/m365/pa/commands.js +1 -4
  30. package/dist/m365/spfx/commands/project/project-doctor/{doctor-1.18.0-beta.1.js → doctor-1.18.0-beta.5.js} +1 -1
  31. package/dist/m365/spfx/commands/project/project-doctor.js +1 -1
  32. package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.15.2.js +1 -1
  33. package/dist/m365/spfx/commands/project/project-upgrade/{upgrade-1.18.0-beta.1.js → upgrade-1.18.0-beta.5.js} +26 -26
  34. package/dist/m365/spfx/commands/project/project-upgrade.js +1 -1
  35. package/dist/m365/spfx/commands/spfx-doctor.js +3 -3
  36. package/dist/m365/spo/commands/app/SpoAppBaseCommand.js +27 -26
  37. package/dist/m365/spo/commands/app/app-add.js +9 -9
  38. package/dist/m365/spo/commands/file/file-copy.js +1 -1
  39. package/dist/m365/spo/commands/file/file-move.js +73 -97
  40. package/dist/m365/spo/commands/folder/folder-copy.js +89 -45
  41. package/dist/m365/spo/commands/folder/folder-move.js +89 -47
  42. package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-add.js +32 -3
  43. package/dist/m365/spo/commands/page/clientsidepages.js +1 -81
  44. package/dist/m365/spo/commands/propertybag/propertybag-base.js +63 -59
  45. package/dist/m365/spo/commands/propertybag/propertybag-remove.js +28 -31
  46. package/dist/m365/spo/commands/site/FlowsPolicy.js +7 -0
  47. package/dist/m365/spo/commands/site/site-ensure.js +3 -3
  48. package/dist/m365/spo/commands/site/site-hubsite-disconnect.js +22 -22
  49. package/dist/m365/spo/commands/site/site-list.js +27 -43
  50. package/dist/m365/spo/commands/site/site-set.js +60 -49
  51. package/dist/m365/spo/commands/theme/theme-list.js +1 -9
  52. package/dist/m365/spo/commands/theme/theme-remove.js +24 -24
  53. package/dist/m365/spo/commands/theme/theme-set.js +0 -1
  54. package/dist/m365/spo/commands/user/user-remove.js +27 -27
  55. package/dist/m365/spo/commands/web/web-reindex.js +35 -42
  56. package/dist/m365/spo/commands/web/web-remove.js +21 -21
  57. package/dist/m365/spo/commands/web/web-roleassignment-add.js +16 -31
  58. package/dist/m365/spo/commands/web/web-roleassignment-remove.js +33 -44
  59. package/dist/m365/spo/commands/web/web-roleinheritance-break.js +18 -18
  60. package/dist/m365/spo/commands/web/web-roleinheritance-reset.js +19 -19
  61. package/dist/m365/yammer/commands/message/message-like-set.js +27 -28
  62. package/dist/m365/yammer/commands/message/message-list.js +62 -81
  63. package/dist/m365/yammer/commands/message/message-remove.js +18 -18
  64. package/dist/m365/yammer/commands/yammer-search.js +53 -69
  65. package/dist/utils/spo.js +12 -53
  66. package/dist/utils/validation.js +0 -3
  67. package/docs/docs/cmd/aad/{o365group/o365group-add.mdx → m365group/m365group-add.mdx} +13 -13
  68. package/docs/docs/cmd/aad/{o365group/o365group-conversation-list.mdx → m365group/m365group-conversation-list.mdx} +4 -4
  69. package/docs/docs/cmd/aad/{o365group/o365group-conversation-post-list.mdx → m365group/m365group-conversation-post-list.mdx} +8 -8
  70. package/docs/docs/cmd/aad/{o365group/o365group-get.mdx → m365group/m365group-get.mdx} +6 -6
  71. package/docs/docs/cmd/aad/{o365group/o365group-list.mdx → m365group/m365group-list.mdx} +12 -29
  72. package/docs/docs/cmd/aad/{o365group/o365group-recyclebinitem-clear.mdx → m365group/m365group-recyclebinitem-clear.mdx} +5 -5
  73. package/docs/docs/cmd/aad/{o365group/o365group-recyclebinitem-list.mdx → m365group/m365group-recyclebinitem-list.mdx} +8 -8
  74. package/docs/docs/cmd/aad/{o365group/o365group-recyclebinitem-remove.mdx → m365group/m365group-recyclebinitem-remove.mdx} +6 -6
  75. package/docs/docs/cmd/aad/{o365group/o365group-recyclebinitem-restore.mdx → m365group/m365group-recyclebinitem-restore.mdx} +6 -6
  76. package/docs/docs/cmd/aad/{o365group/o365group-remove.mdx → m365group/m365group-remove.mdx} +6 -6
  77. package/docs/docs/cmd/aad/{o365group/o365group-renew.mdx → m365group/m365group-renew.mdx} +4 -4
  78. package/docs/docs/cmd/aad/{o365group/o365group-report-activitycounts.mdx → m365group/m365group-report-activitycounts.mdx} +6 -6
  79. package/docs/docs/cmd/aad/{o365group/o365group-report-activitydetail.mdx → m365group/m365group-report-activitydetail.mdx} +7 -7
  80. package/docs/docs/cmd/aad/{o365group/o365group-report-activityfilecounts.mdx → m365group/m365group-report-activityfilecounts.mdx} +6 -6
  81. package/docs/docs/cmd/aad/{o365group/o365group-report-activitygroupcounts.mdx → m365group/m365group-report-activitygroupcounts.mdx} +6 -6
  82. package/docs/docs/cmd/aad/{o365group/o365group-report-activitystorage.mdx → m365group/m365group-report-activitystorage.mdx} +6 -6
  83. package/docs/docs/cmd/aad/{o365group/o365group-set.mdx → m365group/m365group-set.mdx} +8 -8
  84. package/docs/docs/cmd/aad/{o365group/o365group-teamify.mdx → m365group/m365group-teamify.mdx} +5 -5
  85. package/docs/docs/cmd/aad/{o365group/o365group-user-add.mdx → m365group/m365group-user-add.mdx} +5 -5
  86. package/docs/docs/cmd/aad/{o365group/o365group-user-list.mdx → m365group/m365group-user-list.mdx} +7 -7
  87. package/docs/docs/cmd/aad/{o365group/o365group-user-remove.mdx → m365group/m365group-user-remove.mdx} +5 -5
  88. package/docs/docs/cmd/aad/{o365group/o365group-user-set.mdx → m365group/m365group-user-set.mdx} +5 -5
  89. package/docs/docs/cmd/pa/app/app-permission-remove.mdx +1 -1
  90. package/docs/docs/cmd/planner/plan/plan-add.mdx +1 -1
  91. package/docs/docs/cmd/spo/file/file-move.mdx +36 -18
  92. package/docs/docs/cmd/spo/folder/folder-copy.mdx +39 -12
  93. package/docs/docs/cmd/spo/folder/folder-move.mdx +40 -13
  94. package/docs/docs/cmd/spo/orgassetslibrary/orgassetslibrary-add.mdx +14 -1
  95. package/docs/docs/cmd/spo/site/site-add.mdx +1 -1
  96. package/docs/docs/cmd/spo/site/site-ensure.mdx +1 -1
  97. package/docs/docs/cmd/spo/site/site-list.mdx +3 -78
  98. package/docs/docs/cmd/teams/team/team-add.mdx +1 -1
  99. package/npm-shrinkwrap.json +178 -1304
  100. package/package.json +5 -7
  101. package/dist/m365/pa/cds-project-mutator.js +0 -91
  102. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/dataset-template/generated/ManifestTypes.d.ts +0 -11
  103. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/dataset-template/template_ControlManifest.Input.xml +0 -31
  104. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/dataset-template/template_index.ts +0 -51
  105. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/field-template/generated/ManifestTypes.d.ts +0 -12
  106. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/field-template/template_ControlManifest.Input.xml +0 -37
  107. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/field-template/template_index.ts +0 -48
  108. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/index.ts +0 -0
  109. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/virtual-dataset-template/template_ControlManifest.Input.xml +0 -31
  110. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/virtual-dataset-template/template_index.tsx +0 -58
  111. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/virtual-field-template/template_ControlManifest.Input.xml +0 -37
  112. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/virtual-field-template/template_index.tsx +0 -55
  113. package/dist/m365/pa/commands/pcf/pcf-init/assets/package.json +0 -19
  114. package/dist/m365/pa/commands/pcf/pcf-init/assets/pcfconfig.json +0 -3
  115. package/dist/m365/pa/commands/pcf/pcf-init/assets/template_.gitignore +0 -14
  116. package/dist/m365/pa/commands/pcf/pcf-init/assets/template_pcfprojecttype.pcfproj +0 -45
  117. package/dist/m365/pa/commands/pcf/pcf-init/pcf-init-variables.js +0 -2
  118. package/dist/m365/pa/commands/pcf/pcf-init.js +0 -120
  119. package/dist/m365/pa/commands/solution/solution-init/assets/Other/Customizations.xml +0 -18
  120. package/dist/m365/pa/commands/solution/solution-init/assets/Other/Relationships.xml +0 -2
  121. package/dist/m365/pa/commands/solution/solution-init/assets/Other/template_Solution.xml +0 -94
  122. package/dist/m365/pa/commands/solution/solution-init/assets/template_.gitignore +0 -2
  123. package/dist/m365/pa/commands/solution/solution-init/assets/template_solutionprojecttype.cdsproj +0 -44
  124. package/dist/m365/pa/commands/solution/solution-init/solution-init-variables.js +0 -2
  125. package/dist/m365/pa/commands/solution/solution-init.js +0 -126
  126. package/dist/m365/pa/commands/solution/solution-reference-add.js +0 -88
  127. package/dist/m365/pa/template-instantiator.js +0 -57
  128. package/docs/docs/cmd/pa/pcf/pcf-init.mdx +0 -56
  129. package/docs/docs/cmd/pa/solution/solution-init.mdx +0 -46
  130. package/docs/docs/cmd/pa/solution/solution-reference-add.mdx +0 -42
  131. /package/dist/m365/aad/commands/{o365group → m365group}/GroupExtended.js +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pnp/cli-microsoft365",
3
- "version": "7.0.0-beta.b7c2a8d",
3
+ "version": "7.0.0-beta.c0afb7b",
4
4
  "description": "Manage Microsoft 365 and SharePoint Framework projects on any platform",
5
5
  "license": "MIT",
6
6
  "main": "./dist/api.js",
@@ -228,19 +228,21 @@
228
228
  "Zachariassen Laksafoss, Trygvi <trygvi.laksafoss@gmail.com>"
229
229
  ],
230
230
  "dependencies": {
231
+ "@azure/msal-common": "^13.2.1",
231
232
  "@azure/msal-node": "^1.18.1",
232
233
  "@xmldom/xmldom": "^0.8.10",
233
234
  "adaptive-expressions": "^4.20.0",
234
- "adaptivecards": "^2.11.3",
235
+ "adaptivecards": "^3.0.1",
235
236
  "adaptivecards-templating": "^2.3.1",
236
237
  "adm-zip": "^0.5.10",
237
238
  "applicationinsights": "^2.7.0",
238
239
  "axios": "^1.3.4",
239
240
  "chalk": "^5.2.0",
240
241
  "clipboardy": "^3.0.0",
242
+ "configstore": "^6.0.0",
241
243
  "csv-stringify": "^6.4.0",
242
244
  "easy-table": "^1.2.0",
243
- "inquirer": "^9.1.4",
245
+ "inquirer": "^9.2.10",
244
246
  "jmespath": "^0.16.0",
245
247
  "json-to-ast": "^2.1.0",
246
248
  "minimist": "^1.2.8",
@@ -273,12 +275,8 @@
273
275
  "@typescript-eslint/parser": "^5.62.0",
274
276
  "c8": "^7.14.0",
275
277
  "eslint": "^8.46.0",
276
- "eslint-config-standard": "^17.1.0",
277
278
  "eslint-plugin-cli-microsoft365": "file:eslint-rules",
278
- "eslint-plugin-import": "^2.28.0",
279
279
  "eslint-plugin-mocha": "^10.1.0",
280
- "eslint-plugin-node": "^11.1.0",
281
- "eslint-plugin-promise": "^6.1.1",
282
280
  "mocha": "^10.2.0",
283
281
  "rimraf": "^4.4.0",
284
282
  "sinon": "^15.2.0",
@@ -1,91 +0,0 @@
1
- import { DOMParser } from '@xmldom/xmldom';
2
- import path from 'path';
3
- /*
4
- * Logic extracted from bolt.module.solution.dll
5
- * Version: 0.4.3
6
- * Class: bolt.module.solution.CdsProjectMutator
7
- */
8
- export default class CdsProjectMutator {
9
- get cdsProjectDocument() {
10
- return this._cdsProjectDocument;
11
- }
12
- constructor(document) {
13
- this._cdsProjectDocument = new DOMParser().parseFromString(document, 'text/xml');
14
- this._cdsProject = this._cdsProjectDocument.documentElement;
15
- this._cdsNamespace = this._cdsProject.lookupNamespaceURI('') || '';
16
- }
17
- addProjectReference(referencedProjectPath) {
18
- if (!this.doesProjectReferenceExists(referencedProjectPath)) {
19
- const projectReferenceElement = this.createProjectReferenceElement(referencedProjectPath);
20
- let projectReferenceItemGroup = this.getProjectReferenceItemGroup();
21
- if (projectReferenceItemGroup) {
22
- this.addProjectReferenceElement(projectReferenceItemGroup, projectReferenceElement);
23
- }
24
- else {
25
- projectReferenceItemGroup = this.createProjectReferenceItemGroup(projectReferenceElement);
26
- this.addProjectReferenceItemGroupElement(projectReferenceItemGroup);
27
- }
28
- }
29
- }
30
- doesProjectReferenceExists(referencedProjectPath) {
31
- return this.getNamedGroups('ItemGroup').some(itemGroup => {
32
- return this.getProjectReferencesFromItemGroup(itemGroup).some(projectReference => {
33
- const projectReferencePath = projectReference.getAttributeNode('Include');
34
- return (projectReferencePath && path.normalize(projectReferencePath.value).toLowerCase() === referencedProjectPath.toLowerCase());
35
- });
36
- });
37
- }
38
- getNamedGroups(name) {
39
- return Array.from(this._cdsProject.getElementsByTagNameNS(this._cdsNamespace, name));
40
- }
41
- getProjectReferencesFromItemGroup(itemGroup) {
42
- return Array.from(itemGroup.getElementsByTagNameNS(this._cdsNamespace, 'ProjectReference'));
43
- }
44
- getProjectReferenceItemGroup() {
45
- const itemGroups = this.getNamedGroups('ItemGroup').filter(itemGroup => this.getProjectReferencesFromItemGroup(itemGroup).length > 0);
46
- return itemGroups.length > 0 ? itemGroups[0] : null;
47
- }
48
- createProjectReferenceElement(referencedProjectPath) {
49
- const projectReferenceElement = this._cdsProjectDocument.createElementNS(this._cdsNamespace, 'ProjectReference');
50
- projectReferenceElement.setAttributeNS(this._cdsNamespace, 'Include', referencedProjectPath);
51
- return projectReferenceElement;
52
- }
53
- createProjectReferenceItemGroup(projectReferenceElement) {
54
- const projectReferenceItemGroup = this._cdsProjectDocument.createElementNS(this._cdsNamespace, 'ItemGroup');
55
- projectReferenceItemGroup.appendChild(this._cdsProjectDocument.createTextNode('\n '));
56
- this.addProjectReferenceElement(projectReferenceItemGroup, projectReferenceElement);
57
- return projectReferenceItemGroup;
58
- }
59
- addProjectReferenceElement(projectReferenceItemGroup, projectReferenceElement) {
60
- projectReferenceItemGroup.appendChild(this._cdsProjectDocument.createTextNode(' '));
61
- projectReferenceItemGroup.appendChild(projectReferenceElement);
62
- projectReferenceItemGroup.appendChild(this._cdsProjectDocument.createTextNode('\n '));
63
- }
64
- addProjectReferenceItemGroupElement(projectReferenceItemGroup) {
65
- const itemGroups = this.getNamedGroups('ItemGroup');
66
- if (itemGroups.length > 0) {
67
- this._cdsProject.insertBefore(projectReferenceItemGroup, itemGroups[itemGroups.length - 1].nextSibling);
68
- this._cdsProject.insertBefore(this._cdsProjectDocument.createTextNode('\n\n '), projectReferenceItemGroup);
69
- }
70
- else {
71
- const propertyGroups = this.getNamedGroups('PropertyGroup');
72
- if (propertyGroups.length > 0) {
73
- this._cdsProject.insertBefore(projectReferenceItemGroup, propertyGroups[propertyGroups.length - 1].nextSibling);
74
- this._cdsProject.insertBefore(this._cdsProjectDocument.createTextNode('\n\n '), projectReferenceItemGroup);
75
- }
76
- else {
77
- const importGroups = this.getNamedGroups('Import');
78
- if (importGroups.length > 0) {
79
- this._cdsProject.insertBefore(projectReferenceItemGroup, importGroups[0].nextSibling);
80
- this._cdsProject.insertBefore(this._cdsProjectDocument.createTextNode('\n\n '), projectReferenceItemGroup);
81
- }
82
- else {
83
- this._cdsProject.appendChild(this._cdsProjectDocument.createTextNode('\n '));
84
- this._cdsProject.appendChild(projectReferenceItemGroup);
85
- this._cdsProject.appendChild(this._cdsProjectDocument.createTextNode('\n'));
86
- }
87
- }
88
- }
89
- }
90
- }
91
- //# sourceMappingURL=cds-project-mutator.js.map
@@ -1,11 +0,0 @@
1
- /*
2
- * This is auto generated from the ControlManifest.Input.xml file
3
- */
4
-
5
- // Define IInputs and IOutputs Type. They should match with ControlManifest.
6
- export interface IInputs {
7
- sampleDataSet: ComponentFramework.PropertyTypes.DataSet;
8
- }
9
-
10
- export interface IOutputs {
11
- }
@@ -1,31 +0,0 @@
1
- <?xml version="1.0" encoding="utf-8" ?>
2
- <manifest>
3
- <control namespace="$namespaceplaceholder$" constructor="$controlnameplaceholder$" version="0.0.1" display-name-key="$controlnameplaceholder$" description-key="$controlnameplaceholder$ description" control-type="standard">
4
- <!-- dataset node represents a set of entity records on CDS; allow more than one datasets -->
5
- <data-set name="sampleDataSet" display-name-key="Dataset_Display_Key">
6
- <!-- 'property-set' node represents a unique, configurable property that each record in the dataset must provide. -->
7
- <!-- UNCOMMENT TO ADD PROPERTY-SET NODE
8
- <property-set name="samplePropertySet" display-name-key="Property_Display_Key" description-key="Property_Desc_Key" of-type="SingleLine.Text" usage="bound" required="true" />
9
- -->
10
- </data-set>
11
- <resources>
12
- <code path="index.ts" order="1"/>
13
- <!-- UNCOMMENT TO ADD MORE RESOURCES
14
- <css path="css/$controlnameplaceholder$.css" order="1" />
15
- <resx path="strings/$controlnameplaceholder$.1033.resx" version="1.0.0" />
16
- -->
17
- </resources>
18
- <!-- UNCOMMENT TO ENABLE THE SPECIFIED API
19
- <feature-usage>
20
- <uses-feature name="Device.captureAudio" required="true" />
21
- <uses-feature name="Device.captureImage" required="true" />
22
- <uses-feature name="Device.captureVideo" required="true" />
23
- <uses-feature name="Device.getBarcodeValue" required="true" />
24
- <uses-feature name="Device.getCurrentPosition" required="true" />
25
- <uses-feature name="Device.pickFile" required="true" />
26
- <uses-feature name="Utility" required="true" />
27
- <uses-feature name="WebAPI" required="true" />
28
- </feature-usage>
29
- -->
30
- </control>
31
- </manifest>
@@ -1,51 +0,0 @@
1
- import { IInputs, IOutputs } from "./generated/ManifestTypes.js";
2
- import DataSetInterfaces = ComponentFramework.PropertyHelper.DataSetApi;
3
- type DataSet = ComponentFramework.PropertyTypes.DataSet;
4
-
5
- export class $controlnameplaceholder$ implements ComponentFramework.StandardControl<IInputs, IOutputs> {
6
-
7
- /**
8
- * Empty constructor.
9
- */
10
- constructor() {
11
-
12
- }
13
-
14
- /**
15
- * Used to initialize the control instance. Controls can kick off remote server calls and other initialization actions here.
16
- * Data-set values are not initialized here, use updateView.
17
- * @param context The entire property bag available to control via Context Object; It contains values as set up by the customizer mapped to property names defined in the manifest, as well as utility functions.
18
- * @param notifyOutputChanged A callback method to alert the framework that the control has new outputs ready to be retrieved asynchronously.
19
- * @param state A piece of data that persists in one session for a single user. Can be set at any point in a controls life cycle by calling 'setControlState' in the Mode interface.
20
- * @param container If a control is marked control-type='standard', it will receive an empty div element within which it can render its content.
21
- */
22
- public init(context: ComponentFramework.Context<IInputs>, notifyOutputChanged: () => void, state: ComponentFramework.Dictionary, container: HTMLDivElement) {
23
- // Add control initialization code
24
- }
25
-
26
-
27
- /**
28
- * Called when any value in the property bag has changed. This includes field values, data-sets, global values such as container height and width, offline status, control metadata values such as label, visible, etc.
29
- * @param context The entire property bag available to control via Context Object; It contains values as set up by the customizer mapped to names defined in the manifest, as well as utility functions
30
- */
31
- public updateView(context: ComponentFramework.Context<IInputs>): void {
32
- // Add code to update control view
33
- }
34
-
35
- /**
36
- * It is called by the framework prior to a control receiving new data.
37
- * @returns an object based on nomenclature defined in manifest, expecting object[s] for property marked as “bound” or “output”
38
- */
39
- public getOutputs(): IOutputs {
40
- return {};
41
- }
42
-
43
- /**
44
- * Called when the control is to be removed from the DOM tree. Controls should use this call for cleanup.
45
- * i.e. cancelling any pending remote calls, removing listeners, etc.
46
- */
47
- public destroy(): void {
48
- // Add code to cleanup control if necessary
49
- }
50
-
51
- }
@@ -1,12 +0,0 @@
1
- /*
2
- * This is auto generated from the ControlManifest.Input.xml file
3
- */
4
-
5
- // Define IInputs and IOutputs Type. They should match with ControlManifest.
6
- export interface IInputs {
7
- sampleProperty: ComponentFramework.PropertyTypes.StringProperty;
8
- }
9
-
10
- export interface IOutputs {
11
- sampleProperty?: string;
12
- }
@@ -1,37 +0,0 @@
1
- <?xml version="1.0" encoding="utf-8" ?>
2
- <manifest>
3
- <control namespace="$namespaceplaceholder$" constructor="$controlnameplaceholder$" version="0.0.1" display-name-key="$controlnameplaceholder$" description-key="$controlnameplaceholder$ description" control-type="standard">
4
- <!-- property node identifies a specific, configurable piece of data that the control expects from CDS -->
5
- <property name="sampleProperty" display-name-key="Property_Display_Key" description-key="Property_Desc_Key" of-type="SingleLine.Text" usage="bound" required="true" />
6
- <!--
7
- Property node's of-type attribute can be of-type-group attribute.
8
- Example:
9
- <type-group name="numbers">
10
- <type>Whole.None</type>
11
- <type>Currency</type>
12
- <type>FP</type>
13
- <type>Decimal</type>
14
- </type-group>
15
- <property name="sampleProperty" display-name-key="Property_Display_Key" description-key="Property_Desc_Key" of-type-group="numbers" usage="bound" required="true" />
16
- -->
17
- <resources>
18
- <code path="index.ts" order="1"/>
19
- <!-- UNCOMMENT TO ADD MORE RESOURCES
20
- <css path="css/$controlnameplaceholder$.css" order="1" />
21
- <resx path="strings/$controlnameplaceholder$.1033.resx" version="1.0.0" />
22
- -->
23
- </resources>
24
- <!-- UNCOMMENT TO ENABLE THE SPECIFIED API
25
- <feature-usage>
26
- <uses-feature name="Device.captureAudio" required="true" />
27
- <uses-feature name="Device.captureImage" required="true" />
28
- <uses-feature name="Device.captureVideo" required="true" />
29
- <uses-feature name="Device.getBarcodeValue" required="true" />
30
- <uses-feature name="Device.getCurrentPosition" required="true" />
31
- <uses-feature name="Device.pickFile" required="true" />
32
- <uses-feature name="Utility" required="true" />
33
- <uses-feature name="WebAPI" required="true" />
34
- </feature-usage>
35
- -->
36
- </control>
37
- </manifest>
@@ -1,48 +0,0 @@
1
- import { IInputs, IOutputs } from "./generated/ManifestTypes.js";
2
-
3
- export class $controlnameplaceholder$ implements ComponentFramework.StandardControl<IInputs, IOutputs> {
4
-
5
- /**
6
- * Empty constructor.
7
- */
8
- constructor() {
9
-
10
- }
11
-
12
- /**
13
- * Used to initialize the control instance. Controls can kick off remote server calls and other initialization actions here.
14
- * Data-set values are not initialized here, use updateView.
15
- * @param context The entire property bag available to control via Context Object; It contains values as set up by the customizer mapped to property names defined in the manifest, as well as utility functions.
16
- * @param notifyOutputChanged A callback method to alert the framework that the control has new outputs ready to be retrieved asynchronously.
17
- * @param state A piece of data that persists in one session for a single user. Can be set at any point in a controls life cycle by calling 'setControlState' in the Mode interface.
18
- * @param container If a control is marked control-type='standard', it will receive an empty div element within which it can render its content.
19
- */
20
- public init(context: ComponentFramework.Context<IInputs>, notifyOutputChanged: () => void, state: ComponentFramework.Dictionary, container: HTMLDivElement) {
21
- // Add control initialization code
22
- }
23
-
24
-
25
- /**
26
- * Called when any value in the property bag has changed. This includes field values, data-sets, global values such as container height and width, offline status, control metadata values such as label, visible, etc.
27
- * @param context The entire property bag available to control via Context Object; It contains values as set up by the customizer mapped to names defined in the manifest, as well as utility functions
28
- */
29
- public updateView(context: ComponentFramework.Context<IInputs>): void {
30
- // Add code to update control view
31
- }
32
-
33
- /**
34
- * It is called by the framework prior to a control receiving new data.
35
- * @returns an object based on nomenclature defined in manifest, expecting object[s] for property marked as “bound” or “output”
36
- */
37
- public getOutputs(): IOutputs {
38
- return {};
39
- }
40
-
41
- /**
42
- * Called when the control is to be removed from the DOM tree. Controls should use this call for cleanup.
43
- * i.e. cancelling any pending remote calls, removing listeners, etc.
44
- */
45
- public destroy(): void {
46
- // Add code to cleanup control if necessary
47
- }
48
- }
@@ -1,31 +0,0 @@
1
- <?xml version="1.0" encoding="utf-8" ?>
2
- <manifest>
3
- <control namespace="$namespaceplaceholder$" constructor="$controlnameplaceholder$" version="0.0.1" display-name-key="$controlnameplaceholder$" description-key="$controlnameplaceholder$ description" control-type="virtual">
4
- <!-- dataset node represents a set of entity records on CDS; allow more than one datasets -->
5
- <data-set name="sampleDataSet" display-name-key="Dataset_Display_Key">
6
- <!-- 'property-set' node represents a unique, configurable property that each record in the dataset must provide. -->
7
- <!-- UNCOMMENT TO ADD PROPERTY-SET NODE
8
- <property-set name="samplePropertySet" display-name-key="Property_Display_Key" description-key="Property_Desc_Key" of-type="SingleLine.Text" usage="bound" required="true" />
9
- -->
10
- </data-set>
11
- <resources>
12
- <code path="index.tsx" order="1"/>
13
- <!-- UNCOMMENT TO ADD MORE RESOURCES
14
- <css path="css/$controlnameplaceholder$.css" order="1" />
15
- <resx path="strings/$controlnameplaceholder$.1033.resx" version="1.0.0" />
16
- -->
17
- </resources>
18
- <!-- UNCOMMENT TO ENABLE THE SPECIFIED API
19
- <feature-usage>
20
- <uses-feature name="Device.captureAudio" required="true" />
21
- <uses-feature name="Device.captureImage" required="true" />
22
- <uses-feature name="Device.captureVideo" required="true" />
23
- <uses-feature name="Device.getBarcodeValue" required="true" />
24
- <uses-feature name="Device.getCurrentPosition" required="true" />
25
- <uses-feature name="Device.pickFile" required="true" />
26
- <uses-feature name="Utility" required="true" />
27
- <uses-feature name="WebAPI" required="true" />
28
- </feature-usage>
29
- -->
30
- </control>
31
- </manifest>
@@ -1,58 +0,0 @@
1
- import { IInputs, IOutputs } from "./generated/ManifestTypes";
2
- import DataSetInterfaces = ComponentFramework.PropertyHelper.DataSetApi;
3
- type DataSet = ComponentFramework.PropertyTypes.DataSet;
4
-
5
- export class $controlnameplaceholder$ implements ComponentFramework.VirtualControl<IInputs, IOutputs> {
6
-
7
- /**
8
- * Empty constructor.
9
- */
10
- constructor()
11
- {
12
-
13
- }
14
-
15
- /**
16
- * Used to initialize the control instance. Controls can kick off remote server calls and other initialization actions here.
17
- * Data-set values are not initialized here, use updateView.
18
- * @param context The entire property bag available to control via Context Object; It contains values as set up by the customizer mapped to property names defined in the manifest, as well as utility functions.
19
- * @param notifyOutputChanged A callback method to alert the framework that the control has new outputs ready to be retrieved asynchronously.
20
- * @param state A piece of data that persists in one session for a single user. Can be set at any point in a controls life cycle by calling 'setControlState' in the Mode interface.
21
- * @param container If a control is marked control-type='standard', it will receive an empty div element within which it can render its content.
22
- */
23
- public init(context: ComponentFramework.Context<IInputs>, notifyOutputChanged: () => void, state: ComponentFramework.Dictionary, container:HTMLDivElement)
24
- {
25
- // Add control initialization code
26
- }
27
-
28
-
29
- /**
30
- * Called when any value in the property bag has changed. This includes field values, data-sets, global values such as container height and width, offline status, control metadata values such as label, visible, etc.
31
- * @param context The entire property bag available to control via Context Object; It contains values as set up by the customizer mapped to names defined in the manifest, as well as utility functions
32
- * @returns The updated component
33
- */
34
- public updateView(context: ComponentFramework.Context<IInputs>): ComponentFramework.VirtualComponent
35
- {
36
- // Add code to update control view
37
- return undefined;
38
- }
39
-
40
- /**
41
- * It is called by the framework prior to a control receiving new data.
42
- * @returns an object based on nomenclature defined in manifest, expecting object[s] for property marked as “bound” or “output”
43
- */
44
- public getOutputs(): IOutputs
45
- {
46
- return {};
47
- }
48
-
49
- /**
50
- * Called when the control is to be removed from the DOM tree. Controls should use this call for cleanup.
51
- * i.e. cancelling any pending remote calls, removing listeners, etc.
52
- */
53
- public destroy(): void
54
- {
55
- // Add code to cleanup control if necessary
56
- }
57
-
58
- }
@@ -1,37 +0,0 @@
1
- <?xml version="1.0" encoding="utf-8" ?>
2
- <manifest>
3
- <control namespace="$namespaceplaceholder$" constructor="$controlnameplaceholder$" version="0.0.1" display-name-key="$controlnameplaceholder$" description-key="$controlnameplaceholder$ description" control-type="virtual">
4
- <!-- property node identifies a specific, configurable piece of data that the control expects from CDS -->
5
- <property name="sampleProperty" display-name-key="Property_Display_Key" description-key="Property_Desc_Key" of-type="SingleLine.Text" usage="bound" required="true" />
6
- <!--
7
- Property node's of-type attribute can be of-type-group attribute.
8
- Example:
9
- <type-group name="numbers">
10
- <type>Whole.None</type>
11
- <type>Currency</type>
12
- <type>FP</type>
13
- <type>Decimal</type>
14
- </type-group>
15
- <property name="sampleProperty" display-name-key="Property_Display_Key" description-key="Property_Desc_Key" of-type-group="numbers" usage="bound" required="true" />
16
- -->
17
- <resources>
18
- <code path="index.tsx" order="1"/>
19
- <!-- UNCOMMENT TO ADD MORE RESOURCES
20
- <css path="css/$controlnameplaceholder$.css" order="1" />
21
- <resx path="strings/$controlnameplaceholder$.1033.resx" version="1.0.0" />
22
- -->
23
- </resources>
24
- <!-- UNCOMMENT TO ENABLE THE SPECIFIED API
25
- <feature-usage>
26
- <uses-feature name="Device.captureAudio" required="true" />
27
- <uses-feature name="Device.captureImage" required="true" />
28
- <uses-feature name="Device.captureVideo" required="true" />
29
- <uses-feature name="Device.getBarcodeValue" required="true" />
30
- <uses-feature name="Device.getCurrentPosition" required="true" />
31
- <uses-feature name="Device.pickFile" required="true" />
32
- <uses-feature name="Utility" required="true" />
33
- <uses-feature name="WebAPI" required="true" />
34
- </feature-usage>
35
- -->
36
- </control>
37
- </manifest>
@@ -1,55 +0,0 @@
1
- import { IInputs, IOutputs } from "./generated/ManifestTypes";
2
-
3
- export class $controlnameplaceholder$ implements ComponentFramework.VirtualControl<IInputs, IOutputs> {
4
-
5
- /**
6
- * Empty constructor.
7
- */
8
- constructor()
9
- {
10
-
11
- }
12
-
13
- /**
14
- * Used to initialize the control instance. Controls can kick off remote server calls and other initialization actions here.
15
- * Data-set values are not initialized here, use updateView.
16
- * @param context The entire property bag available to control via Context Object; It contains values as set up by the customizer mapped to property names defined in the manifest, as well as utility functions.
17
- * @param notifyOutputChanged A callback method to alert the framework that the control has new outputs ready to be retrieved asynchronously.
18
- * @param state A piece of data that persists in one session for a single user. Can be set at any point in a controls life cycle by calling 'setControlState' in the Mode interface.
19
- * @param container If a control is marked control-type='standard', it will receive an empty div element within which it can render its content.
20
- */
21
- public init(context: ComponentFramework.Context<IInputs>, notifyOutputChanged: () => void, state: ComponentFramework.Dictionary, container:HTMLDivElement)
22
- {
23
- // Add control initialization code
24
- }
25
-
26
-
27
- /**
28
- * Called when any value in the property bag has changed. This includes field values, data-sets, global values such as container height and width, offline status, control metadata values such as label, visible, etc.
29
- * @param context The entire property bag available to control via Context Object; It contains values as set up by the customizer mapped to names defined in the manifest, as well as utility functions
30
- * @returns The updated component
31
- */
32
- public updateView(context: ComponentFramework.Context<IInputs>): ComponentFramework.VirtualComponent
33
- {
34
- // Add code to update control view
35
- return undefined;
36
- }
37
-
38
- /**
39
- * It is called by the framework prior to a control receiving new data.
40
- * @returns an object based on nomenclature defined in manifest, expecting object[s] for property marked as “bound” or “output”
41
- */
42
- public getOutputs(): IOutputs
43
- {
44
- return {};
45
- }
46
-
47
- /**
48
- * Called when the control is to be removed from the DOM tree. Controls should use this call for cleanup.
49
- * i.e. cancelling any pending remote calls, removing listeners, etc.
50
- */
51
- public destroy(): void
52
- {
53
- // Add code to cleanup control if necessary
54
- }
55
- }
@@ -1,19 +0,0 @@
1
- {
2
- "name": "pcf-project",
3
- "version": "1.0.0",
4
- "description": "Project containing your PowerApps Component Framework (PCF) control.",
5
- "scripts": {
6
- "build": "pcf-scripts build",
7
- "clean": "pcf-scripts clean",
8
- "rebuild": "pcf-scripts rebuild",
9
- "start": "pcf-scripts start"
10
- },
11
- "dependencies": {
12
- "@types/node": "^10.12.18",
13
- "@types/powerapps-component-framework": "^1.2.0"
14
- },
15
- "devDependencies": {
16
- "pcf-scripts": "^1",
17
- "pcf-start": "^1"
18
- }
19
- }
@@ -1,3 +0,0 @@
1
- {
2
- "outDir": "./out/controls"
3
- }
@@ -1,14 +0,0 @@
1
- # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2
-
3
- # dependencies
4
- /node_modules
5
-
6
- # generated directory
7
- **/generated
8
-
9
- # output directory
10
- /out
11
-
12
- # msbuild output directories
13
- /bin
14
- /obj
@@ -1,45 +0,0 @@
1
- <?xml version="1.0" encoding="utf-8"?>
2
- <Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3
- <PropertyGroup>
4
- <PowerAppsTargetsPath>$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v$(VisualStudioVersion)\PowerApps</PowerAppsTargetsPath>
5
- </PropertyGroup>
6
-
7
- <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" />
8
- <Import Project="$(PowerAppsTargetsPath)\Microsoft.PowerApps.VisualStudio.Pcf.props" Condition="Exists('$(PowerAppsTargetsPath)\Microsoft.PowerApps.VisualStudio.Pcf.props')"/>
9
-
10
- <PropertyGroup>
11
- <Name>$pcfProjectName$</Name>
12
- <ProjectGuid>$pcfProjectGuid$</ProjectGuid>
13
- <OutputPath>$(MSBuildThisFileDirectory)out\controls</OutputPath>
14
- </PropertyGroup>
15
-
16
- <PropertyGroup>
17
- <TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>
18
- <!--Remove TargetFramework when this is available in 16.1-->
19
- <TargetFramework>net462</TargetFramework>
20
- <RestoreProjectStyle>PackageReference</RestoreProjectStyle>
21
- </PropertyGroup>
22
-
23
- <ItemGroup>
24
- <PackageReference Include="Microsoft.PowerApps.MSBuild.Pcf" Version="1.*"/>
25
- </ItemGroup>
26
-
27
- <ItemGroup>
28
- <ExcludeDirectories Include="$(MSBuildThisFileDirectory)\.gitignore"/>
29
- <ExcludeDirectories Include="$(MSBuildThisFileDirectory)\bin\**"/>
30
- <ExcludeDirectories Include="$(MSBuildThisFileDirectory)\obj\**"/>
31
- <ExcludeDirectories Include="$(OutputPath)\**"/>
32
- <ExcludeDirectories Include="$(MSBuildThisFileDirectory)\*.pcfproj"/>
33
- <ExcludeDirectories Include="$(MSBuildThisFileDirectory)\*.pcfproj.user"/>
34
- <ExcludeDirectories Include="$(MSBuildThisFileDirectory)\*.sln"/>
35
- <ExcludeDirectories Include="$(MSBuildThisFileDirectory)\node_modules\**"/>
36
- </ItemGroup>
37
-
38
- <ItemGroup>
39
- <None Include="$(MSBuildThisFileDirectory)\**" Exclude="@(ExcludeDirectories)"/>
40
- </ItemGroup>
41
-
42
- <Import Project="$(MSBuildToolsPath)\Microsoft.Common.targets" />
43
- <Import Project="$(PowerAppsTargetsPath)\Microsoft.PowerApps.VisualStudio.Pcf.targets" Condition="Exists('$(PowerAppsTargetsPath)\Microsoft.PowerApps.VisualStudio.Pcf.targets')"/>
44
-
45
- </Project>
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=pcf-init-variables.js.map