Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 15 additions & 14 deletions block-kit/src/main/java/elements/Button.java
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
package elements;

import static com.slack.api.model.block.composition.BlockCompositions.markdownText;
import static com.slack.api.model.block.composition.BlockCompositions.plainText;

import com.slack.api.model.block.Blocks;
import com.slack.api.model.block.LayoutBlock;
import com.slack.api.model.block.composition.BlockCompositions;
import com.slack.api.model.block.element.BlockElements;
import com.slack.api.model.block.element.ButtonElement;
import java.util.List;
Expand All @@ -18,26 +16,29 @@ public class Button {
* A regular interactive button.
*/
public static ButtonElement example01() {
ButtonElement element = BlockElements.button(
b -> b.text(plainText("Click Me")).value("click_me_123").actionId("button"));
ButtonElement element = BlockElements.button(b -> b.text(BlockCompositions.plainText("Click Me"))
.value("click_me_123")
.actionId("button"));
return element;
}

/**
* A button with a primary style attribute.
*/
public static ButtonElement example02() {
ButtonElement element = BlockElements.button(b ->
b.text(plainText("Save")).style("primary").value("click_me_123").actionId("button"));
ButtonElement element = BlockElements.button(b -> b.text(BlockCompositions.plainText("Save"))
.style("primary")
.value("click_me_123")
.actionId("button"));
return element;
}

/**
* A link button.
*/
public static ButtonElement example03() {
ButtonElement element =
BlockElements.button(b -> b.text(plainText("Link Button")).url("https://docs.slack.dev/block-kit"));
ButtonElement element = BlockElements.button(
b -> b.text(BlockCompositions.plainText("Link Button")).url("https://docs.slack.dev/block-kit"));
return element;
}

Expand All @@ -46,17 +47,17 @@ public static ButtonElement example03() {
*/
public static List<LayoutBlock> example05() {
List<LayoutBlock> blocks = List.of(
Blocks.section(s -> s.text(markdownText("This is a section block with a button."))
.accessory(BlockElements.button(b -> b.text(plainText("Click Me"))
Blocks.section(s -> s.text(BlockCompositions.markdownText("This is a section block with a button."))
.accessory(BlockElements.button(b -> b.text(BlockCompositions.plainText("Click Me"))
.value("click_me_123")
.actionId("button")))),
Blocks.actions(a -> a.blockId("actionblock789")
.elements(List.of(
BlockElements.button(b -> b.text(plainText("Primary Button"))
BlockElements.button(b -> b.text(BlockCompositions.plainText("Primary Button"))
.style("primary")
.value("click_me_456")),
BlockElements.button(b ->
b.text(plainText("Link Button")).url("https://api.slack.com/block-kit"))))));
BlockElements.button(b -> b.text(BlockCompositions.plainText("Link Button"))
.url("https://api.slack.com/block-kit"))))));
return blocks;
}
}
8 changes: 3 additions & 5 deletions block-kit/src/main/java/elements/DatePicker.java
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
package elements;

import static com.slack.api.model.block.composition.BlockCompositions.markdownText;
import static com.slack.api.model.block.composition.BlockCompositions.plainText;

import com.slack.api.model.block.Blocks;
import com.slack.api.model.block.SectionBlock;
import com.slack.api.model.block.composition.BlockCompositions;
import com.slack.api.model.block.element.BlockElements;

/**
Expand All @@ -17,10 +15,10 @@ public class DatePicker {
*/
public static SectionBlock example01() {
SectionBlock block = Blocks.section(s -> s.blockId("section1234")
.text(markdownText("Pick a date for the deadline."))
.text(BlockCompositions.markdownText("Pick a date for the deadline."))
.accessory(BlockElements.datePicker(d -> d.actionId("datepicker123")
.initialDate("1990-04-28")
.placeholder(plainText("Select a date")))));
.placeholder(BlockCompositions.plainText("Select a date")))));
return block;
}
}
12 changes: 6 additions & 6 deletions block-kit/src/main/java/elements/DatetimePicker.java
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
package elements;

