1.0.71 • Published 5 months ago

ricon-mansory v1.0.71

Weekly downloads
-
License
MIT
Repository
-
Last release
5 months ago

rikon-masonry

Описание

rikon-masonry - это React-приложение для создания и отображения заметок. Пользователи могут создавать заметки, каждая из которых содержит заголовок, дату создания, содержание и возможность выделения части содержания жирным шрифтом. Заметки отображаются в виде masonry layout на той же странице.

Установка

Для установки rikon-masonry в ваш проект выполните:

npm install rikon-masonry

Использование

React js

import React from 'react';
import MasonryToDo, { ToDoItem } from 'rikon-masonry';

// Пример данных
const initialData: ToDoItem[] = [
  {
    id: 1,
    title: 'Заметка 1',
    content: 'Содержание заметки 1'
    createdAt: '27 окт. 2023 г., 14:34:00',
  },
  // Добавьте другие заметки по аналогии
];

const App: React.FC = () => {
  return (
    <div>
      <MasonryToDo initial={initialData} />
    </div>
  );
};

export default App;

React ts

import React, { FC } from "react";
import MasonryToDo, { MasonryItemProps } from "rikon-masonry";

const App: FC = () => {
  const initialData: MasonryItemProps[] = [
    {
      id: 1,
      title: "Заметка 1",
      content: "Содержание заметки 1",
      createdAt: "27 окт. 2023 г., 14:34:00",
    },
    // Добавьте другие заметки по аналогии
  ];

  const handleListChange = (updatedList: MasonryItemProps[]) => {
    // Обработка изменений списка заметок
    console.log("Updated List:", updatedList);
  };

  return (
    <div>
      <MasonryToDo initial={initialData} onListChange={handleListChange} />
    </div>
  );
};

export default App;

Props

  • initial - начальный массив объектов, (по умолчанию: undefined)

  • brandColor - Основной цвет, (по умолчанию: "#175ef7")

  • onListChange - Коллбек, выполнится при каждом обновлении списка (updatedList: MasonryItemProps[]) => void, (по умолчанию: undefined)

  • onItemClick - Коллбек, выполнится при нажатии на блок задачи (item: MasonryItemProps) => void, (по умолчанию: undefined)

Компоненты

interface MasonryItemProps {
  id: number;
  title: string;
  createdAt: string;
  content: string;
}
  • MasonryToDo - Основной компонент, включает все остальные компоненты приложения
interface MasonryToDoProps {
  initial?: MasonryItemProps[];
  brandColor?: string;
  onListChange?: (updatedList: MasonryItemProps[]) => void;
  onItemClick?: (item: MasonryItemProps) => void;
}
  • ItemToDo - Компонент, для отрисовки одного элемента в списке
interface ItemToDoProps {
  item: MasonryItemProps;
  onItemClick?: (item: MasonryItemProps) => void;
  onDeleteItem: (id: number) => void;
}
  • NewToDoForm - Компонент формы для создания записи
interface NewToDoFormProps {
  onAddItem: (newItem: Partial<MasonryItemProps>) => void;
}
  • RawHTML - Компонент, для отрисовки строки, в которой есть теги HTML
interface RawHTMLProps {
  dirtyHTML: string;
}

Пример верстки

Вспомогательные функции

  • calculateFormattedDateNow - функция возвращает текущую дату и время в формате «27 окт. 2023 г., 14:34:00»
import { calculateFormattedDateNow } from "rikon-masonry";
console.log(calculateFormattedDateNow()); // 27 окт. 2023 г., 14:34:00

Стек

React, typescript, webpack, DOMpurify, SCSS

Лицензия

MIT Лицензия. (c) Pete Olshe 2023.

1.0.71

5 months ago

1.0.70

5 months ago

1.0.69

5 months ago

1.0.68

5 months ago

1.0.67

5 months ago

1.0.66

5 months ago

1.0.65

5 months ago

1.0.64

5 months ago

1.0.63

5 months ago

1.0.62

5 months ago

1.0.61

5 months ago

1.0.60

5 months ago

1.0.59

5 months ago

1.0.58

5 months ago

1.0.57

5 months ago

1.0.56

5 months ago

1.0.55

5 months ago

1.0.54

5 months ago

1.0.53

5 months ago

1.0.52

5 months ago

1.0.51

5 months ago

1.0.50

5 months ago

1.0.49

5 months ago

1.0.48

5 months ago

1.0.47

5 months ago

1.0.46

5 months ago

1.0.45

5 months ago

1.0.44

5 months ago

1.0.43

6 months ago

1.0.42

6 months ago

1.0.41

6 months ago

1.0.40

6 months ago

1.0.39

6 months ago

1.0.38

6 months ago

1.0.37

6 months ago

1.0.36

6 months ago

1.0.35

6 months ago

1.0.34

6 months ago

1.0.33

6 months ago

1.0.32

6 months ago

1.0.31

6 months ago

1.0.30

6 months ago

1.0.29

6 months ago

1.0.28

6 months ago

1.0.27

6 months ago

1.0.26

6 months ago

1.0.25

6 months ago

1.0.24

6 months ago

1.0.23

6 months ago

1.0.22

6 months ago

1.0.21

6 months ago

1.0.20

6 months ago

1.0.19

6 months ago

1.0.18

6 months ago

1.0.17

6 months ago

1.0.16

6 months ago

1.0.15

6 months ago

1.0.14

6 months ago

1.0.13

6 months ago

1.0.12

6 months ago

1.0.11

6 months ago

1.0.10

6 months ago

1.0.9

6 months ago

1.0.8

6 months ago

1.0.7

6 months ago

1.0.6

6 months ago

1.0.5

6 months ago

1.0.4

6 months ago

1.0.3

6 months ago

1.0.2

6 months ago

1.0.1

6 months ago

1.0.0

6 months ago