sample-content.html 3.5KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <dom-module id="sample-content">
  2. <script>
  3. Polymer({
  4. is: 'sample-content',
  5. properties: {
  6. size: {
  7. type: Number,
  8. value: 0
  9. },
  10. label: {
  11. value: ''
  12. },
  13. padding: {
  14. value: '16px'
  15. },
  16. margin: {
  17. value: '24px'
  18. },
  19. boxShadow: {
  20. value: '0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2)'
  21. }
  22. },
  23. observers: [
  24. '_render(size, label, padding, margin, boxShadow)'
  25. ],
  26. _lorem_ipsum_strings: [
  27. 'Lorem ipsum dolor sit amet, per in nusquam nominavi periculis, sit elit oportere ea.',
  28. 'Ut labores minimum atomorum pro. Laudem tibique ut has.',
  29. 'Fugit adolescens vis et, ei graeci forensibus sed.',
  30. 'Convenire definiebas scriptorem eu cum. Sit dolor dicunt consectetuer no.',
  31. 'Ea duis bonorum nec, falli paulo aliquid ei eum.',
  32. 'Usu eu novum principes, vel quodsi aliquip ea.',
  33. 'Has at minim mucius aliquam, est id tempor laoreet.',
  34. 'Pro saepe pertinax ei, ad pri animal labores suscipiantur.',
  35. 'Detracto suavitate repudiandae no eum. Id adhuc minim soluta nam.',
  36. 'Iisque perfecto dissentiet cum et, sit ut quot mandamus, ut vim tibique splendide instructior.',
  37. 'Id nam odio natum malorum, tibique copiosae expetenda mel ea.',
  38. 'Cu mei vide viris gloriatur, at populo eripuit sit.',
  39. 'Modus commodo minimum eum te, vero utinam assueverit per eu.',
  40. 'No nam ipsum lorem aliquip, accumsan quaerendum ei usu.'
  41. ],
  42. ready: function () {
  43. this.style.display = 'block';
  44. },
  45. _randomString: function (size) {
  46. var ls = this._lorem_ipsum_strings;
  47. var s = '';
  48. do {
  49. s += ls[Math.floor(Math.random() * ls.length)];
  50. size--;
  51. } while (size > 0);
  52. return s;
  53. },
  54. _randomLetter: function () {
  55. return String.fromCharCode(65 + Math.floor(Math.random() * 26));
  56. },
  57. _render: function (size, label, padding, margin, boxShadow) {
  58. var html = '';
  59. for (var i = 0; i < size; i++) {
  60. html +=
  61. '<div style="box-shadow: ' + boxShadow + '; padding: ' + padding + '; margin: ' + margin + '; border-radius: 5px; background-color: #fff; color: #757575;">' +
  62. '<div style="display: inline-block; height: 64px; width: 64px; border-radius: 50%; background: #ddd; line-height: 64px; font-size: 30px; color: #555; text-align: center;">' + this._randomLetter() + '</div>' +
  63. '<div style="font-size: 22px; margin: 16px 0; color: #212121;">' + this.label + ' ' + this._randomString() + '</div>' +
  64. '<p style="font-size: 16px;">' + this._randomString() + '</p>' +
  65. '<p style="font-size: 14px;">' + this._randomString(3) + '</p>' +
  66. '</div>';
  67. this.innerHTML = html;
  68. }
  69. }
  70. });
  71. </script>
  72. </dom-module>