@zohodesk/react-cli 0.0.1-exp.168.2 → 0.0.1-exp.168.3

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.
Files changed (102) hide show
  1. package/.eslintignore +7 -7
  2. package/.eslintrc.js +179 -179
  3. package/README.md +925 -918
  4. package/bin/cli.js +492 -492
  5. package/cert/Tsicsezwild-22-23.crt +37 -37
  6. package/cert/Tsicsezwild-22-23.key +27 -27
  7. package/docs/CustomChunks.md +26 -26
  8. package/docs/DevStart.md +18 -18
  9. package/docs/InstallNode.md +28 -28
  10. package/docs/TODOS.md +10 -10
  11. package/docs/ValueReplacer.md +60 -60
  12. package/docs/warnings_while_install.txt +35 -35
  13. package/files/eslintrc.js +62 -62
  14. package/files/prettierrc.js +3 -3
  15. package/lib/configs/webpack.css.umd.config.js +4 -4
  16. package/lib/configs/webpack.prod.config.js +1 -1
  17. package/lib/loaderUtils/configsAssetsLoaders.js +33 -33
  18. package/lib/loaders/workerLoader.js +9 -9
  19. package/lib/pluginUtils/getDevPlugins.js +5 -5
  20. package/lib/pluginUtils/getProdPlugins.js +5 -5
  21. package/lib/plugins/EFCPlugin.md +6 -6
  22. package/lib/plugins/I18NInjectIntoIndexPlugin.js +4 -4
  23. package/lib/plugins/I18nSplitPlugin/I18nDownlodLogic.js +38 -38
  24. package/lib/plugins/I18nSplitPlugin/I18nFilesEmitter.js +30 -30
  25. package/lib/plugins/I18nSplitPlugin/I18nKeysIdentifer.js +8 -8
  26. package/lib/plugins/I18nSplitPlugin/I18nSplit.md +86 -86
  27. package/lib/plugins/I18nSplitPlugin/README.md +25 -25
  28. package/lib/plugins/I18nSplitPlugin/index.js +57 -57
  29. package/lib/plugins/ResourceHintsPlugin.js +17 -17
  30. package/lib/plugins/RtlSplitPlugin/RtlCssPlugin.js +6 -6
  31. package/lib/plugins/RtlSplitPlugin/RtrSplit.md +30 -30
  32. package/lib/plugins/ServiceWorkerPlugin.js +9 -9
  33. package/lib/plugins/TPHashMappingPlugin.js +4 -4
  34. package/lib/postcss-plugins/RTLSplitPlugin.js +10 -10
  35. package/lib/postcss-plugins/hoverActivePlugin.js +324 -231
  36. package/lib/postcss-plugins/keyframesPlugin.js +20 -20
  37. package/lib/sh/pre-commit.sh +34 -34
  38. package/lib/sh/reportPublish.sh +45 -45
  39. package/lib/utils/buildstats.html +148 -148
  40. package/lib/utils/resultSchema.json +73 -73
  41. package/npm8.md +9 -9
  42. package/package.json +148 -148
  43. package/postpublish.js +6 -6
  44. package/templates/app/.eslintrc.js +140 -140
  45. package/templates/app/README.md +12 -12
  46. package/templates/app/app/index.html +24 -24
  47. package/templates/app/app/properties/ApplicationResources_en_US.properties +1 -1
  48. package/templates/app/app/properties/i18nkeys.json +3 -3
  49. package/templates/app/docs/all.html +69 -69
  50. package/templates/app/mockapi/index.js +18 -18
  51. package/templates/app/package.json +37 -37
  52. package/templates/app/src/actions/SampleActions/index.js +37 -37
  53. package/templates/app/src/actions/index.js +65 -65
  54. package/templates/app/src/appUrls.js +19 -19
  55. package/templates/app/src/components/Alert/Alert.js +134 -134
  56. package/templates/app/src/components/Alert/Alert.module.css +79 -79
  57. package/templates/app/src/components/FreezeLayer/FreezeLayer.css +37 -37
  58. package/templates/app/src/components/FreezeLayer/FreezeLayer.js +84 -84
  59. package/templates/app/src/components/Sample/Sample.module.css +11 -11
  60. package/templates/app/src/components/Sample/SampleList.js +61 -61
  61. package/templates/app/src/components/Slider/Slider.css +41 -41
  62. package/templates/app/src/components/Slider/Slider.js +55 -55
  63. package/templates/app/src/containers/AlertContainer/index.js +15 -15
  64. package/templates/app/src/containers/AppContainer/index.js +96 -96
  65. package/templates/app/src/containers/AppContainer/index.module.css +27 -27
  66. package/templates/app/src/containers/CustomMatch/index.js +65 -65
  67. package/templates/app/src/containers/DevTools/index.js +10 -10
  68. package/templates/app/src/containers/Header/index.js +67 -67
  69. package/templates/app/src/containers/Header/index.module.css +43 -43
  70. package/templates/app/src/containers/Redirect/index.js +63 -63
  71. package/templates/app/src/containers/Redirector/index.js +47 -47
  72. package/templates/app/src/containers/SampleListContainer/ListContainer.js +42 -42
  73. package/templates/app/src/containers/SampleListContainer/ListContainer.module.css +3 -3
  74. package/templates/app/src/historyChange.js +5 -5
  75. package/templates/app/src/index.html +10 -10
  76. package/templates/app/src/index.js +24 -24
  77. package/templates/app/src/middleware/PromiseMiddleware.js +59 -59
  78. package/templates/app/src/reducers/alertData.js +11 -11
  79. package/templates/app/src/reducers/index.js +6 -6
  80. package/templates/app/src/reducers/samples.js +19 -19
  81. package/templates/app/src/store/configureStore.dev.js +51 -51
  82. package/templates/app/src/store/configureStore.js +5 -5
  83. package/templates/app/src/store/configureStore.prod.js +26 -26
  84. package/templates/app/src/util/Common.js +5 -5
  85. package/templates/app/src/util/RequestAPI.js +132 -132
  86. package/templates/docs/all.html +249 -249
  87. package/templates/docs/component.html +178 -178
  88. package/templates/docs/components.html +221 -221
  89. package/templates/docs/css/b.min.css +6 -6
  90. package/templates/docs/css/component.css +42 -42
  91. package/templates/docs/css/componentTest.css +6 -6
  92. package/templates/docs/css/hopscotch.css +585 -585
  93. package/templates/docs/css/style.css +1022 -1022
  94. package/templates/docs/impactReportTemplate.html +154 -154
  95. package/templates/docs/index.html +1493 -1493
  96. package/templates/docs/js/active-line.js +72 -72
  97. package/templates/docs/js/b.min.js +7 -7
  98. package/templates/docs/js/codemirror.js +9680 -9680
  99. package/templates/docs/js/designTokens.js +334 -334
  100. package/templates/docs/js/j.min.js +4 -4
  101. package/templates/docs/js/javascript.js +874 -874
  102. package/templates/docs/js/matchbrackets.js +145 -145
