@dfds-ui/icons 0.9.5-alpha.d77e4e1c → 0.9.6-alpha.0e1d4db0

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.
@@ -0,0 +1,29 @@
1
+ import * as systemIcons from './system';
2
+ declare type SystemIcon = keyof typeof systemIcons;
3
+ declare type Size = 's' | 'm' | 'l' | 'xl';
4
+ export declare type SystemIconProps = {
5
+ /**
6
+ * Name of the icon in the System set of icons.
7
+ */
8
+ icon: SystemIcon;
9
+ /**
10
+ * Predefined size to use.
11
+ */
12
+ size: Size;
13
+ /**
14
+ * Class name to be assigned to the component.
15
+ */
16
+ className?: string;
17
+ /**
18
+ * Setting the `inline` prop to `true` will set negative margins which will compensate for the existing padding/space
19
+ * that appears inside the icon's sources. Use this only when inline icons inside a text-block.
20
+ *
21
+ * NB! Using `inline` will result in the `size` prop being ignored.
22
+ */
23
+ inline?: boolean;
24
+ };
25
+ /**
26
+ * The `SystemIcon` component is a helper component for displaying icons in the **system** set in "sane" sizes.
27
+ */
28
+ export declare const SystemIcon: ({ icon, size, className, inline }: SystemIconProps) => JSX.Element;
29
+ export {};
package/SystemIcon.js ADDED
@@ -0,0 +1,34 @@
1
+ import { css } from '@emotion/react';
2
+ import React from 'react';
3
+ import * as systemIcons from './system';
4
+ import { jsx as ___EmotionJSX } from "@emotion/react";
5
+ var sizes = {
6
+ s: '1rem',
7
+ m: '1.5rem',
8
+ l: '2rem',
9
+ xl: '2.5rem'
10
+ };
11
+
12
+ var inlineCss = function inlineCss(size) {
13
+ return /*#__PURE__*/css("margin-top:calc(-", size, " / 6);margin-bottom:calc(-", size, " / 6);" + (process.env.NODE_ENV === "production" ? "" : ";label:inlineCss;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9TeXN0ZW1JY29uLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3Q3VDIiwiZmlsZSI6Ii4uL3NyYy9TeXN0ZW1JY29uLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0ICogYXMgc3lzdGVtSWNvbnMgZnJvbSAnLi9zeXN0ZW0nXG5cbnR5cGUgU3lzdGVtSWNvbiA9IGtleW9mIHR5cGVvZiBzeXN0ZW1JY29uc1xuXG50eXBlIFNpemUgPSAncycgfCAnbScgfCAnbCcgfCAneGwnXG5cbmV4cG9ydCB0eXBlIFN5c3RlbUljb25Qcm9wcyA9IHtcbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGljb24gaW4gdGhlIFN5c3RlbSBzZXQgb2YgaWNvbnMuXG4gICAqL1xuICBpY29uOiBTeXN0ZW1JY29uXG5cbiAgLyoqXG4gICAqIFByZWRlZmluZWQgc2l6ZSB0byB1c2UuXG4gICAqL1xuICBzaXplOiBTaXplXG5cbiAgLyoqXG4gICAqIENsYXNzIG5hbWUgdG8gYmUgYXNzaWduZWQgdG8gdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIGNsYXNzTmFtZT86IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBTZXR0aW5nIHRoZSBgaW5saW5lYCBwcm9wIHRvIGB0cnVlYCB3aWxsIHNldCBuZWdhdGl2ZSBtYXJnaW5zIHdoaWNoIHdpbGwgY29tcGVuc2F0ZSBmb3IgdGhlIGV4aXN0aW5nIHBhZGRpbmcvc3BhY2VcbiAgICogdGhhdCBhcHBlYXJzIGluc2lkZSB0aGUgaWNvbidzIHNvdXJjZXMuIFVzZSB0aGlzIG9ubHkgd2hlbiBpbmxpbmUgaWNvbnMgaW5zaWRlIGEgdGV4dC1ibG9jay5cbiAgICpcbiAgICogTkIhIFVzaW5nIGBpbmxpbmVgIHdpbGwgcmVzdWx0IGluIHRoZSBgc2l6ZWAgcHJvcCBiZWluZyBpZ25vcmVkLlxuICAgKi9cbiAgaW5saW5lPzogYm9vbGVhblxufVxuXG5jb25zdCBzaXplczogeyBbayBpbiBTaXplXTogc3RyaW5nIH0gPSB7XG4gIHM6ICcxcmVtJyxcbiAgbTogJzEuNXJlbScsXG4gIGw6ICcycmVtJyxcbiAgeGw6ICcyLjVyZW0nLFxufVxuXG5jb25zdCBpbmxpbmVDc3MgPSAoc2l6ZTogc3RyaW5nKSA9PiBjc3NgXG4gIG1hcmdpbi10b3A6IGNhbGMoLSR7c2l6ZX0gLyA2KTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygtJHtzaXplfSAvIDYpO1xuYFxuLyoqXG4gKiBUaGUgYFN5c3RlbUljb25gIGNvbXBvbmVudCBpcyBhIGhlbHBlciBjb21wb25lbnQgZm9yIGRpc3BsYXlpbmcgaWNvbnMgaW4gdGhlICoqc3lzdGVtKiogc2V0IGluIFwic2FuZVwiIHNpemVzLlxuICovXG5leHBvcnQgY29uc3QgU3lzdGVtSWNvbiA9ICh7IGljb24sIHNpemUgPSAnbScsIGNsYXNzTmFtZSwgaW5saW5lIH06IFN5c3RlbUljb25Qcm9wcykgPT4ge1xuICBjb25zdCBJY29uID0gc3lzdGVtSWNvbnNbaWNvbl1cbiAgY29uc3Qgc2l6ZVZhbHVlID0gaW5saW5lID8gJzEuNWVtJyA6IHNpemVzW3NpemVdXG4gIHJldHVybiA8SWNvbiBjbGFzc05hbWU9e2NsYXNzTmFtZX0gaGVpZ2h0PXtzaXplVmFsdWV9IHdpZHRoPXtzaXplVmFsdWV9IGNzcz17aW5saW5lICYmIGlubGluZUNzcyhzaXplVmFsdWUpfSAvPlxufVxuIl19 */");
14
+ };
15
+ /**
16
+ * The `SystemIcon` component is a helper component for displaying icons in the **system** set in "sane" sizes.
17
+ */
18
+
19
+
20
+ export var SystemIcon = function SystemIcon(_ref) {
21
+ var icon = _ref.icon,
22
+ _ref$size = _ref.size,
23
+ size = _ref$size === void 0 ? 'm' : _ref$size,
24
+ className = _ref.className,
25
+ inline = _ref.inline;
26
+ var Icon = systemIcons[icon];
27
+ var sizeValue = inline ? '1.5em' : sizes[size];
28
+ return ___EmotionJSX(Icon, {
29
+ className: className,
30
+ height: sizeValue,
31
+ width: sizeValue,
32
+ css: inline && inlineCss(sizeValue)
33
+ });
34
+ };
@@ -0,0 +1,29 @@
1
+ import * as systemIcons from './system';
2
+ declare type SystemIcon = keyof typeof systemIcons;
3
+ declare type Size = 's' | 'm' | 'l' | 'xl';
4
+ export declare type SystemIconProps = {
5
+ /**
6
+ * Name of the icon in the System set of icons.
7
+ */
8
+ icon: SystemIcon;
9
+ /**
10
+ * Predefined size to use.
11
+ */
12
+ size: Size;
13
+ /**
14
+ * Class name to be assigned to the component.
15
+ */
16
+ className?: string;
17
+ /**
18
+ * Setting the `inline` prop to `true` will set negative margins which will compensate for the existing padding/space
19
+ * that appears inside the icon's sources. Use this only when inline icons inside a text-block.
20
+ *
21
+ * NB! Using `inline` will result in the `size` prop being ignored.
22
+ */
23
+ inline?: boolean;
24
+ };
25
+ /**
26
+ * The `SystemIcon` component is a helper component for displaying icons in the **system** set in "sane" sizes.
27
+ */
28
+ export declare const SystemIcon: ({ icon, size, className, inline }: SystemIconProps) => JSX.Element;
29
+ export {};
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.SystemIcon = void 0;
7
+
8
+ var _react = require("@emotion/react");
9
+
10
+ var _react2 = _interopRequireDefault(require("react"));
11
+
12
+ var systemIcons = _interopRequireWildcard(require("./system"));
13
+
14
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
+
16
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
17
+
18
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
+
20
+ const sizes = {
21
+ s: '1rem',
22
+ m: '1.5rem',
23
+ l: '2rem',
24
+ xl: '2.5rem'
25
+ };
26
+
27
+ const inlineCss = size => /*#__PURE__*/(0, _react.css)("margin-top:calc(-", size, " / 6);margin-bottom:calc(-", size, " / 6);" + (process.env.NODE_ENV === "production" ? "" : ";label:inlineCss;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9TeXN0ZW1JY29uLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3Q3VDIiwiZmlsZSI6Ii4uLy4uL3NyYy9TeXN0ZW1JY29uLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0J1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0ICogYXMgc3lzdGVtSWNvbnMgZnJvbSAnLi9zeXN0ZW0nXG5cbnR5cGUgU3lzdGVtSWNvbiA9IGtleW9mIHR5cGVvZiBzeXN0ZW1JY29uc1xuXG50eXBlIFNpemUgPSAncycgfCAnbScgfCAnbCcgfCAneGwnXG5cbmV4cG9ydCB0eXBlIFN5c3RlbUljb25Qcm9wcyA9IHtcbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGljb24gaW4gdGhlIFN5c3RlbSBzZXQgb2YgaWNvbnMuXG4gICAqL1xuICBpY29uOiBTeXN0ZW1JY29uXG5cbiAgLyoqXG4gICAqIFByZWRlZmluZWQgc2l6ZSB0byB1c2UuXG4gICAqL1xuICBzaXplOiBTaXplXG5cbiAgLyoqXG4gICAqIENsYXNzIG5hbWUgdG8gYmUgYXNzaWduZWQgdG8gdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIGNsYXNzTmFtZT86IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBTZXR0aW5nIHRoZSBgaW5saW5lYCBwcm9wIHRvIGB0cnVlYCB3aWxsIHNldCBuZWdhdGl2ZSBtYXJnaW5zIHdoaWNoIHdpbGwgY29tcGVuc2F0ZSBmb3IgdGhlIGV4aXN0aW5nIHBhZGRpbmcvc3BhY2VcbiAgICogdGhhdCBhcHBlYXJzIGluc2lkZSB0aGUgaWNvbidzIHNvdXJjZXMuIFVzZSB0aGlzIG9ubHkgd2hlbiBpbmxpbmUgaWNvbnMgaW5zaWRlIGEgdGV4dC1ibG9jay5cbiAgICpcbiAgICogTkIhIFVzaW5nIGBpbmxpbmVgIHdpbGwgcmVzdWx0IGluIHRoZSBgc2l6ZWAgcHJvcCBiZWluZyBpZ25vcmVkLlxuICAgKi9cbiAgaW5saW5lPzogYm9vbGVhblxufVxuXG5jb25zdCBzaXplczogeyBbayBpbiBTaXplXTogc3RyaW5nIH0gPSB7XG4gIHM6ICcxcmVtJyxcbiAgbTogJzEuNXJlbScsXG4gIGw6ICcycmVtJyxcbiAgeGw6ICcyLjVyZW0nLFxufVxuXG5jb25zdCBpbmxpbmVDc3MgPSAoc2l6ZTogc3RyaW5nKSA9PiBjc3NgXG4gIG1hcmdpbi10b3A6IGNhbGMoLSR7c2l6ZX0gLyA2KTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygtJHtzaXplfSAvIDYpO1xuYFxuLyoqXG4gKiBUaGUgYFN5c3RlbUljb25gIGNvbXBvbmVudCBpcyBhIGhlbHBlciBjb21wb25lbnQgZm9yIGRpc3BsYXlpbmcgaWNvbnMgaW4gdGhlICoqc3lzdGVtKiogc2V0IGluIFwic2FuZVwiIHNpemVzLlxuICovXG5leHBvcnQgY29uc3QgU3lzdGVtSWNvbiA9ICh7IGljb24sIHNpemUgPSAnbScsIGNsYXNzTmFtZSwgaW5saW5lIH06IFN5c3RlbUljb25Qcm9wcykgPT4ge1xuICBjb25zdCBJY29uID0gc3lzdGVtSWNvbnNbaWNvbl1cbiAgY29uc3Qgc2l6ZVZhbHVlID0gaW5saW5lID8gJzEuNWVtJyA6IHNpemVzW3NpemVdXG4gIHJldHVybiA8SWNvbiBjbGFzc05hbWU9e2NsYXNzTmFtZX0gaGVpZ2h0PXtzaXplVmFsdWV9IHdpZHRoPXtzaXplVmFsdWV9IGNzcz17aW5saW5lICYmIGlubGluZUNzcyhzaXplVmFsdWUpfSAvPlxufVxuIl19 */");
28
+ /**
29
+ * The `SystemIcon` component is a helper component for displaying icons in the **system** set in "sane" sizes.
30
+ */
31
+
32
+
33
+ const SystemIcon = ({
34
+ icon,
35
+ size = 'm',
36
+ className,
37
+ inline
38
+ }) => {
39
+ const Icon = systemIcons[icon];
40
+ const sizeValue = inline ? '1.5em' : sizes[size];
41
+ return (0, _react.jsx)(Icon, {
42
+ className: className,
43
+ height: sizeValue,
44
+ width: sizeValue,
45
+ css: inline && inlineCss(sizeValue)
46
+ });
47
+ };
48
+
49
+ exports.SystemIcon = SystemIcon;
package/cjs/index.d.ts CHANGED
@@ -7,3 +7,4 @@ export * from './pax';
7
7
  export * from './flags';
8
8
  export * from './social-media';
9
9
  export * from './logistics';
10
+ export * from './SystemIcon';
package/cjs/index.js CHANGED
@@ -117,4 +117,18 @@ Object.keys(_logistics).forEach(function (key) {
117
117
  });
118
118
  });
