@pnp/cli-microsoft365
Version:
Manage Microsoft 365 and SharePoint Framework projects on any platform
36 lines • 1.48 kB
JavaScript
import { z } from 'zod';
import { globalOptionsZod } from '../../../../Command.js';
import DateAndPeriodBasedReport from '../../../base/DateAndPeriodBasedReport.js';
import commands from '../../commands.js';
export const options = z.strictObject({
...globalOptionsZod.shape,
output: z.enum(['csv', 'json']).optional().alias('o'),
period: z.enum(['D7', 'D30', 'D90', 'D180']).optional().alias('p'),
date: z.string().regex(/^\d{4}-\d{2}-\d{2}$/, 'The supported date format is YYYY-MM-DD').optional().alias('d')
});
class OneDriveReportUsageAccountDetailCommand extends DateAndPeriodBasedReport {
get name() {
return commands.REPORT_USAGEACCOUNTDETAIL;
}
get usageEndpoint() {
return 'getOneDriveUsageAccountDetail';
}
get description() {
return 'Gets details about OneDrive usage by account';
}
get schema() {
return options;
}
getRefinedSchema(schema) {
return schema
.refine((opts) => opts.period !== undefined || opts.date !== undefined, {
message: 'Specify period or date, one is required.',
params: { customCode: 'optionSet', options: ['period', 'date'] }
})
.refine((opts) => !(opts.period !== undefined && opts.date !== undefined), {
message: 'Specify period or date but not both.'
});
}
}
export default new OneDriveReportUsageAccountDetailCommand();
//# sourceMappingURL=report-usageaccountdetail.js.map