@fc3/mmcadi 0.1.22 → 0.1.23

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.
Files changed (194) hide show
  1. package/dist/.last-compile-time +1 -1
  2. package/dist/.last-publish-time +1 -1
  3. package/dist/client.js +254 -47
  4. package/dist/src/client/enum/page-type.d.ts +3 -0
  5. package/dist/src/client/enum/page-type.js +3 -0
  6. package/dist/src/client/enum/page-type.js.map +1 -1
  7. package/dist/src/client/factory/page.js +6 -0
  8. package/dist/src/client/factory/page.js.map +1 -1
  9. package/dist/src/client/page/confirm-hide-block.d.ts +7 -0
  10. package/dist/src/client/page/confirm-hide-block.js +28 -0
  11. package/dist/src/client/page/confirm-hide-block.js.map +1 -0
  12. package/dist/src/client/page/history.d.ts +16 -0
  13. package/dist/src/client/page/history.js +126 -0
  14. package/dist/src/client/page/history.js.map +1 -0
  15. package/dist/src/client/page/select-block-destination.d.ts +5 -0
  16. package/dist/src/client/page/select-block-destination.js +12 -0
  17. package/dist/src/client/page/select-block-destination.js.map +1 -0
  18. package/dist/src/client/page/view-custom.d.ts +3 -1
  19. package/dist/src/client/page/view-custom.js +60 -26
  20. package/dist/src/client/page/view-custom.js.map +1 -1
  21. package/dist/src/client/utility/get-block-activation-href.d.ts +2 -0
  22. package/dist/src/client/utility/get-block-activation-href.js +25 -0
  23. package/dist/src/client/utility/get-block-activation-href.js.map +1 -0
  24. package/dist/src/enum/action-type.d.ts +2 -0
  25. package/dist/src/enum/action-type.js +2 -0
  26. package/dist/src/enum/action-type.js.map +1 -1
  27. package/dist/src/enum/emoji.d.ts +1 -0
  28. package/dist/src/enum/emoji.js +1 -0
  29. package/dist/src/enum/emoji.js.map +1 -1
  30. package/dist/src/enum/tool-type.d.ts +1 -0
  31. package/dist/src/enum/tool-type.js +1 -0
  32. package/dist/src/enum/tool-type.js.map +1 -1
  33. package/dist/src/lib/server/http/endpoint.js +1 -1
  34. package/dist/src/lib/server/http/endpoint.js.map +1 -1
  35. package/dist/src/server/endpoint/abstract-page.d.ts +1 -1
  36. package/dist/src/server/endpoint/abstract-page.js +21 -3
  37. package/dist/src/server/endpoint/abstract-page.js.map +1 -1
  38. package/dist/src/server/endpoint/action/create.d.ts +3 -1
  39. package/dist/src/server/endpoint/action/create.js +61 -25
  40. package/dist/src/server/endpoint/action/create.js.map +1 -1
  41. package/dist/src/server/endpoint/action/get.d.ts +3 -1
  42. package/dist/src/server/endpoint/action/get.js +47 -1
  43. package/dist/src/server/endpoint/action/get.js.map +1 -1
  44. package/dist/src/server/endpoint/history.d.ts +13 -0
  45. package/dist/src/server/endpoint/history.js +61 -0
  46. package/dist/src/server/endpoint/history.js.map +1 -0
  47. package/dist/src/server/endpoint/login.d.ts +1 -1
  48. package/dist/src/server/endpoint/login.js +1 -1
  49. package/dist/src/server/endpoint/login.js.map +1 -1
  50. package/dist/src/server/endpoint/logout.js +7 -2
  51. package/dist/src/server/endpoint/logout.js.map +1 -1
  52. package/dist/src/server/endpoint/month.d.ts +1 -1
  53. package/dist/src/server/endpoint/month.js +1 -1
  54. package/dist/src/server/endpoint/month.js.map +1 -1
  55. package/dist/src/server/endpoint/settings/get.d.ts +1 -1
  56. package/dist/src/server/endpoint/settings/get.js +1 -1
  57. package/dist/src/server/endpoint/settings/get.js.map +1 -1
  58. package/dist/src/server/endpoint/week.d.ts +1 -1
  59. package/dist/src/server/endpoint/week.js +1 -1
  60. package/dist/src/server/endpoint/week.js.map +1 -1
  61. package/dist/src/server/endpoint/year.d.ts +1 -1
  62. package/dist/src/server/endpoint/year.js +1 -1
  63. package/dist/src/server/endpoint/year.js.map +1 -1
  64. package/dist/src/server/factory/block-result-serializer.d.ts +1 -1
  65. package/dist/src/server/factory/block-result-serializer.js +14 -14
  66. package/dist/src/server/factory/block-result-serializer.js.map +1 -1
  67. package/dist/src/server/factory/block-serializer.d.ts +15 -0
  68. package/dist/src/server/factory/block-serializer.js +80 -0
  69. package/dist/src/server/factory/block-serializer.js.map +1 -0
  70. package/dist/src/server/middleware/error-handler.js +14 -4
  71. package/dist/src/server/middleware/error-handler.js.map +1 -1
  72. package/dist/src/server/operation/add-block.js +1 -0
  73. package/dist/src/server/operation/add-block.js.map +1 -1
  74. package/dist/src/server/operation/delete-block.d.ts +5 -3
  75. package/dist/src/server/operation/delete-block.js +30 -9
  76. package/dist/src/server/operation/delete-block.js.map +1 -1
  77. package/dist/src/server/operation/destroy-session.js +13 -1
  78. package/dist/src/server/operation/destroy-session.js.map +1 -1
  79. package/dist/src/server/operation/find-account.js +3 -2
  80. package/dist/src/server/operation/find-account.js.map +1 -1
  81. package/dist/src/server/operation/hide-block.d.ts +14 -0
  82. package/dist/src/server/operation/hide-block.js +55 -0
  83. package/dist/src/server/operation/hide-block.js.map +1 -0
  84. package/dist/src/server/operation/load-page.d.ts +3 -1
  85. package/dist/src/server/operation/load-page.js +99 -39
  86. package/dist/src/server/operation/load-page.js.map +1 -1
  87. package/dist/src/server/operation/move-block.d.ts +16 -0
  88. package/dist/src/server/operation/move-block.js +101 -0
  89. package/dist/src/server/operation/move-block.js.map +1 -0
  90. package/dist/src/server/operation/store-file.d.ts +14 -0
  91. package/dist/src/server/operation/store-file.js +83 -0
  92. package/dist/src/server/operation/store-file.js.map +1 -0
  93. package/dist/src/server/operation/update-block.js +4 -4
  94. package/dist/src/server/operation/update-block.js.map +1 -1
  95. package/dist/src/server/serializer/action.d.ts +40 -0
  96. package/dist/src/server/serializer/action.js +940 -0
  97. package/dist/src/server/serializer/action.js.map +1 -0
  98. package/dist/src/server/serializer/base.d.ts +31 -0
  99. package/dist/src/server/serializer/base.js +1222 -0
  100. package/dist/src/server/serializer/base.js.map +1 -0
  101. package/dist/src/server/serializer/block/audio.d.ts +6 -0
  102. package/dist/src/server/serializer/block/audio.js +26 -0
  103. package/dist/src/server/serializer/block/audio.js.map +1 -0
  104. package/dist/src/server/serializer/block/background.d.ts +6 -0
  105. package/dist/src/server/serializer/block/background.js +22 -0
  106. package/dist/src/server/serializer/block/background.js.map +1 -0
  107. package/dist/src/server/serializer/block/calendar.d.ts +7 -0
  108. package/dist/src/server/serializer/block/calendar.js +140 -0
  109. package/dist/src/server/serializer/block/calendar.js.map +1 -0
  110. package/dist/src/server/serializer/block/directory.d.ts +7 -0
  111. package/dist/src/server/serializer/block/directory.js +53 -0
  112. package/dist/src/server/serializer/block/directory.js.map +1 -0
  113. package/dist/src/server/serializer/block/ephemeral.d.ts +6 -0
  114. package/dist/src/server/serializer/block/ephemeral.js +16 -0
  115. package/dist/src/server/serializer/block/ephemeral.js.map +1 -0
  116. package/dist/src/server/serializer/block/folder.d.ts +14 -0
  117. package/dist/src/server/serializer/block/folder.js +145 -0
  118. package/dist/src/server/serializer/block/folder.js.map +1 -0
  119. package/dist/src/server/serializer/block/header.d.ts +6 -0
  120. package/dist/src/server/serializer/block/header.js +35 -0
  121. package/dist/src/server/serializer/block/header.js.map +1 -0
  122. package/dist/src/server/serializer/block/image.d.ts +6 -0
  123. package/dist/src/server/serializer/block/image.js +45 -0
  124. package/dist/src/server/serializer/block/image.js.map +1 -0
  125. package/dist/src/server/serializer/block/link.d.ts +6 -0
  126. package/dist/src/server/serializer/block/link.js +39 -0
  127. package/dist/src/server/serializer/block/link.js.map +1 -0
  128. package/dist/src/server/serializer/block/list.d.ts +13 -0
  129. package/dist/src/server/serializer/block/list.js +113 -0
  130. package/dist/src/server/serializer/block/list.js.map +1 -0
  131. package/dist/src/server/serializer/block/multi-column.d.ts +6 -0
  132. package/dist/src/server/serializer/block/multi-column.js +78 -0
  133. package/dist/src/server/serializer/block/multi-column.js.map +1 -0
  134. package/dist/src/server/serializer/block/note.d.ts +6 -0
  135. package/dist/src/server/serializer/block/note.js +40 -0
  136. package/dist/src/server/serializer/block/note.js.map +1 -0
  137. package/dist/src/server/serializer/block/parameter.d.ts +6 -0
  138. package/dist/src/server/serializer/block/parameter.js +13 -0
  139. package/dist/src/server/serializer/block/parameter.js.map +1 -0
  140. package/dist/src/server/serializer/block/todo.d.ts +6 -0
  141. package/dist/src/server/serializer/block/todo.js +76 -0
  142. package/dist/src/server/serializer/block/todo.js.map +1 -0
  143. package/dist/src/server/serializer/block/whitespace.d.ts +6 -0
  144. package/dist/src/server/serializer/block/whitespace.js +17 -0
  145. package/dist/src/server/serializer/block/whitespace.js.map +1 -0
  146. package/dist/src/server/serializer/block.d.ts +27 -0
  147. package/dist/src/server/serializer/block.js +226 -0
  148. package/dist/src/server/serializer/block.js.map +1 -0
  149. package/dist/src/server/serializer/common/time-place-options.d.ts +2 -0
  150. package/dist/src/server/serializer/common/time-place-options.js +34 -0
  151. package/dist/src/server/serializer/common/time-place-options.js.map +1 -0
  152. package/dist/src/server/serializer/history.d.ts +19 -0
  153. package/dist/src/server/serializer/history.js +77 -0
  154. package/dist/src/server/serializer/history.js.map +1 -0
  155. package/dist/src/server/serializer/login.d.ts +12 -0
  156. package/dist/src/server/serializer/login.js +54 -0
  157. package/dist/src/server/serializer/login.js.map +1 -0
  158. package/dist/src/server/serializer/month.d.ts +10 -0
  159. package/dist/src/server/serializer/month.js +160 -0
  160. package/dist/src/server/serializer/month.js.map +1 -0
  161. package/dist/src/server/serializer/page.d.ts +47 -0
  162. package/dist/src/server/serializer/page.js +454 -0
  163. package/dist/src/server/serializer/page.js.map +1 -0
  164. package/dist/src/server/serializer/settings.d.ts +9 -0
  165. package/dist/src/server/serializer/settings.js +80 -0
  166. package/dist/src/server/serializer/settings.js.map +1 -0
  167. package/dist/src/server/serializer/week.d.ts +10 -0
  168. package/dist/src/server/serializer/week.js +175 -0
  169. package/dist/src/server/serializer/week.js.map +1 -0
  170. package/dist/src/server/serializer/year.d.ts +10 -0
  171. package/dist/src/server/serializer/year.js +142 -0
  172. package/dist/src/server/serializer/year.js.map +1 -0
  173. package/dist/src/server/utility/get-emoji-for-tool-type.js +1 -0
  174. package/dist/src/server/utility/get-emoji-for-tool-type.js.map +1 -1
  175. package/dist/src/server.js +2 -0
  176. package/dist/src/server.js.map +1 -1
  177. package/dist/src/type/account-settings.d.ts +3 -2
  178. package/dist/src/type/action/hide-block.d.ts +9 -0
  179. package/dist/src/type/action/hide-block.js +3 -0
  180. package/dist/src/type/action/hide-block.js.map +1 -0
  181. package/dist/src/type/action/move-block.d.ts +10 -0
  182. package/dist/src/type/action/move-block.js +3 -0
  183. package/dist/src/type/action/move-block.js.map +1 -0
  184. package/dist/src/type/block/audio.d.ts +2 -0
  185. package/dist/src/type/block/image.d.ts +2 -0
  186. package/dist/src/type/block.d.ts +2 -2
  187. package/dist/src/type/history-item.d.ts +5 -0
  188. package/dist/src/type/history-item.js +3 -0
  189. package/dist/src/type/history-item.js.map +1 -0
  190. package/dist/src/type/page.d.ts +2 -0
  191. package/dist/test/unit/server/operation/promote-block.js +11 -0
  192. package/dist/test/unit/server/operation/promote-block.js.map +1 -1
  193. package/dist/tsconfig.tsbuildinfo +1 -1
  194. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/server/serializer/base.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import BlockResultSerializer from './../block';
