slack-blocks-to-jsx 0.1.7 → 0.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +102 -112
- package/dist/index.d.ts +102 -112
- package/dist/index.js +251 -133
- package/dist/index.mjs +254 -133
- package/dist/style.css +1 -1
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
|
|
3
|
+
type Element = ButtonElement | CheckboxesElement | DatePickerElement | DateTimePickerElement | EmailInputElement | ImageElement | MultiStaticSelectElement | MultiExternalSelectElement | MultiUsersSelectElement | MultiConversationsSelectElement | MultiChannelsSelectElement | NumberInputElement | OverflowMenuElement | PlainTextInputElement | RadioButtonsElement | StaticSelectElement | ExternalSelectElement | UsersSelectElement | ConversationsSelectElement | ChannelsSelectElement | TimePickerElement | UrlTextInputElement | RichTextBlockElement;
|
|
2
4
|
type ButtonElement = {
|
|
3
5
|
type: "button";
|
|
4
6
|
/**
|
|
@@ -697,102 +699,6 @@ type FilterObject = {
|
|
|
697
699
|
exclude_bot_users?: boolean;
|
|
698
700
|
};
|
|
699
701
|
|
|
700
|
-
type RichTextList = {
|
|
701
|
-
type: "rich_text_list";
|
|
702
|
-
style: "bullet" | "ordered";
|
|
703
|
-
/**
|
|
704
|
-
* The number of spaces to indent this block. It must be a number between 0 and 8.
|
|
705
|
-
*/
|
|
706
|
-
indent?: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8;
|
|
707
|
-
offset?: number;
|
|
708
|
-
/**
|
|
709
|
-
* 0 or 1 (default 0) - if 1, a border is drawn on the left side of the block.
|
|
710
|
-
*/
|
|
711
|
-
border?: 0 | 1;
|
|
712
|
-
elements: RichTextSection[];
|
|
713
|
-
};
|
|
714
|
-
type RichTextPreformatted = {
|
|
715
|
-
type: "rich_text_preformatted";
|
|
716
|
-
elements: AnyRichTextSectionElement[];
|
|
717
|
-
/**
|
|
718
|
-
* 0 or 1 (default 0) - if 1, a border is drawn on the left side of the block.
|
|
719
|
-
*/
|
|
720
|
-
border?: 0 | 1;
|
|
721
|
-
};
|
|
722
|
-
type RichTextQuote = {
|
|
723
|
-
type: "rich_text_quote";
|
|
724
|
-
elements: AnyRichTextSectionElement[];
|
|
725
|
-
/**
|
|
726
|
-
* 0 or 1 (default 0) - if 1, a border is drawn on the left side of the block.
|
|
727
|
-
*/
|
|
728
|
-
border?: 0 | 1;
|
|
729
|
-
};
|
|
730
|
-
type RichTextSection = {
|
|
731
|
-
type: "rich_text_section";
|
|
732
|
-
elements: AnyRichTextSectionElement[];
|
|
733
|
-
};
|
|
734
|
-
type AnyRichTextBlockElement = RichTextList | RichTextPreformatted | RichTextQuote | RichTextSection;
|
|
735
|
-
type AnyRichTextSectionElement = RichTextSectionText | RichTextSectionChannel | RichTextSectionUser | RichTextSectionEmoji | RichTextSectionLink | RichTextSectionTeam | RichTextSectionUsergroup | RichTextSectionDate | RichTextSectionBroadcast | RichTextSectionColor;
|
|
736
|
-
interface RichTextSectionElement {
|
|
737
|
-
type: "text" | "channel" | "user" | "emoji" | "link" | "team" | "usergroup" | "date" | "broadcast" | "color";
|
|
738
|
-
style?: RichTextSectionElementStyle;
|
|
739
|
-
}
|
|
740
|
-
interface RichTextSectionText extends RichTextSectionElement {
|
|
741
|
-
type: "text";
|
|
742
|
-
text: string;
|
|
743
|
-
style?: RichTextSectionElementStyleWithCode;
|
|
744
|
-
}
|
|
745
|
-
interface RichTextSectionChannel extends RichTextSectionElement {
|
|
746
|
-
type: "channel";
|
|
747
|
-
channel_id: string;
|
|
748
|
-
}
|
|
749
|
-
interface RichTextSectionUser extends RichTextSectionElement {
|
|
750
|
-
type: "user";
|
|
751
|
-
user_id: string;
|
|
752
|
-
}
|
|
753
|
-
interface RichTextSectionEmoji extends RichTextSectionElement {
|
|
754
|
-
type: "emoji";
|
|
755
|
-
name: string;
|
|
756
|
-
skin_tone?: number;
|
|
757
|
-
unicode?: string;
|
|
758
|
-
}
|
|
759
|
-
interface RichTextSectionLink extends RichTextSectionElement {
|
|
760
|
-
type: "link";
|
|
761
|
-
url: string;
|
|
762
|
-
text: string;
|
|
763
|
-
style?: RichTextSectionElementStyleWithCode;
|
|
764
|
-
}
|
|
765
|
-
interface RichTextSectionTeam extends RichTextSectionElement {
|
|
766
|
-
type: "team";
|
|
767
|
-
team_id: string;
|
|
768
|
-
}
|
|
769
|
-
interface RichTextSectionUsergroup extends RichTextSectionElement {
|
|
770
|
-
type: "usergroup";
|
|
771
|
-
usergroup_id: string;
|
|
772
|
-
}
|
|
773
|
-
interface RichTextSectionDate extends RichTextSectionElement {
|
|
774
|
-
type: "date";
|
|
775
|
-
timestamp: number;
|
|
776
|
-
format: string;
|
|
777
|
-
style?: RichTextSectionElementStyleWithCode;
|
|
778
|
-
}
|
|
779
|
-
interface RichTextSectionBroadcast extends RichTextSectionElement {
|
|
780
|
-
type: "broadcast";
|
|
781
|
-
range: "channel" | "here" | "everyone";
|
|
782
|
-
}
|
|
783
|
-
interface RichTextSectionColor extends RichTextSectionElement {
|
|
784
|
-
type: "color";
|
|
785
|
-
value: string;
|
|
786
|
-
}
|
|
787
|
-
interface RichTextSectionElementStyle {
|
|
788
|
-
bold?: boolean;
|
|
789
|
-
italic?: boolean;
|
|
790
|
-
strike?: boolean;
|
|
791
|
-
}
|
|
792
|
-
interface RichTextSectionElementStyleWithCode extends RichTextSectionElementStyle {
|
|
793
|
-
code?: boolean;
|
|
794
|
-
}
|
|
795
|
-
|
|
796
702
|
type Block = ActionsBlock | ContextBlock | DividerBlock | FileBlock | HeaderBlock | ImageBlock | InputBlock | SectionBlock | VideoBlock | RichTextBlock;
|
|
797
703
|
type ActionsBlock = {
|
|
798
704
|
/**
|
|
@@ -1077,7 +983,94 @@ type RichTextBlock = {
|
|
|
1077
983
|
/**
|
|
1078
984
|
* An array of rich text objects - rich_text_section, rich_text_list, rich_text_preformatted, and rich_text_quote. See your specific desired element below for more details.
|
|
1079
985
|
*/
|
|
1080
|
-
elements:
|
|
986
|
+
elements: RichTextBlockElement[];
|
|
987
|
+
};
|
|
988
|
+
|
|
989
|
+
type RichTextBlockSubElement = RichTextList | RichTextPreformatted | RichTextQuote | RichTextSection;
|
|
990
|
+
type RichTextList = {
|
|
991
|
+
type: "rich_text_list";
|
|
992
|
+
style: "bullet" | "ordered";
|
|
993
|
+
/**
|
|
994
|
+
* The number of spaces to indent this block. It must be a number between 0 and 8.
|
|
995
|
+
*/
|
|
996
|
+
indent?: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8;
|
|
997
|
+
offset?: number;
|
|
998
|
+
/**
|
|
999
|
+
* 0 or 1 (default 0) - if 1, a border is drawn on the left side of the block.
|
|
1000
|
+
*/
|
|
1001
|
+
border?: 0 | 1;
|
|
1002
|
+
elements: RichTextSection[];
|
|
1003
|
+
};
|
|
1004
|
+
type RichTextPreformatted = {
|
|
1005
|
+
type: "rich_text_preformatted";
|
|
1006
|
+
elements: RichTextSectionElement[];
|
|
1007
|
+
/**
|
|
1008
|
+
* 0 or 1 (default 0) - if 1, a border is drawn on the left side of the block.
|
|
1009
|
+
*/
|
|
1010
|
+
border?: 0 | 1;
|
|
1011
|
+
};
|
|
1012
|
+
type RichTextQuote = {
|
|
1013
|
+
type: "rich_text_quote";
|
|
1014
|
+
elements: RichTextSectionElement[];
|
|
1015
|
+
/**
|
|
1016
|
+
* 0 or 1 (default 0) - if 1, a border is drawn on the left side of the block.
|
|
1017
|
+
*/
|
|
1018
|
+
border?: 0 | 1;
|
|
1019
|
+
};
|
|
1020
|
+
type RichTextSection = {
|
|
1021
|
+
type: "rich_text_section";
|
|
1022
|
+
elements: RichTextSectionElement[];
|
|
1023
|
+
};
|
|
1024
|
+
type RichTextBlockElement = RichTextList | RichTextPreformatted | RichTextQuote | RichTextSection;
|
|
1025
|
+
type RichTextSectionElement = RichTextSectionText | RichTextSectionChannel | RichTextSectionUser | RichTextSectionEmoji | RichTextSectionLink | RichTextSectionUsergroup | RichTextSectionBroadcast;
|
|
1026
|
+
type RichTextSectionText = {
|
|
1027
|
+
type: "text";
|
|
1028
|
+
text: string;
|
|
1029
|
+
style?: RichTextSectionElementStyleCode;
|
|
1030
|
+
};
|
|
1031
|
+
type RichTextSectionChannel = {
|
|
1032
|
+
type: "channel";
|
|
1033
|
+
channel_id: string;
|
|
1034
|
+
style?: RichTextSectionElementStyle;
|
|
1035
|
+
};
|
|
1036
|
+
type RichTextSectionUser = {
|
|
1037
|
+
type: "user";
|
|
1038
|
+
user_id: string;
|
|
1039
|
+
style?: RichTextSectionElementStyle;
|
|
1040
|
+
};
|
|
1041
|
+
type RichTextSectionEmoji = {
|
|
1042
|
+
type: "emoji";
|
|
1043
|
+
name: string;
|
|
1044
|
+
};
|
|
1045
|
+
type RichTextSectionLink = {
|
|
1046
|
+
type: "link";
|
|
1047
|
+
url: string;
|
|
1048
|
+
text: string;
|
|
1049
|
+
style?: RichTextSectionElementStyleCode;
|
|
1050
|
+
};
|
|
1051
|
+
type RichTextSectionUsergroup = {
|
|
1052
|
+
type: "usergroup";
|
|
1053
|
+
usergroup_id: string;
|
|
1054
|
+
style?: RichTextSectionElementStyle;
|
|
1055
|
+
};
|
|
1056
|
+
type RichTextSectionBroadcast = {
|
|
1057
|
+
type: "broadcast";
|
|
1058
|
+
range: "channel" | "here" | "everyone";
|
|
1059
|
+
style?: RichTextSectionElementStyleCode;
|
|
1060
|
+
};
|
|
1061
|
+
type RichTextSectionElementStyle = {
|
|
1062
|
+
bold?: boolean;
|
|
1063
|
+
italic?: boolean;
|
|
1064
|
+
strike?: boolean;
|
|
1065
|
+
highlight?: boolean;
|
|
1066
|
+
client_highlight?: boolean;
|
|
1067
|
+
unlink?: boolean;
|
|
1068
|
+
};
|
|
1069
|
+
type RichTextSectionElementStyleCode = {
|
|
1070
|
+
code?: boolean;
|
|
1071
|
+
bold?: boolean;
|
|
1072
|
+
italic?: boolean;
|
|
1073
|
+
strike?: boolean;
|
|
1081
1074
|
};
|
|
1082
1075
|
|
|
1083
1076
|
type User = {
|
|
@@ -1089,28 +1082,24 @@ type Channel = {
|
|
|
1089
1082
|
name: string;
|
|
1090
1083
|
};
|
|
1091
1084
|
type Hooks = {
|
|
1092
|
-
user?: (data: User) =>
|
|
1093
|
-
channel?: (data: Channel) =>
|
|
1094
|
-
atChannel?: (
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
usergroup?: (
|
|
1098
|
-
|
|
1099
|
-
name: string;
|
|
1100
|
-
}) => string;
|
|
1101
|
-
atHere?: (data: {
|
|
1102
|
-
name: string;
|
|
1103
|
-
}) => string;
|
|
1085
|
+
user?: (data: User) => ReactNode;
|
|
1086
|
+
channel?: (data: Channel) => ReactNode;
|
|
1087
|
+
atChannel?: () => ReactNode;
|
|
1088
|
+
atEveryone?: () => ReactNode;
|
|
1089
|
+
atHere?: () => ReactNode;
|
|
1090
|
+
usergroup?: (id: string) => ReactNode;
|
|
1091
|
+
emoji?: (emoji_text: string) => ReactNode;
|
|
1104
1092
|
date?: (data: {
|
|
1105
1093
|
timestamp: string;
|
|
1106
1094
|
format: string;
|
|
1107
1095
|
link?: string | undefined;
|
|
1108
1096
|
fallback: string;
|
|
1109
|
-
}) =>
|
|
1097
|
+
}) => ReactNode;
|
|
1110
1098
|
};
|
|
1111
1099
|
type Data = {
|
|
1112
1100
|
users: User[];
|
|
1113
1101
|
channels: Channel[];
|
|
1102
|
+
user_groups: Channel[];
|
|
1114
1103
|
hooks: Hooks;
|
|
1115
1104
|
setUsers: (users: User[]) => void;
|
|
1116
1105
|
setChannels: (channels: Channel[]) => void;
|
|
@@ -1137,9 +1126,10 @@ type Props = {
|
|
|
1137
1126
|
data?: {
|
|
1138
1127
|
users?: GlobalStore["users"];
|
|
1139
1128
|
channels?: GlobalStore["channels"];
|
|
1129
|
+
user_groups?: GlobalStore["user_groups"];
|
|
1140
1130
|
};
|
|
1141
1131
|
hooks?: GlobalStore["hooks"];
|
|
1142
1132
|
};
|
|
1143
1133
|
declare const Message: (props: Props) => JSX.Element;
|
|
1144
1134
|
|
|
1145
|
-
export { ActionsBlock, Block, ButtonElement, ChannelsSelectElement, CheckboxesElement, ConfirmDialogObject, ContextBlock, ConversationsSelectElement, DatePickerElement, DateTimePickerElement, DispatchActionConfigObject, DividerBlock, Element, EmailInputElement, ExternalSelectElement, FileBlock, FilterObject, HeaderBlock, ImageBlock, ImageElement, InputBlock, Message, MultiChannelsSelectElement, MultiConversationsSelectElement, MultiExternalSelectElement, MultiStaticSelectElement, MultiUsersSelectElement, NumberInputElement, OptionGroupObject, OptionObject, OptionObjectWithoutUrl, OverflowMenuElement, PlainTextInputElement, RadioButtonsElement, RichTextBlock, SectionBlock, StaticSelectElement, Style, TextObject, TextObjectTextType, TimePickerElement, UrlTextInputElement, UsersSelectElement, VideoBlock };
|
|
1135
|
+
export { ActionsBlock, Block, ButtonElement, ChannelsSelectElement, CheckboxesElement, ConfirmDialogObject, ContextBlock, ConversationsSelectElement, DatePickerElement, DateTimePickerElement, DispatchActionConfigObject, DividerBlock, Element, EmailInputElement, ExternalSelectElement, FileBlock, FilterObject, HeaderBlock, ImageBlock, ImageElement, InputBlock, Message, MultiChannelsSelectElement, MultiConversationsSelectElement, MultiExternalSelectElement, MultiStaticSelectElement, MultiUsersSelectElement, NumberInputElement, OptionGroupObject, OptionObject, OptionObjectWithoutUrl, OverflowMenuElement, PlainTextInputElement, RadioButtonsElement, RichTextBlock, RichTextBlockElement, RichTextBlockSubElement, RichTextList, RichTextPreformatted, RichTextQuote, RichTextSection, RichTextSectionBroadcast, RichTextSectionChannel, RichTextSectionElement, RichTextSectionElementStyle, RichTextSectionElementStyleCode, RichTextSectionEmoji, RichTextSectionLink, RichTextSectionText, RichTextSectionUser, RichTextSectionUsergroup, SectionBlock, StaticSelectElement, Style, TextObject, TextObjectTextType, TimePickerElement, UrlTextInputElement, UsersSelectElement, VideoBlock };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
|
|
3
|
+
type Element = ButtonElement | CheckboxesElement | DatePickerElement | DateTimePickerElement | EmailInputElement | ImageElement | MultiStaticSelectElement | MultiExternalSelectElement | MultiUsersSelectElement | MultiConversationsSelectElement | MultiChannelsSelectElement | NumberInputElement | OverflowMenuElement | PlainTextInputElement | RadioButtonsElement | StaticSelectElement | ExternalSelectElement | UsersSelectElement | ConversationsSelectElement | ChannelsSelectElement | TimePickerElement | UrlTextInputElement | RichTextBlockElement;
|
|
2
4
|
type ButtonElement = {
|
|
3
5
|
type: "button";
|
|
4
6
|
/**
|
|
@@ -697,102 +699,6 @@ type FilterObject = {
|
|
|
697
699
|
exclude_bot_users?: boolean;
|
|
698
700
|
};
|
|
699
701
|
|
|
700
|
-
type RichTextList = {
|
|
701
|
-
type: "rich_text_list";
|
|
702
|
-
style: "bullet" | "ordered";
|
|
703
|
-
/**
|
|
704
|
-
* The number of spaces to indent this block. It must be a number between 0 and 8.
|
|
705
|
-
*/
|
|
706
|
-
indent?: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8;
|
|
707
|
-
offset?: number;
|
|
708
|
-
/**
|
|
709
|
-
* 0 or 1 (default 0) - if 1, a border is drawn on the left side of the block.
|
|
710
|
-
*/
|
|
711
|
-
border?: 0 | 1;
|
|
712
|
-
elements: RichTextSection[];
|
|
713
|
-
};
|
|
714
|
-
type RichTextPreformatted = {
|
|
715
|
-
type: "rich_text_preformatted";
|
|
716
|
-
elements: AnyRichTextSectionElement[];
|
|
717
|
-
/**
|
|
718
|
-
* 0 or 1 (default 0) - if 1, a border is drawn on the left side of the block.
|
|
719
|
-
*/
|
|
720
|
-
border?: 0 | 1;
|
|
721
|
-
};
|
|
722
|
-
type RichTextQuote = {
|
|
723
|
-
type: "rich_text_quote";
|
|
724
|
-
elements: AnyRichTextSectionElement[];
|
|
725
|
-
/**
|
|
726
|
-
* 0 or 1 (default 0) - if 1, a border is drawn on the left side of the block.
|
|
727
|
-
*/
|
|
728
|
-
border?: 0 | 1;
|
|
729
|
-
};
|
|
730
|
-
type RichTextSection = {
|
|
731
|
-
type: "rich_text_section";
|
|
732
|
-
elements: AnyRichTextSectionElement[];
|
|
733
|
-
};
|
|
734
|
-
type AnyRichTextBlockElement = RichTextList | RichTextPreformatted | RichTextQuote | RichTextSection;
|
|
735
|
-
type AnyRichTextSectionElement = RichTextSectionText | RichTextSectionChannel | RichTextSectionUser | RichTextSectionEmoji | RichTextSectionLink | RichTextSectionTeam | RichTextSectionUsergroup | RichTextSectionDate | RichTextSectionBroadcast | RichTextSectionColor;
|
|
736
|
-
interface RichTextSectionElement {
|
|
737
|
-
type: "text" | "channel" | "user" | "emoji" | "link" | "team" | "usergroup" | "date" | "broadcast" | "color";
|
|
738
|
-
style?: RichTextSectionElementStyle;
|
|
739
|
-
}
|
|
740
|
-
interface RichTextSectionText extends RichTextSectionElement {
|
|
741
|
-
type: "text";
|
|
742
|
-
text: string;
|
|
743
|
-
style?: RichTextSectionElementStyleWithCode;
|
|
744
|
-
}
|
|
745
|
-
interface RichTextSectionChannel extends RichTextSectionElement {
|
|
746
|
-
type: "channel";
|
|
747
|
-
channel_id: string;
|
|
748
|
-
}
|
|
749
|
-
interface RichTextSectionUser extends RichTextSectionElement {
|
|
750
|
-
type: "user";
|
|
751
|
-
user_id: string;
|
|
752
|
-
}
|
|
753
|
-
interface RichTextSectionEmoji extends RichTextSectionElement {
|
|
754
|
-
type: "emoji";
|
|
755
|
-
name: string;
|
|
756
|
-
skin_tone?: number;
|
|
757
|
-
unicode?: string;
|
|
758
|
-
}
|
|
759
|
-
interface RichTextSectionLink extends RichTextSectionElement {
|
|
760
|
-
type: "link";
|
|
761
|
-
url: string;
|
|
762
|
-
text: string;
|
|
763
|
-
style?: RichTextSectionElementStyleWithCode;
|
|
764
|
-
}
|
|
765
|
-
interface RichTextSectionTeam extends RichTextSectionElement {
|
|
766
|
-
type: "team";
|
|
767
|
-
team_id: string;
|
|
768
|
-
}
|
|
769
|
-
interface RichTextSectionUsergroup extends RichTextSectionElement {
|
|
770
|
-
type: "usergroup";
|
|
771
|
-
usergroup_id: string;
|
|
772
|
-
}
|
|
773
|
-
interface RichTextSectionDate extends RichTextSectionElement {
|
|
774
|
-
type: "date";
|
|
775
|
-
timestamp: number;
|
|
776
|
-
format: string;
|
|
777
|
-
style?: RichTextSectionElementStyleWithCode;
|
|
778
|
-
}
|
|
779
|
-
interface RichTextSectionBroadcast extends RichTextSectionElement {
|
|
780
|
-
type: "broadcast";
|
|
781
|
-
range: "channel" | "here" | "everyone";
|
|
782
|
-
}
|
|
783
|
-
interface RichTextSectionColor extends RichTextSectionElement {
|
|
784
|
-
type: "color";
|
|
785
|
-
value: string;
|
|
786
|
-
}
|
|
787
|
-
interface RichTextSectionElementStyle {
|
|
788
|
-
bold?: boolean;
|
|
789
|
-
italic?: boolean;
|
|
790
|
-
strike?: boolean;
|
|
791
|
-
}
|
|
792
|
-
interface RichTextSectionElementStyleWithCode extends RichTextSectionElementStyle {
|
|
793
|
-
code?: boolean;
|
|
794
|
-
}
|
|
795
|
-
|
|
796
702
|
type Block = ActionsBlock | ContextBlock | DividerBlock | FileBlock | HeaderBlock | ImageBlock | InputBlock | SectionBlock | VideoBlock | RichTextBlock;
|
|
797
703
|
type ActionsBlock = {
|
|
798
704
|
/**
|
|
@@ -1077,7 +983,94 @@ type RichTextBlock = {
|
|
|
1077
983
|
/**
|
|
1078
984
|
* An array of rich text objects - rich_text_section, rich_text_list, rich_text_preformatted, and rich_text_quote. See your specific desired element below for more details.
|
|
1079
985
|
*/
|
|
1080
|
-
elements:
|
|
986
|
+
elements: RichTextBlockElement[];
|
|
987
|
+
};
|
|
988
|
+
|
|
989
|
+
type RichTextBlockSubElement = RichTextList | RichTextPreformatted | RichTextQuote | RichTextSection;
|
|
990
|
+
type RichTextList = {
|
|
991
|
+
type: "rich_text_list";
|
|
992
|
+
style: "bullet" | "ordered";
|
|
993
|
+
/**
|
|
994
|
+
* The number of spaces to indent this block. It must be a number between 0 and 8.
|
|
995
|
+
*/
|
|
996
|
+
indent?: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8;
|
|
997
|
+
offset?: number;
|
|
998
|
+
/**
|
|
999
|
+
* 0 or 1 (default 0) - if 1, a border is drawn on the left side of the block.
|
|
1000
|
+
*/
|
|
1001
|
+
border?: 0 | 1;
|
|
1002
|
+
elements: RichTextSection[];
|
|
1003
|
+
};
|
|
1004
|
+
type RichTextPreformatted = {
|
|
1005
|
+
type: "rich_text_preformatted";
|
|
1006
|
+
elements: RichTextSectionElement[];
|
|
1007
|
+
/**
|
|
1008
|
+
* 0 or 1 (default 0) - if 1, a border is drawn on the left side of the block.
|
|
1009
|
+
*/
|
|
1010
|
+
border?: 0 | 1;
|
|
1011
|
+
};
|
|
1012
|
+
type RichTextQuote = {
|
|
1013
|
+
type: "rich_text_quote";
|
|
1014
|
+
elements: RichTextSectionElement[];
|
|
1015
|
+
/**
|
|
1016
|
+
* 0 or 1 (default 0) - if 1, a border is drawn on the left side of the block.
|
|
1017
|
+
*/
|
|
1018
|
+
border?: 0 | 1;
|
|
1019
|
+
};
|
|
1020
|
+
type RichTextSection = {
|
|
1021
|
+
type: "rich_text_section";
|
|
1022
|
+
elements: RichTextSectionElement[];
|
|
1023
|
+
};
|
|
1024
|
+
type RichTextBlockElement = RichTextList | RichTextPreformatted | RichTextQuote | RichTextSection;
|
|
1025
|
+
type RichTextSectionElement = RichTextSectionText | RichTextSectionChannel | RichTextSectionUser | RichTextSectionEmoji | RichTextSectionLink | RichTextSectionUsergroup | RichTextSectionBroadcast;
|
|
1026
|
+
type RichTextSectionText = {
|
|
1027
|
+
type: "text";
|
|
1028
|
+
text: string;
|
|
1029
|
+
style?: RichTextSectionElementStyleCode;
|
|
1030
|
+
};
|
|
1031
|
+
type RichTextSectionChannel = {
|
|
1032
|
+
type: "channel";
|
|
1033
|
+
channel_id: string;
|
|
1034
|
+
style?: RichTextSectionElementStyle;
|
|
1035
|
+
};
|
|
1036
|
+
type RichTextSectionUser = {
|
|
1037
|
+
type: "user";
|
|
1038
|
+
user_id: string;
|
|
1039
|
+
style?: RichTextSectionElementStyle;
|
|
1040
|
+
};
|
|
1041
|
+
type RichTextSectionEmoji = {
|
|
1042
|
+
type: "emoji";
|
|
1043
|
+
name: string;
|
|
1044
|
+
};
|
|
1045
|
+
type RichTextSectionLink = {
|
|
1046
|
+
type: "link";
|
|
1047
|
+
url: string;
|
|
1048
|
+
text: string;
|
|
1049
|
+
style?: RichTextSectionElementStyleCode;
|
|
1050
|
+
};
|
|
1051
|
+
type RichTextSectionUsergroup = {
|
|
1052
|
+
type: "usergroup";
|
|
1053
|
+
usergroup_id: string;
|
|
1054
|
+
style?: RichTextSectionElementStyle;
|
|
1055
|
+
};
|
|
1056
|
+
type RichTextSectionBroadcast = {
|
|
1057
|
+
type: "broadcast";
|
|
1058
|
+
range: "channel" | "here" | "everyone";
|
|
1059
|
+
style?: RichTextSectionElementStyleCode;
|
|
1060
|
+
};
|
|
1061
|
+
type RichTextSectionElementStyle = {
|
|
1062
|
+
bold?: boolean;
|
|
1063
|
+
italic?: boolean;
|
|
1064
|
+
strike?: boolean;
|
|
1065
|
+
highlight?: boolean;
|
|
1066
|
+
client_highlight?: boolean;
|
|
1067
|
+
unlink?: boolean;
|
|
1068
|
+
};
|
|
1069
|
+
type RichTextSectionElementStyleCode = {
|
|
1070
|
+
code?: boolean;
|
|
1071
|
+
bold?: boolean;
|
|
1072
|
+
italic?: boolean;
|
|
1073
|
+
strike?: boolean;
|
|
1081
1074
|
};
|
|
1082
1075
|
|
|
1083
1076
|
type User = {
|
|
@@ -1089,28 +1082,24 @@ type Channel = {
|
|
|
1089
1082
|
name: string;
|
|
1090
1083
|
};
|
|
1091
1084
|
type Hooks = {
|
|
1092
|
-
user?: (data: User) =>
|
|
1093
|
-
channel?: (data: Channel) =>
|
|
1094
|
-
atChannel?: (
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
usergroup?: (
|
|
1098
|
-
|
|
1099
|
-
name: string;
|
|
1100
|
-
}) => string;
|
|
1101
|
-
atHere?: (data: {
|
|
1102
|
-
name: string;
|
|
1103
|
-
}) => string;
|
|
1085
|
+
user?: (data: User) => ReactNode;
|
|
1086
|
+
channel?: (data: Channel) => ReactNode;
|
|
1087
|
+
atChannel?: () => ReactNode;
|
|
1088
|
+
atEveryone?: () => ReactNode;
|
|
1089
|
+
atHere?: () => ReactNode;
|
|
1090
|
+
usergroup?: (id: string) => ReactNode;
|
|
1091
|
+
emoji?: (emoji_text: string) => ReactNode;
|
|
1104
1092
|
date?: (data: {
|
|
1105
1093
|
timestamp: string;
|
|
1106
1094
|
format: string;
|
|
1107
1095
|
link?: string | undefined;
|
|
1108
1096
|
fallback: string;
|
|
1109
|
-
}) =>
|
|
1097
|
+
}) => ReactNode;
|
|
1110
1098
|
};
|
|
1111
1099
|
type Data = {
|
|
1112
1100
|
users: User[];
|
|
1113
1101
|
channels: Channel[];
|
|
1102
|
+
user_groups: Channel[];
|
|
1114
1103
|
hooks: Hooks;
|
|
1115
1104
|
setUsers: (users: User[]) => void;
|
|
1116
1105
|
setChannels: (channels: Channel[]) => void;
|
|
@@ -1137,9 +1126,10 @@ type Props = {
|
|
|
1137
1126
|
data?: {
|
|
1138
1127
|
users?: GlobalStore["users"];
|
|
1139
1128
|
channels?: GlobalStore["channels"];
|
|
1129
|
+
user_groups?: GlobalStore["user_groups"];
|
|
1140
1130
|
};
|
|
1141
1131
|
hooks?: GlobalStore["hooks"];
|
|
1142
1132
|
};
|
|
1143
1133
|
declare const Message: (props: Props) => JSX.Element;
|
|
1144
1134
|
|
|
1145
|
-
export { ActionsBlock, Block, ButtonElement, ChannelsSelectElement, CheckboxesElement, ConfirmDialogObject, ContextBlock, ConversationsSelectElement, DatePickerElement, DateTimePickerElement, DispatchActionConfigObject, DividerBlock, Element, EmailInputElement, ExternalSelectElement, FileBlock, FilterObject, HeaderBlock, ImageBlock, ImageElement, InputBlock, Message, MultiChannelsSelectElement, MultiConversationsSelectElement, MultiExternalSelectElement, MultiStaticSelectElement, MultiUsersSelectElement, NumberInputElement, OptionGroupObject, OptionObject, OptionObjectWithoutUrl, OverflowMenuElement, PlainTextInputElement, RadioButtonsElement, RichTextBlock, SectionBlock, StaticSelectElement, Style, TextObject, TextObjectTextType, TimePickerElement, UrlTextInputElement, UsersSelectElement, VideoBlock };
|
|
1135
|
+
export { ActionsBlock, Block, ButtonElement, ChannelsSelectElement, CheckboxesElement, ConfirmDialogObject, ContextBlock, ConversationsSelectElement, DatePickerElement, DateTimePickerElement, DispatchActionConfigObject, DividerBlock, Element, EmailInputElement, ExternalSelectElement, FileBlock, FilterObject, HeaderBlock, ImageBlock, ImageElement, InputBlock, Message, MultiChannelsSelectElement, MultiConversationsSelectElement, MultiExternalSelectElement, MultiStaticSelectElement, MultiUsersSelectElement, NumberInputElement, OptionGroupObject, OptionObject, OptionObjectWithoutUrl, OverflowMenuElement, PlainTextInputElement, RadioButtonsElement, RichTextBlock, RichTextBlockElement, RichTextBlockSubElement, RichTextList, RichTextPreformatted, RichTextQuote, RichTextSection, RichTextSectionBroadcast, RichTextSectionChannel, RichTextSectionElement, RichTextSectionElementStyle, RichTextSectionElementStyleCode, RichTextSectionEmoji, RichTextSectionLink, RichTextSectionText, RichTextSectionUser, RichTextSectionUsergroup, SectionBlock, StaticSelectElement, Style, TextObject, TextObjectTextType, TimePickerElement, UrlTextInputElement, UsersSelectElement, VideoBlock };
|