UNPKG

l7note

Version:

Access your notion notes quick

107 lines (106 loc) 4.02 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.addList = void 0; const client_1 = require("@notionhq/client"); const chalk_1 = __importDefault(require("chalk")); const process_1 = require("process"); const prompts_1 = __importDefault(require("prompts")); const getSettingValueByName_js_1 = require("../helper/getSettingValueByName.js"); const setup_js_1 = require("../setup.js"); const getDateString = () => { const date = new Date(); let dateStr = ('00' + (date.getMonth() + 1)).slice(-2) + '/' + ('00' + date.getDate()).slice(-2) + '/' + date.getFullYear() + ' ' + ('00' + date.getHours()).slice(-2) + ':' + ('00' + date.getMinutes()).slice(-2) + ':' + ('00' + date.getSeconds()).slice(-2); return dateStr; }; const addQuestions = [ { type: 'text', name: 'title', message: 'Title of note', initial: 'Note from ' + getDateString(), }, { type: 'text', name: 'text', message: 'Text of note', }, { type: 'text', name: 'tags', message: 'Tags of note', hint: 'Seperate tags with spaces', }, ]; const addList = () => __awaiter(void 0, void 0, void 0, function* () { var _a; const notion = new client_1.Client({ auth: setup_js_1.globalConfig.token }); let noteData = { title: '', text: '', tags: '' }; if (setup_js_1.globalConfig.optionalArgs.length == 0) { noteData = (yield (0, prompts_1.default)(addQuestions)); } else { noteData.title = (0, getSettingValueByName_js_1.getSettingValueByName)('-h'); noteData.text = (0, getSettingValueByName_js_1.getSettingValueByName)('-d'); noteData.tags = (0, getSettingValueByName_js_1.getSettingValueByName)('-t'); } const databaseId = (_a = setup_js_1.globalConfig.dbId) !== null && _a !== void 0 ? _a : ''; if (!noteData.title) { console.log(chalk_1.default.red('There was an error creating your note. Sorry')); (0, process_1.exit)(1); } let reqBody = { parent: { database_id: databaseId, }, properties: { Title: { title: [{ text: { content: noteData.title } }] }, }, }; if (noteData.text) { reqBody.properties.Text = { rich_text: [{ text: { content: noteData.text } }], }; } if (noteData.tags) { reqBody.properties.Tags = { multi_select: noteData.tags.split(' ').map(tag => { return { name: tag }; }), }; } try { const response = yield notion.pages.create(reqBody); if (process.env.platform != 'android') { const ncp = require('copy-paste'); ncp.copy(response.url); } console.log(chalk_1.default.green(response.url)); } catch (err) { console.log(chalk_1.default.red('There was an error creating your note. Sorry')); (0, process_1.exit)(1); } }); exports.addList = addList;