@@ -1,37 +1,37 @@
1
- import { generateAPITypes } from "../../util/Common";
2
- import requestAPI from "../../util/RequestAPI";
3
-
4
- export function getSampleList(isForce = true) {
5
- return {
6
- types: generateAPITypes("SAMPLE_LIST"),
7
- shouldCallAPI: state => {
8
- if (!isForce) {
9
- const { sampleDataList = [] } = state;
10
- return sampleDataList.length === 0;
11
- }
12
- return true;
13
- },
14
- callAPI: state =>
15
- requestAPI(`${mockServerURL}/api/v1/sampleapi`, {})
16
- .get()
17
- .then(res => {
18
- return res;
19
- })
20
- };
21
- }
22
-
23
- export function addSample(payload) {
24
- return {
25
- types: generateAPITypes("ADD_SAMPLE"),
26
- callAPI: state => {
27
- return new Promise((resolve, reject) => {
28
- let url = `${mockServerURL}/api/v1/addSample`;
29
- requestAPI(url, {})
30
- .post("", payload)
31
- .then(res => {
32
- resolve(res);
33
- });
34
- });
35
- }
36
- };
37
- }
1
+ import { generateAPITypes } from "../../util/Common";
2
+ import requestAPI from "../../util/RequestAPI";
3
+
4
+ export function getSampleList(isForce = true) {
5
+ return {
6
+ types: generateAPITypes("SAMPLE_LIST"),
7
+ shouldCallAPI: state => {
8
+ if (!isForce) {
9
+ const { sampleDataList = [] } = state;
10
+ return sampleDataList.length === 0;
11
+ }
12
+ return true;
13
+ },
14
+ callAPI: state =>
15
+ requestAPI(`${mockServerURL}/api/v1/sampleapi`, {})
16
+ .get()
17
+ .then(res => {
18
+ return res;
19
+ })
20
+ };
21
+ }
22
+
23
+ export function addSample(payload) {
24
+ return {
25
+ types: generateAPITypes("ADD_SAMPLE"),
26
+ callAPI: state => {
27
+ return new Promise((resolve, reject) => {
28
+ let url = `${mockServerURL}/api/v1/addSample`;
29
+ requestAPI(url, {})
30
+ .post("", payload)
31
+ .then(res => {
32
+ resolve(res);
33
+ });
34
+ });
35
+ }
36
+ };
37
+ }
@@ -1,65 +1,65 @@
1
- import {
2
- push as routerPush,
3
- replace as routerReplace
4
- } from "redux-router-middleware";
5
-
6
- export function push(obj, isHref) {
7
- //obj.pathname = isHref ? obj.pathname : URL_PREFIX + obj.pathname;
8
- return (dispatch, getState) => {
9
- let state = getState();
10
- dispatch(routerPush(obj));
11
- };
12
- }
13
-
14
- export function replace(obj) {
15
- return (dispatch, getState) => {
16
- let state = getState();
17
- if (
18
- !state.routing.location ||
19
- obj.href !== state.routing.location.pathname
20
- ) {
21
- let locationState =
22
- state.routing.location && state.routing.location.state;
23
- if (!obj.state && locationState) {
24
- obj.state = {};
25
- Object.assign(obj.state, locationState);
26
- }
27
- dispatch(routerReplace(obj));
28
- }
29
- };
30
- }
31
-
32
- export function showAlert(data) {
33
- return {
34
- type: "ALERT_SHOW",
35
- data
36
- };
37
- }
38
-
39
- export function hideAlert() {
40
- return {
41
- type: "ALERT_HIDE"
42
- };
43
- }
44
-
45
- export const alertAction = (() => {
46
- let ob = { resolve: null, reject: null };
47
- function showConfirmBox(data) {
48
- return dispatch =>
49
- new Promise((res, rej) => {
50
- ob.resolve = () => {
51
- dispatch(hideAlert());
52
- res();
53
- };
54
- ob.reject = () => {
55
- dispatch(hideAlert());
56
- rej();
57
- };
58
- dispatch(showAlert(data));
59
- });
60
- }
61
- return {
62
- ob,
63
- showConfirmBox
64
- };
65
- })();
1
+ import {
2
+ push as routerPush,
3
+ replace as routerReplace
4
+ } from "redux-router-middleware";
5
+
6
+ export function push(obj, isHref) {
7
+ //obj.pathname = isHref ? obj.pathname : URL_PREFIX + obj.pathname;
8
+ return (dispatch, getState) => {
9
+ let state = getState();
10
+ dispatch(routerPush(obj));
11
+ };
12
+ }
13
+
14
+ export function replace(obj) {
15
+ return (dispatch, getState) => {
16
+ let state = getState();
17
+ if (
18
+ !state.routing.location ||
19
+ obj.href !== state.routing.location.pathname
20
+ ) {
21
+ let locationState =
22
+ state.routing.location && state.routing.location.state;
23
+ if (!obj.state && locationState) {
24
+ obj.state = {};
25
+ Object.assign(obj.state, locationState);
26
+ }
27
+ dispatch(routerReplace(obj));
28
+ }
29
+ };
30
+ }
31
+
32
+ export function showAlert(data) {
33
+ return {
34
+ type: "ALERT_SHOW",
35
+ data
36
+ };
37
+ }
38
+
39
+ export function hideAlert() {
40
+ return {
41
+ type: "ALERT_HIDE"
42
+ };
43
+ }
44
+
45
+ export const alertAction = (() => {
46
+ let ob = { resolve: null, reject: null };
47
+ function showConfirmBox(data) {
48
+ return dispatch =>
49
+ new Promise((res, rej) => {
50
+ ob.resolve = () => {
51
+ dispatch(hideAlert());
52
+ res();
53
+ };
54
+ ob.reject = () => {
55
+ dispatch(hideAlert());
56
+ rej();
57
+ };
58
+ dispatch(showAlert(data));
59
+ });
60
+ }
61
+ return {
62
+ ob,
63
+ showConfirmBox
64
+ };
65
+ })();
@@ -1,19 +1,19 @@
1
- import { URL_PREFIX } from "./util/Common";
2
-
3
- export default function getUrls(isDomainMapped) {
4
- let urls = [
5
- {
6
- name: "root",
7
- pattern: "/"
8
- },
9
- {
10
- name: "sampleList",
11
- pattern: "/sample"
12
- }
13
- ];
14
-
15
- return urls.map(url => {
16
- url.pattern = `${URL_PREFIX}${url.pattern}`;
17
- return url;
18
- });
19
- }
1
+ import { URL_PREFIX } from "./util/Common";
2
+
3
+ export default function getUrls(isDomainMapped) {
4
+ let urls = [
5
+ {
6
+ name: "root",
7
+ pattern: "/"
8
+ },
9
+ {
10
+ name: "sampleList",
11
+ pattern: "/sample"
12
+ }
13
+ ];
14
+
15
+ return urls.map(url => {
16
+ url.pattern = `${URL_PREFIX}${url.pattern}`;
17
+ return url;
18
+ });
19
+ }
@@ -1,134 +1,134 @@
1
- import React, { Component } from "react";
2
- import PropTypes from "prop-types";
3
- import style from "./Alert.module.css";
4
- import {
5
- TopbandFontIcon,
6
- TicketsFontIcon,
7
- CommonFontIcon,
8
- Button
9
- } from "@zohodesk/components";
10
-
11
- import FreezeLayer from "../FreezeLayer/FreezeLayer";
12
-
13
- export default class Alert extends Component {
14
- constructor(props) {
15
- super(props);
16
- this.documentKeyupHandler = this.documentKeyupHandler.bind(this);
17
- }
18
-
19
- componentDidMount() {
20
- document.addEventListener("keyup", this.documentKeyupHandler);
21
- }
22
-
23
- componentWillUnmount() {
24
- document.removeEventListener("keyup", this.documentKeyupHandler);
25
- }
26
-
27
- documentKeyupHandler(e = {}) {
28
- e && e.preventDefault();
29
- let { onSubmitClick, onCancelClick, isActive } = this.props;
30
- if (e.keyCode === 27 && isActive) {
31
- onCancelClick();
32
- } else if (e.keyCode === 13 && isActive) {
33
- onSubmitClick();
34
- }
35
- }
36
-
37
- render() {
38
- let {
39
- onSubmitClick,
40
- onCancelClick,
41
- alertData,
42
- isActive,
43
- palette,
44
- type
45
- } = this.props;
46
- let {
47
- iconName,
48
- iconSize,
49
- title,
50
- message,
51
- confirmationMessage,
52
- submitText,
53
- cancelText,
54
- isBoldIcon
55
- } = alertData;
56
- return (
57
- <FreezeLayer
58
- zIndex="7"
59
- isActive={isActive}
60
- animationName="fadeIn"
61
- childAnimationName="scaleIn"
62
- align="both"
63
- >
64
- <div className={`${style[palette]}`}>
65
- <div className={style.container}>
66
- <div className={style.header}>
67
- <span className={style.icon}>
68
- {iconName === "splitNew" ? (
69
- <TicketsFontIcon
70
- name={iconName}
71
- size="14"
72
- isBold={isBoldIcon}
73
- />
74
- ) : iconName === "taskDemo" ? (
75
- <TopbandFontIcon
76
- name={iconName}
77
- size={iconSize ? iconSize : "15"}
78
- isBold={isBoldIcon}
79
- />
80
- ) : (
81
- <CommonFontIcon
82
- name={iconName || ""}
83
- size={iconSize ? iconSize : "15"}
84
- isBold={isBoldIcon}
85
- />
86
- )}
87
- </span>
88
- <span className={style.title}>{title}</span>
89
- </div>
90
- <div className={style.middle}>
91
- <div dangerouslySetInnerHTML={{ __html: message }} />
92
- {confirmationMessage && (
93
- <div className={style.text}>{confirmationMessage}</div>
94
- )}
95
- <div className={style.footer}>
96
- <span className={`${style.button}`}>
97
- <Button
98
- text={submitText}
99
- palette={
100
- palette === "success" ? "primaryFilled" : "dangerFilled"
101
- }
102
- onClick={onSubmitClick}
103
- />
104
- </span>
105
- {type === "confirmation" && (
106
- <span className={`${style.button}`}>
107
- <Button
108
- text={cancelText}
109
- palette="secondary"
110
- onClick={onCancelClick}
111
- />
112
- </span>
113
- )}
114
- </div>
115
- </div>
116
- </div>
117
- </div>
118
- </FreezeLayer>
119
- );
120
- }
121
- }
122
-
123
- Alert.propTypes = {
124
- alertData: PropTypes.object,
125
- isActive: PropTypes.bool,
126
- onCancelClick: PropTypes.func,
127
- onSubmitClick: PropTypes.func,
128
- palette: PropTypes.oneOf(["success", "danger"]),
129
- type: PropTypes.oneOf(["alert", "confirmation"])
130
- };
131
- Alert.defaultProps = {
132
- isActive: false,
133
- palette: "danger"
134
- };
1
+ import React, { Component } from "react";
2
+ import PropTypes from "prop-types";
3
+ import style from "./Alert.module.css";
4
+ import {
5
+ TopbandFontIcon,
6
+ TicketsFontIcon,
7
+ CommonFontIcon,
8
+ Button
9
+ } from "@zohodesk/components";
10
+
11
+ import FreezeLayer from "../FreezeLayer/FreezeLayer";
12
+
13
+ export default class Alert extends Component {
14
+ constructor(props) {
15
+ super(props);
16
+ this.documentKeyupHandler = this.documentKeyupHandler.bind(this);
17
+ }
18
+
19
+ componentDidMount() {
20
+ document.addEventListener("keyup", this.documentKeyupHandler);
21
+ }
22
+
23
+ componentWillUnmount() {
24
+ document.removeEventListener("keyup", this.documentKeyupHandler);
25
+ }
26
+
27
+ documentKeyupHandler(e = {}) {
28
+ e && e.preventDefault();
29
+ let { onSubmitClick, onCancelClick, isActive } = this.props;
30
+ if (e.keyCode === 27 && isActive) {
31
+ onCancelClick();
32
+ } else if (e.keyCode === 13 && isActive) {
33
+ onSubmitClick();
34
+ }
35
+ }
36
+
37
+ render() {
38
+ let {
39
+ onSubmitClick,
40
+ onCancelClick,
41
+ alertData,
42
+ isActive,
43
+ palette,
44
+ type
45
+ } = this.props;
46
+ let {
47
+ iconName,
48
+ iconSize,
49
+ title,
50
+ message,
51
+ confirmationMessage,
52
+ submitText,
53
+ cancelText,
54
+ isBoldIcon
55
+ } = alertData;
56
+ return (
57
+ <FreezeLayer
58
+ zIndex="7"
59
+ isActive={isActive}
60
+ animationName="fadeIn"
61
+ childAnimationName="scaleIn"
62
+ align="both"
63
+ >
64
+ <div className={`${style[palette]}`}>
65
+ <div className={style.container}>
66
+ <div className={style.header}>
67
+ <span className={style.icon}>
68
+ {iconName === "splitNew" ? (
69
+ <TicketsFontIcon
70
+ name={iconName}
71
+ size="14"
72
+ isBold={isBoldIcon}
73
+ />
74
+ ) : iconName === "taskDemo" ? (
75
+ <TopbandFontIcon
76
+ name={iconName}
77
+ size={iconSize ? iconSize : "15"}
78
+ isBold={isBoldIcon}
79
+ />
80
+ ) : (
81
+ <CommonFontIcon
82
+ name={iconName || ""}
83
+ size={iconSize ? iconSize : "15"}
84
+ isBold={isBoldIcon}
85
+ />
86
+ )}
87
+ </span>
88
+ <span className={style.title}>{title}</span>
89
+ </div>
90
+ <div className={style.middle}>
91
+ <div dangerouslySetInnerHTML={{ __html: message }} />
92
+ {confirmationMessage && (
93
+ <div className={style.text}>{confirmationMessage}</div>
94
+ )}
95
+ <div className={style.footer}>
96
+ <span className={`${style.button}`}>
97
+ <Button
98
+ text={submitText}
99
+ palette={
100
+ palette === "success" ? "primaryFilled" : "dangerFilled"
101
+ }
102
+ onClick={onSubmitClick}
103
+ />
104
+ </span>
105
+ {type === "confirmation" && (
106
+ <span className={`${style.button}`}>
107
+ <Button
108
+ text={cancelText}
109
+ palette="secondary"
110
+ onClick={onCancelClick}
111
+ />
112
+ </span>
113
+ )}
114
+ </div>
115
+ </div>
116
+ </div>
117
+ </div>
118
+ </FreezeLayer>
119
+ );
120
+ }
121
+ }
122
+
123
+ Alert.propTypes = {
124
+ alertData: PropTypes.object,
125
+ isActive: PropTypes.bool,
126
+ onCancelClick: PropTypes.func,
127
+ onSubmitClick: PropTypes.func,
128
+ palette: PropTypes.oneOf(["success", "danger"]),
129
+ type: PropTypes.oneOf(["alert", "confirmation"])
130
+ };
131
+ Alert.defaultProps = {
132
+ isActive: false,
133
+ palette: "danger"
134
+ };
@@ -1,79 +1,79 @@
1
- .container {
2
- background-color: var(--zd_bg_pure);
3
- border-radius: var(--zd_size2);
4
- width: var(--zd_size430);
5
- }
6
- .header {
7
- text-transform: capitalize;
8
- padding: var(--zd_size12) var(--zd_size20);
9
- box-shadow: 0 0 var(--zd_size3) 0 var(--zd_shadow_smoke36);
10
- display: -webkit-box;
11
- display: -ms-flexbox;
12
- display: flex;
13
- -webkit-box-orient: horizontal;
14
- -webkit-box-direction: normal;
15
- -webkit-flex-direction: row;
16
- -ms-flex-direction: row;
17
- flex-direction: row;
18
- -webkit-box-align: center;
19
- -ms-flex-align: center;
20
- align-items: center;
21
- }
22
- .danger .header {
23
- background-color: var(--zd_bg_danger5);
24
- color: var(--zd_text_danger4);
25
- }
26
- .success .header {
27
- background-color: var(--zd_bg_primarytrans2);
28
- color: var(--zd_text_prime);
29
- }
30
- .icon {
31
- margin-right: var(--zd_size10);
32
- font-size: 0;
33
- }
34
- .danger .icon {
35
- color: var(--zd_text_danger4);
36
- }
37
- .success .icon {
38
- color: var(--zd_text_prime);
39
- }
40
- .title {
41
- -webkit-box-flex: 1;
42
- -ms-flex-positive: 1;
43
- flex-grow: 1;
44
- min-height: 0;
45
- min-width: 0;
46
- white-space: nowrap;
47
- word-wrap: normal;
48
- overflow: hidden;
49
- text-overflow: ellipsis;
50
- font-size: var(--zd_size15);
51
- }
52
-
53
- .middle {
54
- padding: var(--zd_size30) var(--zd_size20) var(--zd_size20);
55
- line-height: var(--zd_size25);
56
- color: var(--zd_text_dark4);
57
- font-size: var(--zd_size15);
58
- word-break: break-word;
59
- }
60
- .text {
61
- margin-top: var(--zd_size20);
62
- }
63
- .footer {
64
- margin-top: var(--zd_size20);
65
- }
66
-
67
- .button {
68
- margin-right: var(--zd_size20);
69
- display: inline-block;
70
- }
71
-
72
- html[dir="rtl"] .button {
73
- margin-right: 0;
74
- margin-left: var(--zd_size20);
75
- }
76
- html[dir="rtl"] .icon {
77
- margin-left: var(--zd_size10);
78
- margin-right: 0;
79
- }
1
+ .container {
2
+ background-color: var(--zd_bg_pure);
3
+ border-radius: var(--zd_size2);
4
+ width: var(--zd_size430);
5
+ }
6
+ .header {
7
+ text-transform: capitalize;
8
+ padding: var(--zd_size12) var(--zd_size20);
9
+ box-shadow: 0 0 var(--zd_size3) 0 var(--zd_shadow_smoke36);
10
+ display: -webkit-box;
11
+ display: -ms-flexbox;
12
+ display: flex;
13
+ -webkit-box-orient: horizontal;
14
+ -webkit-box-direction: normal;
15
+ -webkit-flex-direction: row;
16
+ -ms-flex-direction: row;
17
+ flex-direction: row;
18
+ -webkit-box-align: center;
19
+ -ms-flex-align: center;
20
+ align-items: center;
21
+ }
22
+ .danger .header {
23
+ background-color: var(--zd_bg_danger5);
24
+ color: var(--zd_text_danger4);
25
+ }
26
+ .success .header {
27
+ background-color: var(--zd_bg_primarytrans2);
28
+ color: var(--zd_text_prime);
29
+ }
30
+ .icon {
31
+ margin-right: var(--zd_size10);
32
+ font-size: 0;
33
+ }
34
+ .danger .icon {
35
+ color: var(--zd_text_danger4);
36
+ }
37
+ .success .icon {
38
+ color: var(--zd_text_prime);
39
+ }
40
+ .title {
41
+ -webkit-box-flex: 1;
42
+ -ms-flex-positive: 1;
43
+ flex-grow: 1;
44
+ min-height: 0;
45
+ min-width: 0;
46
+ white-space: nowrap;
47
+ word-wrap: normal;
48
+ overflow: hidden;
49
+ text-overflow: ellipsis;
50
+ font-size: var(--zd_size15);
51
+ }
52
+
53
+ .middle {
54
+ padding: var(--zd_size30) var(--zd_size20) var(--zd_size20);
55
+ line-height: var(--zd_size25);
56
+ color: var(--zd_text_dark4);
57
+ font-size: var(--zd_size15);
58
+ word-break: break-word;
59
+ }
60
+ .text {
61
+ margin-top: var(--zd_size20);
62
+ }
63
+ .footer {
64
+ margin-top: var(--zd_size20);
65
+ }
66
+
67
+ .button {
68
+ margin-right: var(--zd_size20);
69
+ display: inline-block;
70
+ }
71
+
72
+ html[dir="rtl"] .button {
73
+ margin-right: 0;
74
+ margin-left: var(--zd_size20);
75
+ }
76
+ html[dir="rtl"] .icon {
77
+ margin-left: var(--zd_size10);
78
+ margin-right: 0;
79
+ }