v1.php 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. <?php
  2. namespace zin;
  3. class pivotConfig extends wg
  4. {
  5. /**
  6. * @var mixed[]
  7. */
  8. protected static $defineProps = array(
  9. 'title?: string',
  10. 'titleTip?: node',
  11. 'saveText?: string',
  12. 'nextText?: string',
  13. 'onSave?: function',
  14. 'onNext?: function'
  15. );
  16. /**
  17. * @var mixed[]
  18. */
  19. protected static $defineBlocks = array(
  20. 'heading' => array()
  21. );
  22. protected function build()
  23. {
  24. global $lang;
  25. list($title, $titleTip, $saveText, $nextText, $onSave, $onNext) = $this->prop(array('title', 'titleTip', 'saveText', 'nextText', 'onSave', 'onNext'));
  26. return div
  27. (
  28. setClass('config-content bg-canvas'),
  29. div
  30. (
  31. setClass('pl-3 pr-4 py-4 max-height'),
  32. div
  33. (
  34. setClass('flex text-base pl-1 pb-3 border-b h-8 items-center justify-between'),
  35. div
  36. (
  37. setClass('text-base font-bold justify-start leading-4 items-center flex'),
  38. $title,
  39. div
  40. (
  41. setClass('flex items-center pl-1 text-gray', array('hidden' => empty($titleTip))),
  42. $titleTip
  43. )
  44. ),
  45. $this->block('heading')
  46. ),
  47. $this->children()
  48. ),
  49. div
  50. (
  51. setClass('config-content-bottom p-4'),
  52. toolbar
  53. (
  54. setClass('gap-3'),
  55. btn
  56. (
  57. setClass(array('hidden' => empty($saveText))),
  58. set::type('primary'),
  59. $saveText,
  60. on::click()->do($onSave)
  61. ),
  62. btn
  63. (
  64. setClass('next-step'),
  65. empty($nextText) ? $lang->pivot->nextStep : $nextText,
  66. on::click()->do($onNext)
  67. )
  68. )
  69. )
  70. );
  71. }
  72. }