UNPKG

2.71 kBJavaScriptView Raw
1"use strict";
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6exports.default = Symbol;
7exports.symbolsStroke = exports.symbolsFill = void 0;
8
9var _index = require("../../../lib-vendor/d3-path/src/index.js");
10
11var _constant = _interopRequireDefault(require("./constant.js"));
12
13var _asterisk = _interopRequireDefault(require("./symbol/asterisk.js"));
14
15var _circle = _interopRequireDefault(require("./symbol/circle.js"));
16
17var _cross = _interopRequireDefault(require("./symbol/cross.js"));
18
19var _diamond = _interopRequireDefault(require("./symbol/diamond.js"));
20
21var _diamond2 = _interopRequireDefault(require("./symbol/diamond2.js"));
22
23var _plus = _interopRequireDefault(require("./symbol/plus.js"));
24
25var _square = _interopRequireDefault(require("./symbol/square.js"));
26
27var _square2 = _interopRequireDefault(require("./symbol/square2.js"));
28
29var _star = _interopRequireDefault(require("./symbol/star.js"));
30
31var _triangle = _interopRequireDefault(require("./symbol/triangle.js"));
32
33var _triangle2 = _interopRequireDefault(require("./symbol/triangle2.js"));
34
35var _wye = _interopRequireDefault(require("./symbol/wye.js"));
36
37var _x = _interopRequireDefault(require("./symbol/x.js"));
38
39function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
40
41// These symbols are designed to be filled.
42const symbolsFill = [_circle.default, _cross.default, _diamond.default, _square.default, _star.default, _triangle.default, _wye.default]; // These symbols are designed to be stroked (with a width of 1.5px and round caps).
43
44exports.symbolsFill = symbolsFill;
45const symbolsStroke = [_circle.default, _plus.default, _x.default, _triangle2.default, _asterisk.default, _square2.default, _diamond2.default];
46exports.symbolsStroke = symbolsStroke;
47
48function Symbol(type, size) {
49 let context = null;
50 type = typeof type === "function" ? type : (0, _constant.default)(type || _circle.default);
51 size = typeof size === "function" ? size : (0, _constant.default)(size === undefined ? 64 : +size);
52
53 function symbol() {
54 let buffer;
55 if (!context) context = buffer = (0, _index.path)();
56 type.apply(this, arguments).draw(context, +size.apply(this, arguments));
57 if (buffer) return context = null, buffer + "" || null;
58 }
59
60 symbol.type = function (_) {
61 return arguments.length ? (type = typeof _ === "function" ? _ : (0, _constant.default)(_), symbol) : type;
62 };
63
64 symbol.size = function (_) {
65 return arguments.length ? (size = typeof _ === "function" ? _ : (0, _constant.default)(+_), symbol) : size;
66 };
67
68 symbol.context = function (_) {
69 return arguments.length ? (context = _ == null ? null : _, symbol) : context;
70 };
71
72 return symbol;
73}
\No newline at end of file