hfn-components 0.2.4 → 0.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -86,6 +86,6 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
86
86
  $setup.noData ? (openBlock(), createElementBlock("div", _hoisted_5, "\u6682\u65E0\u6570\u636E")) : createCommentVNode("v-if", true)
87
87
  ]);
88
88
  }
89
- var chart = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "/Users/zhanghang/Documents/project/component-library/packages/components/chart/src/HtChart.vue"]]);
89
+ var chart = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "/Users/libiluo/Desktop/company/component-library/packages/components/chart/src/HtChart.vue"]]);
90
90
 
91
91
  export { chart as default };
@@ -34,9 +34,11 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
34
34
  () => props.lineColor,
35
35
  () => {
36
36
  echartOptions.color = props.lineColor;
37
- echartInit();
37
+ if (myChart.value) {
38
+ echartInit();
39
+ }
38
40
  },
39
- { deep: true }
41
+ { deep: true, immediate: true }
40
42
  );
41
43
  const drawGraph = () => {
42
44
  echartOptions.color = props.lineColor;
@@ -62,7 +64,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
62
64
  setTimeout(() => {
63
65
  if (!myChart.value) {
64
66
  const ele = document.getElementById(props.chartId);
65
- myChart.value = echarts.init(ele, null, { devicePixelRatio: 2 });
67
+ myChart.value = echarts.init(ele, null, { devicePixelRatio: 2, locale: "ZH" });
66
68
  }
67
69
  myChart.value.setOption(echartOptions, true);
68
70
  }, 200);
@@ -1 +1 @@
1
- import 'hfn-components/es/theme-chalk/src/chart.scss';
1
+ import 'hfn-components/theme-chalk/src/chart.scss';
@@ -1 +1 @@
1
-
1
+ import 'hfn-components/theme-chalk/src/chart.scss';
@@ -17,9 +17,9 @@ export declare const HtElTable: import("hfn-components/es/utils").SFCWithInstall
17
17
  };
