403 lines
12 KiB
TypeScript
403 lines
12 KiB
TypeScript
export const Note_Storage_Key = "note_storage_data";
|
||
export const Content_Storage_Key = "inke__content";
|
||
export const Content_Guide_Storage_Key = "inke__guide__content";
|
||
export const Content_Public_Storage_Key = "inke__public__content";
|
||
export const Default_Debounce_Duration = 750;
|
||
|
||
interface Plans {
|
||
ai_generate_day: number;
|
||
ai_generate_chars: number;
|
||
note_upload_count: number;
|
||
image_upload_size: number;
|
||
ai_bot_history_length: number;
|
||
space_user_count: number;
|
||
pay: number;
|
||
}
|
||
|
||
export const Account_Plans: Plans[] = [
|
||
{
|
||
// sign for free
|
||
ai_generate_day: 100,
|
||
ai_generate_chars: 300,
|
||
ai_bot_history_length: 10,
|
||
note_upload_count: 20,
|
||
image_upload_size: 1, // mb
|
||
space_user_count: 10,
|
||
pay: 0,
|
||
},
|
||
{
|
||
// basic
|
||
ai_generate_day: 300,
|
||
ai_generate_chars: 300,
|
||
ai_bot_history_length: 32,
|
||
note_upload_count: 10000,
|
||
image_upload_size: 1,
|
||
space_user_count: 10,
|
||
pay: 0,
|
||
},
|
||
{
|
||
// pro
|
||
ai_generate_day: 1000,
|
||
ai_generate_chars: 1000,
|
||
ai_bot_history_length: 100,
|
||
note_upload_count: 10000,
|
||
image_upload_size: 10,
|
||
space_user_count: 10,
|
||
pay: 0,
|
||
},
|
||
{
|
||
ai_generate_day: 10,
|
||
ai_generate_chars: 10,
|
||
ai_bot_history_length: 10,
|
||
note_upload_count: 0,
|
||
image_upload_size: 1,
|
||
space_user_count: 10,
|
||
pay: 0,
|
||
},
|
||
{
|
||
ai_generate_day: 10,
|
||
ai_generate_chars: 10,
|
||
ai_bot_history_length: 10,
|
||
note_upload_count: 0,
|
||
image_upload_size: 1,
|
||
space_user_count: 10,
|
||
pay: 0,
|
||
},
|
||
{
|
||
ai_generate_day: 50,
|
||
ai_generate_chars: 200,
|
||
ai_bot_history_length: 10,
|
||
note_upload_count: 0,
|
||
image_upload_size: 1,
|
||
space_user_count: 10,
|
||
pay: 0,
|
||
},
|
||
];
|
||
|
||
export const defaultEditorContent = {
|
||
type: "doc",
|
||
content: [{ type: "paragraph" }],
|
||
};
|
||
|
||
export const defaultEditorGuideContent = {
|
||
type: "doc",
|
||
content: [
|
||
{
|
||
type: "heading",
|
||
attrs: { level: 2 },
|
||
content: [
|
||
{ type: "text", marks: [{ type: "bold" }], text: "🎉" },
|
||
{ type: "text", text: " " },
|
||
{
|
||
type: "text",
|
||
marks: [{ type: "bold" }],
|
||
text: "Introducing Inke",
|
||
},
|
||
],
|
||
},
|
||
{
|
||
type: "paragraph",
|
||
content: [
|
||
{
|
||
type: "text",
|
||
marks: [
|
||
{
|
||
type: "link",
|
||
attrs: {
|
||
href: "https://github.com/yesmore/inke",
|
||
target: "_blank",
|
||
rel: "noopener noreferrer nofollow",
|
||
class:
|
||
"novel-text-stone-400 novel-underline novel-underline-offset-[3px] hover:novel-text-stone-600 novel-transition-colors novel-cursor-pointer text-stone-400 underline underline-offset-[3px] hover:text-stone-600 transition-colors cursor-pointer",
|
||
},
|
||
},
|
||
],
|
||
text: "Inke",
|
||
},
|
||
{
|
||
type: "text",
|
||
text: " is a simple-style editor with AI-powered autocompletion. With a clean and minimalist design, Inke offers a wide range of features to enhance your writing process.",
|
||
},
|
||
],
|
||
},
|
||
{ type: "paragraph", content: [{ type: "text", text: "Key Features:" }] },
|
||
{
|
||
type: "orderedList",
|
||
attrs: { tight: true, start: 1 },
|
||
content: [
|
||
{
|
||
type: "listItem",
|
||
content: [
|
||
{
|
||
type: "paragraph",
|
||
content: [
|
||
{ type: "text", text: "😗 " },
|
||
{
|
||
type: "text",
|
||
marks: [{ type: "bold" }, { type: "italic" }],
|
||
text: "WYSIWYG Editing ",
|
||
},
|
||
{
|
||
type: "text",
|
||
text: "like markdown: Inke ensures that what you see is exactly what you get. Say goodbye to complicated formatting issues and enjoy a hassle-free editing experience. Inke offers full support for Markdown syntax with markdown shortcuts.",
|
||
},
|
||
],
|
||
},
|
||
],
|
||
},
|
||
{
|
||
type: "listItem",
|
||
content: [
|
||
{
|
||
type: "paragraph",
|
||
content: [
|
||
{ type: "text", text: "😄 " },
|
||
{
|
||
type: "text",
|
||
marks: [{ type: "bold" }, { type: "italic" }],
|
||
text: "Efficient Shortcut Inputs",
|
||
},
|
||
{
|
||
type: "text",
|
||
text: ": Inke understands the importance of speed and efficiency, so it support slash menu & bubble menu.",
|
||
},
|
||
],
|
||
},
|
||
],
|
||
},
|
||
{
|
||
type: "listItem",
|
||
content: [
|
||
{
|
||
type: "paragraph",
|
||
content: [
|
||
{ type: "text", text: "😍 " },
|
||
{
|
||
type: "text",
|
||
marks: [{ type: "bold" }, { type: "italic" }],
|
||
text: "AI-powered Text Autocomplete",
|
||
},
|
||
{
|
||
type: "text",
|
||
text: ": Boost your productivity with Inke's AI-powered autocomplete feature. Inke intelligently suggests completions for your text, making writing even faster and more efficient. (type ",
|
||
},
|
||
{ type: "text", marks: [{ type: "code" }], text: "??" },
|
||
{
|
||
type: "text",
|
||
text: " to activate, or select from slash menu)",
|
||
},
|
||
],
|
||
},
|
||
],
|
||
},
|
||
{
|
||
type: "listItem",
|
||
content: [
|
||
{
|
||
type: "paragraph",
|
||
content: [
|
||
{ type: "text", text: "🥰 " },
|
||
{
|
||
type: "text",
|
||
marks: [{ type: "bold" }, { type: "italic" }],
|
||
text: "Local Data Storage",
|
||
},
|
||
{
|
||
type: "text",
|
||
text: ": Rest easy knowing that your data is safe and secure. Inke saves all your notes and documents locally, ensuring your sensitive information remains private.",
|
||
},
|
||
],
|
||
},
|
||
],
|
||
},
|
||
{
|
||
type: "listItem",
|
||
content: [
|
||
{
|
||
type: "paragraph",
|
||
content: [
|
||
{ type: "text", text: "🥳 " },
|
||
{
|
||
type: "text",
|
||
marks: [{ type: "bold" }, { type: "italic" }],
|
||
text: "Image uploads",
|
||
},
|
||
{
|
||
type: "text",
|
||
text: ": drag & drop / copy & paste, or select from slash menu.",
|
||
},
|
||
],
|
||
},
|
||
],
|
||
},
|
||
],
|
||
},
|
||
{
|
||
type: "paragraph",
|
||
content: [{ type: "text", text: "Upcoming features:" }],
|
||
},
|
||
{
|
||
type: "taskList",
|
||
content: [
|
||
{
|
||
type: "taskItem",
|
||
attrs: { checked: true },
|
||
content: [
|
||
{
|
||
type: "paragraph",
|
||
content: [{ type: "text", text: "Cloud storage notes" }],
|
||
},
|
||
],
|
||
},
|
||
{
|
||
type: "taskItem",
|
||
attrs: { checked: true },
|
||
content: [
|
||
{
|
||
type: "paragraph",
|
||
content: [
|
||
{
|
||
type: "text",
|
||
text: "Export notes as images",
|
||
},
|
||
],
|
||
},
|
||
],
|
||
},
|
||
{
|
||
type: "taskItem",
|
||
attrs: { checked: true },
|
||
content: [
|
||
{
|
||
type: "paragraph",
|
||
content: [
|
||
{
|
||
type: "text",
|
||
text: "Export notes to a local file",
|
||
},
|
||
],
|
||
},
|
||
],
|
||
},
|
||
],
|
||
},
|
||
{
|
||
type: "heading",
|
||
attrs: { level: 2 },
|
||
content: [
|
||
{ type: "text", text: "🎊 " },
|
||
{ type: "text", marks: [{ type: "bold" }], text: "Try Inke here" },
|
||
],
|
||
},
|
||
{
|
||
type: "paragraph",
|
||
content: [
|
||
{ type: "text", text: "Now start a new line and type " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "/" },
|
||
{ type: "text", text: ", then you will see a " },
|
||
{
|
||
type: "text",
|
||
marks: [
|
||
{ type: "underline" },
|
||
{ type: "textStyle", attrs: { color: "#2563EB" } },
|
||
],
|
||
text: "menu",
|
||
},
|
||
{ type: "text", text: " pop up, press the " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "↑" },
|
||
{ type: "text", text: " or " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "↓" },
|
||
{ type: "text", text: " to move the cursor and press " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "Enter" },
|
||
{ type: "text", text: " to select it." },
|
||
],
|
||
},
|
||
{
|
||
type: "paragraph",
|
||
content: [
|
||
{
|
||
type: "text",
|
||
marks: [{ type: "underline" }],
|
||
text: "Markdown shortcuts",
|
||
},
|
||
{
|
||
type: "text",
|
||
text: " make it easy to format the text while typing.",
|
||
},
|
||
],
|
||
},
|
||
{
|
||
type: "paragraph",
|
||
content: [
|
||
{ type: "text", text: "To test that, start a new line and type " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "#" },
|
||
{ type: "text", text: " followed by a space to get a heading. Try " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "#" },
|
||
{ type: "text", text: ", " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "##" },
|
||
{ type: "text", text: ", " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "###" },
|
||
{ type: "text", text: ", " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "####" },
|
||
{ type: "text", text: ", " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "#####" },
|
||
{ type: "text", text: ", " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "######" },
|
||
{ type: "text", text: " for different levels." },
|
||
],
|
||
},
|
||
{
|
||
type: "paragraph",
|
||
content: [
|
||
{ type: "text", text: "Try " },
|
||
{ type: "text", marks: [{ type: "code" }], text: ">" },
|
||
{ type: "text", text: " for blockquotes, " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "*" },
|
||
{ type: "text", text: ", " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "-" },
|
||
{ type: "text", text: " or " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "+" },
|
||
{ type: "text", text: " for bullet lists, or " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "`foobar`" },
|
||
{ type: "text", text: " to highlight code, " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "~~tildes~~" },
|
||
{ type: "text", text: " to strike text, or " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "==equal signs==" },
|
||
{ type: "text", text: " to highlight text." },
|
||
],
|
||
},
|
||
{
|
||
type: "paragraph",
|
||
content: [
|
||
{
|
||
type: "text",
|
||
text: "You can overwrite existing input rules or add your own to nodes, marks and extensions.",
|
||
},
|
||
],
|
||
},
|
||
{
|
||
type: "paragraph",
|
||
content: [
|
||
{ type: "text", text: "For example, we added the " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "Typography" },
|
||
{ type: "text", text: " extension here. Try typing " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "(c)" },
|
||
{
|
||
type: "text",
|
||
text: " to see how it’s converted to a proper © character. You can also try ",
|
||
},
|
||
{ type: "text", marks: [{ type: "code" }], text: "->" },
|
||
{ type: "text", text: ", " },
|
||
{ type: "text", marks: [{ type: "code" }], text: ">>" },
|
||
{ type: "text", text: ", " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "1/2" },
|
||
{ type: "text", text: ", " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "!=" },
|
||
{ type: "text", text: ", or " },
|
||
{ type: "text", marks: [{ type: "code" }], text: "--" },
|
||
{ type: "text", text: "." },
|
||
],
|
||
},
|
||
],
|
||
};
|