119
119
 
120
+ var _SystemIcon = require("./SystemIcon");
121
+
122
+ Object.keys(_SystemIcon).forEach(function (key) {
123
+ if (key === "default" || key === "__esModule") return;
124
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
125
+ if (key in exports && exports[key] === _SystemIcon[key]) return;
126
+ Object.defineProperty(exports, key, {
127
+ enumerable: true,
128
+ get: function get() {
129
+ return _SystemIcon[key];
130
+ }
131
+ });
132
+ });
133
+
120
134
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
package/index.d.ts CHANGED
@@ -7,3 +7,4 @@ export * from './pax';
7
7
  export * from './flags';
8
8
  export * from './social-media';
9
9
  export * from './logistics';
10
+ export * from './SystemIcon';
package/index.js CHANGED
@@ -6,4 +6,5 @@ export * from './links';
6
6
  export * from './pax';
7
7
  export * from './flags';
8
8
  export * from './social-media';
9
- export * from './logistics';
9
+ export * from './logistics';
10
+ export * from './SystemIcon';
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "description": "Shared icons within DFDS",
4
4
  "license": "MIT",
5
5
  "private": false,
6
- "version": "0.9.5-alpha.d77e4e1c",
6
+ "version": "0.9.6-alpha.0e1d4db0",
7
7
  "sideEffects": false,
8
8
  "main": "./cjs/index.js",
9
9
  "module": "./index.js",
@@ -15,7 +15,7 @@
15
15
  "react": ">= 16.8.0",
16
16
  "react-dom": ">= 16.8.0"
17
17
  },
18
- "gitHead": "d77e4e1ccf007cb60c5c2a1eac072eadc5c9b492",
18
+ "gitHead": "0e1d4db02a4846fa5040393863c4a1bd98a3c6cb",
19
19
  "publishConfig": {
20
20
  "access": "public"
21
21
  }