@times-design-system/components-wordpress 1.2.1 → 1.2.2-alpha.1

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 (51) hide show
  1. package/BLOCK_CREATION_CHECKLIST.md +39 -16
  2. package/README.md +4 -4
  3. package/TRANSFORMATION_GUIDE.md +3 -3
  4. package/block.json +1 -1
  5. package/dist/block.json +1 -1
  6. package/dist/blocks/ad-container/block.json +2 -1
  7. package/dist/blocks/ad-container/render.php +27 -0
  8. package/dist/blocks/button/block.json +2 -1
  9. package/dist/blocks/button/render.php +71 -0
  10. package/dist/blocks/chip/block.json +2 -1
  11. package/dist/blocks/chip/render.php +40 -0
  12. package/dist/blocks/divider/block.json +2 -1
  13. package/dist/blocks/divider/render.php +31 -0
  14. package/dist/blocks/flag/block.json +2 -1
  15. package/dist/blocks/flag/render.php +34 -0
  16. package/dist/blocks/icon-button/block.json +2 -1
  17. package/dist/blocks/icon-button/render.php +46 -0
  18. package/dist/blocks/input/block.json +2 -1
  19. package/dist/blocks/input/render.php +39 -0
  20. package/dist/blocks/link/block.json +2 -1
  21. package/dist/blocks/link/render.php +44 -0
  22. package/dist/blocks/text/block.json +2 -1
  23. package/dist/blocks/text/render.php +26 -0
  24. package/dist/blocks/toast/block.json +2 -1
  25. package/dist/blocks/toast/render.php +37 -0
  26. package/dist/index.cjs +30 -10
  27. package/dist/index.cjs.map +1 -1
  28. package/dist/index.js +30 -10
  29. package/dist/index.js.map +1 -1
  30. package/package.json +3 -3
  31. package/scripts/create-block.sh +1 -1
  32. package/src/blocks/ad-container/block.json +2 -1
  33. package/src/blocks/ad-container/render.php +27 -0
  34. package/src/blocks/button/block.json +2 -1
  35. package/src/blocks/button/render.php +71 -0
  36. package/src/blocks/chip/block.json +2 -1
  37. package/src/blocks/chip/render.php +40 -0
  38. package/src/blocks/divider/block.json +2 -1
  39. package/src/blocks/divider/render.php +31 -0
  40. package/src/blocks/flag/block.json +2 -1
  41. package/src/blocks/flag/render.php +34 -0
  42. package/src/blocks/icon-button/block.json +2 -1
  43. package/src/blocks/icon-button/render.php +46 -0
  44. package/src/blocks/input/block.json +2 -1
  45. package/src/blocks/input/render.php +39 -0
  46. package/src/blocks/link/block.json +2 -1
  47. package/src/blocks/link/render.php +44 -0
  48. package/src/blocks/text/block.json +2 -1
  49. package/src/blocks/text/render.php +26 -0
  50. package/src/blocks/toast/block.json +2 -1
  51. package/src/blocks/toast/render.php +37 -0
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://schemas.wp.org/trunk/block.json",
3
3
  "apiVersion": 3,
4
- "name": "times/text",
4
+ "name": "tds/text",
5
5
  "title": "Text",
6
6
  "category": "common",
7
7
  "description": "Typography component for displaying text with style variants",
@@ -13,6 +13,7 @@
13
13
  "padding": false
14
14
  }
15
15
  },
16
+ "render": "file:./render.php",
16
17
  "attributes": {
17
18
  "as": {
18
19
  "type": "string",
@@ -0,0 +1,26 @@
1
+ <?php
2
+ /**
3
+ * Text Block Render Callback
4
+ *
5
+ * Renders the Text typography block on the frontend.
6
+ *
7
+ * @package TimesDesignSystem\ComponentsWordPress
8
+ * @var array $attributes Block attributes
9
+ * @var string $content Block content
10
+ * @var WP_Block $block Block instance
11
+ */
12
+
13
+ $as = isset($attributes['as']) ? sanitize_text_field($attributes['as']) : 'p';
14
+ $typography_style = isset($attributes['typographyStyle']) ? sanitize_text_field($attributes['typographyStyle']) : '';
15
+ $text_content = isset($attributes['content']) ? wp_kses_post($attributes['content']) : '';
16
+
17
+ $tag_name = in_array($as, ['p', 'span', 'h1', 'h2', 'h3', 'h4', 'h5'], true) ? $as : 'p';
18
+ $class_name = 'tds-text';
19
+ if ($typography_style) {
20
+ $class_name .= ' tds-text--' . sanitize_html_class($typography_style);
21
+ }
22
+
23
+ $wrapper_attrs = get_block_wrapper_attributes(['class' => $class_name]);
24
+ ?>
25
+
26
+ <?php echo wp_sprintf('<%s %s>%s</%s>', $tag_name, wp_kses_post($wrapper_attrs), wp_kses_post($text_content), $tag_name); ?>
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://schemas.wp.org/trunk/block.json",
3
3
  "apiVersion": 3,
4
- "name": "times/toast",
4
+ "name": "tds/toast",
5
5
  "title": "Toast",
6
6
  "category": "common",
7
7
  "description": "Notification toast component",
@@ -12,6 +12,7 @@
12
12
  "margin": true
13
13
  }
14
14
  },
