@pnp/cli-microsoft365 5.9.0-beta.850564a → 5.9.0-beta.c14dbbc
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/.eslintrc.js +13 -0
- package/README.md +5 -0
- package/dist/Auth.js +4 -4
- package/dist/Command.js +8 -8
- package/dist/api.js +3 -3
- package/dist/appInsights.js +2 -0
- package/dist/cli/Cli.js +6 -4
- package/dist/index.js +2 -2
- package/dist/m365/aad/commands/app/app-add.js +4 -3
- package/dist/m365/aad/commands/app/app-get.js +3 -3
- package/dist/m365/aad/commands/app/app-remove.js +5 -5
- package/dist/m365/aad/commands/app/app-role-list.js +2 -2
- package/dist/m365/aad/commands/app/app-role-remove.js +4 -4
- package/dist/m365/aad/commands/approleassignment/approleassignment-add.js +4 -4
- package/dist/m365/aad/commands/approleassignment/approleassignment-list.js +3 -3
- package/dist/m365/aad/commands/approleassignment/approleassignment-remove.js +6 -6
- package/dist/m365/aad/commands/group/group-list.js +2 -2
- package/dist/m365/aad/commands/groupsetting/groupsetting-add.js +2 -2
- package/dist/m365/aad/commands/groupsetting/groupsetting-get.js +2 -2
- package/dist/m365/aad/commands/groupsetting/groupsetting-list.js +2 -2
- package/dist/m365/aad/commands/groupsetting/groupsetting-remove.js +4 -4
- package/dist/m365/aad/commands/groupsetting/groupsetting-set.js +2 -2
- package/dist/m365/aad/commands/groupsettingtemplate/groupsettingtemplate-get.js +4 -3
- package/dist/m365/aad/commands/groupsettingtemplate/groupsettingtemplate-list.js +2 -2
- package/dist/m365/aad/commands/o365group/o365group-add.js +2 -2
- package/dist/m365/aad/commands/o365group/o365group-conversation-list.js +4 -3
- package/dist/m365/aad/commands/o365group/o365group-conversation-post-list.js +4 -3
- package/dist/m365/aad/commands/o365group/o365group-get.js +2 -2
- package/dist/m365/aad/commands/o365group/o365group-list.js +2 -2
- package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-clear.js +4 -4
- package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-list.js +2 -2
- package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-remove.js +7 -6
- package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-restore.js +5 -4
- package/dist/m365/aad/commands/o365group/o365group-remove.js +4 -4
- package/dist/m365/aad/commands/o365group/o365group-renew.js +2 -2
- package/dist/m365/aad/commands/o365group/o365group-set.js +2 -2
- package/dist/m365/aad/commands/o365group/o365group-teamify.js +2 -2
- package/dist/m365/aad/commands/o365group/o365group-user-add.js +3 -3
- package/dist/m365/aad/commands/o365group/o365group-user-list.js +5 -4
- package/dist/m365/aad/commands/o365group/o365group-user-remove.js +5 -5
- package/dist/m365/aad/commands/o365group/o365group-user-set.js +6 -5
- package/dist/m365/aad/commands/oauth2grant/oauth2grant-add.js +3 -3
- package/dist/m365/aad/commands/oauth2grant/oauth2grant-list.js +2 -2
- package/dist/m365/aad/commands/oauth2grant/oauth2grant-remove.js +2 -2
- package/dist/m365/aad/commands/siteclassification/siteclassification-disable.js +2 -2
- package/dist/m365/aad/commands/sp/sp-add.js +3 -3
- package/dist/m365/aad/commands/sp/sp-get.js +3 -3
- package/dist/m365/aad/commands/user/user-get.js +2 -2
- package/dist/m365/aad/commands/user/user-hibp.js +2 -2
- package/dist/m365/aad/commands/user/user-list.js +2 -2
- package/dist/m365/aad/commands/user/user-set.js +2 -2
- package/dist/m365/aad/commands/user/user-signin-list.js +5 -4
- package/dist/m365/app/commands/app-get.js +2 -2
- package/dist/m365/app/commands/app-open.js +2 -2
- package/dist/m365/app/commands/permission/permission-list.js +2 -2
- package/dist/m365/base/AppCommand.js +4 -4
- package/dist/m365/booking/commands/business/business-list.js +2 -2
- package/dist/m365/cli/commands/cli-doctor.js +4 -4
- package/dist/m365/cli/commands/cli-reconsent.js +2 -2
- package/dist/m365/cli/commands/config/config-get.js +2 -2
- package/dist/m365/cli/commands/config/config-reset.js +3 -3
- package/dist/m365/cli/commands/config/config-set.js +2 -2
- package/dist/m365/commands/status.js +3 -3
- package/dist/m365/file/commands/file-add.js +3 -3
- package/dist/m365/file/commands/file-list.js +4 -3
- package/dist/m365/flow/commands/flow-export.js +2 -2
- package/dist/m365/flow/commands/flow-remove.js +4 -4
- package/dist/m365/flow/commands/run/run-cancel.js +4 -4
- package/dist/m365/flow/commands/run/run-resubmit.js +4 -4
- package/dist/m365/graph/commands/changelog/changelog-list.js +5 -4
- package/dist/m365/graph/commands/schemaextension/schemaextension-add.js +2 -2
- package/dist/m365/graph/commands/schemaextension/schemaextension-list.js +2 -2
- package/dist/m365/graph/commands/schemaextension/schemaextension-remove.js +2 -2
- package/dist/m365/graph/commands/schemaextension/schemaextension-set.js +2 -2
- package/dist/m365/graph/commands/subscription/subscription-add.js +2 -2
- package/dist/m365/onedrive/commands/onedrive-list.js +3 -3
- package/dist/m365/onenote/commands/notebook/notebook-list.js +5 -4
- package/dist/m365/outlook/commands/message/message-list.js +2 -2
- package/dist/m365/outlook/commands/room/room-list.js +2 -2
- package/dist/m365/outlook/commands/roomlist/roomlist-list.js +2 -2
- package/dist/m365/pa/commands/app/app-get.js +4 -4
- package/dist/m365/pa/commands/app/app-list.js +2 -2
- package/dist/m365/pa/commands/app/app-remove.js +4 -4
- package/dist/m365/pa/commands/connector/connector-list.js +2 -2
- package/dist/m365/pa/commands/pcf/pcf-init.js +4 -4
- package/dist/m365/pa/commands/solution/solution-init.js +2 -2
- package/dist/m365/planner/commands/bucket/bucket-add.js +4 -3
- package/dist/m365/planner/commands/bucket/bucket-get.js +4 -3
- package/dist/m365/planner/commands/bucket/bucket-list.js +6 -4
- package/dist/m365/planner/commands/bucket/bucket-remove.js +6 -5
- package/dist/m365/planner/commands/bucket/bucket-set.js +4 -3
- package/dist/m365/planner/commands/plan/plan-add.js +9 -6
- package/dist/m365/planner/commands/plan/plan-get.js +4 -3
- package/dist/m365/planner/commands/plan/plan-list.js +4 -3
- package/dist/m365/planner/commands/plan/plan-remove.js +6 -5
- package/dist/m365/planner/commands/task/task-add.js +9 -7
- package/dist/m365/planner/commands/task/task-checklistitem-list.js +2 -2
- package/dist/m365/planner/commands/task/task-checklistitem-remove.js +2 -2
- package/dist/m365/planner/commands/task/task-get.js +4 -3
- package/dist/m365/planner/commands/task/task-list.js +11 -9
- package/dist/m365/planner/commands/task/task-reference-add.js +2 -2
- package/dist/m365/planner/commands/task/task-reference-list.js +2 -2
- package/dist/m365/planner/commands/task/task-reference-remove.js +4 -4
- package/dist/m365/planner/commands/task/task-remove.js +8 -6
- package/dist/m365/planner/commands/task/task-set.js +9 -7
- package/dist/m365/planner/commands/tenant/tenant-settings-set.js +2 -2
- package/dist/m365/pp/commands/dataverse/dataverse-table-list.js +75 -0
- package/dist/m365/pp/commands/managementapp/managementapp-add.js +3 -3
- package/dist/m365/pp/commands/managementapp/managementapp-list.js +2 -2
- package/dist/m365/pp/commands/solution/Solution.js +3 -0
- package/dist/m365/pp/commands/solution/solution-list.js +87 -0
- package/dist/m365/pp/commands/tenant/tenant-settings-list.js +45 -0
- package/dist/m365/pp/commands.js +4 -1
- package/dist/m365/search/commands/externalconnection/externalconnection-list.js +2 -2
- package/dist/m365/search/commands/externalconnection/externalconnection-remove.js +2 -2
- package/dist/m365/spfx/commands/package/package-generate.js +4 -4
- package/dist/m365/spfx/commands/project/base-project-command.js +19 -18
- package/dist/m365/spfx/commands/project/project-doctor/rules/FN001008_DEP_react.js +2 -2
- package/dist/m365/spfx/commands/project/project-doctor/rules/FN001009_DEP_react_dom.js +2 -2
- package/dist/m365/spfx/commands/project/project-doctor/rules/FN001022_DEP_office_ui_fabric_react.js +2 -2
- package/dist/m365/spfx/commands/project/project-doctor/rules/FN002015_DEVDEP_types_react.js +2 -2
- package/dist/m365/spfx/commands/project/project-doctor/rules/FN002016_DEVDEP_types_react_dom.js +2 -2
- package/dist/m365/spfx/commands/project/project-doctor.js +7 -7
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001005_DEP_types_react.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001006_DEP_types_react_dom.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001008_DEP_react.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001009_DEP_react_dom.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001015_DEP_types_react_addons_shallow_compare.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001016_DEP_types_react_addons_update.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001017_DEP_types_react_addons_update.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001019_DEP_knockout.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001020_DEP_types_knockout.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001022_DEP_office_ui_fabric_react.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002015_DEVDEP_types_react.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002016_DEVDEP_types_react_dom.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002025_DEVDEP_eslint_plugin_react_hooks.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN015008_FILE_eslintrc_js.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN020001_RES_types_react.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN022001_SCSS_remove_fabric_react.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN022002_SCSS_add_fabric_react.js +2 -2
- package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.14.0.js +0 -2
- package/dist/m365/spfx/commands/project/project-upgrade.js +24 -23
- package/dist/m365/spfx/commands/spfx-doctor.js +52 -7
- package/dist/m365/spo/commands/app/app-add.js +4 -3
- package/dist/m365/spo/commands/app/app-deploy.js +5 -4
- package/dist/m365/spo/commands/app/app-get.js +5 -4
- package/dist/m365/spo/commands/app/app-install.js +3 -3
- package/dist/m365/spo/commands/app/app-instance-list.js +2 -2
- package/dist/m365/spo/commands/app/app-list.js +4 -3
- package/dist/m365/spo/commands/app/app-remove.js +7 -6
- package/dist/m365/spo/commands/app/app-retract.js +7 -6
- package/dist/m365/spo/commands/app/app-uninstall.js +5 -5
- package/dist/m365/spo/commands/app/app-upgrade.js +3 -3
- package/dist/m365/spo/commands/apppage/apppage-add.js +2 -2
- package/dist/m365/spo/commands/apppage/apppage-set.js +2 -2
- package/dist/m365/spo/commands/cdn/cdn-get.js +4 -4
- package/dist/m365/spo/commands/cdn/cdn-origin-add.js +6 -5
- package/dist/m365/spo/commands/cdn/cdn-origin-list.js +4 -4
- package/dist/m365/spo/commands/cdn/cdn-origin-remove.js +8 -7
- package/dist/m365/spo/commands/cdn/cdn-policy-list.js +4 -4
- package/dist/m365/spo/commands/cdn/cdn-policy-set.js +6 -5
- package/dist/m365/spo/commands/cdn/cdn-set.js +3 -3
- package/dist/m365/spo/commands/contenttype/contenttype-add.js +11 -9
- package/dist/m365/spo/commands/contenttype/contenttype-field-remove.js +11 -9
- package/dist/m365/spo/commands/contenttype/contenttype-field-set.js +8 -6
- package/dist/m365/spo/commands/contenttype/contenttype-get.js +4 -3
- package/dist/m365/spo/commands/contenttype/contenttype-list.js +2 -2
- package/dist/m365/spo/commands/contenttype/contenttype-remove.js +4 -4
- package/dist/m365/spo/commands/contenttype/contenttype-set.js +13 -11
- package/dist/m365/spo/commands/contenttypehub/contenttypehub-get.js +3 -3
- package/dist/m365/spo/commands/customaction/customaction-add.js +3 -3
- package/dist/m365/spo/commands/customaction/customaction-clear.js +4 -4
- package/dist/m365/spo/commands/customaction/customaction-get.js +3 -3
- package/dist/m365/spo/commands/customaction/customaction-list.js +2 -2
- package/dist/m365/spo/commands/customaction/customaction-remove.js +5 -5
- package/dist/m365/spo/commands/customaction/customaction-set.js +4 -4
- package/dist/m365/spo/commands/eventreceiver/EventReceiver.js +3 -0
- package/dist/m365/spo/commands/eventreceiver/eventreceiver-get.js +9 -7
- package/dist/m365/spo/commands/eventreceiver/eventreceiver-list.js +5 -4
- package/dist/m365/spo/commands/eventreceiver/eventreceiver-remove.js +182 -0
- package/dist/m365/spo/commands/externaluser/externaluser-list.js +8 -6
- package/dist/m365/spo/commands/feature/feature-enable.js +2 -2
- package/dist/m365/spo/commands/feature/feature-list.js +2 -2
- package/dist/m365/spo/commands/field/field-add.js +6 -4
- package/dist/m365/spo/commands/field/field-get.js +12 -10
- package/dist/m365/spo/commands/field/field-list.js +9 -7
- package/dist/m365/spo/commands/field/field-remove.js +14 -12
- package/dist/m365/spo/commands/field/field-set.js +12 -10
- package/dist/m365/spo/commands/file/file-add.js +8 -5
- package/dist/m365/spo/commands/file/file-checkin.js +3 -3
- package/dist/m365/spo/commands/file/file-checkout.js +3 -3
- package/dist/m365/spo/commands/file/file-copy.js +34 -46
- package/dist/m365/spo/commands/file/file-get.js +3 -3
- package/dist/m365/spo/commands/file/file-list.js +4 -3
- package/dist/m365/spo/commands/file/file-move.js +33 -44
- package/dist/m365/spo/commands/file/file-remove.js +5 -5
- package/dist/m365/spo/commands/file/file-rename.js +24 -20
- package/dist/m365/spo/commands/file/file-roleassignment-add.js +231 -0
- package/dist/m365/spo/commands/file/file-roleassignment-remove.js +180 -0
- package/dist/m365/spo/commands/file/file-roleinheritance-reset.js +125 -0
- package/dist/m365/spo/commands/file/file-sharinginfo-get.js +5 -4
- package/dist/m365/spo/commands/folder/folder-add.js +4 -3
- package/dist/m365/spo/commands/folder/folder-copy.js +8 -6
- package/dist/m365/spo/commands/folder/folder-get.js +38 -7
- package/dist/m365/spo/commands/folder/folder-list.js +4 -3
- package/dist/m365/spo/commands/folder/folder-move.js +8 -6
- package/dist/m365/spo/commands/folder/folder-remove.js +6 -5
- package/dist/m365/spo/commands/folder/folder-rename.js +8 -6
- package/dist/m365/spo/commands/folder/folder-roleinheritance-break.js +94 -0
- package/dist/m365/spo/commands/folder/folder-roleinheritance-reset.js +89 -0
- package/dist/m365/spo/commands/group/AssociatedGroupPropertiesCollection.js +3 -0
- package/dist/m365/spo/commands/group/group-add.js +3 -3
- package/dist/m365/spo/commands/group/group-get.js +2 -2
- package/dist/m365/spo/commands/group/group-list.js +51 -12
- package/dist/m365/spo/commands/group/group-remove.js +4 -4
- package/dist/m365/spo/commands/group/group-set.js +5 -5
- package/dist/m365/spo/commands/group/group-user-add.js +4 -4
- package/dist/m365/spo/commands/group/group-user-list.js +2 -2
- package/dist/m365/spo/commands/group/group-user-remove.js +4 -4
- package/dist/m365/spo/commands/hidedefaultthemes/hidedefaultthemes-get.js +2 -2
- package/dist/m365/spo/commands/hidedefaultthemes/hidedefaultthemes-set.js +2 -2
- package/dist/m365/spo/commands/homesite/homesite-get.js +2 -2
- package/dist/m365/spo/commands/homesite/homesite-remove.js +5 -5
- package/dist/m365/spo/commands/homesite/homesite-set.js +7 -5
- package/dist/m365/spo/commands/hubsite/hubsite-connect.js +5 -4
- package/dist/m365/spo/commands/hubsite/hubsite-data-get.js +2 -2
- package/dist/m365/spo/commands/hubsite/hubsite-disconnect.js +6 -5
- package/dist/m365/spo/commands/hubsite/hubsite-get.js +8 -7
- package/dist/m365/spo/commands/hubsite/hubsite-list.js +2 -2
- package/dist/m365/spo/commands/hubsite/hubsite-register.js +4 -3
- package/dist/m365/spo/commands/hubsite/hubsite-rights-grant.js +8 -6
- package/dist/m365/spo/commands/hubsite/hubsite-rights-revoke.js +10 -8
- package/dist/m365/spo/commands/hubsite/hubsite-set.js +10 -8
- package/dist/m365/spo/commands/hubsite/hubsite-theme-sync.js +2 -2
- package/dist/m365/spo/commands/hubsite/hubsite-unregister.js +6 -5
- package/dist/m365/spo/commands/knowledgehub/knowledgehub-get.js +3 -3
- package/dist/m365/spo/commands/knowledgehub/knowledgehub-remove.js +5 -5
- package/dist/m365/spo/commands/knowledgehub/knowledgehub-set.js +7 -5
- package/dist/m365/spo/commands/list/list-add.js +5 -5
- package/dist/m365/spo/commands/list/list-contenttype-add.js +6 -5
- package/dist/m365/spo/commands/list/list-contenttype-default-set.js +6 -5
- package/dist/m365/spo/commands/list/list-contenttype-list.js +6 -5
- package/dist/m365/spo/commands/list/list-contenttype-remove.js +8 -7
- package/dist/m365/spo/commands/list/list-get.js +6 -5
- package/dist/m365/spo/commands/list/list-label-get.js +8 -6
- package/dist/m365/spo/commands/list/list-label-set.js +9 -7
- package/dist/m365/spo/commands/list/list-list.js +2 -2
- package/dist/m365/spo/commands/list/list-remove.js +8 -7
- package/dist/m365/spo/commands/list/list-roleassignment-add.js +23 -21
- package/dist/m365/spo/commands/list/list-roleassignment-remove.js +21 -19
- package/dist/m365/spo/commands/list/list-roleinheritance-break.js +6 -5
- package/dist/m365/spo/commands/list/list-roleinheritance-reset.js +6 -5
- package/dist/m365/spo/commands/list/list-set.js +6 -6
- package/dist/m365/spo/commands/list/list-sitescript-get.js +8 -6
- package/dist/m365/spo/commands/list/list-view-add.js +8 -6
- package/dist/m365/spo/commands/list/list-view-field-add.js +8 -7
- package/dist/m365/spo/commands/list/list-view-field-remove.js +10 -9
- package/dist/m365/spo/commands/list/list-view-field-set.js +8 -7
- package/dist/m365/spo/commands/list/list-view-get.js +11 -9
- package/dist/m365/spo/commands/list/list-view-list.js +6 -5
- package/dist/m365/spo/commands/list/list-view-remove.js +9 -8
- package/dist/m365/spo/commands/list/list-view-set.js +10 -8
- package/dist/m365/spo/commands/list/list-webhook-add.js +6 -5
- package/dist/m365/spo/commands/list/list-webhook-get.js +7 -6
- package/dist/m365/spo/commands/list/list-webhook-list.js +10 -9
- package/dist/m365/spo/commands/list/list-webhook-remove.js +9 -8
- package/dist/m365/spo/commands/list/list-webhook-set.js +7 -6
- package/dist/m365/spo/commands/listitem/listitem-add.js +10 -7
- package/dist/m365/spo/commands/listitem/listitem-attachment-list.js +6 -5
- package/dist/m365/spo/commands/listitem/listitem-get.js +6 -5
- package/dist/m365/spo/commands/listitem/listitem-isrecord.js +9 -7
- package/dist/m365/spo/commands/listitem/listitem-list.js +9 -7
- package/dist/m365/spo/commands/listitem/listitem-record-declare.js +10 -8
- package/dist/m365/spo/commands/listitem/listitem-record-undeclare.js +9 -7
- package/dist/m365/spo/commands/listitem/listitem-remove.js +8 -7
- package/dist/m365/spo/commands/listitem/listitem-roleassignment-remove.js +21 -19
- package/dist/m365/spo/commands/listitem/listitem-roleinheritance-break.js +6 -5
- package/dist/m365/spo/commands/listitem/listitem-roleinheritance-reset.js +6 -5
- package/dist/m365/spo/commands/listitem/listitem-set.js +8 -6
- package/dist/m365/spo/commands/mail/mail-send.js +2 -2
- package/dist/m365/spo/commands/navigation/navigation-node-add.js +2 -2
- package/dist/m365/spo/commands/navigation/navigation-node-list.js +2 -2
- package/dist/m365/spo/commands/navigation/navigation-node-remove.js +6 -5
- package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-add.js +6 -5
- package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-list.js +3 -3
- package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-remove.js +5 -5
- package/dist/m365/spo/commands/orgnewssite/orgnewssite-list.js +3 -3
- package/dist/m365/spo/commands/orgnewssite/orgnewssite-remove.js +9 -7
- package/dist/m365/spo/commands/orgnewssite/orgnewssite-set.js +7 -5
- package/dist/m365/spo/commands/page/Page.js +2 -2
- package/dist/m365/spo/commands/page/page-add.js +6 -4
- package/dist/m365/spo/commands/page/page-clientsidewebpart-add.js +3 -3
- package/dist/m365/spo/commands/page/page-column-get.js +2 -2
- package/dist/m365/spo/commands/page/page-column-list.js +2 -2
- package/dist/m365/spo/commands/page/page-control-get.js +3 -3
- package/dist/m365/spo/commands/page/page-control-list.js +2 -2
- package/dist/m365/spo/commands/page/page-control-set.js +3 -3
- package/dist/m365/spo/commands/page/page-copy.js +2 -2
- package/dist/m365/spo/commands/page/page-get.js +4 -3
- package/dist/m365/spo/commands/page/page-header-set.js +2 -2
- package/dist/m365/spo/commands/page/page-list.js +2 -2
- package/dist/m365/spo/commands/page/page-remove.js +8 -6
- package/dist/m365/spo/commands/page/page-section-add.js +2 -2
- package/dist/m365/spo/commands/page/page-section-get.js +2 -2
- package/dist/m365/spo/commands/page/page-section-list.js +2 -2
- package/dist/m365/spo/commands/page/page-set.js +6 -4
- package/dist/m365/spo/commands/page/page-template-list.js +2 -2
- package/dist/m365/spo/commands/page/page-text-add.js +6 -4
- package/dist/m365/spo/commands/propertybag/propertybag-base.js +4 -3
- package/dist/m365/spo/commands/propertybag/propertybag-get.js +5 -4
- package/dist/m365/spo/commands/propertybag/propertybag-list.js +5 -4
- package/dist/m365/spo/commands/propertybag/propertybag-remove.js +10 -8
- package/dist/m365/spo/commands/propertybag/propertybag-set.js +6 -5
- package/dist/m365/spo/commands/roledefinition/roledefinition-add.js +2 -2
- package/dist/m365/spo/commands/roledefinition/roledefinition-get.js +2 -2
- package/dist/m365/spo/commands/roledefinition/roledefinition-list.js +2 -2
- package/dist/m365/spo/commands/roledefinition/roledefinition-remove.js +4 -4
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-grant-add.js +5 -4
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-grant-list.js +3 -3
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-grant-revoke.js +5 -4
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-permissionrequest-approve.js +7 -5
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-permissionrequest-deny.js +7 -5
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-permissionrequest-list.js +3 -3
- package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-set.js +5 -5
- package/dist/m365/spo/commands/site/site-add.js +18 -16
- package/dist/m365/spo/commands/site/site-appcatalog-add.js +7 -5
- package/dist/m365/spo/commands/site/site-appcatalog-remove.js +7 -5
- package/dist/m365/spo/commands/site/site-apppermission-add.js +3 -3
- package/dist/m365/spo/commands/site/site-apppermission-get.js +2 -2
- package/dist/m365/spo/commands/site/site-apppermission-list.js +2 -2
- package/dist/m365/spo/commands/site/site-apppermission-remove.js +5 -5
- package/dist/m365/spo/commands/site/site-apppermission-set.js +3 -3
- package/dist/m365/spo/commands/site/site-chrome-set.js +2 -2
- package/dist/m365/spo/commands/site/site-classic-add.js +15 -13
- package/dist/m365/spo/commands/site/site-classic-list.js +5 -4
- package/dist/m365/spo/commands/site/site-classic-set.js +14 -12
- package/dist/m365/spo/commands/site/site-commsite-enable.js +8 -6
- package/dist/m365/spo/commands/site/site-ensure.js +8 -8
- package/dist/m365/spo/commands/site/site-get.js +2 -2
- package/dist/m365/spo/commands/site/site-groupify.js +2 -2
- package/dist/m365/spo/commands/site/site-inplacerecordsmanagement-set.js +3 -3
- package/dist/m365/spo/commands/site/site-list.js +5 -4
- package/dist/m365/spo/commands/site/site-recyclebinitem-list.js +2 -2
- package/dist/m365/spo/commands/site/site-recyclebinitem-restore.js +6 -5
- package/dist/m365/spo/commands/site/site-remove.js +18 -16
- package/dist/m365/spo/commands/site/site-rename.js +3 -3
- package/dist/m365/spo/commands/site/site-set.js +24 -21
- package/dist/m365/spo/commands/sitedesign/sitedesign-add.js +5 -4
- package/dist/m365/spo/commands/sitedesign/sitedesign-apply.js +5 -4
- package/dist/m365/spo/commands/sitedesign/sitedesign-get.js +4 -3
- package/dist/m365/spo/commands/sitedesign/sitedesign-list.js +2 -2
- package/dist/m365/spo/commands/sitedesign/sitedesign-remove.js +7 -6
- package/dist/m365/spo/commands/sitedesign/sitedesign-rights-grant.js +5 -4
- package/dist/m365/spo/commands/sitedesign/sitedesign-rights-list.js +5 -4
- package/dist/m365/spo/commands/sitedesign/sitedesign-rights-revoke.js +7 -6
- package/dist/m365/spo/commands/sitedesign/sitedesign-run-list.js +3 -3
- package/dist/m365/spo/commands/sitedesign/sitedesign-run-status-get.js +3 -3
- package/dist/m365/spo/commands/sitedesign/sitedesign-set.js +5 -4
- package/dist/m365/spo/commands/sitedesign/sitedesign-task-get.js +4 -3
- package/dist/m365/spo/commands/sitedesign/sitedesign-task-list.js +2 -2
- package/dist/m365/spo/commands/sitedesign/sitedesign-task-remove.js +6 -5
- package/dist/m365/spo/commands/sitescript/sitescript-add.js +3 -3
- package/dist/m365/spo/commands/sitescript/sitescript-get.js +5 -4
- package/dist/m365/spo/commands/sitescript/sitescript-list.js +3 -3
- package/dist/m365/spo/commands/sitescript/sitescript-remove.js +7 -6
- package/dist/m365/spo/commands/sitescript/sitescript-set.js +5 -4
- package/dist/m365/spo/commands/spo-search.js +5 -4
- package/dist/m365/spo/commands/spo-set.js +2 -2
- package/dist/m365/spo/commands/storageentity/storageentity-get.js +2 -2
- package/dist/m365/spo/commands/storageentity/storageentity-list.js +2 -2
- package/dist/m365/spo/commands/storageentity/storageentity-remove.js +9 -7
- package/dist/m365/spo/commands/storageentity/storageentity-set.js +7 -5
- package/dist/m365/spo/commands/tenant/tenant-appcatalog-add.js +7 -7
- package/dist/m365/spo/commands/tenant/tenant-appcatalogurl-get.js +2 -2
- package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-list.js +3 -3
- package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-remove.js +10 -8
- package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-restore.js +4 -3
- package/dist/m365/spo/commands/tenant/tenant-settings-list.js +3 -3
- package/dist/m365/spo/commands/tenant/tenant-settings-set.js +6 -5
- package/dist/m365/spo/commands/term/term-add.js +15 -13
- package/dist/m365/spo/commands/term/term-get.js +11 -9
- package/dist/m365/spo/commands/term/term-group-add.js +8 -6
- package/dist/m365/spo/commands/term/term-group-get.js +7 -5
- package/dist/m365/spo/commands/term/term-group-list.js +3 -3
- package/dist/m365/spo/commands/term/term-list.js +9 -7
- package/dist/m365/spo/commands/term/term-set-add.js +11 -9
- package/dist/m365/spo/commands/term/term-set-get.js +9 -7
- package/dist/m365/spo/commands/term/term-set-list.js +7 -5
- package/dist/m365/spo/commands/theme/theme-apply.js +7 -5
- package/dist/m365/spo/commands/theme/theme-get.js +5 -4
- package/dist/m365/spo/commands/theme/theme-list.js +2 -2
- package/dist/m365/spo/commands/theme/theme-remove.js +4 -4
- package/dist/m365/spo/commands/theme/theme-set.js +7 -5
- package/dist/m365/spo/commands/user/user-get.js +2 -2
- package/dist/m365/spo/commands/user/user-list.js +2 -2
- package/dist/m365/spo/commands/user/user-remove.js +4 -4
- package/dist/m365/spo/commands/userprofile/userprofile-get.js +4 -3
- package/dist/m365/spo/commands/userprofile/userprofile-set.js +3 -3
- package/dist/m365/spo/commands/web/web-add.js +5 -4
- package/dist/m365/spo/commands/web/web-clientsidewebpart-list.js +2 -2
- package/dist/m365/spo/commands/web/web-get.js +2 -2
- package/dist/m365/spo/commands/web/web-installedlanguage-list.js +2 -2
- package/dist/m365/spo/commands/web/web-list.js +2 -2
- package/dist/m365/spo/commands/web/web-reindex.js +6 -5
- package/dist/m365/spo/commands/web/web-remove.js +4 -4
- package/dist/m365/spo/commands/web/web-roleassignment-add.js +16 -16
- package/dist/m365/spo/commands/web/web-roleassignment-remove.js +14 -14
- package/dist/m365/spo/commands/web/web-roleinheritance-reset.js +2 -2
- package/dist/m365/spo/commands/web/web-set.js +2 -2
- package/dist/m365/spo/commands.js +6 -0
- package/dist/m365/teams/commands/app/app-install.js +6 -6
- package/dist/m365/teams/commands/app/app-list.js +4 -3
- package/dist/m365/teams/commands/app/app-remove.js +4 -4
- package/dist/m365/teams/commands/app/app-uninstall.js +4 -4
- package/dist/m365/teams/commands/app/app-update.js +2 -2
- package/dist/m365/teams/commands/cache/cache-remove.js +2 -2
- package/dist/m365/teams/commands/channel/channel-add.js +2 -2
- package/dist/m365/teams/commands/channel/channel-get.js +3 -3
- package/dist/m365/teams/commands/channel/channel-list.js +7 -6
- package/dist/m365/teams/commands/channel/channel-member-add.js +3 -3
- package/dist/m365/teams/commands/channel/channel-member-list.js +5 -4
- package/dist/m365/teams/commands/channel/channel-member-remove.js +6 -6
- package/dist/m365/teams/commands/channel/channel-member-set.js +4 -4
- package/dist/m365/teams/commands/channel/channel-remove.js +5 -5
- package/dist/m365/teams/commands/channel/channel-set.js +2 -2
- package/dist/m365/teams/commands/chat/chat-list.js +2 -2
- package/dist/m365/teams/commands/chat/chat-member-list.js +4 -3
- package/dist/m365/teams/commands/chat/chat-message-list.js +4 -3
- package/dist/m365/teams/commands/chat/chat-message-send.js +5 -4
- package/dist/m365/teams/commands/funsettings/funsettings-list.js +2 -2
- package/dist/m365/teams/commands/funsettings/funsettings-set.js +2 -2
- package/dist/m365/teams/commands/guestsettings/guestsettings-list.js +2 -2
- package/dist/m365/teams/commands/guestsettings/guestsettings-set.js +2 -2
- package/dist/m365/teams/commands/membersettings/membersettings-list.js +2 -2
- package/dist/m365/teams/commands/membersettings/membersettings-set.js +2 -2
- package/dist/m365/teams/commands/message/message-get.js +3 -3
- package/dist/m365/teams/commands/message/message-list.js +7 -6
- package/dist/m365/teams/commands/message/message-reply-list.js +5 -4
- package/dist/m365/teams/commands/messagingsettings/messagingsettings-list.js +2 -2
- package/dist/m365/teams/commands/messagingsettings/messagingsettings-set.js +3 -3
- package/dist/m365/teams/commands/report/report-directroutingcalls.js +3 -3
- package/dist/m365/teams/commands/report/report-pstncalls.js +3 -3
- package/dist/m365/teams/commands/tab/tab-add.js +3 -3
- package/dist/m365/teams/commands/tab/tab-get.js +4 -4
- package/dist/m365/teams/commands/tab/tab-list.js +5 -4
- package/dist/m365/teams/commands/tab/tab-remove.js +6 -6
- package/dist/m365/teams/commands/team/team-archive.js +3 -3
- package/dist/m365/teams/commands/team/team-clone.js +3 -3
- package/dist/m365/teams/commands/team/team-get.js +2 -2
- package/dist/m365/teams/commands/team/team-list.js +2 -2
- package/dist/m365/teams/commands/team/team-remove.js +5 -5
- package/dist/m365/teams/commands/team/team-set.js +3 -3
- package/dist/m365/teams/commands/team/team-unarchive.js +3 -3
- package/dist/m365/teams/commands/user/user-app-add.js +3 -3
- package/dist/m365/teams/commands/user/user-app-list.js +5 -4
- package/dist/m365/teams/commands/user/user-app-remove.js +4 -4
- package/dist/m365/teams/commands/user/user-list.js +5 -4
- package/dist/m365/tenant/commands/id/id-get.js +2 -2
- package/dist/m365/tenant/commands/report/report-office365activationcounts.js +2 -2
- package/dist/m365/tenant/commands/report/report-office365activationsusercounts.js +2 -2
- package/dist/m365/tenant/commands/report/report-office365activationsuserdetail.js +2 -2
- package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-healthissue-list.js +2 -2
- package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-message-list.js +2 -2
- package/dist/m365/todo/commands/list/list-list.js +2 -2
- package/dist/m365/todo/commands/list/list-remove.js +2 -2
- package/dist/m365/todo/commands/task/task-list.js +2 -2
- package/dist/m365/todo/commands/task/task-remove.js +2 -2
- package/dist/m365/viva/commands/connections/connections-app-create.js +2 -2
- package/dist/m365/yammer/commands/group/group-user-remove.js +2 -2
- package/dist/m365/yammer/commands/message/message-like-set.js +2 -2
- package/dist/m365/yammer/commands/message/message-remove.js +2 -2
- package/dist/request.js +4 -4
- package/dist/utils/cache.js +81 -0
- package/dist/utils/pid.js +57 -0
- package/dist/utils/powerPlatform.js +42 -0
- package/dist/utils/spo.js +7 -6
- package/docs/docs/cmd/aad/o365group/o365group-recyclebinitem-restore.md +1 -1
- package/docs/docs/cmd/aad/user/user-signin-list.md +1 -1
- package/docs/docs/cmd/onedrive/report/report-activityusercounts.md +1 -1
- package/docs/docs/cmd/planner/task/task-checklistitem-list.md +1 -1
- package/docs/docs/cmd/planner/task/task-reference-add.md +1 -1
- package/docs/docs/cmd/pp/dataverse/dataverse-table-list.md +33 -0
- package/docs/docs/cmd/pp/environment/environment-list.md +1 -1
- package/docs/docs/cmd/pp/solution/solution-list.md +33 -0
- package/docs/docs/cmd/pp/tenant/tenant-settings-list.md +26 -0
- package/docs/docs/cmd/search/externalconnection/externalconnection-remove.md +1 -1
- package/docs/docs/cmd/spfx/spfx-doctor.md +10 -1
- package/docs/docs/cmd/spo/eventreceiver/eventreceiver-remove.md +69 -0
- package/docs/docs/cmd/spo/file/file-roleassignment-add.md +57 -0
- package/docs/docs/cmd/spo/file/file-roleassignment-remove.md +54 -0
- package/docs/docs/cmd/spo/file/file-roleinheritance-reset.md +39 -0
- package/docs/docs/cmd/spo/folder/folder-get.md +13 -4
- package/docs/docs/cmd/spo/folder/folder-roleinheritance-break.md +39 -0
- package/docs/docs/cmd/spo/folder/folder-roleinheritance-reset.md +36 -0
- package/docs/docs/cmd/spo/group/group-list.md +10 -1
- package/docs/docs/cmd/spo/hubsite/hubsite-disconnect.md +1 -1
- package/docs/docs/cmd/spo/hubsite/hubsite-get.md +3 -3
- package/docs/docs/cmd/spo/list/list-roleassignment-add.md +1 -1
- package/docs/docs/cmd/spo/list/list-roleassignment-remove.md +1 -1
- package/docs/docs/cmd/spo/listitem/listitem-roleassignment-remove.md +1 -1
- package/docs/docs/cmd/spo/roledefinition/roledefinition-add.md +1 -1
- package/docs/docs/cmd/spo/web/web-roleassignment-add.md +5 -5
- package/docs/docs/cmd/spo/web/web-roleassignment-remove.md +5 -5
- package/docs/docs/cmd/spo/web/web-roleinheritance-reset.md +1 -1
- package/docs/docs/cmd/teams/cache/cache-remove.md +1 -1
- package/docs/docs/cmd/teams/channel/channel-add.md +1 -1
- package/docs/docs/cmd/teams/channel/channel-list.md +1 -1
- package/docs/docs/cmd/teams/channel/channel-member-set.md +1 -1
- package/docs/docs/cmd/teams/funsettings/funsettings-set.md +6 -6
- package/docs/docs/cmd/tenant/security/security-alerts-list.md +1 -1
- package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-health-get.md +1 -1
- package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-health-list.md +1 -1
- package/npm-shrinkwrap.json +342 -357
- package/package.json +21 -18
- package/dist/cli/index.js +0 -21
- package/dist/m365/spfx/commands/project/project-upgrade/rules/FN006006_CFG_PS_features.js +0 -60
- package/dist/utils/index.js +0 -31
|
@@ -16,10 +16,14 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
16
16
|
var _SpoFileMoveCommand_instances, _SpoFileMoveCommand_initTelemetry, _SpoFileMoveCommand_initOptions, _SpoFileMoveCommand_initValidators;
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
const url = require("url");
|
|
19
|
+
const Cli_1 = require("../../../../cli/Cli");
|
|
19
20
|
const request_1 = require("../../../../request");
|
|
20
|
-
const
|
|
21
|
+
const spo_1 = require("../../../../utils/spo");
|
|
22
|
+
const urlUtil_1 = require("../../../../utils/urlUtil");
|
|
23
|
+
const validation_1 = require("../../../../utils/validation");
|
|
21
24
|
const SpoCommand_1 = require("../../../base/SpoCommand");
|
|
22
25
|
const commands_1 = require("../../commands");
|
|
26
|
+
const removeCommand = require('./file-remove');
|
|
23
27
|
class SpoFileMoveCommand extends SpoCommand_1.default {
|
|
24
28
|
constructor() {
|
|
25
29
|
super();
|
|
@@ -57,9 +61,9 @@ class SpoFileMoveCommand extends SpoCommand_1.default {
|
|
|
57
61
|
yield this.recycleFile(tenantUrl, args.options.targetUrl, filename, logger);
|
|
58
62
|
}
|
|
59
63
|
// all preconditions met, now create copy job
|
|
60
|
-
const sourceAbsoluteUrl =
|
|
64
|
+
const sourceAbsoluteUrl = urlUtil_1.urlUtil.urlCombine(webUrl, args.options.sourceUrl);
|
|
61
65
|
const allowSchemaMismatch = args.options.allowSchemaMismatch || false;
|
|
62
|
-
const requestUrl =
|
|
66
|
+
const requestUrl = urlUtil_1.urlUtil.urlCombine(webUrl, '/_api/site/CreateCopyJobs');
|
|
63
67
|
const requestOptions = {
|
|
64
68
|
url: requestUrl,
|
|
65
69
|
headers: {
|
|
@@ -67,7 +71,7 @@ class SpoFileMoveCommand extends SpoCommand_1.default {
|
|
|
67
71
|
},
|
|
68
72
|
data: {
|
|
69
73
|
exportObjectUris: [sourceAbsoluteUrl],
|
|
70
|
-
destinationUri:
|
|
74
|
+
destinationUri: urlUtil_1.urlUtil.urlCombine(tenantUrl, args.options.targetUrl),
|
|
71
75
|
options: {
|
|
72
76
|
"AllowSchemaMismatch": allowSchemaMismatch,
|
|
73
77
|
"IgnoreVersionHistory": true,
|
|
@@ -82,7 +86,7 @@ class SpoFileMoveCommand extends SpoCommand_1.default {
|
|
|
82
86
|
const progressPollInterval = 1800; // 30 * 60; //used previously implemented interval. The API does not provide guidance on what value should be used.
|
|
83
87
|
yield new Promise((resolve, reject) => {
|
|
84
88
|
setTimeout(() => {
|
|
85
|
-
|
|
89
|
+
spo_1.spo.waitUntilCopyJobFinished({
|
|
86
90
|
copyJobInfo,
|
|
87
91
|
siteUrl: webUrl,
|
|
88
92
|
pollingInterval: progressPollInterval,
|
|
@@ -122,49 +126,34 @@ class SpoFileMoveCommand extends SpoCommand_1.default {
|
|
|
122
126
|
* Moves file in the site recycle bin
|
|
123
127
|
*/
|
|
124
128
|
recycleFile(tenantUrl, targetUrl, filename, logger) {
|
|
125
|
-
return
|
|
126
|
-
const targetFolderAbsoluteUrl =
|
|
129
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
130
|
+
const targetFolderAbsoluteUrl = urlUtil_1.urlUtil.urlCombine(tenantUrl, targetUrl);
|
|
127
131
|
// since the target WebFullUrl is unknown we can use getRequestDigest
|
|
128
132
|
// to get it from target folder absolute url.
|
|
129
133
|
// Similar approach used here Microsoft.SharePoint.Client.Web.WebUrlFromFolderUrlDirect
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
134
|
+
const contextResponse = yield spo_1.spo.getRequestDigest(targetFolderAbsoluteUrl);
|
|
135
|
+
if (this.debug) {
|
|
136
|
+
logger.logToStderr(`contextResponse.WebFullUrl: ${contextResponse.WebFullUrl}`);
|
|
137
|
+
}
|
|
138
|
+
const targetFileServerRelativeUrl = `${urlUtil_1.urlUtil.getServerRelativePath(contextResponse.WebFullUrl, targetUrl)}/${filename}`;
|
|
139
|
+
const removeOptions = {
|
|
140
|
+
webUrl: contextResponse.WebFullUrl,
|
|
141
|
+
url: targetFileServerRelativeUrl,
|
|
142
|
+
recycle: true,
|
|
143
|
+
confirm: true,
|
|
144
|
+
debug: this.debug,
|
|
145
|
+
verbose: this.verbose
|
|
146
|
+
};
|
|
147
|
+
try {
|
|
148
|
+
yield Cli_1.Cli.executeCommand(removeCommand, { options: Object.assign(Object.assign({}, removeOptions), { _: [] }) });
|
|
149
|
+
}
|
|
150
|
+
catch (err) {
|
|
151
|
+
if (err.error !== undefined && err.error.message !== undefined && err.error.message.includes('does not exist')) {
|
|
137
152
|
}
|
|
138
|
-
|
|
139
|
-
|
|
153
|
+
else {
|
|
154
|
+
throw err;
|
|
140
155
|
}
|
|
141
|
-
|
|
142
|
-
const requestOptions = {
|
|
143
|
-
url: requestUrl,
|
|
144
|
-
method: 'POST',
|
|
145
|
-
headers: {
|
|
146
|
-
'X-HTTP-Method': 'DELETE',
|
|
147
|
-
'If-Match': '*',
|
|
148
|
-
'accept': 'application/json;odata=nometadata'
|
|
149
|
-
},
|
|
150
|
-
responseType: 'json'
|
|
151
|
-
};
|
|
152
|
-
request_1.default.post(requestOptions)
|
|
153
|
-
.then(() => {
|
|
154
|
-
resolve();
|
|
155
|
-
})
|
|
156
|
-
.catch((err) => {
|
|
157
|
-
if (err.statusCode === 404) {
|
|
158
|
-
// file does not exist so can proceed
|
|
159
|
-
return resolve();
|
|
160
|
-
}
|
|
161
|
-
if (this.debug) {
|
|
162
|
-
logger.logToStderr(`recycleFile error...`);
|
|
163
|
-
logger.logToStderr(err);
|
|
164
|
-
}
|
|
165
|
-
reject(err);
|
|
166
|
-
});
|
|
167
|
-
}, (e) => reject(e));
|
|
156
|
+
}
|
|
168
157
|
});
|
|
169
158
|
}
|
|
170
159
|
}
|
|
@@ -188,7 +177,7 @@ _SpoFileMoveCommand_instances = new WeakSet(), _SpoFileMoveCommand_initTelemetry
|
|
|
188
177
|
option: '--allowSchemaMismatch'
|
|
189
178
|
});
|
|
190
179
|
}, _SpoFileMoveCommand_initValidators = function _SpoFileMoveCommand_initValidators() {
|
|
191
|
-
this.validators.push((args) => __awaiter(this, void 0, void 0, function* () { return
|
|
180
|
+
this.validators.push((args) => __awaiter(this, void 0, void 0, function* () { return validation_1.validation.isValidSharePointUrl(args.options.webUrl); }));
|
|
192
181
|
};
|
|
193
182
|
module.exports = new SpoFileMoveCommand();
|
|
194
183
|
//# sourceMappingURL=file-move.js.map
|
|
@@ -15,9 +15,9 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
15
15
|
};
|
|
16
16
|
var _SpoFileRemoveCommand_instances, _SpoFileRemoveCommand_initTelemetry, _SpoFileRemoveCommand_initOptions, _SpoFileRemoveCommand_initValidators, _SpoFileRemoveCommand_initOptionSets;
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
const
|
|
18
|
+
const Cli_1 = require("../../../../cli/Cli");
|
|
19
19
|
const request_1 = require("../../../../request");
|
|
20
|
-
const
|
|
20
|
+
const validation_1 = require("../../../../utils/validation");
|
|
21
21
|
const SpoCommand_1 = require("../../../base/SpoCommand");
|
|
22
22
|
const commands_1 = require("../../commands");
|
|
23
23
|
class SpoFileRemoveCommand extends SpoCommand_1.default {
|
|
@@ -86,7 +86,7 @@ class SpoFileRemoveCommand extends SpoCommand_1.default {
|
|
|
86
86
|
yield removeFile();
|
|
87
87
|
}
|
|
88
88
|
else {
|
|
89
|
-
const result = yield
|
|
89
|
+
const result = yield Cli_1.Cli.prompt({
|
|
90
90
|
type: 'confirm',
|
|
91
91
|
name: 'continue',
|
|
92
92
|
default: false,
|
|
@@ -122,12 +122,12 @@ _SpoFileRemoveCommand_instances = new WeakSet(), _SpoFileRemoveCommand_initTelem
|
|
|
122
122
|
});
|
|
123
123
|
}, _SpoFileRemoveCommand_initValidators = function _SpoFileRemoveCommand_initValidators() {
|
|
124
124
|
this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
|
|
125
|
-
const isValidSharePointUrl =
|
|
125
|
+
const isValidSharePointUrl = validation_1.validation.isValidSharePointUrl(args.options.webUrl);
|
|
126
126
|
if (isValidSharePointUrl !== true) {
|
|
127
127
|
return isValidSharePointUrl;
|
|
128
128
|
}
|
|
129
129
|
if (args.options.id &&
|
|
130
|
-
!
|
|
130
|
+
!validation_1.validation.isValidGuid(args.options.id)) {
|
|
131
131
|
return `${args.options.id} is not a valid GUID`;
|
|
132
132
|
}
|
|
133
133
|
return true;
|
|
@@ -15,9 +15,10 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
15
15
|
};
|
|
16
16
|
var _SpoFileRenameCommand_instances, _SpoFileRenameCommand_initTelemetry, _SpoFileRenameCommand_initOptions, _SpoFileRenameCommand_initValidators;
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
const
|
|
18
|
+
const Cli_1 = require("../../../../cli/Cli");
|
|
19
19
|
const request_1 = require("../../../../request");
|
|
20
|
-
const
|
|
20
|
+
const urlUtil_1 = require("../../../../utils/urlUtil");
|
|
21
|
+
const validation_1 = require("../../../../utils/validation");
|
|
21
22
|
const SpoCommand_1 = require("../../../base/SpoCommand");
|
|
22
23
|
const commands_1 = require("../../commands");
|
|
23
24
|
const removeCommand = require('./file-remove');
|
|
@@ -38,7 +39,7 @@ class SpoFileRenameCommand extends SpoCommand_1.default {
|
|
|
38
39
|
commandAction(logger, args) {
|
|
39
40
|
return __awaiter(this, void 0, void 0, function* () {
|
|
40
41
|
const webUrl = args.options.webUrl;
|
|
41
|
-
const originalFileServerRelativeUrl =
|
|
42
|
+
const originalFileServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.sourceUrl);
|
|
42
43
|
try {
|
|
43
44
|
yield this.getFile(originalFileServerRelativeUrl, webUrl);
|
|
44
45
|
if (args.options.force) {
|
|
@@ -78,23 +79,26 @@ class SpoFileRenameCommand extends SpoCommand_1.default {
|
|
|
78
79
|
return request_1.default.get(requestOptions);
|
|
79
80
|
}
|
|
80
81
|
deleteFile(webUrl, sourceUrl, targetFileName) {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
82
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
83
|
+
const targetFileServerRelativeUrl = `${urlUtil_1.urlUtil.getServerRelativePath(webUrl, sourceUrl.substring(0, sourceUrl.lastIndexOf('/')))}/${targetFileName}`;
|
|
84
|
+
const removeOptions = {
|
|
85
|
+
webUrl: webUrl,
|
|
86
|
+
url: targetFileServerRelativeUrl,
|
|
87
|
+
recycle: true,
|
|
88
|
+
confirm: true,
|
|
89
|
+
debug: this.debug,
|
|
90
|
+
verbose: this.verbose
|
|
91
|
+
};
|
|
92
|
+
try {
|
|
93
|
+
yield Cli_1.Cli.executeCommand(removeCommand, { options: Object.assign(Object.assign({}, removeOptions), { _: [] }) });
|
|
94
|
+
}
|
|
95
|
+
catch (err) {
|
|
96
|
+
if (err.error !== undefined && err.error.message !== undefined && err.error.message.includes('does not exist')) {
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
throw err;
|
|
100
|
+
}
|
|
96
101
|
}
|
|
97
|
-
return Promise.reject(err);
|
|
98
102
|
});
|
|
99
103
|
}
|
|
100
104
|
}
|
|
@@ -115,7 +119,7 @@ _SpoFileRenameCommand_instances = new WeakSet(), _SpoFileRenameCommand_initTelem
|
|
|
115
119
|
option: '--force'
|
|
116
120
|
});
|
|
117
121
|
}, _SpoFileRenameCommand_initValidators = function _SpoFileRenameCommand_initValidators() {
|
|
118
|
-
this.validators.push((args) => __awaiter(this, void 0, void 0, function* () { return
|
|
122
|
+
this.validators.push((args) => __awaiter(this, void 0, void 0, function* () { return validation_1.validation.isValidSharePointUrl(args.options.webUrl); }));
|
|
119
123
|
};
|
|
120
124
|
module.exports = new SpoFileRenameCommand();
|
|
121
125
|
//# sourceMappingURL=file-rename.js.map
|
|
@@ -0,0 +1,231 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
12
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
13
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
14
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
15
|
+
};
|
|
16
|
+
var _SpoFileRoleAssignmentAddCommand_instances, _SpoFileRoleAssignmentAddCommand_initTelemetry, _SpoFileRoleAssignmentAddCommand_initOptions, _SpoFileRoleAssignmentAddCommand_initValidators, _SpoFileRoleAssignmentAddCommand_initOptionSets;
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
const Cli_1 = require("../../../../cli/Cli");
|
|
19
|
+
const SpoUserGetCommand = require("../user/user-get");
|
|
20
|
+
const SpoGroupGetCommand = require("../group/group-get");
|
|
21
|
+
const SpoRoleDefinitionListCommand = require("../roledefinition/roledefinition-list");
|
|
22
|
+
const SpoFileGetCommand = require("./file-get");
|
|
23
|
+
const request_1 = require("../../../../request");
|
|
24
|
+
const validation_1 = require("../../../../utils/validation");
|
|
25
|
+
const formatting_1 = require("../../../../utils/formatting");
|
|
26
|
+
const SpoCommand_1 = require("../../../base/SpoCommand");
|
|
27
|
+
const commands_1 = require("../../commands");
|
|
28
|
+
class SpoFileRoleAssignmentAddCommand extends SpoCommand_1.default {
|
|
29
|
+
constructor() {
|
|
30
|
+
super();
|
|
31
|
+
_SpoFileRoleAssignmentAddCommand_instances.add(this);
|
|
32
|
+
__classPrivateFieldGet(this, _SpoFileRoleAssignmentAddCommand_instances, "m", _SpoFileRoleAssignmentAddCommand_initTelemetry).call(this);
|
|
33
|
+
__classPrivateFieldGet(this, _SpoFileRoleAssignmentAddCommand_instances, "m", _SpoFileRoleAssignmentAddCommand_initOptions).call(this);
|
|
34
|
+
__classPrivateFieldGet(this, _SpoFileRoleAssignmentAddCommand_instances, "m", _SpoFileRoleAssignmentAddCommand_initValidators).call(this);
|
|
35
|
+
__classPrivateFieldGet(this, _SpoFileRoleAssignmentAddCommand_instances, "m", _SpoFileRoleAssignmentAddCommand_initOptionSets).call(this);
|
|
36
|
+
}
|
|
37
|
+
get name() {
|
|
38
|
+
return commands_1.default.FILE_ROLEASSIGNMENT_ADD;
|
|
39
|
+
}
|
|
40
|
+
get description() {
|
|
41
|
+
return 'Adds a role assignment to the specified file.';
|
|
42
|
+
}
|
|
43
|
+
commandAction(logger, args) {
|
|
44
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
45
|
+
if (this.verbose) {
|
|
46
|
+
logger.logToStderr(`Adding role assignment to file in site at ${args.options.webUrl}...`);
|
|
47
|
+
}
|
|
48
|
+
try {
|
|
49
|
+
const fileUrl = yield this.getFileURL(args);
|
|
50
|
+
const roleDefinitionId = yield this.getRoleDefinitionId(args.options);
|
|
51
|
+
if (args.options.upn) {
|
|
52
|
+
const upnPrincipalId = yield this.getUserPrincipalId(args.options);
|
|
53
|
+
yield this.addRoleAssignment(fileUrl, args.options.webUrl, upnPrincipalId, roleDefinitionId);
|
|
54
|
+
}
|
|
55
|
+
else if (args.options.groupName) {
|
|
56
|
+
const groupPrincipalId = yield this.getGroupPrincipalId(args.options);
|
|
57
|
+
yield this.addRoleAssignment(fileUrl, args.options.webUrl, groupPrincipalId, roleDefinitionId);
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
yield this.addRoleAssignment(fileUrl, args.options.webUrl, args.options.principalId, roleDefinitionId);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
catch (err) {
|
|
64
|
+
this.handleRejectedODataJsonPromise(err);
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
addRoleAssignment(fileUrl, webUrl, principalId, roleDefinitionId) {
|
|
69
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
70
|
+
try {
|
|
71
|
+
const requestOptions = {
|
|
72
|
+
url: `${webUrl}/_api/web/GetFileByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(fileUrl)}')/ListItemAllFields/roleassignments/addroleassignment(principalid='${principalId}',roledefid='${roleDefinitionId}')`,
|
|
73
|
+
method: 'POST',
|
|
74
|
+
headers: {
|
|
75
|
+
'accept': 'application/json;odata=nometadata',
|
|
76
|
+
'content-type': 'application/json'
|
|
77
|
+
},
|
|
78
|
+
responseType: 'json'
|
|
79
|
+
};
|
|
80
|
+
yield request_1.default.post(requestOptions);
|
|
81
|
+
}
|
|
82
|
+
catch (err) {
|
|
83
|
+
return Promise.reject(err);
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
getRoleDefinitionId(options) {
|
|
88
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
89
|
+
if (!options.roleDefinitionName) {
|
|
90
|
+
return options.roleDefinitionId;
|
|
91
|
+
}
|
|
92
|
+
try {
|
|
93
|
+
const roleDefinitionListCommandOptions = {
|
|
94
|
+
webUrl: options.webUrl,
|
|
95
|
+
output: 'json',
|
|
96
|
+
debug: this.debug,
|
|
97
|
+
verbose: this.verbose
|
|
98
|
+
};
|
|
99
|
+
const output = yield Cli_1.Cli.executeCommandWithOutput(SpoRoleDefinitionListCommand, { options: Object.assign(Object.assign({}, roleDefinitionListCommandOptions), { _: [] }) });
|
|
100
|
+
const getRoleDefinitionListOutput = JSON.parse(output.stdout);
|
|
101
|
+
const roleDefinitionId = getRoleDefinitionListOutput.find((role) => role.Name === options.roleDefinitionName).Id;
|
|
102
|
+
return roleDefinitionId;
|
|
103
|
+
}
|
|
104
|
+
catch (err) {
|
|
105
|
+
return Promise.reject(err);
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
getGroupPrincipalId(options) {
|
|
110
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
111
|
+
try {
|
|
112
|
+
const groupGetCommandOptions = {
|
|
113
|
+
webUrl: options.webUrl,
|
|
114
|
+
name: options.groupName,
|
|
115
|
+
output: 'json',
|
|
116
|
+
debug: this.debug,
|
|
117
|
+
verbose: this.verbose
|
|
118
|
+
};
|
|
119
|
+
const output = yield Cli_1.Cli.executeCommandWithOutput(SpoGroupGetCommand, { options: Object.assign(Object.assign({}, groupGetCommandOptions), { _: [] }) });
|
|
120
|
+
const getGroupOutput = JSON.parse(output.stdout);
|
|
121
|
+
return getGroupOutput.Id;
|
|
122
|
+
}
|
|
123
|
+
catch (err) {
|
|
124
|
+
return Promise.reject(err);
|
|
125
|
+
}
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
getUserPrincipalId(options) {
|
|
129
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
130
|
+
try {
|
|
131
|
+
const userGetCommandOptions = {
|
|
132
|
+
webUrl: options.webUrl,
|
|
133
|
+
email: options.upn,
|
|
134
|
+
id: undefined,
|
|
135
|
+
output: 'json',
|
|
136
|
+
debug: this.debug,
|
|
137
|
+
verbose: this.verbose
|
|
138
|
+
};
|
|
139
|
+
const output = yield Cli_1.Cli.executeCommandWithOutput(SpoUserGetCommand, { options: Object.assign(Object.assign({}, userGetCommandOptions), { _: [] }) });
|
|
140
|
+
const getUserOutput = JSON.parse(output.stdout);
|
|
141
|
+
return getUserOutput.Id;
|
|
142
|
+
}
|
|
143
|
+
catch (err) {
|
|
144
|
+
return Promise.reject(err);
|
|
145
|
+
}
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
getFileURL(args) {
|
|
149
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
150
|
+
if (args.options.fileUrl) {
|
|
151
|
+
return args.options.fileUrl;
|
|
152
|
+
}
|
|
153
|
+
const options = {
|
|
154
|
+
webUrl: args.options.webUrl,
|
|
155
|
+
id: args.options.fileId,
|
|
156
|
+
output: 'json',
|
|
157
|
+
debug: this.debug,
|
|
158
|
+
verbose: this.verbose
|
|
159
|
+
};
|
|
160
|
+
const output = yield Cli_1.Cli.executeCommandWithOutput(SpoFileGetCommand, { options: Object.assign(Object.assign({}, options), { _: [] }) });
|
|
161
|
+
const getFileOutput = JSON.parse(output.stdout);
|
|
162
|
+
return getFileOutput.ServerRelativeUrl;
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
_SpoFileRoleAssignmentAddCommand_instances = new WeakSet(), _SpoFileRoleAssignmentAddCommand_initTelemetry = function _SpoFileRoleAssignmentAddCommand_initTelemetry() {
|
|
167
|
+
this.telemetry.push((args) => {
|
|
168
|
+
Object.assign(this.telemetryProperties, {
|
|
169
|
+
fileUrl: typeof args.options.fileUrl !== 'undefined',
|
|
170
|
+
fileId: typeof args.options.fileId !== 'undefined',
|
|
171
|
+
principalId: typeof args.options.principalId !== 'undefined',
|
|
172
|
+
upn: typeof args.options.upn !== 'undefined',
|
|
173
|
+
groupName: typeof args.options.groupName !== 'undefined',
|
|
174
|
+
roleDefinitionId: typeof args.options.roleDefinitionId !== 'undefined',
|
|
175
|
+
roleDefinitionName: typeof args.options.roleDefinitionName !== 'undefined'
|
|
176
|
+
});
|
|
177
|
+
});
|
|
178
|
+
}, _SpoFileRoleAssignmentAddCommand_initOptions = function _SpoFileRoleAssignmentAddCommand_initOptions() {
|
|
179
|
+
this.options.unshift({
|
|
180
|
+
option: '-u, --webUrl <webUrl>'
|
|
181
|
+
}, {
|
|
182
|
+
option: '--fileUrl [fileUrl]'
|
|
183
|
+
}, {
|
|
184
|
+
option: 'i, --fileId [fileId]'
|
|
185
|
+
}, {
|
|
186
|
+
option: '--principalId [principalId]'
|
|
187
|
+
}, {
|
|
188
|
+
option: '--upn [upn]'
|
|
189
|
+
}, {
|
|
190
|
+
option: '--groupName [groupName]'
|
|
191
|
+
}, {
|
|
192
|
+
option: '--roleDefinitionId [roleDefinitionId]'
|
|
193
|
+
}, {
|
|
194
|
+
option: '--roleDefinitionName [roleDefinitionName]'
|
|
195
|
+
});
|
|
196
|
+
}, _SpoFileRoleAssignmentAddCommand_initValidators = function _SpoFileRoleAssignmentAddCommand_initValidators() {
|
|
197
|
+
this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
|
|
198
|
+
const isValidSharePointUrl = validation_1.validation.isValidSharePointUrl(args.options.webUrl);
|
|
199
|
+
if (isValidSharePointUrl !== true) {
|
|
200
|
+
return isValidSharePointUrl;
|
|
201
|
+
}
|
|
202
|
+
if (args.options.fileId && !validation_1.validation.isValidGuid(args.options.fileId)) {
|
|
203
|
+
return `${args.options.fileId} is not a valid GUID`;
|
|
204
|
+
}
|
|
205
|
+
if (args.options.principalId && isNaN(args.options.principalId)) {
|
|
206
|
+
return `Specified principalId ${args.options.principalId} is not a number`;
|
|
207
|
+
}
|
|
208
|
+
if (args.options.roleDefinitionId && isNaN(args.options.roleDefinitionId)) {
|
|
209
|
+
return `Specified roleDefinitionId ${args.options.roleDefinitionId} is not a number`;
|
|
210
|
+
}
|
|
211
|
+
const principalOptions = [args.options.principalId, args.options.upn, args.options.groupName];
|
|
212
|
+
if (!principalOptions.some(item => item !== undefined)) {
|
|
213
|
+
return `Specify either principalId, upn or groupName`;
|
|
214
|
+
}
|
|
215
|
+
if (principalOptions.filter(item => item !== undefined).length > 1) {
|
|
216
|
+
return `Specify either principalId, upn or groupName but not multiple`;
|
|
217
|
+
}
|
|
218
|
+
const roleDefinitionOptions = [args.options.roleDefinitionId, args.options.roleDefinitionName];
|
|
219
|
+
if (!roleDefinitionOptions.some(item => item !== undefined)) {
|
|
220
|
+
return `Specify either roleDefinitionId or roleDefinitionName`;
|
|
221
|
+
}
|
|
222
|
+
if (roleDefinitionOptions.filter(item => item !== undefined).length > 1) {
|
|
223
|
+
return `Specify either roleDefinitionId or roleDefinitionName but not multiple`;
|
|
224
|
+
}
|
|
225
|
+
return true;
|
|
226
|
+
}));
|
|
227
|
+
}, _SpoFileRoleAssignmentAddCommand_initOptionSets = function _SpoFileRoleAssignmentAddCommand_initOptionSets() {
|
|
228
|
+
this.optionSets.push(['fileId', 'fileUrl']);
|
|
229
|
+
};
|
|
230
|
+
module.exports = new SpoFileRoleAssignmentAddCommand();
|
|
231
|
+
//# sourceMappingURL=file-roleassignment-add.js.map
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
12
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
13
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
14
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
15
|
+
};
|
|
16
|
+
var _SpoFileRoleAssignmentRemoveCommand_instances, _SpoFileRoleAssignmentRemoveCommand_initTelemetry, _SpoFileRoleAssignmentRemoveCommand_initOptions, _SpoFileRoleAssignmentRemoveCommand_initValidators, _SpoFileRoleAssignmentRemoveCommand_initOptionSets;
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
const Cli_1 = require("../../../../cli/Cli");
|
|
19
|
+
const request_1 = require("../../../../request");
|
|
20
|
+
const urlUtil_1 = require("../../../../utils/urlUtil");
|
|
21
|
+
const formatting_1 = require("../../../../utils/formatting");
|
|
22
|
+
const validation_1 = require("../../../../utils/validation");
|
|
23
|
+
const SpoCommand_1 = require("../../../base/SpoCommand");
|
|
24
|
+
const commands_1 = require("../../commands");
|
|
25
|
+
const SpoFileGetCommand = require("./file-get");
|
|
26
|
+
const SpoUserGetCommand = require("../user/user-get");
|
|
27
|
+
const SpoGroupGetCommand = require("../group/group-get");
|
|
28
|
+
class SpoFileRoleAssignmentRemoveCommand extends SpoCommand_1.default {
|
|
29
|
+
constructor() {
|
|
30
|
+
super();
|
|
31
|
+
_SpoFileRoleAssignmentRemoveCommand_instances.add(this);
|
|
32
|
+
__classPrivateFieldGet(this, _SpoFileRoleAssignmentRemoveCommand_instances, "m", _SpoFileRoleAssignmentRemoveCommand_initTelemetry).call(this);
|
|
33
|
+
__classPrivateFieldGet(this, _SpoFileRoleAssignmentRemoveCommand_instances, "m", _SpoFileRoleAssignmentRemoveCommand_initOptions).call(this);
|
|
34
|
+
__classPrivateFieldGet(this, _SpoFileRoleAssignmentRemoveCommand_instances, "m", _SpoFileRoleAssignmentRemoveCommand_initValidators).call(this);
|
|
35
|
+
__classPrivateFieldGet(this, _SpoFileRoleAssignmentRemoveCommand_instances, "m", _SpoFileRoleAssignmentRemoveCommand_initOptionSets).call(this);
|
|
36
|
+
}
|
|
37
|
+
get name() {
|
|
38
|
+
return commands_1.default.FILE_ROLEASSIGNMENT_REMOVE;
|
|
39
|
+
}
|
|
40
|
+
get description() {
|
|
41
|
+
return 'Removes a role assignment from a file.';
|
|
42
|
+
}
|
|
43
|
+
commandAction(logger, args) {
|
|
44
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
45
|
+
const removeRoleAssignment = () => __awaiter(this, void 0, void 0, function* () {
|
|
46
|
+
try {
|
|
47
|
+
const fileURL = yield this.getFileURL(args);
|
|
48
|
+
let principalId;
|
|
49
|
+
if (args.options.groupName) {
|
|
50
|
+
principalId = yield this.getGroupPrincipalId(args.options);
|
|
51
|
+
}
|
|
52
|
+
else if (args.options.upn) {
|
|
53
|
+
principalId = yield this.getUserPrincipalId(args.options);
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
principalId = args.options.principalId;
|
|
57
|
+
}
|
|
58
|
+
const serverRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, fileURL);
|
|
59
|
+
const requestOptions = {
|
|
60
|
+
url: `${args.options.webUrl}/_api/web/GetFileByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(serverRelativeUrl)}')/ListItemAllFields/roleassignments/removeroleassignment(principalid='${principalId}')`,
|
|
61
|
+
headers: {
|
|
62
|
+
accept: 'application/json;odata=nometadata'
|
|
63
|
+
},
|
|
64
|
+
responseType: 'json'
|
|
65
|
+
};
|
|
66
|
+
yield request_1.default.post(requestOptions);
|
|
67
|
+
}
|
|
68
|
+
catch (err) {
|
|
69
|
+
this.handleRejectedODataJsonPromise(err);
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
if (args.options.confirm) {
|
|
73
|
+
yield removeRoleAssignment();
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
const result = yield Cli_1.Cli.prompt({
|
|
77
|
+
type: 'confirm',
|
|
78
|
+
name: 'continue',
|
|
79
|
+
default: false,
|
|
80
|
+
message: `Are you sure you want to remove role assignment from file ${args.options.fileUrl || args.options.fileId} from site ${args.options.webUrl}?`
|
|
81
|
+
});
|
|
82
|
+
if (result.continue) {
|
|
83
|
+
yield removeRoleAssignment();
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
getFileURL(args) {
|
|
89
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
90
|
+
if (args.options.fileUrl) {
|
|
91
|
+
return args.options.fileUrl;
|
|
92
|
+
}
|
|
93
|
+
const options = {
|
|
94
|
+
webUrl: args.options.webUrl,
|
|
95
|
+
id: args.options.fileId,
|
|
96
|
+
output: 'json',
|
|
97
|
+
debug: this.debug,
|
|
98
|
+
verbose: this.verbose
|
|
99
|
+
};
|
|
100
|
+
const output = yield Cli_1.Cli.executeCommandWithOutput(SpoFileGetCommand, { options: Object.assign(Object.assign({}, options), { _: [] }) });
|
|
101
|
+
const getFileOutput = JSON.parse(output.stdout);
|
|
102
|
+
return getFileOutput.ServerRelativeUrl;
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
getUserPrincipalId(options) {
|
|
106
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
107
|
+
const userGetCommandOptions = {
|
|
108
|
+
webUrl: options.webUrl,
|
|
109
|
+
email: options.upn,
|
|
110
|
+
id: undefined,
|
|
111
|
+
output: 'json',
|
|
112
|
+
debug: this.debug,
|
|
113
|
+
verbose: this.verbose
|
|
114
|
+
};
|
|
115
|
+
const output = yield Cli_1.Cli.executeCommandWithOutput(SpoUserGetCommand, { options: Object.assign(Object.assign({}, userGetCommandOptions), { _: [] }) });
|
|
116
|
+
const getUserOutput = JSON.parse(output.stdout);
|
|
117
|
+
return getUserOutput.Id;
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
getGroupPrincipalId(options) {
|
|
121
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
122
|
+
const groupGetCommandOptions = {
|
|
123
|
+
webUrl: options.webUrl,
|
|
124
|
+
name: options.groupName,
|
|
125
|
+
output: 'json',
|
|
126
|
+
debug: this.debug,
|
|
127
|
+
verbose: this.verbose
|
|
128
|
+
};
|
|
129
|
+
const output = yield Cli_1.Cli.executeCommandWithOutput(SpoGroupGetCommand, { options: Object.assign(Object.assign({}, groupGetCommandOptions), { _: [] }) });
|
|
130
|
+
const getGroupOutput = JSON.parse(output.stdout);
|
|
131
|
+
return getGroupOutput.Id;
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
_SpoFileRoleAssignmentRemoveCommand_instances = new WeakSet(), _SpoFileRoleAssignmentRemoveCommand_initTelemetry = function _SpoFileRoleAssignmentRemoveCommand_initTelemetry() {
|
|
136
|
+
this.telemetry.push((args) => {
|
|
137
|
+
Object.assign(this.telemetryProperties, {
|
|
138
|
+
fileUrl: typeof args.options.fileUrl !== 'undefined',
|
|
139
|
+
fileId: typeof args.options.fileId !== 'undefined',
|
|
140
|
+
principalId: typeof args.options.principalId !== 'undefined',
|
|
141
|
+
upn: typeof args.options.upn !== 'undefined',
|
|
142
|
+
groupName: typeof args.options.groupName !== 'undefined',
|
|
143
|
+
confirm: !!args.options.confirm
|
|
144
|
+
});
|
|
145
|
+
});
|
|
146
|
+
}, _SpoFileRoleAssignmentRemoveCommand_initOptions = function _SpoFileRoleAssignmentRemoveCommand_initOptions() {
|
|
147
|
+
this.options.unshift({
|
|
148
|
+
option: '-u, --webUrl <webUrl>'
|
|
149
|
+
}, {
|
|
150
|
+
option: '--fileUrl [fileUrl]'
|
|
151
|
+
}, {
|
|
152
|
+
option: '-i, --fileId [fileId]'
|
|
153
|
+
}, {
|
|
154
|
+
option: '--principalId [principalId]'
|
|
155
|
+
}, {
|
|
156
|
+
option: '--upn [upn]'
|
|
157
|
+
}, {
|
|
158
|
+
option: '--groupName [groupName]'
|
|
159
|
+
}, {
|
|
160
|
+
option: '--confirm'
|
|
161
|
+
});
|
|
162
|
+
}, _SpoFileRoleAssignmentRemoveCommand_initValidators = function _SpoFileRoleAssignmentRemoveCommand_initValidators() {
|
|
163
|
+
this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
|
|
164
|
+
const isValidSharePointUrl = validation_1.validation.isValidSharePointUrl(args.options.webUrl);
|
|
165
|
+
if (isValidSharePointUrl !== true) {
|
|
166
|
+
return isValidSharePointUrl;
|
|
167
|
+
}
|
|
168
|
+
if (args.options.principalId && isNaN(args.options.principalId)) {
|
|
169
|
+
return `Specified principalId ${args.options.principalId} is not a number`;
|
|
170
|
+
}
|
|
171
|
+
if (args.options.fileId && !validation_1.validation.isValidGuid(args.options.fileId)) {
|
|
172
|
+
return `${args.options.fileId} is not a valid GUID`;
|
|
173
|
+
}
|
|
174
|
+
return true;
|
|
175
|
+
}));
|
|
176
|
+
}, _SpoFileRoleAssignmentRemoveCommand_initOptionSets = function _SpoFileRoleAssignmentRemoveCommand_initOptionSets() {
|
|
177
|
+
this.optionSets.push(['fileUrl', 'fileId'], ['upn', 'groupName', 'principalId']);
|
|
178
|
+
};
|
|
179
|
+
module.exports = new SpoFileRoleAssignmentRemoveCommand();
|
|
180
|
+
//# sourceMappingURL=file-roleassignment-remove.js.map
|