@micromag/element-urbania-author 0.3.832 → 0.4.6

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.
@@ -1,2 +1,2 @@
1
1
  .micromag-element-urbania-author-avatar-container{display:inline-block;position:relative;width:100%;z-index:1}.micromag-element-urbania-author-avatar-container.micromag-element-urbania-author-avatar-shapeCircle .micromag-element-urbania-author-avatar-shape{background-color:#fff;background-position:top;border-radius:50%;overflow:hidden}.micromag-element-urbania-author-avatar-container .micromag-element-urbania-author-avatar-shape{background-color:#fff;background-position:50%;background-repeat:no-repeat;background-size:cover;-webkit-box-shadow:0 0 4px rgba(0,0,0,.2);box-shadow:0 0 4px rgba(0,0,0,.2);display:block;height:0;padding-bottom:100%;width:100%}
2
- .micromag-element-urbania-author-container{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;color:#222;font-family:Agrandir;vertical-align:center}.micromag-element-urbania-author-container .micromag-element-urbania-author-image{max-width:4em;min-width:2.2em}.micromag-element-urbania-author-container .micromag-element-urbania-author-link{color:#222;display:inline-block;-webkit-text-decoration:none;text-decoration:none}.micromag-element-urbania-author-container .micromag-element-urbania-author-right{display:block}.micromag-element-urbania-author-container .micromag-element-urbania-author-name,.micromag-element-urbania-author-container .micromag-element-urbania-author-prefix{min-height:20px}.micromag-element-urbania-author-container .micromag-element-urbania-author-collaborator,.micromag-element-urbania-author-container .micromag-element-urbania-author-name,.micromag-element-urbania-author-container .micromag-element-urbania-author-prefix{background-color:#efefef;font-family:Agrandir;font-size:10px;letter-spacing:.04em;line-height:1;white-space:nowrap}.micromag-element-urbania-author-container .micromag-element-urbania-author-name{border-bottom-right-radius:40px;border-top-right-radius:40px;font-weight:700;line-height:1;margin-left:-7px;padding:6px 8px 3px 13px;text-transform:uppercase}.micromag-element-urbania-author-container .micromag-element-urbania-author-name p{display:inline;font-size:inherit;font-weight:inherit;margin:0;text-transform:inherit}.micromag-element-urbania-author-container .micromag-element-urbania-author-collaborator{background-color:transparent;color:#fff;padding-top:2px;position:absolute}.micromag-element-urbania-author-container .micromag-element-urbania-author-collaborator .micromag-element-urbania-author-collaboratorText{font-size:.9em;line-height:1;padding-left:7.3px}.micromag-element-urbania-author-container .micromag-element-urbania-author-collaborator .micromag-element-urbania-author-collaboratorText p{display:inline;font-size:inherit;line-height:inherit}.micromag-element-urbania-author-container .micromag-element-urbania-author-prefix{border-bottom-left-radius:40px;border-top-left-radius:40px;margin-right:-5px;padding:6px 12px 3px 8px}.micromag-element-urbania-author-container.micromag-element-urbania-author-isSmall{font-size:9px}.micromag-element-urbania-author-container.micromag-element-urbania-author-isSmall .micromag-element-urbania-author-name,.micromag-element-urbania-author-container.micromag-element-urbania-author-isSmall .micromag-element-urbania-author-prefix{font-size:9px;white-space:normal}.micromag-element-urbania-author-container.micromag-element-urbania-author-isSmall .micromag-element-urbania-author-image{max-width:2.2em}.micromag-element-urbania-author-container.micromag-element-urbania-author-withoutImage .micromag-element-urbania-author-name{margin-left:0;padding-left:0}.micromag-element-urbania-author-container.micromag-element-urbania-author-withoutImage .micromag-element-urbania-author-prefix{margin-right:0;padding-right:.4em}.micromag-element-urbania-author-container.micromag-element-urbania-author-withoutBackground .micromag-element-urbania-author-collaborator,.micromag-element-urbania-author-container.micromag-element-urbania-author-withoutBackground .micromag-element-urbania-author-name,.micromag-element-urbania-author-container.micromag-element-urbania-author-withoutBackground .micromag-element-urbania-author-prefix{background-color:transparent}
2
+ .micromag-element-urbania-author-container{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;color:#222;font-family:Agrandir,sans-serif;vertical-align:center}.micromag-element-urbania-author-container .micromag-element-urbania-author-image{max-width:4em;min-width:2.2em}.micromag-element-urbania-author-container .micromag-element-urbania-author-link{color:#222;display:inline-block;-webkit-text-decoration:none;text-decoration:none}.micromag-element-urbania-author-container .micromag-element-urbania-author-right{display:block}.micromag-element-urbania-author-container .micromag-element-urbania-author-name,.micromag-element-urbania-author-container .micromag-element-urbania-author-prefix{min-height:20px}.micromag-element-urbania-author-container .micromag-element-urbania-author-collaborator,.micromag-element-urbania-author-container .micromag-element-urbania-author-name,.micromag-element-urbania-author-container .micromag-element-urbania-author-prefix{background-color:#efefef;font-family:Agrandir,sans-serif;font-size:10px;letter-spacing:.04em;line-height:1;white-space:nowrap}.micromag-element-urbania-author-container .micromag-element-urbania-author-name{border-bottom-right-radius:40px;border-top-right-radius:40px;font-weight:700;line-height:1;margin-left:-7px;padding:6px 8px 3px 13px;text-transform:uppercase}.micromag-element-urbania-author-container .micromag-element-urbania-author-name p{display:inline;font-size:inherit;font-weight:inherit;margin:0;text-transform:inherit}.micromag-element-urbania-author-container .micromag-element-urbania-author-collaborator{background-color:transparent;color:var(--mm-white);padding-top:2px;position:absolute}.micromag-element-urbania-author-container .micromag-element-urbania-author-collaborator .micromag-element-urbania-author-collaboratorText{font-size:.9em;line-height:1;padding-left:7.3px}.micromag-element-urbania-author-container .micromag-element-urbania-author-collaborator .micromag-element-urbania-author-collaboratorText p{display:inline;font-size:inherit;line-height:inherit}.micromag-element-urbania-author-container .micromag-element-urbania-author-prefix{border-bottom-left-radius:40px;border-top-left-radius:40px;margin-right:-5px;padding:6px 12px 3px 8px}.micromag-element-urbania-author-container.micromag-element-urbania-author-isSmall{font-size:9px}.micromag-element-urbania-author-container.micromag-element-urbania-author-isSmall .micromag-element-urbania-author-name,.micromag-element-urbania-author-container.micromag-element-urbania-author-isSmall .micromag-element-urbania-author-prefix{font-size:9px;white-space:normal}.micromag-element-urbania-author-container.micromag-element-urbania-author-isSmall .micromag-element-urbania-author-image{max-width:2.2em}.micromag-element-urbania-author-container.micromag-element-urbania-author-withoutImage .micromag-element-urbania-author-name{margin-left:0;padding-left:0}.micromag-element-urbania-author-container.micromag-element-urbania-author-withoutImage .micromag-element-urbania-author-prefix{margin-right:0;padding-right:.4em}.micromag-element-urbania-author-container.micromag-element-urbania-author-withoutBackground .micromag-element-urbania-author-collaborator,.micromag-element-urbania-author-container.micromag-element-urbania-author-withoutBackground .micromag-element-urbania-author-name,.micromag-element-urbania-author-container.micromag-element-urbania-author-withoutBackground .micromag-element-urbania-author-prefix{background-color:transparent}
package/es/index.d.ts ADDED
@@ -0,0 +1,25 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { TextElement, ImageElement } from '@micromag/core';
3
+
4
+ interface UrbaniaAuthorProps {
5
+ author?: {
6
+ slug?: string;
7
+ name?: TextElement;
8
+ image?: ImageElement;
9
+ url?: string;
10
+ collaborator?: TextElement;
11
+ } | null;
12
+ withImage?: boolean;
13
+ withoutLink?: boolean;
14
+ withoutPrefix?: boolean;
15
+ withoutBackground?: boolean;
16
+ isSmall?: boolean;
17
+ linkUnderlineColor?: string | null;
18
+ className?: string | null;
19
+ backgroundClassName?: string | null;
20
+ collaboratorClassName?: string | null;
21
+ shouldLoad?: boolean;
22
+ }
23
+ declare function UrbaniaAuthor({ author, withImage, withoutLink, withoutPrefix, withoutBackground, isSmall, linkUnderlineColor, className, backgroundClassName, collaboratorClassName, shouldLoad, ...otherProps }: UrbaniaAuthorProps): react_jsx_runtime.JSX.Element;
24
+
25
+ export { UrbaniaAuthor as default };
package/es/index.js CHANGED
@@ -1,10 +1,8 @@
1
1
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
2
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
3
3
  import classNames from 'classnames';
4
- import PropTypes from 'prop-types';
5
4
  import React from 'react';
6
5
  import { useIntl } from 'react-intl';
7
- import { PropTypes as PropTypes$1 } from '@micromag/core';
8
6
  import { getOptimalImageUrl, pascalCase, isTextFilled } from '@micromag/core/utils';
9
7
  import Link from '@micromag/element-link';
10
8
  import Text from '@micromag/element-text';
@@ -12,35 +10,23 @@ import { useSetting } from '@micromag/core/contexts';
12
10
 
13
11
  var styles$1 = {"container":"micromag-element-urbania-author-avatar-container","shapeCircle":"micromag-element-urbania-author-avatar-shapeCircle","shape":"micromag-element-urbania-author-avatar-shape"};
14
12
 
15
- var propTypes$1 = {
16
- image: PropTypes$1.imageElement,
17
- width: PropTypes.number,
18
- height: PropTypes.number,
19
- resolution: PropTypes.number,
20
- isTag: PropTypes.bool,
21
- shape: PropTypes.oneOf([null, 'tag', 'circle']),
22
- className: PropTypes.string,
23
- shouldLoad: PropTypes.bool
24
- };
25
- var defaultProps$1 = {
26
- image: null,
27
- width: 100,
28
- height: 100,
29
- resolution: 1,
30
- isTag: false,
31
- shape: 'circle',
32
- className: null,
33
- shouldLoad: true
34
- };
35
- var Avatar = function Avatar(_ref) {
36
- var image = _ref.image,
37
- width = _ref.width,
38
- height = _ref.height,
39
- resolution = _ref.resolution,
40
- shape = _ref.shape,
41
- isTag = _ref.isTag,
42
- className = _ref.className,
43
- shouldLoad = _ref.shouldLoad;
13
+ function Avatar(_ref) {
14
+ var _ref$image = _ref.image,
15
+ image = _ref$image === void 0 ? null : _ref$image,
16
+ _ref$width = _ref.width,
17
+ width = _ref$width === void 0 ? 100 : _ref$width,
18
+ _ref$height = _ref.height,
19
+ height = _ref$height === void 0 ? 100 : _ref$height,
20
+ _ref$resolution = _ref.resolution,
21
+ resolution = _ref$resolution === void 0 ? 1 : _ref$resolution,
22
+ _ref$shape = _ref.shape,
23
+ shape = _ref$shape === void 0 ? 'circle' : _ref$shape,
24
+ _ref$isTag = _ref.isTag,
25
+ isTag = _ref$isTag === void 0 ? false : _ref$isTag,
26
+ _ref$className = _ref.className,
27
+ className = _ref$className === void 0 ? null : _ref$className,
28
+ _ref$shouldLoad = _ref.shouldLoad,
29
+ shouldLoad = _ref$shouldLoad === void 0 ? true : _ref$shouldLoad;
44
30
  var supportsWebp = useSetting('supportsWebp', false);
45
31
  var imageResolution = useSetting('imageResolution', resolution);
46
32
  var imageAtSize = getOptimalImageUrl(image, width, height, {
@@ -56,57 +42,34 @@ var Avatar = function Avatar(_ref) {
56
42
  backgroundImage: shouldLoad ? "url(\"".concat(imageAtSize, "\")") : null
57
43
  }
58
44
  }));
59
- };
60
- Avatar.propTypes = propTypes$1;
61
- Avatar.defaultProps = defaultProps$1;
45
+ }
62
46
 
63
47
  var styles = {"container":"micromag-element-urbania-author-container","image":"micromag-element-urbania-author-image","link":"micromag-element-urbania-author-link","right":"micromag-element-urbania-author-right","name":"micromag-element-urbania-author-name","prefix":"micromag-element-urbania-author-prefix","collaborator":"micromag-element-urbania-author-collaborator","collaboratorText":"micromag-element-urbania-author-collaboratorText","isSmall":"micromag-element-urbania-author-isSmall","withoutImage":"micromag-element-urbania-author-withoutImage","withoutBackground":"micromag-element-urbania-author-withoutBackground"};
64
48
 
65
49
  var _excluded = ["author", "withImage", "withoutLink", "withoutPrefix", "withoutBackground", "isSmall", "linkUnderlineColor", "className", "backgroundClassName", "collaboratorClassName", "shouldLoad"];
66
- var propTypes = {
67
- author: PropTypes.shape({
68
- slug: PropTypes.string,
69
- name: PropTypes$1.textElement,
70
- image: PropTypes$1.imageElement,
71
- url: PropTypes.string,
72
- collaborator: PropTypes$1.textElement
73
- }),
74
- withImage: PropTypes.bool,
75
- withoutLink: PropTypes.bool,
76
- withoutPrefix: PropTypes.bool,
77
- withoutBackground: PropTypes.bool,
78
- isSmall: PropTypes.bool,
79
- linkUnderlineColor: PropTypes.string,
80
- className: PropTypes.string,
81
- backgroundClassName: PropTypes.string,
82
- collaboratorClassName: PropTypes.string,
83
- shouldLoad: PropTypes.bool
84
- };
85
- var defaultProps = {
86
- author: null,
87
- withImage: true,
88
- withoutLink: false,
89
- withoutPrefix: false,
90
- withoutBackground: false,
91
- isSmall: false,
92
- linkUnderlineColor: null,
93
- className: null,
94
- backgroundClassName: null,
95
- collaboratorClassName: null,
96
- shouldLoad: true
97
- };
98
- var UrbaniaAuthor = function UrbaniaAuthor(_ref) {
99
- var author = _ref.author,
100
- withImage = _ref.withImage,
101
- withoutLink = _ref.withoutLink,
102
- withoutPrefix = _ref.withoutPrefix,
103
- withoutBackground = _ref.withoutBackground,
104
- isSmall = _ref.isSmall,
105
- linkUnderlineColor = _ref.linkUnderlineColor,
106
- className = _ref.className,
107
- backgroundClassName = _ref.backgroundClassName,
108
- collaboratorClassName = _ref.collaboratorClassName,
109
- shouldLoad = _ref.shouldLoad,
50
+ function UrbaniaAuthor(_ref) {
51
+ var _ref$author = _ref.author,
52
+ author = _ref$author === void 0 ? null : _ref$author,
53
+ _ref$withImage = _ref.withImage,
54
+ withImage = _ref$withImage === void 0 ? true : _ref$withImage,
55
+ _ref$withoutLink = _ref.withoutLink,
56
+ withoutLink = _ref$withoutLink === void 0 ? false : _ref$withoutLink,
57
+ _ref$withoutPrefix = _ref.withoutPrefix,
58
+ withoutPrefix = _ref$withoutPrefix === void 0 ? false : _ref$withoutPrefix,
59
+ _ref$withoutBackgroun = _ref.withoutBackground,
60
+ withoutBackground = _ref$withoutBackgroun === void 0 ? false : _ref$withoutBackgroun,
61
+ _ref$isSmall = _ref.isSmall,
62
+ isSmall = _ref$isSmall === void 0 ? false : _ref$isSmall,
63
+ _ref$linkUnderlineCol = _ref.linkUnderlineColor,
64
+ linkUnderlineColor = _ref$linkUnderlineCol === void 0 ? null : _ref$linkUnderlineCol,
65
+ _ref$className = _ref.className,
66
+ className = _ref$className === void 0 ? null : _ref$className,
67
+ _ref$backgroundClassN = _ref.backgroundClassName,
68
+ backgroundClassName = _ref$backgroundClassN === void 0 ? null : _ref$backgroundClassN,
69
+ _ref$collaboratorClas = _ref.collaboratorClassName,
70
+ collaboratorClassName = _ref$collaboratorClas === void 0 ? null : _ref$collaboratorClas,
71
+ _ref$shouldLoad = _ref.shouldLoad,
72
+ shouldLoad = _ref$shouldLoad === void 0 ? true : _ref$shouldLoad,
110
73
  otherProps = _objectWithoutProperties(_ref, _excluded);
111
74
  var intl = useIntl();
112
75
  var _ref2 = author || {},
@@ -155,8 +118,6 @@ var UrbaniaAuthor = function UrbaniaAuthor(_ref) {
155
118
  }, authorText) : /*#__PURE__*/React.createElement("div", null, authorText), collaboratorText !== null ? /*#__PURE__*/React.createElement("div", {
156
119
  className: classNames([styles.collaborator, _defineProperty({}, collaboratorClassName, collaboratorClassName)])
157
120
  }, collaboratorText !== null ? collaboratorText : null) : null));
158
- };
159
- UrbaniaAuthor.propTypes = propTypes;
160
- UrbaniaAuthor.defaultProps = defaultProps;
121
+ }
161
122
 