2
+ import AudioBlock from './../../../type/block/audio';
3
+ declare class AudioBlockResultSerializer extends BlockResultSerializer<AudioBlock> {
4
+ serializeContent(): string;
5
+ }
6
+ export default AudioBlockResultSerializer;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const block_1 = __importDefault(require("./../block.js"));
7
+ class AudioBlockResultSerializer extends block_1.default {
8
+ serializeContent() {
9
+ if (!this.canRead()) {
10
+ return this.serializePermissionDenied();
11
+ }
12
+ const { file } = this.getResult();
13
+ if (file === null) {
14
+ return this.wrapSection(`
15
+ <em>(no audio files specified)</em>
16
+ `);
17
+ }
18
+ const { filename } = file;
19
+ const url = `/public/${filename}`;
20
+ return this.wrapSection(`
21
+ <audio controls src="${url}">
22
+ `);
23
+ }
24
+ }
25
+ exports.default = AudioBlockResultSerializer;
26
+ //# sourceMappingURL=audio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audio.js","sourceRoot":"","sources":["../../../../../src/server/serializer/block/audio.ts"],"names":[],"mappings":";;;;;AAAA,oEAA4D;AAG5D,MAAM,0BAA2B,SAAQ,eAAiC;IAClE,gBAAgB;QACtB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACzC,CAAC;QAED,MAAM,EAAC,IAAI,EAAC,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAEhC,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC,WAAW,CAAC;;IAEvB,CAAC,CAAC;QACJ,CAAC;QAED,MAAM,EAAC,QAAQ,EAAC,GAAG,IAAI,CAAC;QACxB,MAAM,GAAG,GAAG,WAAW,QAAQ,EAAE,CAAC;QAElC,OAAO,IAAI,CAAC,WAAW,CAAC;0BACA,GAAG;GAC1B,CAAC,CAAC;IACJ,CAAC;CACD;AAED,kBAAe,0BAA0B,CAAC"}
@@ -0,0 +1,6 @@
1
+ import BlockResultSerializer from './../block';
2
+ import BackgroundBlock from './../../../type/block/background';
3
+ declare class BackgroundBlockResultSerializer extends BlockResultSerializer<BackgroundBlock> {
4
+ serializeContent(): string;
5
+ }
6
+ export default BackgroundBlockResultSerializer;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const block_1 = __importDefault(require("./../block.js"));
7
+ const get_hex_for_color_1 = __importDefault(require("./../../utility/get-hex-for-color.js"));
8
+ class BackgroundBlockResultSerializer extends block_1.default {
9
+ serializeContent() {
10
+ const { color } = this.getResult();
11
+ const hex = (0, get_hex_for_color_1.default)(color);
12
+ return this.wrapSection(`
13
+ <style>
14
+ main {
15
+ background: ${hex} !important;
16
+ }
17
+ </style>
18
+ `);
19
+ }
20
+ }
21
+ exports.default = BackgroundBlockResultSerializer;
22
+ //# sourceMappingURL=background.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"background.js","sourceRoot":"","sources":["../../../../../src/server/serializer/block/background.ts"],"names":[],"mappings":";;;;;AAAA,oEAA4D;AAE5D,yFAA8D;AAE9D,MAAM,+BAAgC,SAAQ,eAAsC;IAC5E,gBAAgB;QACtB,MAAM,EAAC,KAAK,EAAC,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QACjC,MAAM,GAAG,GAAG,IAAA,2BAAc,EAAC,KAAK,CAAC,CAAC;QAElC,OAAO,IAAI,CAAC,WAAW,CAAC;;;mBAGP,GAAG;;;GAGnB,CAAC,CAAC;IACJ,CAAC;CACD;AAED,kBAAe,+BAA+B,CAAC"}
@@ -0,0 +1,7 @@
1
+ import BlockResultSerializer from './../block';
2
+ import Block from './../../../type/block';
3
+ declare class CalendarBlockResultSerializer extends BlockResultSerializer<Block> {
4
+ serializeContent(): string;
5
+ private getTargetDate;
6
+ }
7
+ export default CalendarBlockResultSerializer;
@@ -0,0 +1,140 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const date_to_key_1 = __importDefault(require("./../../utility/date-to-key.js"));
7
+ const emoji_1 = __importDefault(require("./../../../enum/emoji.js"));
8
+ const block_1 = __importDefault(require("./../block.js"));
9
+ const get_end_of_week_1 = __importDefault(require("./../../utility/get-end-of-week.js"));
10
+ const date_occurs_before_1 = __importDefault(require("./../../utility/date-occurs-before.js"));
11
+ const get_short_ordinal_1 = __importDefault(require("./../../utility/get-short-ordinal.js"));
12
+ const date_to_path_1 = __importDefault(require("./../../utility/date-to-path.js"));
13
+ const get_ordinal_label_for_week_1 = __importDefault(require("./../../utility/get-ordinal-label-for-week.js"));
14
+ const week_to_path_1 = __importDefault(require("./../../utility/week-to-path.js"));
15
+ const create_toast_path_1 = __importDefault(require("./../../utility/create-toast-path.js"));
16
+ const color_1 = __importDefault(require("./../../../enum/color.js"));
17
+ const dates_are_equal_1 = __importDefault(require("./../../utility/dates-are-equal.js"));
18
+ const get_weekday_name_1 = __importDefault(require("./../../utility/get-weekday-name.js"));
19
+ const add_days_1 = __importDefault(require("./../../utility/add-days.js"));
20
+ const get_month_name_1 = __importDefault(require("./../../utility/get-month-name.js"));
21
+ const create_date_1 = __importDefault(require("./../../utility/create-date.js"));
22
+ const date_to_label_1 = __importDefault(require("./../../utility/date-to-label.js"));
23
+ const subtract_days_1 = __importDefault(require("./../../utility/subtract-days.js"));
24
+ class CalendarBlockResultSerializer extends block_1.default {
25
+ serializeContent() {
26
+ const target_date = this.getTargetDate();
27
+ const month_name = (0, get_month_name_1.default)(target_date);
28
+ const day_index = target_date.getUTCDate();
29
+ const year = target_date.getUTCFullYear();
30
+ const day_ordinal = (0, get_short_ordinal_1.default)(day_index);
31
+ const weekday_name = (0, get_weekday_name_1.default)(target_date);
32
+ const previous_date = (0, subtract_days_1.default)(target_date, 1);
33
+ const previous_path = (0, date_to_path_1.default)(previous_date);
34
+ const previous_label = (0, date_to_label_1.default)(previous_date);
35
+ const next_date = (0, add_days_1.default)(target_date, 1);
36
+ const next_path = (0, date_to_path_1.default)(next_date);
37
+ const next_label = (0, date_to_label_1.default)(next_date);
38
+ const predominant_week = (0, get_end_of_week_1.default)(target_date);
39
+ const week_label = (0, get_ordinal_label_for_week_1.default)(predominant_week);
40
+ const week_path = (0, week_to_path_1.default)(predominant_week);
41
+ const today = (0, create_date_1.default)();
42
+ const today_key = (0, date_to_key_1.default)(today);
43
+ const base_path = (0, date_to_path_1.default)(today);
44
+ const day_is_today = (0, dates_are_equal_1.default)(target_date, today);
45
+ const today_emoji = emoji_1.default.SUNSHINE;
46
+ const multiline_date = `
47
+ ${weekday_name}
48
+ <br />
49
+ ${month_name} ${day_ordinal}
50
+ <br />
51
+ ${year}
52
+ `;
53
+ const current_day_markup = !day_is_today ? `<h2>${multiline_date}</h2>` : `
54
+ <h2 class="nowrap">
55
+ ${today_emoji} today ${today_emoji}
56
+ </h2>
57
+
58
+ <em>${multiline_date}</em>
59
+ `;
60
+ const toast_message = `${emoji_1.default.SUNSHINE} today ${emoji_1.default.SUNSHINE}`;
61
+ const today_path = (0, create_toast_path_1.default)(`${base_path}?highlight_date=${today_key}`, {
62
+ message: toast_message,
63
+ color: color_1.default.YELLOW
64
+ });
65
+ const today_before_day = (0, date_occurs_before_1.default)(today, target_date);
66
+ const toast_prefix = today_before_day ? emoji_1.default.LEFT_ARROW_UNICODE : '';
67
+ const toast_suffix = today_before_day ? '' : emoji_1.default.RIGHT_ARROW_UNICODE;
68
+ const other_day_markup = day_is_today ? '' : `
69
+ <table class="fixed mt-8">
70
+ <tbody>
71
+ <tr>
72
+ <td>
73
+ <a class="biglink" href="${today_path}">
74
+ ${toast_prefix}
75
+ go to ${toast_message}
76
+ ${toast_suffix}
77
+ </a>
78
+ </td>
79
+ </tr>
80
+ </tbody>
81
+ </table>
82
+ `;
83
+ const full_previous_path = (() => {
84
+ if ((0, dates_are_equal_1.default)(today, previous_date)) {
85
+ return (0, create_toast_path_1.default)(previous_path, {
86
+ message: toast_message,
87
+ color: color_1.default.YELLOW
88
+ });
89
+ }
90
+ else {
91
+ return previous_path;
92
+ }
93
+ })();
94
+ const full_next_path = (() => {
95
+ if ((0, dates_are_equal_1.default)(today, next_date)) {
96
+ return (0, create_toast_path_1.default)(next_path, {
97
+ message: toast_message,
98
+ color: color_1.default.YELLOW
99
+ });
100
+ }
101
+ else {
102
+ return next_path;
103
+ }
104
+ })();
105
+ const primary_section_markup = this.wrapSection(`
106
+ <a class="biglink mb-8" href="${week_path}">
107
+ ${emoji_1.default.UP_ARROW_UNICODE} ${week_label} ${emoji_1.default.UP_ARROW_UNICODE}
108
+ </a>
109
+
110
+ <table class="fixed">
111
+ <tr>
112
+ <td class="biglink-container">
113
+ <a class="biglink stretch" href="${full_previous_path}">
114
+ ${emoji_1.default.LEFT_ARROW_UNICODE} ${previous_label}
115
+ </a>
116
+ </td>
117
+ <td>
118
+ ${current_day_markup}
119
+ </td>
120
+ <td class="biglink-container">
121
+ <a class="biglink stretch" href="${full_next_path}">
122
+ ${next_label} ${emoji_1.default.RIGHT_ARROW_UNICODE}
123
+ </a>
124
+ </td>
125
+ </tr>
126
+ </table>
127
+
128
+ ${other_day_markup}
129
+ `);
130
+ return `
131
+ ${primary_section_markup}
132
+ `;
133
+ }
134
+ getTargetDate() {
135
+ const date = (0, create_date_1.default)();
136
+ return date;
137
+ }
138
+ }
139
+ exports.default = CalendarBlockResultSerializer;
140
+ //# sourceMappingURL=calendar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calendar.js","sourceRoot":"","sources":["../../../../../src/server/serializer/block/calendar.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import BlockResultSerializer from './../block';
2
+ import DirectoryBlock from './../../../type/block/directory';
3
+ declare class DirectoryBlockResultSerializer extends BlockResultSerializer<DirectoryBlock> {
4
+ serializeContent(): string;
5
+ private serializeDirectoryItem;
6
+ }
7
+ export default DirectoryBlockResultSerializer;
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const path_1 = __importDefault(require("path"));
7
+ const block_1 = __importDefault(require("./../block.js"));
8
+ const emoji_1 = __importDefault(require("./../../../enum/emoji.js"));
9
+ const directory_item_type_1 = __importDefault(require("./../../../enum/directory-item-type.js"));
10
+ class DirectoryBlockResultSerializer extends block_1.default {
11
+ serializeContent() {
12
+ const block = this.getResult();
13
+ const { items, path } = block;
14
+ if (items === undefined || !Array.isArray(items)) {
15
+ return this.printWarning(`
16
+ Got invalid config for directory block (no items specified):
17
+ ${JSON.stringify(block)}
18
+ `);
19
+ }
20
+ const serialized_items = items.map((directory_item) => {
21
+ return this.serializeDirectoryItem(directory_item);
22
+ });
23
+ return this.wrapSection(`
24
+ <h4>contents of <em>${path}</em>:</h4>
25
+ <ul>
26
+ ${serialized_items.join('\n')}
27
+ </ul>
28
+ `);
29
+ }
30
+ serializeDirectoryItem(directory_item) {
31
+ const { filename, item_type } = directory_item;
32
+ const { page_path } = this.getMetadata();
33
+ const path = path_1.default.resolve(page_path, filename);
34
+ const emoji = (() => {
35
+ switch (item_type) {
36
+ case directory_item_type_1.default.DIRECTORY:
37
+ return emoji_1.default.FOLDER;
38
+ case directory_item_type_1.default.GENERIC_FILE:
39
+ default:
40
+ return emoji_1.default.FILE;
41
+ }
42
+ })();
43
+ return `
44
+ <li class="mt-8">
45
+ <a class="biglink yellow align-left" href="${path}">
46
+ ${emoji} ${filename}
47
+ </a>
48
+ </li>
49
+ `;
50
+ }
51
+ }
52
+ exports.default = DirectoryBlockResultSerializer;
53
+ //# sourceMappingURL=directory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"directory.js","sourceRoot":"","sources":["../../../../../src/server/serializer/block/directory.ts"],"names":[],"mappings":";;;;;AAAA,gDAAwB;AAExB,oEAA4D;AAC5D,uDAA+B;AAC/B,mFAAyD;AAGzD,MAAM,8BAA+B,SAAQ,eAAqC;IAC1E,gBAAgB;QACtB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAC/B,MAAM,EAAC,KAAK,EAAE,IAAI,EAAC,GAAG,KAAK,CAAC;QAE5B,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAClD,OAAO,IAAI,CAAC,YAAY,CAAC;;MAEtB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;IACvB,CAAC,CAAC;QACJ,CAAC;QAED,MAAM,gBAAgB,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,cAAc,EAAE,EAAE;YACrD,OAAO,IAAI,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,WAAW,CAAC;yBACD,IAAI;;MAEvB,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;;GAE9B,CAAC,CAAC;IACJ,CAAC;IAEO,sBAAsB,CAAC,cAA6B;QAC3D,MAAM,EAAC,QAAQ,EAAE,SAAS,EAAC,GAAG,cAAc,CAAC;QAC7C,MAAM,EAAC,SAAS,EAAC,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,IAAI,GAAG,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAE/C,MAAM,KAAK,GAAG,CAAC,GAAG,EAAE;YACnB,QAAQ,SAAS,EAAE,CAAC;gBACnB,KAAK,6BAAiB,CAAC,SAAS;oBAC/B,OAAO,eAAK,CAAC,MAAM,CAAC;gBACrB,KAAK,6BAAiB,CAAC,YAAY,CAAC;gBACpC;oBACC,OAAO,eAAK,CAAC,IAAI,CAAC;YACpB,CAAC;QACF,CAAC,CAAC,EAAE,CAAC;QAEL,OAAO;;iDAEwC,IAAI;OAC9C,KAAK,IAAI,QAAQ;;;GAGrB,CAAC;IACH,CAAC;CACD;AAED,kBAAe,8BAA8B,CAAC"}
@@ -0,0 +1,6 @@
1
+ import BlockResultSerializer from './../block';
2
+ import EphemeralBlock from './../../../type/block/ephemeral';
3
+ declare class EphemeralBlockResultSerializer extends BlockResultSerializer<EphemeralBlock> {
4
+ serializeContent(): string;
5
+ }
6
+ export default EphemeralBlockResultSerializer;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const block_1 = __importDefault(require("./../block.js"));
7
+ class EphemeralBlockResultSerializer extends block_1.default {
8
+ serializeContent() {
9
+ const { label } = this.getResult();
10
+ return this.wrapSection(`
11
+ <span class="ephemeral">${label}</span>
12
+ `);
13
+ }
14
+ }
15
+ exports.default = EphemeralBlockResultSerializer;
16
+ //# sourceMappingURL=ephemeral.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ephemeral.js","sourceRoot":"","sources":["../../../../../src/server/serializer/block/ephemeral.ts"],"names":[],"mappings":";;;;;AAAA,oEAA4D;AAG5D,MAAM,8BAA+B,SAAQ,eAAqC;IAC1E,gBAAgB;QACtB,MAAM,EAAC,KAAK,EAAC,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAEjC,OAAO,IAAI,CAAC,WAAW,CAAC;6BACG,KAAK;GAC/B,CAAC,CAAC;IACJ,CAAC;CACD;AAED,kBAAe,8BAA8B,CAAC"}
@@ -0,0 +1,14 @@
1
+ import BlockResultSerializer from './../block';
2
+ import FolderBlock from './../../../type/block/folder';
3
+ declare class FolderBlockResultSerializer extends BlockResultSerializer<FolderBlock> {
4
+ serializeContent(): string;
5
+ private getBlockId;
6
+ private getBlockTitle;
7
+ private getColor;
8
+ private getEmoji;
9
+ private serializeSubtitle;
10
+ private getSubtitle;
11
+ private getBlockPath;
12
+ private getCreatorUsername;
13
+ }
14
+ export default FolderBlockResultSerializer;
@@ -0,0 +1,145 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const get_element_id_for_block_1 = __importDefault(require("./../../utility/get-element-id-for-block.js"));
7
+ const block_1 = __importDefault(require("./../block.js"));
8
+ const public_1 = __importDefault(require("./../../../constant/role/public.js"));
9
+ const is_index_path_1 = __importDefault(require("./../../utility/is-index-path.js"));
10
+ const creator_1 = __importDefault(require("./../../../constant/role/creator.js"));
11
+ const unknown_1 = __importDefault(require("./../../../constant/role/unknown.js"));
12
+ const role_matches_1 = __importDefault(require("./../../utility/role-matches.js"));
13
+ const color_1 = __importDefault(require("./../../../enum/color.js"));
14
+ const get_url_for_role_1 = __importDefault(require("./../../utility/get-url-for-role.js"));
15
+ const emoji_1 = __importDefault(require("./../../../enum/emoji.js"));
16
+ const get_path_for_folder_block_1 = __importDefault(require("./../../utility/get-path-for-folder-block.js"));
17
+ class FolderBlockResultSerializer extends block_1.default {
18
+ serializeContent() {
19
+ const block_id = this.getBlockId();
20
+ const title = this.getBlockTitle();
21
+ const color = this.getColor();
22
+ const subtitle = this.serializeSubtitle();
23
+ const emoji = this.getEmoji();
24
+ const path = this.getBlockPath();
25
+ const permissions_suffix = (() => {
26
+ const read_role = this.getRequiredReadRole();
27
+ const has_permissions = !(0, role_matches_1.default)(read_role, public_1.default);
28
+ if (!has_permissions) {
29
+ return '';
30
+ }
31
+ const message = (() => {
32
+ const requires_unknown = (0, role_matches_1.default)(read_role, unknown_1.default);
33
+ if (requires_unknown) {
34
+ return `
35
+ ${emoji_1.default.WARNING_SIGN}
36
+ configured with invalid role
37
+ `;
38
+ }
39
+ const requires_creator = (0, role_matches_1.default)(read_role, creator_1.default);
40
+ const can_read = this.canRead();
41
+ const status_emoji = can_read ? emoji_1.default.COMPLETED_CHECKMARK : emoji_1.default.RED_X;
42
+ if (requires_creator) {
43
+ const creator_username = this.getCreatorUsername();
44
+ const creator_url = `/accounts/${creator_username}`;
45
+ return `
46
+ ${status_emoji}
47
+ only <a href="${creator_url}">[${creator_username}]</a>
48
+ can access
49
+ `;
50
+ }
51
+ const read_role_url = (0, get_url_for_role_1.default)(read_role);
52
+ return `
53
+ ${status_emoji} requires at least:
54
+ <a href="${read_role_url}">[${read_role.name}]</a>
55
+ `;
56
+ })();
57
+ return `
58
+ <div class="align-right text-smaller half-opacity mt-8 mb-16">
59
+ ${message}
60
+ </div>
61
+ `;
62
+ })();
63
+ return this.wrapSection(`
64
+ <a data-role="block_activation" class="biglink ${color} wrap" href="${path}">
65
+ <table>
66
+ <tr>
67
+ <td class="p-8" style="width:15%">
68
+ <h1 class="m-0">${emoji}</h1>
69
+ </td>
70
+ <td class="p-8 align-left">
71
+ <h4 id="${block_id}-title-target">${title}</h4>
72
+ ${subtitle}
73
+ </td>
74
+ <td class="p-8" style="width:15%">
75
+ ${emoji_1.default.RIGHT_ARROW_UNICODE}
76
+ </td>
77
+ </tr>
78
+ </table>
79
+ </a>
80
+
81
+ ${permissions_suffix}
82
+ `);
83
+ }
84
+ getBlockId() {
85
+ const block = this.getResult();
86
+ const metadata = this.getMetadata();
87
+ return (0, get_element_id_for_block_1.default)(block, metadata);
88
+ }
89
+ getBlockTitle() {
90
+ const block_path = this.getBlockPath();
91
+ if ((0, is_index_path_1.default)(block_path)) {
92
+ return 'home';
93
+ }
94
+ const { title } = this.getResult();
95
+ return title || '<em>no text supplied</em>';
96
+ }
97
+ getColor() {
98
+ if (!this.canRead()) {
99
+ return color_1.default.GREY;
100
+ }
101
+ const { color } = this.getResult();
102
+ return color;
103
+ }
104
+ getEmoji() {
105
+ if (!this.canRead()) {
106
+ return emoji_1.default.LOCKED;
107
+ }
108
+ const { emoji } = this.getResult();
109
+ return emoji;
110
+ }
111
+ serializeSubtitle() {
112
+ const block = this.getResult();
113
+ const subtitle = this.getSubtitle();
114
+ const metadata = this.getMetadata();
115
+ const path = this.getBlockPath();
116
+ const block_id = (0, get_element_id_for_block_1.default)(block, metadata);
117
+ const has_subtitle = subtitle !== '';
118
+ const path_visibility_class = has_subtitle ? 'hidden' : '';
119
+ const subtitle_visibility_class = has_subtitle ? '' : 'hidden';
120
+ return `
121
+ <code id="${block_id}-path-target" class="${path_visibility_class} text-smaller three-quarter-opacity">${path}</code>
122
+ <h5 class="${subtitle_visibility_class} three-quarter-opacity m-0 mt-4" id="${block_id}-subtitle-target">
123
+ ${subtitle}
124
+ </h5>
125
+ `;
126
+ }
127
+ getSubtitle() {
128
+ const { subtitle } = this.getResult();
129
+ return subtitle;
130
+ }
131
+ getBlockPath() {
132
+ const block = this.getResult();
133
+ const { page_path } = this.getMetadata();
134
+ return (0, get_path_for_folder_block_1.default)({
135
+ block,
136
+ base_path: page_path
137
+ });
138
+ }
139
+ getCreatorUsername() {
140
+ const { creator_username } = this.getMetadata();
141
+ return creator_username;
142
+ }
143
+ }
144
+ exports.default = FolderBlockResultSerializer;
145
+ //# sourceMappingURL=folder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"folder.js","sourceRoot":"","sources":["../../../../../src/server/serializer/block/folder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import BlockResultSerializer from './../block';
2
+ import HeaderBlock from './../../../type/block/header';
3
+ declare class HeaderBlockResultSerializer extends BlockResultSerializer<HeaderBlock> {
4
+ serializeContent(): string;
5
+ }
6
+ export default HeaderBlockResultSerializer;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const block_1 = __importDefault(require("./../block.js"));
7
+ const color_1 = __importDefault(require("./../../../enum/color.js"));
8
+ const header_size_1 = __importDefault(require("./../../../enum/header-size.js"));
9
+ class HeaderBlockResultSerializer extends block_1.default {
10
+ serializeContent() {
11
+ if (!this.canRead()) {
12
+ return this.serializePermissionDenied();
13
+ }
14
+ const block = this.getResult();
15
+ const { title, size } = block;
16
+ const tag = (() => {
17
+ switch (size) {
18
+ case header_size_1.default.SMALL:
19
+ return 'h3';
20
+ case header_size_1.default.MEDIUM:
21
+ return 'h2';
22
+ case header_size_1.default.LARGE:
23
+ default:
24
+ return 'h1';
25
+ }
26
+ })();
27
+ const color = block.color || color_1.default.WHITE;
28
+ const color_class = `text-${color}`;
29
+ return this.wrapSection(`
30
+ <${tag} class="${color_class}">${title}</${tag}>
31
+ `);
32
+ }
33
+ }
34
+ exports.default = HeaderBlockResultSerializer;
35
+ //# sourceMappingURL=header.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"header.js","sourceRoot":"","sources":["../../../../../src/server/serializer/block/header.ts"],"names":[],"mappings":";;;;;AAAA,oEAA4D;AAC5D,uDAA+B;AAE/B,mEAA0C;AAE1C,MAAM,2BAA4B,SAAQ,eAAkC;IACpE,gBAAgB;QACtB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACzC,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAC/B,MAAM,EAAC,KAAK,EAAE,IAAI,EAAC,GAAG,KAAK,CAAC;QAE5B,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE;YACjB,QAAQ,IAAI,EAAE,CAAC;gBACd,KAAK,qBAAU,CAAC,KAAK;oBACpB,OAAO,IAAI,CAAC;gBACb,KAAK,qBAAU,CAAC,MAAM;oBACrB,OAAO,IAAI,CAAC;gBACb,KAAK,qBAAU,CAAC,KAAK,CAAC;gBACtB;oBACC,OAAO,IAAI,CAAC;YACd,CAAC;QACF,CAAC,CAAC,EAAE,CAAC;QAEL,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,eAAK,CAAC,KAAK,CAAC;QACzC,MAAM,WAAW,GAAG,QAAQ,KAAK,EAAE,CAAC;QAEpC,OAAO,IAAI,CAAC,WAAW,CAAC;MACpB,GAAG,WAAW,WAAW,KAAK,KAAK,KAAK,GAAG;GAC9C,CAAC,CAAC;IACJ,CAAC;CACD;AAED,kBAAe,2BAA2B,CAAC"}
@@ -0,0 +1,6 @@
1
+ import BlockResultSerializer from './../block';
2
+ import ImageBlock from './../../../type/block/image';
3
+ declare class ImageBlockResultSerializer extends BlockResultSerializer<ImageBlock> {
4
+ serializeContent(): string;
5
+ }
6
+ export default ImageBlockResultSerializer;
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const path_1 = __importDefault(require("path"));
7
+ const errors_1 = require("./../../../lib/errors/index.js");
8
+ const block_1 = __importDefault(require("./../block.js"));
9
+ const get_thumbnail_filename_1 = __importDefault(require("./../../utility/get-thumbnail-filename.js"));
10
+ const get_element_id_for_block_1 = __importDefault(require("./../../utility/get-element-id-for-block.js"));
11
+ class ImageBlockResultSerializer extends block_1.default {
12
+ serializeContent() {
13
+ if (!this.canRead()) {
14
+ return this.serializePermissionDenied();
15
+ }
16
+ const page_path = this.getPagePath();
17
+ const block = this.getResult();
18
+ const { file } = block;
19
+ const metadata = this.getMetadata();
20
+ const block_id = (0, get_element_id_for_block_1.default)(block, metadata);
21
+ if (file === null) {
22
+ return this.wrapSection(`
23
+ <div id="${block_id}-image-container">
24
+ <em>(no image specified)</em>
25
+ </div>
26
+ `);
27
+ }
28
+ if (file === undefined) {
29
+ throw new errors_1.InvariantViolation('Image block did not contain a file');
30
+ }
31
+ const { filename } = file;
32
+ const thumbnail_filename = (0, get_thumbnail_filename_1.default)(filename);
33
+ const thumbnail_filepath = path_1.default.resolve(page_path, `./${thumbnail_filename}`);
34
+ const full_filepath = path_1.default.resolve(page_path, `./${filename}`);
35
+ return this.wrapSection(`
36
+ <div id="${block_id}-image-container">
37
+ <a data-role="block_activation" href="${full_filepath}">
38
+ <img class="thumbnail" src="${thumbnail_filepath}" />
39
+ </a>
40
+ </div>
41
+ `);
42
+ }
43
+ }
44
+ exports.default = ImageBlockResultSerializer;
45
+ //# sourceMappingURL=image.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image.js","sourceRoot":"","sources":["../../../../../src/server/serializer/block/image.ts"],"names":[],"mappings":";;;;;AAAA,gDAAwB;AAExB,uCAA8C;AAE9C,oEAA4D;AAE5D,mGAAyE;AACzE,uGAA2E;AAE3E,MAAM,0BAA2B,SAAQ,eAAiC;IAClE,gBAAgB;QACtB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACzC,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAC/B,MAAM,EAAC,IAAI,EAAC,GAAG,KAAK,CAAC;QACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,IAAA,kCAAoB,EAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAEvD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC,WAAW,CAAC;eACZ,QAAQ;;;IAGnB,CAAC,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,2BAAkB,CAAC,oCAAoC,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,EAAC,QAAQ,EAAC,GAAG,IAAI,CAAC;QACxB,MAAM,kBAAkB,GAAG,IAAA,gCAAoB,EAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,kBAAkB,GAAG,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,kBAAkB,EAAE,CAAC,CAAC;QAC9E,MAAM,aAAa,GAAG,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,QAAQ,EAAE,CAAC,CAAC;QAE/D,OAAO,IAAI,CAAC,WAAW,CAAC;cACZ,QAAQ;4CACsB,aAAa;mCACtB,kBAAkB;;;GAGlD,CAAC,CAAC;IACJ,CAAC;CACD;AAED,kBAAe,0BAA0B,CAAC"}
@@ -0,0 +1,6 @@
1
+ import BlockResultSerializer from './../block';
2
+ import LinkBlock from './../../../type/block/link';
3
+ declare class LinkBlockResultSerializer extends BlockResultSerializer<LinkBlock> {
4
+ serializeContent(): string;
5
+ }
6
+ export default LinkBlockResultSerializer;