18
18
  }, {
19
19
  props: import("@vue/shared").LooseRequired<{
20
+ readonly loading: boolean;
20
21
  readonly dataSource: unknown[];
21
22
  readonly tableColumn: import("./src/elTable").ElTableColumns[];
22
- readonly loading: boolean;
23
23
  readonly headerColor: string;
24
24
  } & {}>;
25
25
  readonly ElTable: import("element-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<{
@@ -653,7 +653,7 @@ export declare const HtElTable: import("hfn-components/es/utils").SFCWithInstall
653
653
  readonly convertKey: (data: any, key: string) => any;
654
654
  ColumnDeal: import("vue").DefineComponent<{
655
655
  readonly dealType: {
656
- readonly type: import("vue").PropType<"basicText4" | "colorText" | "colorPercentage" | "percentage" | "notProcessed">;
656
+ readonly type: import("vue").PropType<"basicText4" | "colorText" | "colorPercentage" | "percentage" | "absPercentage" | "notProcessed" | "other">;
657
657
  readonly default: "";
658
658
  };
659
659
  readonly text: {
@@ -662,7 +662,7 @@ export declare const HtElTable: import("hfn-components/es/utils").SFCWithInstall
662
662
  };
663
663
  }, {
664
664
  props: import("@vue/shared").LooseRequired<{
665
- readonly dealType: "basicText4" | "colorText" | "colorPercentage" | "percentage" | "notProcessed";
665
+ readonly dealType: "basicText4" | "colorText" | "colorPercentage" | "percentage" | "absPercentage" | "notProcessed" | "other";
666
666
  readonly text?: string | number | undefined;
667
667
  } & {}>;
668
668
  readonly CLOUMN_DEAL: {
@@ -670,11 +670,13 @@ export declare const HtElTable: import("hfn-components/es/utils").SFCWithInstall
670
670
  colorText: (val: string | number | undefined) => string;
671
671
  colorPercentage: (val: string | number | undefined) => string;
672
672
  percentage: (val: string | number | undefined) => string;
673
+ absPercentage: (val: string | number | undefined) => string;
673
674
  notProcessed: null;
675
+ other: null;
674
676
  };
675
677
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
676
678
  readonly dealType: {
677
- readonly type: import("vue").PropType<"basicText4" | "colorText" | "colorPercentage" | "percentage" | "notProcessed">;
679
+ readonly type: import("vue").PropType<"basicText4" | "colorText" | "colorPercentage" | "percentage" | "absPercentage" | "notProcessed" | "other">;
678
680
  readonly default: "";
679
681
  };
680
682
  readonly text: {
@@ -682,8 +684,8 @@ export declare const HtElTable: import("hfn-components/es/utils").SFCWithInstall
682
684
  readonly default: undefined;
683
685
  };
684
686
  }>>, {
685
- readonly dealType: "basicText4" | "colorText" | "colorPercentage" | "percentage" | "notProcessed";
686
687
  readonly text: string | number | undefined;
688
+ readonly dealType: "basicText4" | "colorText" | "colorPercentage" | "percentage" | "absPercentage" | "notProcessed" | "other";
687
689
  }, {}>;
688
690
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
689
691
  readonly dataSource: {
@@ -703,9 +705,9 @@ export declare const HtElTable: import("hfn-components/es/utils").SFCWithInstall
703
705
  readonly default: "#f0f0f0";
704
706
  };
705
707
  }>>, {
708
+ readonly loading: boolean;
706
709
  readonly dataSource: unknown[];
707
710
  readonly tableColumn: import("./src/elTable").ElTableColumns[];
708
- readonly loading: boolean;
709
711
  readonly headerColor: string;
710
712
  }, {}>> & Record<string, any>;
711
713
  export default HtElTable;
@@ -1,6 +1,6 @@
1
1
  declare const _default: import("vue").DefineComponent<{
2
2
  readonly dealType: {
3
- readonly type: import("vue").PropType<"basicText4" | "colorText" | "colorPercentage" | "percentage" | "notProcessed">;
3
+ readonly type: import("vue").PropType<"basicText4" | "colorText" | "colorPercentage" | "percentage" | "absPercentage" | "notProcessed" | "other">;
4
4
  readonly default: "";
5
5
  };
6
6
  readonly text: {
@@ -9,7 +9,7 @@ declare const _default: import("vue").DefineComponent<{
9
9
  };
10
10
  }, {
11
11
  props: import("@vue/shared").LooseRequired<{
12
- readonly dealType: "basicText4" | "colorText" | "colorPercentage" | "percentage" | "notProcessed";
12
+ readonly dealType: "basicText4" | "colorText" | "colorPercentage" | "percentage" | "absPercentage" | "notProcessed" | "other";
13
13
  readonly text?: string | number | undefined;
14
14
  } & {}>;
15
15
  readonly CLOUMN_DEAL: {
@@ -17,11 +17,13 @@ declare const _default: import("vue").DefineComponent<{
17
17
  colorText: (val: string | number | undefined) => string;
18
18
  colorPercentage: (val: string | number | undefined) => string;
19
19
  percentage: (val: string | number | undefined) => string;
20
+ absPercentage: (val: string | number | undefined) => string;
20
21
  notProcessed: null;
22
+ other: null;
21
23
  };
22
24
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
23
25
  readonly dealType: {
24
- readonly type: import("vue").PropType<"basicText4" | "colorText" | "colorPercentage" | "percentage" | "notProcessed">;
26
+ readonly type: import("vue").PropType<"basicText4" | "colorText" | "colorPercentage" | "percentage" | "absPercentage" | "notProcessed" | "other">;
25
27
  readonly default: "";
26
28
  };
27
29
  readonly text: {
@@ -29,7 +31,7 @@ declare const _default: import("vue").DefineComponent<{
29
31
  readonly default: undefined;
30
32
  };
31
33
  }>>, {
32
- readonly dealType: "basicText4" | "colorText" | "colorPercentage" | "percentage" | "notProcessed";
33
34
  readonly text: string | number | undefined;
35
+ readonly dealType: "basicText4" | "colorText" | "colorPercentage" | "percentage" | "absPercentage" | "notProcessed" | "other";
34
36
  }, {}>;
35
37
  export default _default;
@@ -6,7 +6,7 @@ const _hoisted_1 = { key: 0 };
6
6
  const _hoisted_2 = { key: 1 };
7
7
  const _hoisted_3 = { key: 2 };
8
8
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
9
- return $setup.props.dealType === "notProcessed" ? (openBlock(), createElementBlock(
9
+ return $setup.props.dealType === "notProcessed" || $setup.props.dealType === "other" ? (openBlock(), createElementBlock(
10
10
  "div",
11
11
  _hoisted_1,
12
12
  toDisplayString($setup.props.text),
@@ -30,6 +30,6 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
30
30
  /* TEXT */
31
31
  ));
32
32
  }
33
- var ColumnDeal = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "/Users/zhanghang/Documents/project/component-library/packages/components/elTable/src/columnDeal.vue"]]);
33
+ var ColumnDeal = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "/Users/libiluo/Desktop/company/component-library/packages/components/elTable/src/columnDeal.vue"]]);
34
34
 
