You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@skywalking.apache.org by kd...@apache.org on 2019/11/03 16:13:04 UTC
[skywalking-rocketbot-ui] 01/02: topology to enhance honeycomb
button
This is an automated email from the ASF dual-hosted git repository.
kdump pushed a commit to branch topology_to_enhance_honeycomb_button
in repository https://gitbox.apache.org/repos/asf/skywalking-rocketbot-ui.git
commit 43eba9b691a62764a6a45eb84924511f52b0d8a9
Author: x22x22 <ro...@gmail.com>
AuthorDate: Mon Nov 4 00:12:40 2019 +0800
topology to enhance honeycomb button
---
src/utils/cssHelper.ts | 67 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 67 insertions(+)
diff --git a/src/utils/cssHelper.ts b/src/utils/cssHelper.ts
new file mode 100644
index 0000000..d6ea1ae
--- /dev/null
+++ b/src/utils/cssHelper.ts
@@ -0,0 +1,67 @@
+export interface CssMatrix {
+ a: number;
+ b: number;
+ c: number;
+ d: number;
+ tx: number;
+ ty: number;
+}
+
+export interface CssTranslate {
+ x: number;
+ y: number;
+}
+
+class CssHelper {
+ matrixSerialization(matrixString: string): CssMatrix {
+ const matrixArray = matrixString.replace('matrix(', '')
+ .replace(')', '').split(',');
+ // const matrixNumberArray = [];
+ const matrixNumberArray = matrixArray.map((value) => {
+ return parseFloat(value);
+ });
+ return {
+ a: matrixNumberArray[0],
+ b: matrixNumberArray[1],
+ c: matrixNumberArray[2],
+ d: matrixNumberArray[3],
+ tx: matrixNumberArray[4],
+ ty: matrixNumberArray[5],
+ };
+ }
+
+ translateDeserialization(translate: CssTranslate) {
+ let translateString = '';
+ const translateEntries = Object.entries(translate);
+ translateEntries.forEach(value => {
+ translateString += value[1] + ',';
+ });
+ translateString = translateString.slice(0, translateString.length - 1);
+ return `translate(${translateString})`;
+ }
+
+ translateSerialization(translateString: string): CssTranslate {
+ const translateArray = translateString.replace('translate(', '')
+ .replace(')', '').split(',');
+ // const translateNumberArray = [];
+ const translateNumberArray = translateArray.map((value) => {
+ return parseFloat(value);
+ });
+ return {
+ x: translateNumberArray[0],
+ y: translateNumberArray[1],
+ };
+ }
+
+ matrixDeserialization(cssMatrix: CssMatrix) {
+ let matrixString = '';
+ const matrixEntries = Object.entries(cssMatrix);
+ matrixEntries.forEach(value => {
+ matrixString += value[1] + ',';
+ });
+ matrixString = matrixString.slice(0, matrixString.length - 1);
+ return `matrix(${matrixString})`;
+ }
+}
+
+export default new CssHelper();