15
+ "render": "file:./render.php",
15
16
  "attributes": {
16
17
  "label": {
17
18
  "type": "string",
@@ -0,0 +1,37 @@
1
+ <?php
2
+ /**
3
+ * Toast Block Render Callback
4
+ *
5
+ * Renders the Toast notification block on the frontend.
6
+ *
7
+ * @package TimesDesignSystem\ComponentsWordPress
8
+ * @var array $attributes Block attributes
9
+ * @var string $content Block content
10
+ * @var WP_Block $block Block instance
11
+ */
12
+
13
+ $label = isset($attributes['label']) ? wp_kses_post($attributes['label']) : '';
14
+ $intent = isset($attributes['intent']) ? sanitize_text_field($attributes['intent']) : '';
15
+ $link = isset($attributes['link']) ? esc_url($attributes['link']) : '';
16
+ $link_label = isset($attributes['linkLabel']) ? sanitize_text_field($attributes['linkLabel']) : '';
17
+ $timeout = isset($attributes['timeout']) ? intval($attributes['timeout']) : 0;
18
+
19
+ $classes = ['tds-toast'];
20
+ $classes[] = 'tds-toast--intent-' . $intent;
21
+
22
+ $wrapper_attrs = get_block_wrapper_attributes(['class' => implode(' ', $classes)]);
23
+ ?>
24
+
25
+ <div
26
+ <?php echo wp_kses_post($wrapper_attrs); ?>
27
+ role="status"
28
+ aria-live="polite"
29
+ <?php echo $timeout ? 'data-timeout="' . esc_attr($timeout) . '"' : ''; ?>
30
+ >
31
+ <div class="tds-toast__content">
32
+ <div class="tds-toast__label"><?php echo wp_kses_post($label); ?></div>
33
+ </div>
34
+ <?php if ($link && $link_label) : ?>
35
+ <a href="<?php echo esc_attr($link); ?>" class="tds-toast__link"><?php echo wp_kses_post($link_label); ?></a>
36
+ <?php endif; ?>
37
+ </div>
package/dist/index.cjs CHANGED
@@ -359,7 +359,7 @@ function Save(_ref) {
359
359
 
360
360
  var $schema$9 = "https://schemas.wp.org/trunk/block.json";
361
361
  var apiVersion$9 = 3;
362
- var name$9 = "times/button";
362
+ var name$9 = "tds/button";
363
363
  var title$9 = "Button";
364
364
  var category$9 = "common";
365
365
  var description$9 = "A customizable button component for user interactions";
@@ -374,6 +374,7 @@ var supports$9 = {
374
374
  customClassName: true
375
375
  };
376
376
  var textdomain = "times-design-system";
377
+ var render$9 = "file:./render.php";
377
378
  var attributes$9 = {
378
379
  label: {
379
380
  type: "string",
@@ -481,6 +482,7 @@ var metadata$9 = {
481
482
  icon: icon$9,
482
483
  supports: supports$9,
483
484
  textdomain: textdomain,
485
+ render: render$9,
484
486
  attributes: attributes$9,
485
487
  editorScript: editorScript,
486
488
  editorStyle: editorStyle,
@@ -494,7 +496,7 @@ blocks.registerBlockType(metadata$9.name, _objectSpread2(_objectSpread2({}, meta
494
496
 
495
497
  var $schema$8 = "https://schemas.wp.org/trunk/block.json";
496
498
  var apiVersion$8 = 3;
497
- var name$8 = "times/divider";
499
+ var name$8 = "tds/divider";
498
500
  var title$8 = "Divider";
499
501
  var category$8 = "common";
500
502
  var description$8 = "A horizontal line divider component";
@@ -509,6 +511,7 @@ var supports$8 = {
509
511
  "full"
510
512
  ]
511
513
  };
514
+ var render$8 = "file:./render.php";
512
515
  var attributes$8 = {
513
516
  isDashed: {
514
517
  type: "boolean",
@@ -534,6 +537,7 @@ var metadata$8 = {
534
537
  description: description$8,
535
538
  icon: icon$8,
536
539
  supports: supports$8,
540
+ render: render$8,
537
541
  attributes: attributes$8,
538
542
  example: example$8
539
543
  };
@@ -608,7 +612,7 @@ blocks.registerBlockType(metadata$8.name, _objectSpread2(_objectSpread2({}, meta
608
612
 
609
613
  var $schema$7 = "https://schemas.wp.org/trunk/block.json";
610
614
  var apiVersion$7 = 3;
611
- var name$7 = "times/text";
615
+ var name$7 = "tds/text";
612
616
  var title$7 = "Text";
613
617
  var category$7 = "common";
614
618
  var description$7 = "Typography component for displaying text with style variants";
@@ -620,6 +624,7 @@ var supports$7 = {
620
624
  padding: false
621
625
  }
622
626
  };
627
+ var render$7 = "file:./render.php";
623
628
  var attributes$7 = {
624
629
  as: {
625
630
  type: "string",
@@ -654,6 +659,7 @@ var metadata$7 = {
654
659
  description: description$7,
655
660
  icon: icon$7,
656
661
  supports: supports$7,
662
+ render: render$7,
657
663
  attributes: attributes$7,
658
664
  example: example$7
659
665
  };
@@ -750,7 +756,7 @@ blocks.registerBlockType(metadata$7.name, _objectSpread2(_objectSpread2({}, meta
750
756
 
751
757
  var $schema$6 = "https://schemas.wp.org/trunk/block.json";
752
758
  var apiVersion$6 = 3;
753
- var name$6 = "times/input";
759
+ var name$6 = "tds/input";
754
760
  var title$6 = "Input";
755
761
  var category$6 = "common";
756
762
  var description$6 = "Form input field component";
@@ -761,6 +767,7 @@ var supports$6 = {
761
767
  margin: true
762
768
  }
763
769
  };
770
+ var render$6 = "file:./render.php";
764
771
  var attributes$6 = {
765
772
  label: {
766
773
  type: "string",
@@ -810,6 +817,7 @@ var metadata$6 = {
810
817
  description: description$6,
811
818
  icon: icon$6,
812
819
  supports: supports$6,
820
+ render: render$6,
813
821
  attributes: attributes$6,
814
822
  example: example$6
815
823
  };
@@ -946,7 +954,7 @@ blocks.registerBlockType(metadata$6.name, _objectSpread2(_objectSpread2({}, meta
946
954
 
947
955
  var $schema$5 = "https://schemas.wp.org/trunk/block.json";
948
956
  var apiVersion$5 = 3;
949
- var name$5 = "times/icon-button";
957
+ var name$5 = "tds/icon-button";
950
958
  var title$5 = "Icon Button";
951
959
  var category$5 = "common";
952
960
  var description$5 = "Button component displaying only an icon";
@@ -957,6 +965,7 @@ var supports$5 = {
957
965
  margin: true
958
966
  }
959
967
  };
968
+ var render$5 = "file:./render.php";
960
969
  var attributes$5 = {
961
970
  iconName: {
962
971
  type: "string",
@@ -1000,6 +1009,7 @@ var metadata$5 = {
1000
1009
  description: description$5,
1001
1010
  icon: icon$5,
1002
1011
  supports: supports$5,
1012
+ render: render$5,
1003
1013
  attributes: attributes$5,
1004
1014
  example: example$5
1005
1015
  };
@@ -1128,7 +1138,7 @@ blocks.registerBlockType(metadata$5.name, _objectSpread2(_objectSpread2({}, meta
1128
1138
 
1129
1139
  var $schema$4 = "https://schemas.wp.org/trunk/block.json";
1130
1140
  var apiVersion$4 = 3;
1131
- var name$4 = "times/chip";
1141
+ var name$4 = "tds/chip";
1132
1142
  var title$4 = "Chip";
1133
1143
  var category$4 = "common";
1134
1144
  var description$4 = "Small component for displaying labels, tags, or filter options";
@@ -1139,6 +1149,7 @@ var supports$4 = {
1139
1149
  margin: true
1140
1150
  }
1141
1151
  };
1152
+ var render$4 = "file:./render.php";
1142
1153
  var attributes$4 = {
1143
1154
  content: {
1144
1155
  type: "string",
@@ -1204,6 +1215,7 @@ var metadata$4 = {
1204
1215
  description: description$4,
1205
1216
  icon: icon$4,
1206
1217
  supports: supports$4,
1218
+ render: render$4,
1207
1219
  attributes: attributes$4,
1208
1220
  example: example$4
1209
1221
  };
@@ -1389,7 +1401,7 @@ blocks.registerBlockType(metadata$4.name, _objectSpread2(_objectSpread2({}, meta
1389
1401
 
1390
1402
  var $schema$3 = "https://schemas.wp.org/trunk/block.json";
1391
1403
  var apiVersion$3 = 3;
1392
- var name$3 = "times/flag";
1404
+ var name$3 = "tds/flag";
1393
1405
  var title$3 = "Flag";
1394
1406
  var category$3 = "common";
1395
1407
  var description$3 = "Badge or status indicator component";
@@ -1400,6 +1412,7 @@ var supports$3 = {
1400
1412
  margin: true
1401
1413
  }
1402
1414
  };
1415
+ var render$3 = "file:./render.php";
1403
1416
  var attributes$3 = {
1404
1417
  label: {
1405
1418
  type: "string",
@@ -1452,6 +1465,7 @@ var metadata$3 = {
1452
1465
  description: description$3,
1453
1466
  icon: icon$3,
1454
1467
  supports: supports$3,
1468
+ render: render$3,
1455
1469
  attributes: attributes$3,
1456
1470
  example: example$3
1457
1471
  };
@@ -1605,7 +1619,7 @@ blocks.registerBlockType(metadata$3.name, _objectSpread2(_objectSpread2({}, meta
1605
1619
 
1606
1620
  var $schema$2 = "https://schemas.wp.org/trunk/block.json";
1607
1621
  var apiVersion$2 = 3;
1608
- var name$2 = "times/toast";
1622
+ var name$2 = "tds/toast";
1609
1623
  var title$2 = "Toast";
1610
1624
  var category$2 = "common";
1611
1625
  var description$2 = "Notification toast component";
@@ -1616,6 +1630,7 @@ var supports$2 = {
1616
1630
  margin: true
1617
1631
  }
1618
1632
  };
1633
+ var render$2 = "file:./render.php";
1619
1634
  var attributes$2 = {
1620
1635
  label: {
1621
1636
  type: "string",
@@ -1655,6 +1670,7 @@ var metadata$2 = {
1655
1670
  description: description$2,
1656
1671
  icon: icon$2,
1657
1672
  supports: supports$2,
1673
+ render: render$2,
1658
1674
  attributes: attributes$2,
1659
1675
  example: example$2
1660
1676
  };
@@ -1785,7 +1801,7 @@ blocks.registerBlockType(metadata$2.name, _objectSpread2(_objectSpread2({}, meta
1785
1801
 
1786
1802
  var $schema$1 = "https://schemas.wp.org/trunk/block.json";
1787
1803
  var apiVersion$1 = 3;
1788
- var name$1 = "times/link";
1804
+ var name$1 = "tds/link";
1789
1805
  var title$1 = "Link";
1790
1806
  var category$1 = "common";
1791
1807
  var description$1 = "Styled link component with variants and states";
@@ -1796,6 +1812,7 @@ var supports$1 = {
1796
1812
  margin: true
1797
1813
  }
1798
1814
  };
1815
+ var render$1 = "file:./render.php";
1799
1816
  var attributes$1 = {
1800
1817
  href: {
1801
1818
  type: "string",
@@ -1885,6 +1902,7 @@ var metadata$1 = {
1885
1902
  description: description$1,
1886
1903
  icon: icon$1,
1887
1904
  supports: supports$1,
1905
+ render: render$1,
1888
1906
  attributes: attributes$1,
1889
1907
  example: example$1
1890
1908
  };
@@ -2133,7 +2151,7 @@ blocks.registerBlockType(metadata$1.name, _objectSpread2(_objectSpread2({}, meta
2133
2151
 
2134
2152
  var $schema = "https://schemas.wp.org/trunk/block.json";
2135
2153
  var apiVersion = 3;
2136
- var name = "times/ad-container";
2154
+ var name = "tds/ad-container";
2137
2155
  var title = "Ad Container";
2138
2156
  var category = "common";
2139
2157
  var description = "Advertising container placeholder";
@@ -2145,6 +2163,7 @@ var supports = {
2145
2163
  padding: true
2146
2164
  }
2147
2165
  };
2166
+ var render = "file:./render.php";
2148
2167
  var attributes = {
2149
2168
  type: {
2150
2169
  type: "string",
@@ -2170,6 +2189,7 @@ var metadata = {
2170
2189
  description: description,
2171
2190
  icon: icon,
2172
2191
  supports: supports,
2192
+ render: render,
2173
2193
  attributes: attributes,
2174
2194
  example: example
2175
2195
  };