35
35
  export { ColumnDeal as default };
@@ -26,7 +26,7 @@ export declare const elTableProps: {
26
26
  };
27
27
  export declare const columnDealProps: {
28
28
  readonly dealType: {
29
- readonly type: PropType<"basicText4" | "colorText" | "colorPercentage" | "percentage" | "notProcessed">;
29
+ readonly type: PropType<"basicText4" | "colorText" | "colorPercentage" | "percentage" | "absPercentage" | "notProcessed" | "other">;
30
30
  readonly default: "";
31
31
  };
32
32
  readonly text: {
@@ -17,9 +17,9 @@ declare const _default: import("vue").DefineComponent<{
17
17
  };
18
18
  }, {
19
19
  props: import("@vue/shared").LooseRequired<{
20
+ readonly loading: boolean;
20
21
  readonly dataSource: unknown[];
21
22
  readonly tableColumn: import("./elTable").ElTableColumns[];
22
- readonly loading: boolean;
23
23
  readonly headerColor: string;
24
24
  } & {}>;
25
25
  readonly ElTable: import("element-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<{
@@ -653,7 +653,7 @@ declare const _default: import("vue").DefineComponent<{
653
653
  readonly convertKey: (data: any, key: string) => any;
654
654
  ColumnDeal: import("vue").DefineComponent<{
655
655
  readonly dealType: {
656
- readonly type: import("vue").PropType<"basicText4" | "colorText" | "colorPercentage" | "percentage" | "notProcessed">;
656
+ readonly type: import("vue").PropType<"basicText4" | "colorText" | "colorPercentage" | "percentage" | "absPercentage" | "notProcessed" | "other">;
657
657
  readonly default: "";
658
658
  };
659
659
  readonly text: {
@@ -662,7 +662,7 @@ declare const _default: import("vue").DefineComponent<{
662
662
  };
663
663
  }, {
664
664
  props: import("@vue/shared").LooseRequired<{
665
- readonly dealType: "basicText4" | "colorText" | "colorPercentage" | "percentage" | "notProcessed";
665
+ readonly dealType: "basicText4" | "colorText" | "colorPercentage" | "percentage" | "absPercentage" | "notProcessed" | "other";
666
666
  readonly text?: string | number | undefined;
667
667
  } & {}>;
668
668
  readonly CLOUMN_DEAL: {
@@ -670,11 +670,13 @@ declare const _default: import("vue").DefineComponent<{
670
670
  colorText: (val: string | number | undefined) => string;
671
671
  colorPercentage: (val: string | number | undefined) => string;
672
672
  percentage: (val: string | number | undefined) => string;
673
+ absPercentage: (val: string | number | undefined) => string;
673
674
  notProcessed: null;
675
+ other: null;
674
676
  };
675
677
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
676
678
  readonly dealType: {
677
- readonly type: import("vue").PropType<"basicText4" | "colorText" | "colorPercentage" | "percentage" | "notProcessed">;
679
+ readonly type: import("vue").PropType<"basicText4" | "colorText" | "colorPercentage" | "percentage" | "absPercentage" | "notProcessed" | "other">;
678
680
  readonly default: "";
679
681
  };
680
682
  readonly text: {
@@ -682,8 +684,8 @@ declare const _default: import("vue").DefineComponent<{
682
684
  readonly default: undefined;
683
685
  };
684
686
  }>>, {
685
- readonly dealType: "basicText4" | "colorText" | "colorPercentage" | "percentage" | "notProcessed";
686
687
  readonly text: string | number | undefined;
688
+ readonly dealType: "basicText4" | "colorText" | "colorPercentage" | "percentage" | "absPercentage" | "notProcessed" | "other";
687
689
  }, {}>;
688
690
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
689
691
  readonly dataSource: {
@@ -703,9 +705,9 @@ declare const _default: import("vue").DefineComponent<{
703
705
  readonly default: "#f0f0f0";
704
706
  };
705
707
  }>>, {
708
+ readonly loading: boolean;
706
709
  readonly dataSource: unknown[];
707
710
  readonly tableColumn: import("./elTable").ElTableColumns[];
708
- readonly loading: boolean;
709
711
  readonly headerColor: string;
710
712
  }, {}>;
711
713
  export default _default;
@@ -1,5 +1,5 @@
1
1
  import _sfc_main from './elTable.vue2.mjs';
2
- import { withDirectives, openBlock, createBlock, withCtx, createElementBlock, Fragment, renderList, createVNode } from 'vue';
2
+ import { withDirectives, openBlock, createBlock, withCtx, createElementBlock, Fragment, renderList } from 'vue';
3
3
  import _export_sfc from '../../../_virtual/_plugin-vue_export-helper.mjs';
4
4
 
5
5
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
@@ -27,10 +27,15 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
27
27
  width: item.width
28
28
  }, {
29
29
  default: withCtx((scope) => [
30
- createVNode($setup["ColumnDeal"], {
30
+ item.dealType === "other" ? (openBlock(), createBlock($setup["ColumnDeal"], {
31
+ key: 0,
32
+ dealType: scope.row.dealType,
33
+ text: $setup.convertKey(scope.row, item.key)
34
+ }, null, 8, ["dealType", "text"])) : (openBlock(), createBlock($setup["ColumnDeal"], {
35
+ key: 1,
31
36
  dealType: item.dealType,
32
37
  text: $setup.convertKey(scope.row, item.key)
33
- }, null, 8, ["dealType", "text"])
38
+ }, null, 8, ["dealType", "text"]))
34
39
  ]),
35
40
  _: 2
36
41
  /* DYNAMIC */
@@ -46,6 +51,6 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
46
51
  [$setup["vLoading"], $setup.props.loading]
47
52
  ]);
48
53
  }
49
- var elTable = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "/Users/zhanghang/Documents/project/component-library/packages/components/elTable/src/elTable.vue"]]);
54
+ var elTable = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "/Users/libiluo/Desktop/company/component-library/packages/components/elTable/src/elTable.vue"]]);
50
55
 