162
123
  export { UrbaniaAuthor as default };
package/es/styles.css ADDED
@@ -0,0 +1,2 @@
1
+ .micromag-element-urbania-author-avatar-container{display:inline-block;position:relative;width:100%;z-index:1}.micromag-element-urbania-author-avatar-container.micromag-element-urbania-author-avatar-shapeCircle .micromag-element-urbania-author-avatar-shape{background-color:#fff;background-position:top;border-radius:50%;overflow:hidden}.micromag-element-urbania-author-avatar-container .micromag-element-urbania-author-avatar-shape{background-color:#fff;background-position:50%;background-repeat:no-repeat;background-size:cover;-webkit-box-shadow:0 0 4px rgba(0,0,0,.2);box-shadow:0 0 4px rgba(0,0,0,.2);display:block;height:0;padding-bottom:100%;width:100%}
2
+ .micromag-element-urbania-author-container{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;color:#222;font-family:Agrandir,sans-serif;vertical-align:center}.micromag-element-urbania-author-container .micromag-element-urbania-author-image{max-width:4em;min-width:2.2em}.micromag-element-urbania-author-container .micromag-element-urbania-author-link{color:#222;display:inline-block;-webkit-text-decoration:none;text-decoration:none}.micromag-element-urbania-author-container .micromag-element-urbania-author-right{display:block}.micromag-element-urbania-author-container .micromag-element-urbania-author-name,.micromag-element-urbania-author-container .micromag-element-urbania-author-prefix{min-height:20px}.micromag-element-urbania-author-container .micromag-element-urbania-author-collaborator,.micromag-element-urbania-author-container .micromag-element-urbania-author-name,.micromag-element-urbania-author-container .micromag-element-urbania-author-prefix{background-color:#efefef;font-family:Agrandir,sans-serif;font-size:10px;letter-spacing:.04em;line-height:1;white-space:nowrap}.micromag-element-urbania-author-container .micromag-element-urbania-author-name{border-bottom-right-radius:40px;border-top-right-radius:40px;font-weight:700;line-height:1;margin-left:-7px;padding:6px 8px 3px 13px;text-transform:uppercase}.micromag-element-urbania-author-container .micromag-element-urbania-author-name p{display:inline;font-size:inherit;font-weight:inherit;margin:0;text-transform:inherit}.micromag-element-urbania-author-container .micromag-element-urbania-author-collaborator{background-color:transparent;color:var(--mm-white);padding-top:2px;position:absolute}.micromag-element-urbania-author-container .micromag-element-urbania-author-collaborator .micromag-element-urbania-author-collaboratorText{font-size:.9em;line-height:1;padding-left:7.3px}.micromag-element-urbania-author-container .micromag-element-urbania-author-collaborator .micromag-element-urbania-author-collaboratorText p{display:inline;font-size:inherit;line-height:inherit}.micromag-element-urbania-author-container .micromag-element-urbania-author-prefix{border-bottom-left-radius:40px;border-top-left-radius:40px;margin-right:-5px;padding:6px 12px 3px 8px}.micromag-element-urbania-author-container.micromag-element-urbania-author-isSmall{font-size:9px}.micromag-element-urbania-author-container.micromag-element-urbania-author-isSmall .micromag-element-urbania-author-name,.micromag-element-urbania-author-container.micromag-element-urbania-author-isSmall .micromag-element-urbania-author-prefix{font-size:9px;white-space:normal}.micromag-element-urbania-author-container.micromag-element-urbania-author-isSmall .micromag-element-urbania-author-image{max-width:2.2em}.micromag-element-urbania-author-container.micromag-element-urbania-author-withoutImage .micromag-element-urbania-author-name{margin-left:0;padding-left:0}.micromag-element-urbania-author-container.micromag-element-urbania-author-withoutImage .micromag-element-urbania-author-prefix{margin-right:0;padding-right:.4em}.micromag-element-urbania-author-container.micromag-element-urbania-author-withoutBackground .micromag-element-urbania-author-collaborator,.micromag-element-urbania-author-container.micromag-element-urbania-author-withoutBackground .micromag-element-urbania-author-name,.micromag-element-urbania-author-container.micromag-element-urbania-author-withoutBackground .micromag-element-urbania-author-prefix{background-color:transparent}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@micromag/element-urbania-author",
3
- "version": "0.3.832",
3
+ "version": "0.4.6",
4
4
  "private": false,
5
5
  "description": "",
6
6
  "keywords": [
@@ -34,6 +34,7 @@
34
34
  "module": "es/index.js",
35
35
  "exports": {
36
36
  ".": {
37
+ "types": "./es/index.d.ts",
37
38
  "import": "./es/index.js"
38
39
  },
39
40
  "./assets/css/styles": "./assets/css/styles.css",
@@ -47,31 +48,31 @@
47
48
  "scripts": {
48
49
  "clean": "rm -rf es && rm -rf lib && rm -rf assets",
49
50
  "prepublishOnly": "npm run build",
50
- "build": "../../scripts/prepare-package.sh"
51
+ "build": "../../scripts/prepare-package.sh --types"
51
52
  },
52
53
  "devDependencies": {
53
- "react": "^16.8.0 || ^17.0.0 || ^18.0.0",
54
- "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0"
54
+ "react": "^19.2.0",
55
+ "react-dom": "^18.3.0 || ^19.0.0"
55
56
  },
56
57
  "peerDependencies": {
57
- "react": "^16.8.0 || ^17.0.0 || ^18.0.0",
58
- "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0"
58
+ "react": "^19.2.0",
59
+ "react-dom": "^18.3.0 || ^19.0.0"
59
60
  },
60
61
  "dependencies": {
61
- "@babel/runtime": "^7.13.10",
62
- "@micromag/core": "^0.3.832",
63
- "@micromag/element-button": "^0.3.832",
64
- "@micromag/element-link": "^0.3.832",
65
- "@micromag/element-text": "^0.3.832",
62
+ "@babel/runtime": "^7.28.6",
63
+ "@micromag/core": "^0.4.6",
64
+ "@micromag/element-button": "^0.4.6",
65
+ "@micromag/element-link": "^0.4.6",
66
+ "@micromag/element-text": "^0.4.6",
66
67
  "classnames": "^2.2.6",
67
- "lodash": "^4.17.21",
68
- "prop-types": "^15.7.2",
69
- "react-intl": "^6.6.4",
68
+ "lodash": "^4.17.23",
69
+ "react-intl": "^8.1.3",
70
70
  "uuid": "^9.0.0"
71
71
  },
72
72
  "publishConfig": {
73
73
  "access": "public",
74
74
  "registry": "https://registry.npmjs.org/"
75
75
  },
76
- "gitHead": "4969d64e304334cfd47321e624e5914e0694c55f"
76
+ "gitHead": "cf8440c2851b864167a1f545aa56551d55473263",
77
+ "types": "es/index.d.ts"
77
78
  }