taleem-engine 1.0.0

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 (65) hide show
  1. package/package.json +51 -0
  2. package/readme.md +472 -0
  3. package/src/compiler/TaleemCompiler.js +122 -0
  4. package/src/compiler/animation-primtives/eqHighlightOne.js +41 -0
  5. package/src/compiler/animation-primtives/progressiveReveal.js +14 -0
  6. package/src/compiler/animation-primtives/runPrimitive.js +71 -0
  7. package/src/compiler/animation-primtives/showAllHighlightOne.js +34 -0
  8. package/src/compiler/animation-primtives/showOneAtATime.js +24 -0
  9. package/src/compiler/templates/compileBarChart.js +91 -0
  10. package/src/compiler/templates/compileBulletList.js +37 -0
  11. package/src/compiler/templates/compileEq.js +135 -0
  12. package/src/compiler/templates/compileFillImage.js +50 -0
  13. package/src/compiler/templates/compileFocusList.js +75 -0
  14. package/src/compiler/templates/compileImageGrid.js +60 -0
  15. package/src/compiler/templates/compileImageLeftBulletsRight.js +78 -0
  16. package/src/compiler/templates/compileImageRightBulletsLeft.js +79 -0
  17. package/src/compiler/templates/compileImageSlide.js +52 -0
  18. package/src/compiler/templates/compileImageStrip.js +60 -0
  19. package/src/compiler/templates/compileImageWithCaption.js +75 -0
  20. package/src/compiler/templates/compileImageWithTitle.js +75 -0
  21. package/src/compiler/templates/compileKeyIdeasSlide.js +62 -0
  22. package/src/compiler/templates/compileProgressbar.js +74 -0
  23. package/src/compiler/templates/compileQuoteSlide.js +72 -0
  24. package/src/compiler/templates/compileSkeletonSlide.js +80 -0
  25. package/src/compiler/templates/compileTable.js +70 -0
  26. package/src/compiler/templates/compileTextGrid.js +57 -0
  27. package/src/compiler/templates/compileTitleAndPara.js +79 -0
  28. package/src/compiler/templates/compileTitleAndSubtitle.js +84 -0
  29. package/src/compiler/templates/compileTwoColumnText.js +116 -0
  30. package/src/compiler/templates/helpers/addIdToItems.js +17 -0
  31. package/src/compiler/templates/helpers/buildSequentialStates.js +24 -0
  32. package/src/compiler/templates/index.js +108 -0
  33. package/src/compiler/utils/applyBackground.js +9 -0
  34. package/src/compiler/utils/assignMockTimings.js +47 -0
  35. package/src/compiler/utils/compileTimings.js +16 -0
  36. package/src/compiler/utils/getDeckImages.js +40 -0
  37. package/src/compiler/utils/resolveAssetPaths.js +42 -0
  38. package/src/compiler/utils/resolveBackground.js +29 -0
  39. package/src/dsl/Taleem.js +400 -0
  40. package/src/dsl/TimelineContext.js +256 -0
  41. package/src/dsl/slides/BarChart.js +31 -0
  42. package/src/dsl/slides/BulletListBuilder.js +23 -0
  43. package/src/dsl/slides/Eq.js +65 -0
  44. package/src/dsl/slides/FillImage.js +25 -0
  45. package/src/dsl/slides/FocusListBuilder.js +37 -0
  46. package/src/dsl/slides/ImageGrid.js +25 -0
  47. package/src/dsl/slides/ImageLeftBulletsRight.js +37 -0
  48. package/src/dsl/slides/ImageRightBulletsLeft.js +37 -0
  49. package/src/dsl/slides/ImageSlide.js +25 -0
  50. package/src/dsl/slides/ImageStrip.js +25 -0
  51. package/src/dsl/slides/ImageWithCaption.js +37 -0
  52. package/src/dsl/slides/ImageWithTitle.js +37 -0
  53. package/src/dsl/slides/KeyIdeasSlide.js +31 -0
  54. package/src/dsl/slides/Progressbar.js +31 -0
  55. package/src/dsl/slides/QuoteSlide.js +37 -0
  56. package/src/dsl/slides/SkeletonSlideBuilder.js +43 -0
  57. package/src/dsl/slides/Table.js +25 -0
  58. package/src/dsl/slides/TextGrid.js +25 -0
  59. package/src/dsl/slides/TitleAndPara.js +37 -0
  60. package/src/dsl/slides/TitleAndSubtitle.js +37 -0
  61. package/src/dsl/slides/TwoColumnText.js +61 -0
  62. package/src/index.js +4 -0
  63. package/src/primitives/index.js +0 -0
  64. package/src/types/index.js +0 -0
  65. package/src/utils/index.js +0 -0