51
56
  export { elTable as default };
@@ -108,11 +108,11 @@ declare const _default: import("vue").DefineComponent<{
108
108
  };
109
109
  }, {
110
110
  props: import("@vue/shared").LooseRequired<{
111
- readonly dataSource: unknown[];
112
111
  readonly loading: boolean;
113
112
  readonly pageSize: number;
114
113
  readonly total: number;
115
114
  readonly columns: TableColumns[];
115
+ readonly dataSource: unknown[];
116
116
  readonly selectedKeys: (string | number)[];
117
117
  readonly actions: import("./HtTable").ActionItem[];
118
118
  readonly nowPage: number;
@@ -1817,11 +1817,11 @@ declare const _default: import("vue").DefineComponent<{
1817
1817
  onHandleSelectAll?: ((...args: any[]) => any) | undefined;
1818
1818
  onResizeColumn?: ((...args: any[]) => any) | undefined;
1819
1819
  }, {
1820
- readonly dataSource: unknown[];
1821
1820
  readonly loading: boolean;
1822
1821
  readonly pageSize: number;
1823
1822
  readonly total: number;
1824
1823
  readonly columns: TableColumns[];
1824
+ readonly dataSource: unknown[];
1825
1825
  readonly selectedKeys: (string | number)[];
1826
1826
  readonly actions: import("./HtTable").ActionItem[];
1827
1827
  readonly nowPage: number;
@@ -444,6 +444,6 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
444
444
  /* STABLE_FRAGMENT */
445
445
  );
446
446
  }
447
- var Table = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "/Users/zhanghang/Documents/project/component-library/packages/components/table/HtTable.vue"]]);
447
+ var Table = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "/Users/libiluo/Desktop/company/component-library/packages/components/table/HtTable.vue"]]);
448
448
 
449
449
  export { Table as default };
@@ -105,11 +105,11 @@ export declare const HtTable: import("hfn-components/es/utils").SFCWithInstall<i
105
105
  };
