svg-non-empty-title-evaluate.js 633 B

123456789101112131415161718192021222324252627282930313233
  1. import visibleVirtual from '../../commons/text/visible-virtual';
  2. function svgNonEmptyTitleEvaluate(node, options, virtualNode) {
  3. if (!virtualNode.children) {
  4. return undefined;
  5. }
  6. const titleNode = virtualNode.children.find(({ props }) => {
  7. return props.nodeName === 'title';
  8. });
  9. if (!titleNode) {
  10. this.data({
  11. messageKey: 'noTitle'
  12. });
  13. return false;
  14. }
  15. try {
  16. if (visibleVirtual(titleNode) === '') {
  17. this.data({
  18. messageKey: 'emptyTitle'
  19. });
  20. return false;
  21. }
  22. } catch (e) {
  23. return undefined;
  24. }
  25. return true;
  26. }
  27. export default svgNonEmptyTitleEvaluate;