@@ -0,0 +1,65 @@
1
+ export default class Eq {
2
+ constructor(slide, builder) {
3
+ this.slide = slide;
4
+
5
+ this.builder = builder;
6
+ }
7
+
8
+ line(
9
+ content,
10
+ showAt,
11
+ spItems = []
12
+ ) {
13
+ this.slide.data.push({
14
+ name: "line",
15
+
16
+ content,
17
+
18
+ showAt,
19
+
20
+ spItems
21
+ });
22
+
23
+ return this;
24
+ }
25
+
26
+ math(
27
+ content,
28
+ showAt,
29
+ spItems = []
30
+ ) {
31
+ this.slide.data.push({
32
+ name: "math",
33
+
34
+ content,
35
+
36
+ showAt,
37
+
38
+ spItems
39
+ });
40
+
41
+ return this;
42
+ }
43
+
44
+ title(
45
+ content,
46
+ showAt,
47
+ spItems = []
48
+ ) {
49
+ this.slide.data.push({
50
+ name: "title",
51
+
52
+ content,
53
+
54
+ showAt,
55
+
56
+ spItems
57
+ });
58
+
59
+ return this;
60
+ }
61
+
62
+ done() {
63
+ return this.builder;
64
+ }
65
+ }
@@ -0,0 +1,25 @@
1
+ // /src/dsl/slides/FillImage.js
2
+
3
+ export default class FillImage {
4
+ constructor(slide, builder) {
5
+ this.slide = slide;
6
+
7
+ this.builder = builder;
8
+ }
9
+
10
+ image(content, showAt) {
11
+ this.slide.data.push({
12
+ name: "image",
13
+
14
+ content,
15
+
16
+ showAt
17
+ });
18
+
19
+ return this;
20
+ }
21
+
22
+ done() {
23
+ return this.builder;
24
+ }
25
+ }
@@ -0,0 +1,37 @@
1
+ // /src/dsl/slides/FocusListBuilder.js
2
+
3
+ export default class FocusListBuilder {
4
+ constructor(slide, builder) {
5
+ this.slide = slide;
6
+
7
+ this.builder = builder;
8
+ }
9
+
10
+ heading(content, showAt) {
11
+ this.slide.data.push({
12
+ name: "heading",
13
+
14
+ content,
15
+
16
+ showAt
17
+ });
18
+
19
+ return this;
20
+ }
21
+
22
+ bullet(content, showAt) {
23
+ this.slide.data.push({
24
+ name: "bullet",
25
+
26
+ content,
27
+
28
+ showAt
29
+ });
30
+
31
+ return this;
32
+ }
33
+
34
+ done() {
35
+ return this.builder;
36
+ }
37
+ }
@@ -0,0 +1,25 @@
1
+ // /src/dsl/slides/ImageGrid.js
2
+
3
+ export default class ImageGrid {
4
+ constructor(slide, builder) {
5
+ this.slide = slide;
6
+
7
+ this.builder = builder;
8
+ }
9
+
10
+ image(content, showAt) {
11
+ this.slide.data.push({
12
+ name: "image",
13
+
14
+ content,
15
+
16
+ showAt
17
+ });
18
+
19
+ return this;
20
+ }
21
+
22
+ done() {
23
+ return this.builder;
24
+ }
25
+ }
@@ -0,0 +1,37 @@
1
+ // /src/dsl/slides/ImageLeftBulletsRight.js
2
+
3
+ export default class ImageLeftBulletsRight {
4
+ constructor(slide, builder) {
5
+ this.slide = slide;
6
+
7
+ this.builder = builder;
8
+ }
9
+
10
+ image(content, showAt) {
11
+ this.slide.data.push({
12
+ name: "image",
13
+
14
+ content,
15
+
16
+ showAt
17
+ });
18
+
19
+ return this;
20
+ }
21
+
22
+ bullet(content, showAt) {
23
+ this.slide.data.push({
24
+ name: "bullet",
25
+
26
+ content,
27
+
28
+ showAt
29
+ });
30
+
31
+ return this;
32
+ }
33
+
34
+ done() {
35
+ return this.builder;
36
+ }
37
+ }
@@ -0,0 +1,37 @@
1
+ // /src/dsl/slides/ImageRightBulletsLeft.js
2
+
3
+ export default class ImageRightBulletsLeft {
4
+ constructor(slide, builder) {
5
+ this.slide = slide;
6
+
7
+ this.builder = builder;
8
+ }
9
+
10
+ image(content, showAt) {
11
+ this.slide.data.push({
12
+ name: "image",
13
+
14
+ content,
15
+
16
+ showAt
17
+ });
18
+
19
+ return this;
20
+ }
21
+
22
+ bullet(content, showAt) {
23
+ this.slide.data.push({
24
+ name: "bullet",
25
+
26
+ content,
27
+
28
+ showAt
29
+ });
30
+
31
+ return this;
32
+ }
33
+
34
+ done() {
35
+ return this.builder;
36
+ }
37
+ }
@@ -0,0 +1,25 @@
1
+ // /src/dsl/slides/ImageSlide.js
2
+
3
+ export default class ImageSlide {
4
+ constructor(slide, builder) {
5
+ this.slide = slide;
6
+
7
+ this.builder = builder;
8
+ }
9
+
10
+ image(content, showAt) {
11
+ this.slide.data.push({
12
+ name: "image",
13
+
14
+ content,
15
+
16
+ showAt
17
+ });
18
+
19
+ return this;
20
+ }
21
+
22
+ done() {
23
+ return this.builder;
24
+ }
25
+ }
@@ -0,0 +1,25 @@
1
+ // /src/dsl/slides/ImageStrip.js
2
+
3
+ export default class ImageStrip {
4
+ constructor(slide, builder) {
5
+ this.slide = slide;
6
+
7
+ this.builder = builder;
8
+ }
9
+
10
+ image(content, showAt) {
11
+ this.slide.data.push({
12
+ name: "image",
13
+
14
+ content,
15
+
16
+ showAt
17
+ });
18
+
19
+ return this;
20
+ }
21
+
22
+ done() {
23
+ return this.builder;
24
+ }
25
+ }
@@ -0,0 +1,37 @@
1
+ // /src/dsl/slides/ImageWithCaption.js
2
+
3
+ export default class ImageWithCaption {
4
+ constructor(slide, builder) {
5
+ this.slide = slide;
6
+
7
+ this.builder = builder;
8
+ }
9
+
10
+ image(content, showAt) {
11
+ this.slide.data.push({
12
+ name: "image",
13
+
14
+ content,
15
+
16
+ showAt
17
+ });
18
+
19
+ return this;
20
+ }
21
+
22
+ caption(content, showAt) {
23
+ this.slide.data.push({
24
+ name: "caption",
25
+
26
+ content,
27
+
28
+ showAt
29
+ });
30
+
31
+ return this;
32
+ }
33
+
34
+ done() {
35
+ return this.builder;
36
+ }
37
+ }
@@ -0,0 +1,37 @@
1
+ // /src/dsl/slides/ImageWithTitle.js
2
+
3
+ export default class ImageWithTitle {
4
+ constructor(slide, builder) {
5
+ this.slide = slide;
6
+
7
+ this.builder = builder;
8
+ }
9
+
10
+ title(content, showAt) {
11
+ this.slide.data.push({
12
+ name: "title",
13
+
14
+ content,
15
+
16
+ showAt
17
+ });
18
+
19
+ return this;
20
+ }
21
+
22
+ image(content, showAt) {
23
+ this.slide.data.push({
24
+ name: "image",
25
+
26
+ content,
27
+
28
+ showAt
29
+ });
30
+
31
+ return this;
32
+ }
33
+
34
+ done() {
35
+ return this.builder;
36
+ }
37
+ }
@@ -0,0 +1,31 @@
1
+ // /src/dsl/slides/KeyIdeasSlide.js
2
+
3
+ export default class KeyIdeasSlide {
4
+ constructor(slide, builder) {
5
+ this.slide = slide;
6
+
7
+ this.builder = builder;
8
+ }
9
+
10
+ card(
11
+ icon,
12
+ label,
13
+ showAt
14
+ ) {
15
+ this.slide.data.push({
16
+ name: "card",
17
+
18
+ icon,
19
+
20
+ label,
21
+
22
+ showAt
23
+ });
24
+
25
+ return this;
26
+ }
27
+
28
+ done() {
29
+ return this.builder;
30
+ }
31
+ }
@@ -0,0 +1,31 @@
1
+ // /src/dsl/slides/Progressbar.js
2
+
3
+ export default class Progressbar {
4
+ constructor(slide, builder) {
5
+ this.slide = slide;
6
+
7
+ this.builder = builder;
8
+ }
9
+
10
+ bar(
11
+ label,
12
+ value,
13
+ showAt
14
+ ) {
15
+ this.slide.data.push({
16
+ name: "bar",
17
+
18
+ label,
19
+
20
+ value,
21
+
22
+ showAt
23
+ });
24
+
25
+ return this;
26
+ }
27
+
28
+ done() {
29
+ return this.builder;
30
+ }
31
+ }
@@ -0,0 +1,37 @@
1
+ // /src/dsl/slides/QuoteSlide.js
2
+
3
+ export default class QuoteSlide {
4
+ constructor(slide, builder) {
5
+ this.slide = slide;
6
+
7
+ this.builder = builder;
8
+ }
9
+
10
+ quote(content, showAt) {
11
+ this.slide.data.push({
12
+ name: "quote",
13
+
14
+ content,
15
+
16
+ showAt
17
+ });
18
+
19
+ return this;
20
+ }
21
+
22
+ author(content, showAt) {
23
+ this.slide.data.push({
24
+ name: "author",
25
+
26
+ content,
27
+
28
+ showAt
29
+ });
30
+
31
+ return this;
32
+ }
33
+
34
+ done() {
35
+ return this.builder;
36
+ }
37
+ }
@@ -0,0 +1,43 @@
1
+ // /src/dsl/slides/SkeletonSlideBuilder.js
2
+
3
+ export default class SkeletonSlideBuilder {
4
+ constructor(slide, builder) {
5
+ this.slide = slide;
6
+
7
+ this.builder = builder;
8
+ }
9
+
10
+ title(content, showAt) {
11
+ this.slide.data.push({
12
+ name: "title",
13
+ content,
14
+ showAt
15
+ });
16
+
17
+ return this;
18
+ }
19
+
20
+ para(content, showAt) {
21
+ this.slide.data.push({
22
+ name: "para",
23
+ content,
24
+ showAt
25
+ });
26
+
27
+ return this;
28
+ }
29
+
30
+ image(content, showAt) {
31
+ this.slide.data.push({
32
+ name: "image",
33
+ content,
34
+ showAt
35
+ });
36
+
37
+ return this;
38
+ }
39
+
40
+ done() {
41
+ return this.builder;
42
+ }
43
+ }
@@ -0,0 +1,25 @@
1
+ // /src/dsl/slides/Table.js
2
+
3
+ export default class Table {
4
+ constructor(slide, builder) {
5
+ this.slide = slide;
6
+
7
+ this.builder = builder;
8
+ }
9
+
10
+ row(content, showAt) {
11
+ this.slide.data.push({
12
+ name: "row",
13
+
14
+ content,
15
+
16
+ showAt
17
+ });
18
+
19
+ return this;
20
+ }
21
+
22
+ done() {
23
+ return this.builder;
24
+ }
25
+ }
@@ -0,0 +1,25 @@
1
+ // /src/dsl/slides/TextGrid.js
2
+
3
+ export default class TextGrid {
4
+ constructor(slide, builder) {
5
+ this.slide = slide;
6
+
7
+ this.builder = builder;
8
+ }
9
+
10
+ text(content, showAt) {
11
+ this.slide.data.push({
12
+ name: "text",
13
+
14
+ content,
15
+
16
+ showAt
17
+ });
18
+
19
+ return this;
20
+ }
21
+
22
+ done() {
23
+ return this.builder;
24
+ }
25
+ }
@@ -0,0 +1,37 @@
1
+ // /src/dsl/slides/TitleAndPara.js
2
+
3
+ export default class TitleAndPara {
4
+ constructor(slide, builder) {
5
+ this.slide = slide;
6
+
7
+ this.builder = builder;
8
+ }
9
+
10
+ title(content, showAt) {
11
+ this.slide.data.push({
12
+ name: "title",
13
+
14
+ content,
15
+
16
+ showAt
17
+ });
18
+
19
+ return this;
20
+ }
21
+
22
+ para(content, showAt) {
23
+ this.slide.data.push({
24
+ name: "para",
25
+
26
+ content,
27
+
28
+ showAt
29
+ });
30
+
31
+ return this;
32
+ }
33
+
34
+ done() {
35
+ return this.builder;
36
+ }
37
+ }
@@ -0,0 +1,37 @@
1
+ // /src/dsl/slides/TitleAndSubtitle.js
2
+
3
+ export default class TitleAndSubtitle {
4
+ constructor(slide, builder) {
5
+ this.slide = slide;
6
+
7
+ this.builder = builder;
8
+ }
9
+
10
+ title(content, showAt) {
11
+ this.slide.data.push({
12
+ name: "title",
13
+
14
+ content,
15
+
16
+ showAt
17
+ });
18
+
19
+ return this;
20
+ }
21
+
22
+ subtitle(content, showAt) {
23
+ this.slide.data.push({
24
+ name: "subtitle",
25
+
26
+ content,
27
+
28
+ showAt
29
+ });
30
+
31
+ return this;
32
+ }
33
+
34
+ done() {
35
+ return this.builder;
36
+ }
37
+ }
@@ -0,0 +1,61 @@
1
+ // /src/dsl/slides/TwoColumnText.js
2
+
3
+ export default class TwoColumnText {
4
+ constructor(slide, builder) {
5
+ this.slide = slide;
6
+
7
+ this.builder = builder;
8
+ }
9
+
10
+ leftText(content, showAt) {
11
+ this.slide.data.push({
12
+ name: "leftText",
13
+
14
+ content,
15
+
16
+ showAt
17
+ });
18
+
19
+ return this;
20
+ }
21
+
22
+ rightText(content, showAt) {
23
+ this.slide.data.push({
24
+ name: "rightText",
25
+
26
+ content,
27
+
28
+ showAt
29
+ });
30
+
31
+ return this;
32
+ }
33
+
34
+ leftImage(content, showAt) {
35
+ this.slide.data.push({
36
+ name: "leftImage",
37
+
38
+ content,
39
+
40
+ showAt
41
+ });
42
+
43
+ return this;
44
+ }
45
+
46
+ rightImage(content, showAt) {
47
+ this.slide.data.push({
48
+ name: "rightImage",
49
+
50
+ content,
51
+
52
+ showAt
53
+ });
54
+
55
+ return this;
56
+ }
57
+
58
+ done() {
59
+ return this.builder;
60
+ }
61
+ }
package/src/index.js ADDED
@@ -0,0 +1,4 @@
1
+
2
+ import Taleem from "./dsl/Taleem.js";
3
+
4
+ export {Taleem }
File without changes
File without changes
File without changes