106
106
  }, {
107
107
  props: import("@vue/shared").LooseRequired<{
108
- readonly dataSource: unknown[];
109
108
  readonly loading: boolean;
110
109
  readonly pageSize: number;
111
110
  readonly total: number;
112
111
  readonly columns: import("./HtTable").TableColumns[];
112
+ readonly dataSource: unknown[];
113
113
  readonly selectedKeys: (string | number)[];
114
114
  readonly actions: import("./HtTable").ActionItem[];
115
115
  readonly nowPage: number;
@@ -1814,11 +1814,11 @@ export declare const HtTable: import("hfn-components/es/utils").SFCWithInstall<i
1814
1814
  onHandleSelectAll?: ((...args: any[]) => any) | undefined;
1815
1815
  onResizeColumn?: ((...args: any[]) => any) | undefined;
1816
1816
  }, {
1817
- readonly dataSource: unknown[];
1818
1817
  readonly loading: boolean;
1819
1818
  readonly pageSize: number;
1820
1819
  readonly total: number;
1821
1820
  readonly columns: import("./HtTable").TableColumns[];
1821
+ readonly dataSource: unknown[];
1822
1822
  readonly selectedKeys: (string | number)[];
1823
1823
  readonly actions: import("./HtTable").ActionItem[];
1824
1824
  readonly nowPage: number;
@@ -52,7 +52,9 @@ export declare const CLOUMN_DEAL: {
52
52
  colorText: (val: number | string | undefined) => string;
53
53
  colorPercentage: (val: number | string | undefined) => string;
54
54
  percentage: (val: number | string | undefined) => string;
55
+ absPercentage: (val: number | string | undefined) => string;
55
56
  notProcessed: null;
57
+ other: null;
56
58
  };
57
59
  export declare const convertKey: (data: any, key: string) => any;
58
60
  export type clounmKyeType = keyof typeof TABLE_KEY;
@@ -53,12 +53,17 @@ const basicText4 = (val) => {
53
53
  const percentage = (val) => {
54
54
  return val === "-" || val === void 0 ? "-" : (val * 100).toFixed(2) + "%";
55
55
  };
56
+ const absPercentage = (val) => {
57
+ return val === "-" || val === void 0 ? "-" : Math.abs(val * 100).toFixed(2) + "%";
58
+ };
56
59
  const CLOUMN_DEAL = {
57
60
  basicText4,
58
61
  colorText: basicText4,
59
62
  colorPercentage: percentage,
60
63
  percentage,
61
- notProcessed: null
64
+ absPercentage,
65
+ notProcessed: null,
66
+ other: null
62
67
  };
63
68
  const convertKey = (data, key) => {
64
69
  const newKey = key.replace(/([A-Z])/g, "_$1").toLowerCase();
@@ -131,7 +131,16 @@ const setEchartTooltip = (options, props) => {
131
131
  ">
132
132
  </span>`;
133
133
  if (props.isReturn) {
134
- html += `<span style='color:${params[i].color}'>${params[i].seriesName}</span>\uFF1A${params[i].value[2]?.toFixed(props.floatNumber)}\uFF08${params[i].value[1] > 0 ? "+" : ""}${params[i].value[1]}%\uFF09`;
134
+ if (
135
+ // params[i].seriesId === 'excess' ||
136
+ params[i].seriesName === "\u7D2F\u8BA1\u8D85\u989D"
137
+ ) {
138
+ html += `<span style='color:${params[i].color}'>
139
+ ${params[i].seriesName}</span>\uFF1A${params[i].value[1].toFixed(2)}%
140
+ `;
141
+ } else {
142
+ html += `<span style='color:${params[i].color}'>${params[i].seriesName}</span>\uFF1A${params[i].value[2]?.toFixed(props.floatNumber)}\uFF08${params[i].value[1] > 0 ? "+" : ""}${params[i].value[1]}%\uFF09`;
143
+ }
135
144
  } else {
136
145
  if (props.chartType === "category") {
137
146
  html += `<span style='color:${params[i].color}'>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hfn-components",
3
- "version": "0.2.4",
3
+ "version": "0.2.5",
4
4
  "description": "",
5
5
  "main": "index.ts",
6
6
  "module": "es/index.mjs",
package/es/css/index.css DELETED
@@ -1,59 +0,0 @@
1
- .echart-box {
2
- width: 100%;
3
- height: 100%;
4
- display: flex;
5
- flex-direction: column;
6
- position: relative;
7
- }
8
-
9
- .echart-content {
10
- flex: auto;
11
- }
12
-
13
- .echart-lenged {
14
- width: 100%;
15
- height: auto;
16
- margin-top: 6px;
17
- padding-right: 22px;
18
- box-sizing: border-box;
19
- display: flex;
20
- flex-wrap: wrap;
21
- font-size: 12px;
22
- position: relative;
23
- z-index: 999;
24
- }
25
-
26
- .bg-span {
27
- display: inline-block;
28
- width: 14px;
29
- height: 2px;
30
- margin-right: 6px;
31
- }
32
-
33
- .bg-span-bar {
34
- display: inline-block;
35
- width: 16px;
36
- height: 10px;
37
- border-radius: 2px;
38
- margin-right: 6px;
39
- }
40
-
41
- .span-box {
42
- margin-left: 5px;
43
- margin-right: 6px;
44
- cursor: pointer;
45
- display: flex;
46
- align-items: center;
47
- }
48
-
49
- .noData {
50
- width: 100%;
51
- height: 100%;
52
- font-size: 16px;
53
- display: flex;
54
- justify-content: center;
55
- align-items: center;
56
- position: absolute;
57
- bottom: 0px;
58
- color: #ccc;
59
- }