const pptxgen = require("pptxgenjs");
const pres = new pptxgen();
pres.layout = "LAYOUT_16x9";
pres.title = "Masailul Fiqhiyyah - Ushul Fiqih";
pres.author = "Erwin Pauji";
// Color palette: Islamic green & gold theme
const C = {
darkGreen: "1B5E20",
green: "2E7D32",
midGreen: "388E3C",
lightGreen: "C8E6C9",
gold: "F9A825",
lightGold: "FFF9C4",
white: "FFFFFF",
offWhite: "F9F6EF",
dark: "1A1A1A",
gray: "546E7A",
lightGray: "ECEFF1",
};
const makeShadow = () => ({ type: "outer", blur: 8, offset: 3, angle: 45, color: "000000", opacity: 0.14 });
// ─────────────────────────────────────────────────────────────────────────────
// SLIDE 1 — COVER
// ─────────────────────────────────────────────────────────────────────────────
{
const s = pres.addSlide();
s.background = { color: C.darkGreen };
// Gold ornamental top band
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 0.08, fill: { color: C.gold }, line: { color: C.gold } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 5.545, w: 10, h: 0.08, fill: { color: C.gold }, line: { color: C.gold } });
// Right decorative block
s.addShape(pres.shapes.RECTANGLE, { x: 7.2, y: 0.08, w: 2.8, h: 5.465, fill: { color: C.green }, line: { color: C.green } });
// Islamic pattern circles (decorative)
for (let i = 0; i < 5; i++) {
s.addShape(pres.shapes.OVAL, {
x: 7.4 + (i % 2) * 0.7, y: 0.3 + i * 0.95, w: 1.8, h: 1.8,
fill: { color: C.midGreen, transparency: 40 },
line: { color: C.gold, width: 0.5 },
});
}
// Mata Kuliah label
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x: 0.5, y: 0.4, w: 3.6, h: 0.42,
fill: { color: C.gold }, line: { color: C.gold }, rectRadius: 0.05,
});
s.addText("MATA KULIAH", {
x: 0.5, y: 0.4, w: 3.6, h: 0.42,
fontSize: 12, bold: true, color: C.darkGreen, align: "center", valign: "middle", margin: 0,
fontFace: "Calibri",
});
// Main title
s.addText("MASAILUL\nFIQHIYYAH", {
x: 0.4, y: 0.98, w: 6.5, h: 2.0,
fontSize: 48, bold: true, color: C.white, align: "left", valign: "top",
fontFace: "Cambria", charSpacing: 2,
});
// Subtitle
s.addText("Definisi Ushul Fiqih sebagai Metode Ijtihad", {
x: 0.4, y: 3.1, w: 6.5, h: 0.65,
fontSize: 18, bold: false, color: C.lightGreen, align: "left",
fontFace: "Calibri", italic: true,
});
// Gold divider line
s.addShape(pres.shapes.RECTANGLE, { x: 0.4, y: 3.8, w: 4.5, h: 0.04, fill: { color: C.gold }, line: { color: C.gold } });
// Author info
s.addText([
{ text: "Disusun oleh: ", options: { color: C.lightGreen, fontSize: 13, fontFace: "Calibri" } },
{ text: "Erwin Pauji", options: { color: C.white, bold: true, fontSize: 13, fontFace: "Calibri" } },
], { x: 0.4, y: 3.95, w: 6.5, h: 0.38, margin: 0 });
s.addText("NIM: ______________________", {
x: 0.4, y: 4.35, w: 6.5, h: 0.35,
fontSize: 13, color: C.lightGold, fontFace: "Calibri", margin: 0,
});
// Bismillah (Arabic placeholder as decorative text)
s.addText("ุจِุณْู
ِ ุงَِّููู ุงูุฑَّุญْู
َِู ุงูุฑَّุญِูู
ِ", {
x: 0.4, y: 4.85, w: 6.5, h: 0.45,
fontSize: 14, color: C.gold, align: "left", fontFace: "Calibri", margin: 0,
});
}
// ─────────────────────────────────────────────────────────────────────────────
// SLIDE 2 — DAFTAR ISI
// ─────────────────────────────────────────────────────────────────────────────
{
const s = pres.addSlide();
s.background = { color: C.offWhite };
// Header bar
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 1.1, fill: { color: C.darkGreen }, line: { color: C.darkGreen } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 1.1, w: 10, h: 0.06, fill: { color: C.gold }, line: { color: C.gold } });
s.addText("DAFTAR ISI", {
x: 0.4, y: 0.1, w: 9.2, h: 0.9,
fontSize: 32, bold: true, color: C.white, align: "left", valign: "middle",
fontFace: "Cambria", margin: 0,
});
const topics = [
{ num: "01", title: "Definisi Ushul Fiqih", sub: "Pengertian secara bahasa dan istilah" },
{ num: "02", title: "Ushul Fiqih sebagai Metode Ijtihad", sub: "Peran dan fungsi metodologis" },
{ num: "03", title: "Sumber-Sumber Hukum Islam", sub: "Al-Qur'an, Hadits, Ijma', Qiyas, dan lainnya" },
{ num: "04", title: "Kedudukan & Pertanggungjawaban Ilmiah", sub: "Validitas dan akuntabilitas sumber" },
{ num: "05", title: "Kesimpulan & Referensi", sub: "Ringkasan dan daftar pustaka" },
];
topics.forEach((t, i) => {
const y = 1.35 + i * 0.82;
const even = i % 2 === 0;
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x: 0.4, y, w: 9.2, h: 0.7,
fill: { color: even ? C.lightGreen : C.white },
line: { color: even ? C.midGreen : C.lightGray, width: 0.5 },
rectRadius: 0.06,
shadow: makeShadow(),
});
// Number badge
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x: 0.5, y: y + 0.1, w: 0.5, h: 0.5,
fill: { color: C.darkGreen }, line: { color: C.darkGreen }, rectRadius: 0.05,
});
s.addText(t.num, {
x: 0.5, y: y + 0.1, w: 0.5, h: 0.5,
fontSize: 11, bold: true, color: C.white, align: "center", valign: "middle", margin: 0,
fontFace: "Calibri",
});
s.addText(t.title, {
x: 1.15, y: y + 0.05, w: 5.5, h: 0.32,
fontSize: 14, bold: true, color: C.darkGreen, align: "left", valign: "middle",
fontFace: "Calibri", margin: 0,
});
s.addText(t.sub, {
x: 1.15, y: y + 0.36, w: 7.0, h: 0.25,
fontSize: 11, color: C.gray, align: "left", fontFace: "Calibri", margin: 0,
});
});
}
// ─────────────────────────────────────────────────────────────────────────────
// SLIDE 3 — DEFINISI USHUL FIQIH
// ─────────────────────────────────────────────────────────────────────────────
{
const s = pres.addSlide();
s.background = { color: C.offWhite };
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 1.1, fill: { color: C.darkGreen }, line: { color: C.darkGreen } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 1.1, w: 10, h: 0.06, fill: { color: C.gold }, line: { color: C.gold } });
s.addText("01", { x: 0.3, y: 0.1, w: 0.65, h: 0.9, fontSize: 28, bold: true, color: C.gold, align: "left", valign: "middle", fontFace: "Cambria", margin: 0 });
s.addText("DEFINISI USHUL FIQIH", { x: 1.1, y: 0.1, w: 8.5, h: 0.9, fontSize: 26, bold: true, color: C.white, align: "left", valign: "middle", fontFace: "Cambria", margin: 0 });
// Left column: Bahasa
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 0.3, y: 1.3, w: 4.5, h: 3.9, fill: { color: C.white }, line: { color: C.lightGray, width: 0.5 }, rectRadius: 0.08, shadow: makeShadow() });
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 0.4, y: 1.4, w: 4.3, h: 0.5, fill: { color: C.midGreen }, line: { color: C.midGreen }, rectRadius: 0.05 });
s.addText("PENGERTIAN BAHASA", { x: 0.4, y: 1.4, w: 4.3, h: 0.5, fontSize: 13, bold: true, color: C.white, align: "center", valign: "middle", fontFace: "Calibri", margin: 0 });
s.addText([
{ text: "ุฃُุตُْูู ุงِِْูููู\n", options: { bold: true, fontSize: 18, color: C.darkGreen, fontFace: "Calibri" } },
{ text: "• Ushul (ุฃُุตُْูู): jamak dari Ashl (ุฃَุตْู)\n artinya pokok, dasar, atau pondasi.\n\n", options: { fontSize: 12, color: C.dark, fontFace: "Calibri" } },
{ text: "• Fiqih (ُِْููู): pemahaman mendalam,\n mengerti hakikat sesuatu.\n\n", options: { fontSize: 12, color: C.dark, fontFace: "Calibri" } },
{ text: "Gabungan: ", options: { fontSize: 12, color: C.dark, fontFace: "Calibri" } },
{ text: "\"Dasar-dasar ilmu fiqih\"", options: { fontSize: 12, bold: true, color: C.midGreen, fontFace: "Calibri" } },
], { x: 0.45, y: 2.0, w: 4.2, h: 3.1, valign: "top", margin: 5 });
// Right column: Istilah
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 5.2, y: 1.3, w: 4.5, h: 3.9, fill: { color: C.white }, line: { color: C.lightGray, width: 0.5 }, rectRadius: 0.08, shadow: makeShadow() });
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 5.3, y: 1.4, w: 4.3, h: 0.5, fill: { color: C.gold }, line: { color: C.gold }, rectRadius: 0.05 });
s.addText("PENGERTIAN ISTILAH", { x: 5.3, y: 1.4, w: 4.3, h: 0.5, fontSize: 13, bold: true, color: C.darkGreen, align: "center", valign: "middle", fontFace: "Calibri", margin: 0 });
s.addText([
{ text: "Ilmu tentang kaidah-kaidah dan\npembahasan yang menjadi sarana\npengambilan hukum syar'i dari\ndalil-dalilnya yang terperinci.\n\n", options: { fontSize: 12, color: C.dark, fontFace: "Calibri", italic: true } },
{ text: "— Al-Amidi, Al-Ihkam\n\n", options: { fontSize: 11, color: C.gray, fontFace: "Calibri" } },
{ text: "Kaidah-kaidah yang membantu\nfaqih dalam mengistinbathkan\nhukum dari dalil-dalil syar'i.", options: { fontSize: 12, color: C.dark, fontFace: "Calibri" } },
], { x: 5.35, y: 2.0, w: 4.2, h: 3.1, valign: "top", margin: 5 });
}
// ─────────────────────────────────────────────────────────────────────────────
// SLIDE 4 — OBJEK DAN RUANG LINGKUP
// ─────────────────────────────────────────────────────────────────────────────
{
const s = pres.addSlide();
s.background = { color: C.offWhite };
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 1.1, fill: { color: C.darkGreen }, line: { color: C.darkGreen } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 1.1, w: 10, h: 0.06, fill: { color: C.gold }, line: { color: C.gold } });
s.addText("01", { x: 0.3, y: 0.1, w: 0.65, h: 0.9, fontSize: 28, bold: true, color: C.gold, align: "left", valign: "middle", fontFace: "Cambria", margin: 0 });
s.addText("RUANG LINGKUP USHUL FIQIH", { x: 1.1, y: 0.1, w: 8.5, h: 0.9, fontSize: 26, bold: true, color: C.white, align: "left", valign: "middle", fontFace: "Cambria", margin: 0 });
const items = [
{ icon: "๐", title: "Dalil-Dalil Syar'i", desc: "Membahas Al-Qur'an, Hadits, Ijma', Qiyas dan sumber hukum lainnya secara metodologis" },
{ icon: "⚖️", title: "Cara Pengambilan Hukum", desc: "Metode dan teknik istinbath (penggalian hukum) dari dalil-dalil yang ada" },
{ icon: "๐", title: "Kondisi Mujtahid", desc: "Syarat-syarat dan kompetensi yang harus dimiliki seorang mujtahid" },
{ icon: "๐", title: "Hukum Syar'i", desc: "Klasifikasi hukum: wajib, sunnah, mubah, makruh, haram beserta kategori objeknya" },
{ icon: "๐", title: "Ta'arud & Tarjih", desc: "Penyelesaian pertentangan antara dalil-dalil yang tampaknya saling bertentangan" },
{ icon: "๐ก", title: "Ijtihad & Taqlid", desc: "Batasan, syarat, dan pembagian ijtihad serta posisi taqlid dalam hukum Islam" },
];
items.forEach((it, i) => {
const col = i % 3;
const row = Math.floor(i / 3);
const x = 0.3 + col * 3.22;
const y = 1.3 + row * 2.1;
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x, y, w: 3.0, h: 1.85,
fill: { color: C.white }, line: { color: C.lightGray, width: 0.5 },
rectRadius: 0.08, shadow: makeShadow(),
});
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x: x + 0.1, y: y + 0.1, w: 0.55, h: 0.55,
fill: { color: C.lightGreen }, line: { color: C.midGreen, width: 0.5 }, rectRadius: 0.05,
});
s.addText(it.icon, { x: x + 0.1, y: y + 0.1, w: 0.55, h: 0.55, fontSize: 16, align: "center", valign: "middle", margin: 0 });
s.addText(it.title, {
x: x + 0.72, y: y + 0.1, w: 2.18, h: 0.55,
fontSize: 12, bold: true, color: C.darkGreen, align: "left", valign: "middle",
fontFace: "Calibri", margin: 0,
});
s.addText(it.desc, {
x: x + 0.12, y: y + 0.72, w: 2.78, h: 1.0,
fontSize: 11, color: C.gray, align: "left", valign: "top",
fontFace: "Calibri", margin: 3,
});
});
}
// ─────────────────────────────────────────────────────────────────────────────
// SLIDE 5 — USHUL FIQIH SEBAGAI METODE IJTIHAD
// ─────────────────────────────────────────────────────────────────────────────
{
const s = pres.addSlide();
s.background = { color: C.offWhite };
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 1.1, fill: { color: C.darkGreen }, line: { color: C.darkGreen } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 1.1, w: 10, h: 0.06, fill: { color: C.gold }, line: { color: C.gold } });
s.addText("02", { x: 0.3, y: 0.1, w: 0.65, h: 0.9, fontSize: 28, bold: true, color: C.gold, align: "left", valign: "middle", fontFace: "Cambria", margin: 0 });
s.addText("USHUL FIQIH SEBAGAI METODE IJTIHAD", { x: 1.1, y: 0.1, w: 8.5, h: 0.9, fontSize: 22, bold: true, color: C.white, align: "left", valign: "middle", fontFace: "Cambria", margin: 0 });
// Definition box
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x: 0.3, y: 1.25, w: 9.4, h: 0.9,
fill: { color: C.lightGold }, line: { color: C.gold, width: 1 }, rectRadius: 0.07,
});
s.addText([
{ text: "Ijtihad", options: { bold: true, color: C.darkGreen, fontSize: 13, fontFace: "Calibri" } },
{ text: " adalah pengerahan segenap kemampuan seorang mujtahid untuk mengistinbathkan hukum syar'i yang bersifat zhanni. Ushul Fiqih menjadi ", options: { color: C.dark, fontSize: 13, fontFace: "Calibri" } },
{ text: "framework metodologis", options: { bold: true, color: C.darkGreen, fontSize: 13, fontFace: "Calibri" } },
{ text: " yang menstandarisasi proses ijtihad.", options: { color: C.dark, fontSize: 13, fontFace: "Calibri" } },
], { x: 0.45, y: 1.3, w: 9.1, h: 0.8, valign: "middle", margin: 5 });
// Three pillars
const pillars = [
{ title: "Fungsi Epistemologis", items: ["Menetapkan standar dalil yang valid", "Menentukan hierarki sumber hukum", "Menyaring dalil shahih dari yang dha'if"] },
{ title: "Fungsi Metodologis", items: ["Menyediakan kaidah-kaidah penafsiran", "Prosedur penyelesaian dalil yang bertentangan", "Teknik qiyas dan analogi hukum"] },
{ title: "Fungsi Normatif", items: ["Menjaga konsistensi fatwa", "Menghindari kesewenangan berpendapat", "Standarisasi produk ijtihad ulama"] },
];
pillars.forEach((p, i) => {
const x = 0.3 + i * 3.22;
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x, y: 2.3, w: 3.0, h: 3.1,
fill: { color: C.white }, line: { color: C.lightGray, width: 0.5 },
rectRadius: 0.08, shadow: makeShadow(),
});
const headColors = [C.darkGreen, C.midGreen, C.gold];
const headTextColors = [C.white, C.white, C.darkGreen];
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x: x + 0.08, y: 2.38, w: 2.84, h: 0.6,
fill: { color: headColors[i] }, line: { color: headColors[i] }, rectRadius: 0.05,
});
s.addText(p.title, {
x: x + 0.08, y: 2.38, w: 2.84, h: 0.6,
fontSize: 12, bold: true, color: headTextColors[i], align: "center", valign: "middle",
fontFace: "Calibri", margin: 0,
});
s.addText(
p.items.map((item, j) => ({
text: item + (j < p.items.length - 1 ? "\n" : ""),
options: { bullet: true, fontSize: 11, color: C.dark, fontFace: "Calibri", paraSpaceAfter: 6 }
})),
{ x: x + 0.12, y: 3.05, w: 2.78, h: 2.3, valign: "top", margin: 4 }
);
});
}
// ─────────────────────────────────────────────────────────────────────────────
// SLIDE 6 — SUMBER HUKUM ISLAM (Al-Qur'an & Hadits)
// ─────────────────────────────────────────────────────────────────────────────
{
const s = pres.addSlide();
s.background = { color: C.offWhite };
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 1.1, fill: { color: C.darkGreen }, line: { color: C.darkGreen } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 1.1, w: 10, h: 0.06, fill: { color: C.gold }, line: { color: C.gold } });
s.addText("03", { x: 0.3, y: 0.1, w: 0.65, h: 0.9, fontSize: 28, bold: true, color: C.gold, align: "left", valign: "middle", fontFace: "Cambria", margin: 0 });
s.addText("SUMBER HUKUM ISLAM — DALIL NAQLIY", { x: 1.1, y: 0.1, w: 8.5, h: 0.9, fontSize: 22, bold: true, color: C.white, align: "left", valign: "middle", fontFace: "Cambria", margin: 0 });
// Al-Qur'an
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 0.3, y: 1.25, w: 4.5, h: 4.1, fill: { color: C.white }, line: { color: C.lightGray, width: 0.5 }, rectRadius: 0.08, shadow: makeShadow() });
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 0.4, y: 1.35, w: 4.3, h: 0.6, fill: { color: C.darkGreen }, line: { color: C.darkGreen }, rectRadius: 0.05 });
s.addText("๐ AL-QUR'AN (Sumber Pertama)", { x: 0.4, y: 1.35, w: 4.3, h: 0.6, fontSize: 13, bold: true, color: C.white, align: "center", valign: "middle", fontFace: "Calibri", margin: 0 });
s.addText([
{ text: "Definisi:\n", options: { bold: true, color: C.darkGreen, fontSize: 12, fontFace: "Calibri" } },
{ text: "Firman Allah yang diturunkan kepada Nabi Muhammad ๏ทบ melalui Malaikat Jibril, bernilai ibadah membacanya.\n\n", options: { fontSize: 11, color: C.dark, fontFace: "Calibri" } },
{ text: "Kedudukan Hukum:\n", options: { bold: true, color: C.darkGreen, fontSize: 12, fontFace: "Calibri" } },
{ text: "• Dalil qath'i (pasti) dalam hal wurud\n• Qath'i atau zhanni dalam hal dilalah\n• Prioritas utama dalam istinbath\n\n", options: { fontSize: 11, color: C.dark, fontFace: "Calibri" } },
{ text: "Metode Penafsiran:\n", options: { bold: true, color: C.darkGreen, fontSize: 12, fontFace: "Calibri" } },
{ text: "• Tafsir bil-ma'tsur & bil-ra'yi\n• Kaidah 'amm-khash, muthlaq-muqayyad\n• Nasikh-mansukh", options: { fontSize: 11, color: C.dark, fontFace: "Calibri" } },
], { x: 0.45, y: 2.05, w: 4.2, h: 3.25, valign: "top", margin: 4 });
// Hadits
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 5.2, y: 1.25, w: 4.5, h: 4.1, fill: { color: C.white }, line: { color: C.lightGray, width: 0.5 }, rectRadius: 0.08, shadow: makeShadow() });
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 5.3, y: 1.35, w: 4.3, h: 0.6, fill: { color: C.midGreen }, line: { color: C.midGreen }, rectRadius: 0.05 });
s.addText("๐ HADITS (Sumber Kedua)", { x: 5.3, y: 1.35, w: 4.3, h: 0.6, fontSize: 13, bold: true, color: C.white, align: "center", valign: "middle", fontFace: "Calibri", margin: 0 });
s.addText([
{ text: "Definisi:\n", options: { bold: true, color: C.midGreen, fontSize: 12, fontFace: "Calibri" } },
{ text: "Segala sesuatu yang disandarkan kepada Nabi Muhammad ๏ทบ berupa perkataan, perbuatan, taqrir, dan sifat.\n\n", options: { fontSize: 11, color: C.dark, fontFace: "Calibri" } },
{ text: "Klasifikasi Hadits:\n", options: { bold: true, color: C.midGreen, fontSize: 12, fontFace: "Calibri" } },
{ text: "• Mutawatir: derajat paling kuat\n• Ahad: mashhur, aziz, gharib\n• Shahih, Hasan, Dha'if\n\n", options: { fontSize: 11, color: C.dark, fontFace: "Calibri" } },
{ text: "Fungsi terhadap Al-Qur'an:\n", options: { bold: true, color: C.midGreen, fontSize: 12, fontFace: "Calibri" } },
{ text: "• Ta'kid (penguat)\n• Bayan (penjelasan)\n• Tasyri' (penetapan hukum baru)", options: { fontSize: 11, color: C.dark, fontFace: "Calibri" } },
], { x: 5.35, y: 2.05, w: 4.2, h: 3.25, valign: "top", margin: 4 });
}
// ─────────────────────────────────────────────────────────────────────────────
// SLIDE 7 — SUMBER HUKUM: IJMA' & QIYAS
// ─────────────────────────────────────────────────────────────────────────────
{
const s = pres.addSlide();
s.background = { color: C.offWhite };
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 1.1, fill: { color: C.darkGreen }, line: { color: C.darkGreen } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 1.1, w: 10, h: 0.06, fill: { color: C.gold }, line: { color: C.gold } });
s.addText("03", { x: 0.3, y: 0.1, w: 0.65, h: 0.9, fontSize: 28, bold: true, color: C.gold, align: "left", valign: "middle", fontFace: "Cambria", margin: 0 });
s.addText("SUMBER HUKUM ISLAM — DALIL AQLI", { x: 1.1, y: 0.1, w: 8.5, h: 0.9, fontSize: 22, bold: true, color: C.white, align: "left", valign: "middle", fontFace: "Cambria", margin: 0 });
// Ijma'
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 0.3, y: 1.25, w: 4.5, h: 4.1, fill: { color: C.white }, line: { color: C.lightGray, width: 0.5 }, rectRadius: 0.08, shadow: makeShadow() });
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 0.4, y: 1.35, w: 4.3, h: 0.6, fill: { color: "795548" }, line: { color: "795548" }, rectRadius: 0.05 });
s.addText("๐ค IJMA' (Sumber Ketiga)", { x: 0.4, y: 1.35, w: 4.3, h: 0.6, fontSize: 13, bold: true, color: C.white, align: "center", valign: "middle", fontFace: "Calibri", margin: 0 });
s.addText([
{ text: "Definisi:\n", options: { bold: true, color: "795548", fontSize: 12, fontFace: "Calibri" } },
{ text: "Kesepakatan seluruh mujtahid muslim pada suatu masa tertentu atas hukum syar'i tertentu setelah wafatnya Rasulullah ๏ทบ.\n\n", options: { fontSize: 11, color: C.dark, fontFace: "Calibri" } },
{ text: "Syarat Sahnya:\n", options: { bold: true, color: "795548", fontSize: 12, fontFace: "Calibri" } },
{ text: "• Kesepakatan semua mujtahid\n• Pada satu masa yang sama\n• Tentang satu masalah tertentu\n\n", options: { fontSize: 11, color: C.dark, fontFace: "Calibri" } },
{ text: "Jenis Ijma':\n", options: { bold: true, color: "795548", fontSize: 12, fontFace: "Calibri" } },
{ text: "• Ijma' sharih (eksplisit)\n• Ijma' sukuti (diam/tidak membantah)", options: { fontSize: 11, color: C.dark, fontFace: "Calibri" } },
], { x: 0.45, y: 2.05, w: 4.2, h: 3.25, valign: "top", margin: 4 });
// Qiyas
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 5.2, y: 1.25, w: 4.5, h: 4.1, fill: { color: C.white }, line: { color: C.lightGray, width: 0.5 }, rectRadius: 0.08, shadow: makeShadow() });
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 5.3, y: 1.35, w: 4.3, h: 0.6, fill: { color: C.gold }, line: { color: C.gold }, rectRadius: 0.05 });
s.addText("๐ QIYAS (Sumber Keempat)", { x: 5.3, y: 1.35, w: 4.3, h: 0.6, fontSize: 13, bold: true, color: C.darkGreen, align: "center", valign: "middle", fontFace: "Calibri", margin: 0 });
s.addText([
{ text: "Definisi:\n", options: { bold: true, color: C.darkGreen, fontSize: 12, fontFace: "Calibri" } },
{ text: "Menyamakan hukum masalah baru yang tidak ada nashnya dengan masalah yang sudah ada nashnya karena adanya persamaan 'illat.\n\n", options: { fontSize: 11, color: C.dark, fontFace: "Calibri" } },
{ text: "Rukun Qiyas:\n", options: { bold: true, color: C.darkGreen, fontSize: 12, fontFace: "Calibri" } },
{ text: "• Al-Ashl: masalah pokok (ada nash)\n• Al-Far'u: masalah baru (tidak ada nash)\n• Al-Hukm: hukum ashl\n• Al-'Illat: sebab persamaan hukum\n\n", options: { fontSize: 11, color: C.dark, fontFace: "Calibri" } },
{ text: "Contoh:\n", options: { bold: true, color: C.darkGreen, fontSize: 12, fontFace: "Calibri" } },
{ text: "Khamr haram → narkoba haram\n('illat: memabukkan/merusak akal)", options: { fontSize: 11, color: C.dark, fontFace: "Calibri", italic: true } },
], { x: 5.35, y: 2.05, w: 4.2, h: 3.25, valign: "top", margin: 4 });
}
// ─────────────────────────────────────────────────────────────────────────────
// SLIDE 8 — SUMBER HUKUM MUKHTALAF FIHA
// ─────────────────────────────────────────────────────────────────────────────
{
const s = pres.addSlide();
s.background = { color: C.offWhite };
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 1.1, fill: { color: C.darkGreen }, line: { color: C.darkGreen } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 1.1, w: 10, h: 0.06, fill: { color: C.gold }, line: { color: C.gold } });
s.addText("03", { x: 0.3, y: 0.1, w: 0.65, h: 0.9, fontSize: 28, bold: true, color: C.gold, align: "left", valign: "middle", fontFace: "Cambria", margin: 0 });
s.addText("SUMBER HUKUM MUKHTALAF FรHร", { x: 1.1, y: 0.1, w: 8.5, h: 0.9, fontSize: 22, bold: true, color: C.white, align: "left", valign: "middle", fontFace: "Cambria", margin: 0 });
const sources = [
{ title: "Istihsan", desc: "Berpindah dari qiyas jali ke qiyas khafi atau dari hukum umum ke hukum khusus karena ada dalil yang lebih kuat.", school: "Mayoritas Hanafi & Maliki" },
{ title: "Maslahah Mursalah", desc: "Menetapkan hukum berdasarkan kemaslahatan yang tidak ada nasnya dan tidak pula ada penolakan terhadapnya.", school: "Mayoritas Maliki" },
{ title: "Istishab", desc: "Memberlakukan hukum yang telah ada pada masa lalu hingga ada dalil yang mengubahnya.", school: "Mayoritas Ulama" },
{ title: "Urf (Adat)", desc: "Kebiasaan yang berlaku dalam masyarakat yang tidak bertentangan dengan syariat.", school: "Hanafi, Maliki, Syafi'i" },
{ title: "Syar'u Man Qablana", desc: "Hukum yang diturunkan kepada umat sebelum Islam yang belum dihapus.", school: "Sebagian Ulama" },
{ title: "Sadd al-Dzara'i", desc: "Menutup segala sesuatu yang menjadi perantara kepada keharaman.", school: "Maliki & Hanbali" },
];
sources.forEach((src, i) => {
const col = i % 3;
const row = Math.floor(i / 3);
const x = 0.3 + col * 3.22;
const y = 1.28 + row * 2.05;
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x, y, w: 3.0, h: 1.82,
fill: { color: C.white }, line: { color: C.lightGray, width: 0.5 },
rectRadius: 0.08, shadow: makeShadow(),
});
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x: x + 0.08, y: y + 0.08, w: 2.84, h: 0.42,
fill: { color: C.lightGreen }, line: { color: C.midGreen, width: 0.5 }, rectRadius: 0.04,
});
s.addText(src.title, {
x: x + 0.08, y: y + 0.08, w: 2.84, h: 0.42,
fontSize: 13, bold: true, color: C.darkGreen, align: "center", valign: "middle",
fontFace: "Calibri", margin: 0,
});
s.addText(src.desc, {
x: x + 0.1, y: y + 0.55, w: 2.82, h: 0.88,
fontSize: 10.5, color: C.dark, align: "left", valign: "top",
fontFace: "Calibri", margin: 3,
});
s.addText("๐ " + src.school, {
x: x + 0.1, y: y + 1.46, w: 2.82, h: 0.28,
fontSize: 9.5, color: C.gray, italic: true, align: "left",
fontFace: "Calibri", margin: 3,
});
});
}
// ─────────────────────────────────────────────────────────────────────────────
// SLIDE 9 — KEDUDUKAN DAN PERTANGGUNGJAWABAN ILMIAH
// ─────────────────────────────────────────────────────────────────────────────
{
const s = pres.addSlide();
s.background = { color: C.offWhite };
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 1.1, fill: { color: C.darkGreen }, line: { color: C.darkGreen } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 1.1, w: 10, h: 0.06, fill: { color: C.gold }, line: { color: C.gold } });
s.addText("04", { x: 0.3, y: 0.1, w: 0.65, h: 0.9, fontSize: 28, bold: true, color: C.gold, align: "left", valign: "middle", fontFace: "Cambria", margin: 0 });
s.addText("VALIDITAS & PERTANGGUNGJAWABAN ILMIAH", { x: 1.1, y: 0.1, w: 8.5, h: 0.9, fontSize: 20, bold: true, color: C.white, align: "left", valign: "middle", fontFace: "Cambria", margin: 0 });
// Left: Syarat Sumber Terpercaya
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 0.3, y: 1.25, w: 4.55, h: 4.1, fill: { color: C.white }, line: { color: C.lightGray, width: 0.5 }, rectRadius: 0.08, shadow: makeShadow() });
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 0.4, y: 1.33, w: 4.35, h: 0.55, fill: { color: C.darkGreen }, line: { color: C.darkGreen }, rectRadius: 0.05 });
s.addText("Syarat Sumber yang Dapat Dipertanggungjawabkan", {
x: 0.4, y: 1.33, w: 4.35, h: 0.55, fontSize: 12, bold: true, color: C.white, align: "center", valign: "middle", fontFace: "Calibri", margin: 0,
});
const syarats = [
["✅", "Qath'i al-Wurud", "Kepastian sumber/sanad (Al-Qur'an mutawatir)"],
["✅", "Qath'i al-Dilalah", "Kejelasan makna, tidak multi-tafsir sewenangnya"],
["✅", "Sanad Shahih", "Rantai perawi hadits yang valid & terpercaya"],
["✅", "Tidak Mansukh", "Dalil belum dihapus oleh dalil yang lebih kuat"],
["✅", "Sesuai Maqashid", "Sejalan dengan tujuan syariat (maqashid al-shari'ah)"],
];
syarats.forEach(([ic, bold, desc], i) => {
const y = 2.02 + i * 0.66;
s.addText([
{ text: ic + " ", options: { fontSize: 12, fontFace: "Calibri" } },
{ text: bold + ": ", options: { bold: true, fontSize: 12, color: C.darkGreen, fontFace: "Calibri" } },
{ text: desc, options: { fontSize: 11, color: C.dark, fontFace: "Calibri" } },
], { x: 0.45, y, w: 4.25, h: 0.58, valign: "middle", margin: 3 });
});
// Right: Akuntabilitas Mujtahid
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 5.15, y: 1.25, w: 4.55, h: 4.1, fill: { color: C.white }, line: { color: C.lightGray, width: 0.5 }, rectRadius: 0.08, shadow: makeShadow() });
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 5.25, y: 1.33, w: 4.35, h: 0.55, fill: { color: C.gold }, line: { color: C.gold }, rectRadius: 0.05 });
s.addText("Akuntabilitas & Kompetensi Mujtahid", {
x: 5.25, y: 1.33, w: 4.35, h: 0.55, fontSize: 12, bold: true, color: C.darkGreen, align: "center", valign: "middle", fontFace: "Calibri", margin: 0,
});
const kompetensi = [
["๐ฌ", "Menguasai Al-Qur'an", "Hafal & memahami ayat-ayat hukum (~500 ayat)"],
["๐", "Menguasai Hadits", "Paham hadits ahkam & ilmu musthalahul hadits"],
["๐️", "Menguasai Ijma'", "Tahu hukum yang telah disepakati ulama"],
["๐", "Menguasai Qiyas", "Mampu melakukan analogi hukum secara benar"],
["๐", "Memahami Maqashid", "Paham tujuan-tujuan pokok syariat Islam"],
];
kompetensi.forEach(([ic, bold, desc], i) => {
const y = 2.02 + i * 0.66;
s.addText([
{ text: ic + " ", options: { fontSize: 12, fontFace: "Calibri" } },
{ text: bold + ": ", options: { bold: true, fontSize: 12, color: C.darkGreen, fontFace: "Calibri" } },
{ text: desc, options: { fontSize: 11, color: C.dark, fontFace: "Calibri" } },
], { x: 5.3, y, w: 4.3, h: 0.58, valign: "middle", margin: 3 });
});
}
// ─────────────────────────────────────────────────────────────────────────────
// SLIDE 10 — SKEMA HIERARKI SUMBER HUKUM
// ─────────────────────────────────────────────────────────────────────────────
{
const s = pres.addSlide();
s.background = { color: C.offWhite };
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 1.1, fill: { color: C.darkGreen }, line: { color: C.darkGreen } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 1.1, w: 10, h: 0.06, fill: { color: C.gold }, line: { color: C.gold } });
s.addText("04", { x: 0.3, y: 0.1, w: 0.65, h: 0.9, fontSize: 28, bold: true, color: C.gold, align: "left", valign: "middle", fontFace: "Cambria", margin: 0 });
s.addText("HIERARKI SUMBER HUKUM ISLAM", { x: 1.1, y: 0.1, w: 8.5, h: 0.9, fontSize: 22, bold: true, color: C.white, align: "left", valign: "middle", fontFace: "Cambria", margin: 0 });
// Pyramid tiers
const tiers = [
{ label: "AL-QUR'AN", sub: "Wahyu Allah • Qath'i al-Wurud", color: C.darkGreen, textColor: C.white, x: 3.5, y: 1.3, w: 3.0, h: 0.7 },
{ label: "HADITS / AS-SUNNAH", sub: "Penjelasan & penguat Al-Qur'an", color: C.midGreen, textColor: C.white, x: 2.8, y: 2.12, w: 4.4, h: 0.7 },
{ label: "IJMA'", sub: "Konsensus para mujtahid", color: C.gold, textColor: C.darkGreen, x: 2.1, y: 2.94, w: 5.8, h: 0.7 },
{ label: "QIYAS", sub: "Analogi berdasarkan 'illat", color: "A5D6A7", textColor: C.darkGreen, x: 1.3, y: 3.76, w: 7.4, h: 0.7 },
{ label: "SUMBER MUKHTALAF FรHร", sub: "Istihsan, Maslahah, Istishab, 'Urf...", color: C.lightGray, textColor: C.gray, x: 0.5, y: 4.58, w: 9.0, h: 0.7 },
];
tiers.forEach(t => {
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x: t.x, y: t.y, w: t.w, h: t.h,
fill: { color: t.color }, line: { color: t.color }, rectRadius: 0.04,
shadow: makeShadow(),
});
s.addText(t.label, { x: t.x, y: t.y, w: t.w, h: 0.38, fontSize: 12, bold: true, color: t.textColor, align: "center", valign: "bottom", fontFace: "Calibri", margin: 0 });
s.addText(t.sub, { x: t.x, y: t.y + 0.35, w: t.w, h: 0.32, fontSize: 10, color: t.textColor, align: "center", valign: "top", fontFace: "Calibri", margin: 0 });
});
// Arrow/label
s.addText("Kekuatan Dalil semakin tinggi →", {
x: 0.15, y: 1.4, w: 0.7, h: 3.5,
fontSize: 9, color: C.gray, align: "center", valign: "middle", italic: true,
fontFace: "Calibri", rotate: 270,
});
}
// ─────────────────────────────────────────────────────────────────────────────
// SLIDE 11 — KESIMPULAN
// ─────────────────────────────────────────────────────────────────────────────
{
const s = pres.addSlide();
s.background = { color: C.darkGreen };
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 0.08, fill: { color: C.gold }, line: { color: C.gold } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 5.545, w: 10, h: 0.08, fill: { color: C.gold }, line: { color: C.gold } });
s.addText("KESIMPULAN", {
x: 0.4, y: 0.15, w: 9.2, h: 0.75, fontSize: 28, bold: true, color: C.gold,
align: "center", valign: "middle", fontFace: "Cambria", margin: 0,
});
s.addShape(pres.shapes.RECTANGLE, { x: 3.5, y: 0.88, w: 3.0, h: 0.04, fill: { color: C.gold }, line: { color: C.gold } });
const points = [
"Ushul Fiqih adalah ilmu tentang kaidah-kaidah metodologis yang digunakan untuk mengistinbathkan hukum syar'i dari dalil-dalilnya.",
"Sebagai metode ijtihad, Ushul Fiqih menyediakan framework epistemologis, metodologis, dan normatif yang menjamin validitas dan konsistensi fatwa.",
"Sumber hukum Islam tersusun hierarkis: Al-Qur'an → Hadits → Ijma' → Qiyas → sumber mukhtalaf fรฎhรข, dengan derajat kehujjahan yang berbeda.",
"Pertanggungjawaban ilmiah terpenuhi melalui: validitas sanad, kejelasan dalil, dan kompetensi mujtahid yang memenuhi syarat.",
"Mempelajari Ushul Fiqih sangat penting untuk memahami bagaimana Islam memberikan jawaban atas masalah-masalah kontemporer secara ilmiah.",
];
points.forEach((p, i) => {
const y = 1.05 + i * 0.88;
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x: 0.4, y, w: 9.2, h: 0.78,
fill: { color: C.green, transparency: 60 }, line: { color: C.gold, width: 0.5 }, rectRadius: 0.06,
});
s.addShape(pres.shapes.OVAL, { x: 0.5, y: y + 0.14, w: 0.5, h: 0.5, fill: { color: C.gold }, line: { color: C.gold } });
s.addText(String(i + 1), { x: 0.5, y: y + 0.14, w: 0.5, h: 0.5, fontSize: 14, bold: true, color: C.darkGreen, align: "center", valign: "middle", fontFace: "Calibri", margin: 0 });
s.addText(p, { x: 1.12, y: y + 0.06, w: 8.3, h: 0.66, fontSize: 12, color: C.white, align: "left", valign: "middle", fontFace: "Calibri", margin: 0 });
});
}
// ─────────────────────────────────────────────────────────────────────────────
// SLIDE 12 — REFERENSI
// ─────────────────────────────────────────────────────────────────────────────
{
const s = pres.addSlide();
s.background = { color: C.offWhite };
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 1.1, fill: { color: C.darkGreen }, line: { color: C.darkGreen } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 1.1, w: 10, h: 0.06, fill: { color: C.gold }, line: { color: C.gold } });
s.addText("REFERENSI", { x: 0.3, y: 0.1, w: 9.4, h: 0.9, fontSize: 28, bold: true, color: C.white, align: "left", valign: "middle", fontFace: "Cambria", margin: 0 });
s.addShape(pres.shapes.ROUNDED_RECTANGLE, { x: 0.3, y: 1.25, w: 9.4, h: 3.9, fill: { color: C.white }, line: { color: C.lightGray, width: 0.5 }, rectRadius: 0.08, shadow: makeShadow() });
const refs = [
"Al-Amidi, Saif al-Din. Al-Ihkam fi Ushul al-Ahkam. Kairo: Dar al-Hadits, 2003.",
"Al-Ghazali, Abu Hamid. Al-Mustashfa min 'Ilm al-Ushul. Beirut: Dar al-Kutub al-'Ilmiyyah, 1993.",
"Al-Syatibi, Ibrahim. Al-Muwafaqat fi Ushul al-Syari'ah. Beirut: Dar al-Ma'rifah, 1975.",
"Wahbah al-Zuhaili. Ushul al-Fiqh al-Islami (2 Jilid). Damaskus: Dar al-Fikr, 1986.",
"Abdul Wahhab Khallaf. 'Ilm Ushul al-Fiqh. Kairo: Dar al-Hadits, 2003.",
"Amir Syarifuddin. Ushul Fiqh (2 Jilid). Jakarta: Logos Wacana Ilmu, 1997.",
"Satria Effendi M. Zein. Ushul Fiqh. Jakarta: Kencana, 2005.",
];
refs.forEach((ref, i) => {
const y = 1.38 + i * 0.5;
s.addText([
{ text: `[${i + 1}] `, options: { bold: true, fontSize: 11, color: C.darkGreen, fontFace: "Calibri" } },
{ text: ref, options: { fontSize: 11, color: C.dark, fontFace: "Calibri" } },
], { x: 0.45, y, w: 9.0, h: 0.44, valign: "middle", margin: 2 });
});
// Footer
s.addShape(pres.shapes.RECTANGLE, { x: 0.3, y: 5.1, w: 9.4, h: 0.04, fill: { color: C.lightGray }, line: { color: C.lightGray } });
s.addText("Erwin Pauji | Masailul Fiqhiyyah | Ushul Fiqih sebagai Metode Ijtihad", {
x: 0.3, y: 5.17, w: 9.4, h: 0.3, fontSize: 10, color: C.gray, align: "center", fontFace: "Calibri",
});
}
// ─────────────────────────────────────────────────────────────────────────────
// OUTPUT
// ─────────────────────────────────────────────────────────────────────────────
pres.writeFile({ fileName: "/home/claude/Masailul_Fiqhiyyah_Erwin_Pauji.pptx" })
.then(() => console.log("✅ PPT berhasil dibuat"))
.catch(err => { console.error("❌ Error:", err); process.exit(1); });
Komentar
Posting Komentar
Terimakasih telah memberikan komentarnya