markdown2notion
Advanced tools
| "use strict"; | ||
| var __importDefault = (this && this.__importDefault) || function (mod) { | ||
| return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
| }; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
@@ -6,2 +9,3 @@ exports.createPage = exports.markdownToNotion = void 0; | ||
| const readMD_1 = require("./readMD"); | ||
| const chalk_1 = __importDefault(require("chalk")); | ||
| // test用 | ||
@@ -42,10 +46,24 @@ // import * as dotenv from 'dotenv' | ||
| exports.markdownToNotion = markdownToNotion; | ||
| /** | ||
| * Handles the error and outputs an appropriate message to the console. | ||
| * | ||
| * @param error - The error to handle. | ||
| */ | ||
| function handleError(error) { | ||
| if (error instanceof Error) { | ||
| console.error('An error occurred:', error.message); | ||
| console.error(`${chalk_1.default.red('Error: ')} ${error.message}`); | ||
| } | ||
| else { | ||
| console.error('An unknown error occurred:', error); | ||
| console.error(`${chalk_1.default.red('Error: ')} An unknown error occurred:`, error); | ||
| } | ||
| } | ||
| /** | ||
| * Determines if the property has a title property. | ||
| * | ||
| * @param property - The property to check. | ||
| * @returns True if the property has a title property, otherwise false. | ||
| */ | ||
| function hasTitleProperty(property) { | ||
| return property.type === 'title' && Array.isArray(property.title); | ||
| } | ||
| async function getExistingPages(notion, databaseId) { | ||
@@ -61,8 +79,26 @@ const existingPages = await notion.databases.query({ | ||
| }); | ||
| // TODO: 上手く型定義できないのでanyにしている | ||
| // DB上のタイトルを取得し配列に格納 | ||
| const existingPageTitles = {}; | ||
| existingPages.results.forEach((page) => { | ||
| existingPageTitles[page.id] = page.properties.Title.title[0].text.content; | ||
| }); | ||
| for (const page of existingPages.results) { | ||
| if ((0, client_1.isFullPage)(page)) { | ||
| const titleProperty = page.properties.Title; | ||
| if (hasTitleProperty(titleProperty)) { | ||
| if (titleProperty.title.length >= 1) { | ||
| // タイトルが存在する場合はIDとタイトルを格納 | ||
| existingPageTitles[page.id] = titleProperty.title[0].text.content; | ||
| } | ||
| else { | ||
| // タイトルが存在しない場合は警告を出力し、アーカイブ処理を行う | ||
| const warningMessage = `Page with ID ${page.id} has an empty title. Archiving the page.`; | ||
| console.warn(`${chalk_1.default.yellow('warning: ')} ${warningMessage}`); | ||
| try { | ||
| await archivePage(notion, page.id); | ||
| } | ||
| catch (error) { | ||
| handleError(error); | ||
| } | ||
| } | ||
| } | ||
| } | ||
| } | ||
| return existingPageTitles; | ||
@@ -79,3 +115,3 @@ } | ||
| else { | ||
| throw new Error('page_id is not found'); | ||
| handleError(new Error('page_id is not found')); | ||
| } | ||
@@ -82,0 +118,0 @@ } |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"markdownToNotion.js","sourceRoot":"","sources":["../src/markdownToNotion.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"markdownToNotion.js","sourceRoot":"","sources":["../src/markdownToNotion.ts"],"names":[],"mappings":"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"} |
+2
-1
| { | ||
| "name": "markdown2notion", | ||
| "version": "1.1.1", | ||
| "version": "1.2.0", | ||
| "description": "Convert markdown files to notion database. The folder structure is also fully represented as tags in notion.", | ||
@@ -34,2 +34,3 @@ "author": "Rujuu", | ||
| "@tryfabric/martian": "^1.2.4", | ||
| "chalk": "4", | ||
| "gray-matter": "^4.0.3", | ||
@@ -36,0 +37,0 @@ "typescript": "*" |
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 2 instances in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 2 instances in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
36923
6.62%423
9.3%5
25%+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added