import static com.slack.api.model.block.composition.BlockCompositions.plainText;

import com.slack.api.model.block.Blocks;
import com.slack.api.model.block.InputBlock;
import com.slack.api.model.block.composition.BlockCompositions;
import com.slack.api.model.block.element.BlockElements;

/**
Expand All @@ -15,10 +14,11 @@ public class DatetimePicker {
* An input block with a datetime picker element.
*/
public static InputBlock example01() {
InputBlock block =
Blocks.input(i -> i.element(BlockElements.datetimePicker(d -> d.actionId("datetimepicker-action")))
.hint(plainText(pt -> pt.text("This is some hint text").emoji(true)))
.label(plainText(pt -> pt.text("Start date").emoji(true))));
InputBlock block = Blocks.input(i -> i.element(
BlockElements.datetimePicker(d -> d.actionId("datetimepicker-action")))
.hint(BlockCompositions.plainText(
pt -> pt.text("This is some hint text").emoji(true)))
.label(BlockCompositions.plainText(pt -> pt.text("Start date").emoji(true))));
return block;
}
}
9 changes: 4 additions & 5 deletions block-kit/src/main/java/elements/EmailInput.java
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
package elements;

import static com.slack.api.model.block.composition.BlockCompositions.plainText;

import com.slack.api.model.block.Blocks;
import com.slack.api.model.block.InputBlock;
import com.slack.api.model.block.composition.BlockCompositions;
import com.slack.api.model.block.element.BlockElements;

/**
Expand All @@ -16,9 +15,9 @@ public class EmailInput {
*/
public static InputBlock example01() {
InputBlock block = Blocks.input(i -> i.blockId("input123")
.label(plainText("Email Address"))
.element(BlockElements.emailTextInput(
e -> e.actionId("email_text_input-action").placeholder(plainText("Enter an email")))));
.label(BlockCompositions.plainText("Email Address"))
.element(BlockElements.emailTextInput(e -> e.actionId("email_text_input-action")
.placeholder(BlockCompositions.plainText("Enter an email")))));
return block;
}
}
7 changes: 3 additions & 4 deletions block-kit/src/main/java/elements/FeedbackButtons.java
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
package elements;

import static com.slack.api.model.block.composition.BlockCompositions.plainText;

import com.slack.api.model.block.Blocks;
import com.slack.api.model.block.ContextActionsBlock;
import com.slack.api.model.block.composition.BlockCompositions;
import com.slack.api.model.block.composition.FeedbackButtonObject;
import com.slack.api.model.block.element.BlockElements;
import java.util.List;
Expand All @@ -20,12 +19,12 @@ public static ContextActionsBlock example01() {
ContextActionsBlock block =
Blocks.contextActions(List.of(BlockElements.feedbackButtons(fb -> fb.actionId("feedback_buttons_1")
.positiveButton(FeedbackButtonObject.builder()
.text(plainText("Good"))
.text(BlockCompositions.plainText("Good"))
.value("positive_feedback")
.accessibilityLabel("Mark this response as good")
.build())
.negativeButton(FeedbackButtonObject.builder()
.text(plainText("Bad"))
.text(BlockCompositions.plainText("Bad"))
.value("negative_feedback")
.accessibilityLabel("Mark this response as bad")
.build()))));
Expand Down
5 changes: 2 additions & 3 deletions block-kit/src/main/java/elements/FileInput.java
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
package elements;

import static com.slack.api.model.block.composition.BlockCompositions.plainText;

import com.slack.api.model.block.Blocks;
import com.slack.api.model.block.composition.BlockCompositions;
import com.slack.api.model.block.element.BlockElements;
import com.slack.api.model.view.View;
import com.slack.api.model.view.Views;
Expand All @@ -23,7 +22,7 @@ public static View example01() {
s -> s.type("plain_text").text("Submit").emoji(true)))
.close(Views.viewClose(c -> c.type("plain_text").text("Cancel").emoji(true)))
.blocks(List.of(Blocks.input(i -> i.blockId("input_block_id")
.label(plainText("Upload Files"))
.label(BlockCompositions.plainText("Upload Files"))
.element(BlockElements.fileInput(f -> f.actionId("file_input_action_id_1")
.filetypes(List.of("jpg", "png"))
.maxFiles(5)))))));
Expand Down
5 changes: 2 additions & 3 deletions block-kit/src/main/java/elements/IconButton.java
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
package elements;

