How to add calendar to menu?

const { Gtk } = imports.gi;

const menuItem = new PopupMenu.PopupMenuItem('');
var calendar = new Gtk.Calendar();
menuItem.add_child(calendar);
this._indicator.menu.addMenuItem(menuItem);

From your question, code and tags it is not clear whether you are asking about a gnome-shell extension or a gtk application. gtk can not be used from within gnome-shell extensions. PopupMenu looks like gnome-shell code, while Gtk.Calendar is obviously gtk code.

If this is about gnome-shell, you can look at how the calendar in gnome-shell is implemented and might be able to reuse some of the widgets: js/ui/calendar.js · main · GNOME / gnome-shell · GitLab

import * as Calendar from 'resource:///org/gnome/shell/ui/calendar.js';

const menuItem = new PopupMenu.PopupMenuItem('');        
let calendar = new Calendar.Calendar();
let now = new Date();
calendar.setDate(now);
menuItem.add_child(calendar);
menuItem.height = 300;
this._indicator.menu.addMenuItem(menuItem);

But only UI no data !