import static com.slack.api.model.block.composition.BlockCompositions.plainText;

import com.slack.api.model.block.Blocks;
import com.slack.api.model.block.ContextActionsBlock;
import com.slack.api.model.block.composition.BlockCompositions;
import com.slack.api.model.block.element.BlockElements;
import java.util.List;

Expand All @@ -17,7 +16,7 @@ public class IconButton {
*/
public static ContextActionsBlock example01() {
ContextActionsBlock block = Blocks.contextActions(List.of(BlockElements.iconButton(ib -> ib.icon("trash")
.text(plainText("Delete"))
.text(BlockCompositions.plainText("Delete"))
.actionId("delete_button")
.value("delete_item"))));
return block;
Expand Down
9 changes: 4 additions & 5 deletions block-kit/src/main/java/elements/Image.java
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
package elements;

import static com.slack.api.model.block.composition.BlockCompositions.markdownText;

import com.slack.api.model.block.Blocks;
import com.slack.api.model.block.SectionBlock;
import com.slack.api.model.block.composition.BlockCompositions;
import com.slack.api.model.block.composition.SlackFileObject;
import com.slack.api.model.block.element.BlockElements;

Expand All @@ -17,7 +16,7 @@ public class Image {
*/
public static SectionBlock example01() {
SectionBlock block = Blocks.section(s -> s.blockId("section567")
.text(markdownText("This is a section block with an accessory image."))
.text(BlockCompositions.markdownText("This is a section block with an accessory image."))
.accessory(BlockElements.image(
i -> i.imageUrl("https://pbs.twimg.com/profile_images/625633822235693056/lNGUneLX_400x400.jpg")
.altText("cute cat"))));
Expand All @@ -29,7 +28,7 @@ public static SectionBlock example01() {
*/
public static SectionBlock example02() {
SectionBlock block = Blocks.section(s -> s.blockId("section567")
.text(markdownText("This is a section block with an accessory image."))
.text(BlockCompositions.markdownText("This is a section block with an accessory image."))
.accessory(BlockElements.image(i -> i.slackFile(SlackFileObject.builder()
.url("https://files.slack.com/files-pri/T0123456-F0123456/xyz.png")
.build())
Expand All @@ -42,7 +41,7 @@ public static SectionBlock example02() {
*/
public static SectionBlock example03() {
SectionBlock block = Blocks.section(s -> s.blockId("section567")
.text(markdownText("This is a section block with an accessory image."))
.text(BlockCompositions.markdownText("This is a section block with an accessory image."))
.accessory(BlockElements.image(i -> i.slackFile(
SlackFileObject.builder().id("F01234567").build())
.altText("Slack file object."))));
Expand Down
30 changes: 14 additions & 16 deletions block-kit/src/main/java/elements/MultiSelectMenu.java
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
package elements;

import static com.slack.api.model.block.composition.BlockCompositions.markdownText;
import static com.slack.api.model.block.composition.BlockCompositions.plainText;

import com.slack.api.model.block.Blocks;
import com.slack.api.model.block.SectionBlock;
import com.slack.api.model.block.composition.BlockCompositions;
import com.slack.api.model.block.composition.OptionObject;
import com.slack.api.model.block.element.BlockElements;
import java.util.List;
Expand All @@ -19,20 +17,20 @@ public class MultiSelectMenu {
*/
public static SectionBlock example01() {
SectionBlock block = Blocks.section(s -> s.blockId("section678")
.text(markdownText("Pick items from the list"))
.text(BlockCompositions.markdownText("Pick items from the list"))
.accessory(BlockElements.multiStaticSelect(m -> m.actionId("text1234")
.placeholder(plainText("Select items"))
.placeholder(BlockCompositions.plainText("Select items"))
.options(List.of(
OptionObject.builder()
.text(plainText("*this is plain_text text*"))
.text(BlockCompositions.plainText("*this is plain_text text*"))
.value("value-0")
.build(),
OptionObject.builder()
.text(plainText("*this is plain_text text*"))
.text(BlockCompositions.plainText("*this is plain_text text*"))
.value("value-1")
.build(),
OptionObject.builder()
.text(plainText("*this is plain_text text*"))
.text(BlockCompositions.plainText("*this is plain_text text*"))
.value("value-2")
.build())))));
return block;
Expand All @@ -43,9 +41,9 @@ public static SectionBlock example01() {
*/
public static SectionBlock example02() {
SectionBlock block = Blocks.section(s -> s.blockId("section678")
.text(markdownText("Pick items from the list"))
.text(BlockCompositions.markdownText("Pick items from the list"))
.accessory(BlockElements.multiExternalSelect(m -> m.actionId("text1234")
.placeholder(plainText("Select items"))
.placeholder(BlockCompositions.plainText("Select items"))
.minQueryLength(3))));
return block;
}
Expand All @@ -55,9 +53,9 @@ public static SectionBlock example02() {
*/
public static SectionBlock example03() {
SectionBlock block = Blocks.section(s -> s.blockId("section678")
.text(markdownText("Pick users from the list"))
.text(BlockCompositions.markdownText("Pick users from the list"))
.accessory(BlockElements.multiUsersSelect(
m -> m.actionId("text1234").placeholder(plainText("Select users")))));
m -> m.actionId("text1234").placeholder(BlockCompositions.plainText("Select users")))));
return block;
}

Expand All @@ -66,9 +64,9 @@ public static SectionBlock example03() {
*/
public static SectionBlock example04() {
SectionBlock block = Blocks.section(s -> s.blockId("section678")
.text(markdownText("Pick conversations from the list"))
.text(BlockCompositions.markdownText("Pick conversations from the list"))
.accessory(BlockElements.multiConversationsSelect(
m -> m.actionId("text1234").placeholder(plainText("Select conversations")))));
m -> m.actionId("text1234").placeholder(BlockCompositions.plainText("Select conversations")))));
return block;
}

Expand All @@ -77,9 +75,9 @@ public static SectionBlock example04() {
*/
public static SectionBlock example05() {
SectionBlock block = Blocks.section(s -> s.blockId("section678")
.text(markdownText("Pick channels from the list"))
.text(BlockCompositions.markdownText("Pick channels from the list"))
.accessory(BlockElements.multiChannelsSelect(
m -> m.actionId("text1234").placeholder(plainText("Select channels")))));
m -> m.actionId("text1234").placeholder(BlockCompositions.plainText("Select channels")))));
return block;
}
}
5 changes: 2 additions & 3 deletions block-kit/src/main/java/elements/NumberInput.java
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
package elements;

import static com.slack.api.model.block.composition.BlockCompositions.plainText;

import com.slack.api.model.block.Blocks;
import com.slack.api.model.block.InputBlock;
import com.slack.api.model.block.composition.BlockCompositions;
import com.slack.api.model.block.element.BlockElements;

/**
Expand All @@ -17,7 +16,7 @@ public class NumberInput {
public static InputBlock example01() {
InputBlock block = Blocks.input(i -> i.element(
BlockElements.numberInput(n -> n.decimalAllowed(false).actionId("number_input-action")))
.label(plainText(pt -> pt.text("Label").emoji(true))));
.label(BlockCompositions.plainText(pt -> pt.text("Label").emoji(true))));
return block;
}
}
Loading