@ndla/ui 19.2.0 → 20.0.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 (75) hide show
  1. package/README.md +1 -1
  2. package/es/LearningPaths/LearningPathMenu.js +8 -5
  3. package/es/LearningPaths/LearningPathMenuIntro.js +19 -8
  4. package/es/Masthead/Masthead.js +1 -0
  5. package/es/Messages/MessageBanner.js +3 -3
  6. package/es/MyNdla/Resource/FolderInput.js +29 -36
  7. package/es/NDLAFilm/FilmSlideshow.js +8 -8
  8. package/es/Resource/ListResource.js +6 -6
  9. package/es/Search/LoadingWrapper.js +2 -2
  10. package/es/Search/SearchResult.js +1 -1
  11. package/es/SearchTypeResult/SearchTypeResult.js +3 -3
  12. package/es/TopicMenu/TopicMenu.js +14 -1
  13. package/es/TreeStructure/FolderNameInput.js +5 -5
  14. package/es/all.css +1 -1
  15. package/es/index.js +0 -1
  16. package/es/locale/messages-en.js +10 -2
  17. package/es/locale/messages-nb.js +10 -2
  18. package/es/locale/messages-nn.js +10 -2
  19. package/es/locale/messages-se.js +10 -2
  20. package/es/locale/messages-sma.js +10 -2
  21. package/lib/LearningPaths/LearningPathMenu.d.ts +2 -1
  22. package/lib/LearningPaths/LearningPathMenu.js +8 -5
  23. package/lib/LearningPaths/LearningPathMenuIntro.d.ts +3 -1
  24. package/lib/LearningPaths/LearningPathMenuIntro.js +19 -8
  25. package/lib/Masthead/Masthead.js +1 -0
  26. package/lib/Messages/MessageBanner.js +3 -3
  27. package/lib/MyNdla/Resource/FolderInput.d.ts +2 -2
  28. package/lib/MyNdla/Resource/FolderInput.js +26 -33
  29. package/lib/NDLAFilm/FilmSlideshow.js +10 -10
  30. package/lib/Resource/ListResource.js +6 -6
  31. package/lib/Search/LoadingWrapper.js +3 -3
  32. package/lib/Search/SearchResult.js +2 -2
  33. package/lib/SearchTypeResult/SearchTypeResult.js +4 -4
  34. package/lib/TopicMenu/TopicMenu.js +14 -1
  35. package/lib/TreeStructure/FolderNameInput.js +6 -6
  36. package/lib/all.css +1 -1
  37. package/lib/index.d.ts +0 -1
  38. package/lib/index.js +0 -9
  39. package/lib/locale/messages-en.d.ts +9 -1
  40. package/lib/locale/messages-en.js +10 -2
  41. package/lib/locale/messages-nb.d.ts +9 -1
  42. package/lib/locale/messages-nb.js +10 -2
  43. package/lib/locale/messages-nn.d.ts +9 -1
  44. package/lib/locale/messages-nn.js +10 -2
  45. package/lib/locale/messages-se.d.ts +9 -1
  46. package/lib/locale/messages-se.js +10 -2
  47. package/lib/locale/messages-sma.d.ts +9 -1
  48. package/lib/locale/messages-sma.js +10 -2
  49. package/package.json +14 -13
  50. package/src/LearningPaths/LearningPathMenu.tsx +9 -1
  51. package/src/LearningPaths/LearningPathMenuIntro.tsx +15 -2
  52. package/src/Masthead/Masthead.tsx +4 -1
  53. package/src/Messages/MessageBanner.tsx +1 -1
  54. package/src/MyNdla/Resource/FolderInput.tsx +41 -44
  55. package/src/NDLAFilm/FilmSlideshow.tsx +1 -1
  56. package/src/Resource/ListResource.tsx +1 -0
  57. package/src/Search/LoadingWrapper.tsx +1 -1
  58. package/src/Search/SearchResult.jsx +1 -1
  59. package/src/SearchTypeResult/SearchTypeResult.tsx +1 -1
  60. package/src/TopicMenu/TopicMenu.jsx +15 -2
  61. package/src/TreeStructure/FolderNameInput.tsx +1 -1
  62. package/src/index.ts +0 -2
  63. package/src/locale/messages-en.ts +9 -1
  64. package/src/locale/messages-nb.ts +10 -1
  65. package/src/locale/messages-nn.ts +9 -1
  66. package/src/locale/messages-se.ts +10 -1
  67. package/src/locale/messages-sma.ts +10 -1
  68. package/es/Spinner/Spinner.js +0 -42
  69. package/es/Spinner/index.js +0 -2
  70. package/lib/Spinner/Spinner.d.ts +0 -16
  71. package/lib/Spinner/Spinner.js +0 -54
  72. package/lib/Spinner/index.d.ts +0 -2
  73. package/lib/Spinner/index.js +0 -13
  74. package/src/Spinner/Spinner.tsx +0 -46
  75. package/src/Spinner/index.ts +0 -3
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import styled from '@emotion/styled';
3
3
  import { spacing, spacingUnit, animations } from '@ndla/core';
4
- import Spinner from '../Spinner';
4
+ import { Spinner } from '@ndla/icons';
5
5
 
6
6
  const StyledWrapper = styled.div`
7
7
  position: absolute;
@@ -9,7 +9,7 @@ import Button from '@ndla/button';
9
9
  import { FilterTabs } from '@ndla/tabs';
10
10
  import Tooltip from '@ndla/tooltip';
11
11
  import SafeLink from '@ndla/safelink';
12
- import Spinner from '../../lib/Spinner';
12
+ import { Spinner } from '@ndla/icons';
13
13
 
14
14
  const resultClasses = BEMHelper('c-search-result');
15
15
 
@@ -9,7 +9,7 @@
9
9
  import React, { memo, ReactNode } from 'react';
10
10
  import styled from '@emotion/styled';
11
11
  import { spacing } from '@ndla/core';
12
- import Spinner from '../Spinner';
12
+ import { Spinner } from '@ndla/icons';
13
13
  import constants from '../model';
14
14
  import SearchTypeHeader, { FilterOptionsType } from './SearchTypeHeader';
15
15
  import SearchItems from './SearchItems';
@@ -74,6 +74,7 @@ export const TopicMenu = ({
74
74
  currentProgramme,
75
75
  initialSelectedMenu,
76
76
  messages,
77
+ closeAlert,
77
78
  selectedGrade,
78
79
  onGradeChange,
79
80
  }) => {
@@ -149,11 +150,15 @@ export const TopicMenu = ({
149
150
  const disableSubTopic = disableMain && hasExpandedSubtopics;
150
151
 
151
152
  const sliderCounter = !expandedTopicId ? 0 : expandedSubtopicsId.length + 1;
152
-
153
153
  return (
154
154
  <nav>
155
155
  {messages?.map((message) => (
156
- <MessageBanner>{message}</MessageBanner>
156
+ <MessageBanner
157
+ key={message.number}
158
+ showCloseButton={message.closable}
159
+ onClose={() => closeAlert?.(message.number)}>
160
+ {message.content}
161
+ </MessageBanner>
157
162
  ))}
158
163
  <ModalHeader modifier={['white', 'menu']}>
159
164
  <div {...classes('masthead-left')}>
@@ -358,6 +363,7 @@ TopicMenu.propTypes = {
358
363
  topics: PropTypes.arrayOf(TopicShape).isRequired,
359
364
  toFrontpage: PropTypes.func.isRequired,
360
365
  toTopic: PropTypes.func,
366
+ closeAlert: PropTypes.func,
361
367
  toSubject: PropTypes.func,
362
368
  close: PropTypes.func,
363
369
  defaultCount: PropTypes.number,
@@ -369,6 +375,13 @@ TopicMenu.propTypes = {
369
375
  hideSearch: PropTypes.bool,
370
376
  searchFieldComponent: PropTypes.node,
371
377
  locale: PropTypes.string,
378
+ messages: PropTypes.arrayOf(
379
+ PropTypes.shape({
380
+ content: PropTypes.string.isRequired,
381
+ closable: PropTypes.bool.isRequired,
382
+ number: PropTypes.number.isRequired,
383
+ }),
384
+ ),
372
385
  subjectCategories: PropTypes.arrayOf(
373
386
  PropTypes.shape({
374
387
  name: PropTypes.string.isRequired,
@@ -13,7 +13,7 @@ import { ArrowDropDown as ArrowDropDownRaw } from '@ndla/icons/common';
13
13
  import { spacing, colors, misc, animations } from '@ndla/core';
14
14
  import { useTranslation } from 'react-i18next';
15
15
  import { isMobile } from 'react-device-detect';
16
- import Spinner from '../Spinner';
16
+ import { Spinner } from '@ndla/icons';
17
17
 
18
18
  const ArrowRight = styled(ArrowDropDownRaw)`
19
19
  color: ${colors.text.primary};
package/src/index.ts CHANGED
@@ -109,8 +109,6 @@ export {
109
109
  } from './LearningPaths';
110
110
  export { Translation, TranslationLine, TranslationBox } from './Translation';
111
111
 
112
- export { default as Spinner } from './Spinner';
113
-
114
112
  export { default as SearchResultSleeve } from './Search/SearchResultSleeve';
115
113
 
116
114
  export { default as ContentTypeResult } from './Search/ContentTypeResult';
@@ -861,8 +861,10 @@ const messages = {
861
861
  open: 'Open menu',
862
862
  close: 'Close menu',
863
863
  },
864
+ cancel: 'Cancel',
864
865
  close: 'Close',
865
866
  title: 'Title',
867
+ save: 'Save',
866
868
  image: {
867
869
  altText: 'Alt-text',
868
870
  caption: 'Caption',
@@ -993,6 +995,7 @@ const messages = {
993
995
  folder: 'Folder',
994
996
  delete: 'Delete',
995
997
  edit: 'Edit',
998
+ missingName: 'Folder name required',
996
999
  },
997
1000
  confirmDeleteFolder: 'Are you sure you want to delete this folder? This process cannot be undone.',
998
1001
  confirmDeleteTag: 'Are you sure you want to delete this tag? This process cannot be undone.',
@@ -1019,7 +1022,12 @@ const messages = {
1019
1022
  privacy: 'privacy statement',
1020
1023
  questions: { question: 'Any questions?', ask: 'Ask us in the chat' },
1021
1024
  wishToDelete: 'Do you wish to delete your account?',
1022
- terms: 'terms of use',
1025
+ terms: {
1026
+ terms: 'Terms of use',
1027
+ term1: 'Do not write personal or sensitive information in text fields.',
1028
+ term2: 'Do not write offensive statements in text fields.',
1029
+ term3: 'NDLA reserves the right to update or remove resources if they are not up to date.',
1030
+ },
1023
1031
  feide: 'We have retrieved this information from Feide',
1024
1032
  newFavourite: 'Recently favourited',
1025
1033
 
@@ -861,6 +861,8 @@ const messages = {
861
861
  },
862
862
  close: 'Lukk',
863
863
  title: 'Tittel',
864
+ cancel: 'Avbryt',
865
+ save: 'Lagre',
864
866
  image: {
865
867
  altText: 'Alt-tekst',
866
868
  caption: 'Bildetekst',
@@ -991,6 +993,7 @@ const messages = {
991
993
  folder: 'Mappe',
992
994
  delete: 'Slett',
993
995
  edit: 'Rediger',
996
+ missingName: 'Mappenavn er påkrevd',
994
997
  },
995
998
  confirmDeleteFolder: 'Er du sikker på at du vil slette mappen? Denne handlingen kan ikke angres.',
996
999
  confirmDeleteTag: 'Er du sikker på at du vil slette tag? Denne handlingen kan ikke angres.',
@@ -1017,7 +1020,13 @@ const messages = {
1017
1020
  privacy: 'personvernerklæring her',
1018
1021
  questions: { question: 'Lurer du på noe?', ask: 'Spør oss i chatten' },
1019
1022
  wishToDelete: 'Ønsker du ikke ha brukerprofil hos oss lengre?',
1020
- terms: 'vilkår for bruk',
1023
+ terms: {
1024
+ terms: 'Vilkår for bruk',
1025
+ term1: 'Ikke skriv personsensitiv informasjon eller persondata i tekstfelt.',
1026
+ term2: 'Ikke skriv noe støtende i tekstfelt.',
1027
+ term3:
1028
+ 'NDLA forbeholder seg retten til å oppdatere eller eventuelt slette ressurser dersom disse blir utdatert.',
1029
+ },
1021
1030
  newFavourite: 'Nylig lagt til',
1022
1031
  feide: 'Dette henter vi om deg fra Feide',
1023
1032
  storageInfo: {
@@ -860,8 +860,10 @@ const messages = {
860
860
  open: 'Åpne meny',
861
861
  close: 'Lukk meny',
862
862
  },
863
+ cancel: 'Avbryt',
863
864
  close: 'Lukk',
864
865
  title: 'Tittel',
866
+ save: 'Lagre',
865
867
  image: {
866
868
  altText: 'Alt-tekst',
867
869
  caption: 'Bilettekst',
@@ -992,6 +994,7 @@ const messages = {
992
994
  folder: 'Mappe',
993
995
  delete: 'Slett',
994
996
  edit: 'Rediger',
997
+ missingName: 'Mappenavn er påkrevd',
995
998
  },
996
999
  confirmDeleteFolder: 'Er du sikker på at du vil slette mappa? Denne handlinga kan ikkje angres.',
997
1000
  confirmDeleteTag: 'Er du sikker på at du vil slette tag? Denne handlinga kan ikkje angres.',
@@ -1018,7 +1021,12 @@ const messages = {
1018
1021
  privacy: 'personvernerklæring her',
1019
1022
  questions: { question: 'Lurer du på noe?', ask: 'Spør oss i chatten' },
1020
1023
  wishToDelete: 'Ønsker du ikke ha brukerprofil hos oss lengre?',
1021
- terms: 'vilkår for bruk',
1024
+ terms: {
1025
+ terms: 'Vilkår for bruk',
1026
+ term1: 'Ikkje skriv personsensitiv informasjon eller persondata i tekstfelt.',
1027
+ term2: 'Ikkje skriv noko støytande i tekstfelt.',
1028
+ term3: 'NDLA atterhald seg retten til å oppdatere eller eventuelt slette ressursar dersom disse blir utdatert.',
1029
+ },
1022
1030
  newFavourite: 'Nylig lagt til',
1023
1031
  feide: 'Dette henter vi om deg fra Feide',
1024
1032
  storageInfo: {
@@ -859,8 +859,10 @@ const messages = {
859
859
  open: 'Åpne meny',
860
860
  close: 'Lukk meny',
861
861
  },
862
+ cancel: 'Avbryt',
862
863
  close: 'Lukk',
863
864
  title: 'Tittel',
865
+ save: 'Lagre',
864
866
  image: {
865
867
  altText: 'Alt-tekst',
866
868
  caption: 'Bilettekst',
@@ -991,6 +993,7 @@ const messages = {
991
993
  folder: 'Mappe',
992
994
  delete: 'Slett',
993
995
  edit: 'Rediger',
996
+ missingName: 'Mappenavn er påkrevd',
994
997
  },
995
998
  confirmDeleteFolder: 'Er du sikker på at du vil slette mappen? Denne handlingen kan ikke angres.',
996
999
  confirmDeleteTag: 'Er du sikker på at du vil slette tag? Denne handlingen kan ikke angres.',
@@ -1017,7 +1020,13 @@ const messages = {
1017
1020
  privacy: 'personvernerklæring her',
1018
1021
  questions: { question: 'Lurer du på noe?', ask: 'Spør oss i chatten' },
1019
1022
  wishToDelete: 'Ønsker du ikke ha brukerprofil hos oss lengre?',
1020
- terms: 'vilkår for bruk',
1023
+ terms: {
1024
+ terms: 'Vilkår for bruk',
1025
+ term1: 'Ikke skriv personsensitiv informasjon eller persondata i tekstfelt.',
1026
+ term2: 'Ikke skriv noe støtende i tekstfelt.',
1027
+ term3:
1028
+ 'NDLA forbeholder seg retten til å oppdatere eller eventuelt slette ressurser dersom disse blir utdatert.',
1029
+ },
1021
1030
  newFavourite: 'Nylig lagt til',
1022
1031
  feide: 'Dette henter vi om deg fra Feide',
1023
1032
  storageInfo: {
@@ -859,8 +859,10 @@ const messages = {
859
859
  open: 'Åpne meny',
860
860
  close: 'Lukk meny',
861
861
  },
862
+ cancel: 'Avbryt',
862
863
  close: 'Lukk',
863
864
  title: 'Tittel',
865
+ save: 'Lagre',
864
866
  image: {
865
867
  altText: 'Alt-tekst',
866
868
  caption: 'Bilettekst',
@@ -991,6 +993,7 @@ const messages = {
991
993
  folder: 'Mappe',
992
994
  delete: 'Slett',
993
995
  edit: 'Rediger',
996
+ missingName: 'Mappenavn er påkrevd',
994
997
  },
995
998
  confirmDeleteFolder: 'Er du sikker på at du vil slette mappen? Denne handlingen kan ikke angres.',
996
999
  confirmDeleteTag: 'Er du sikker på at du vil slette tag? Denne handlingen kan ikke angres.',
@@ -1017,7 +1020,13 @@ const messages = {
1017
1020
  privacy: 'personvernerklæring her',
1018
1021
  questions: { question: 'Lurer du på noe?', ask: 'Spør oss i chatten' },
1019
1022
  wishToDelete: 'Ønsker du ikke ha brukerprofil hos oss lengre?',
1020
- terms: 'vilkår for bruk',
1023
+ terms: {
1024
+ terms: 'Vilkår for bruk',
1025
+ term1: 'Ikke skriv personsensitiv informasjon eller persondata i tekstfelt.',
1026
+ term2: 'Ikke skriv noe støtende i tekstfelt.',
1027
+ term3:
1028
+ 'NDLA forbeholder seg retten til å oppdatere eller eventuelt slette ressurser dersom disse blir utdatert.',
1029
+ },
1021
1030
  newFavourite: 'Nylig lagt til',
1022
1031
  feide: 'Dette henter vi om deg fra Feide',
1023
1032
  storageInfo: {
@@ -1,42 +0,0 @@
1
- import _styled from "@emotion/styled-base";
2
-
3
- /**
4
- * Copyright (c) 2018-present, NDLA.
5
- *
6
- * This source code is licensed under the GPLv3 license found in the
7
- * LICENSE file in the root directory of this source tree.
8
- *
9
- */
10
- import React from 'react';
11
- import { colors, spacing } from '@ndla/core';
12
- import { jsx as ___EmotionJSX } from "@emotion/core";
13
-
14
- var SpinnerDiv = /*#__PURE__*/_styled('div', {
15
- target: "eecx2hs0",
16
- label: "SpinnerDiv"
17
- })("border:calc(", function (props) {
18
- return spacing[props.size];
19
- }, " / 6.5) solid rgba(0,0,0,0.1);border-bottom-color:", function (props) {
20
- return props.inverted ? '#fff' : colors.brand.primary;
21
- }, ";border-radius:50%;animation:spinnerAnimation 0.7s linear infinite;height:", function (props) {
22
- return spacing[props.size];
23
- }, ";width:", function (props) {
24
- return spacing[props.size];
25
- }, ";margin:", function (props) {
26
- return props.margin;
27
- }, ";display:block;@keyframes spinnerAnimation{0%{transform:rotate(0deg);}100%{transform:rotate(360deg);}}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNwaW5uZXIudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNCNkMiLCJmaWxlIjoiU3Bpbm5lci50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOC1wcmVzZW50LCBORExBLlxuICpcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEdQTHYzIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4gKlxuICovXG5cbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyBjb2xvcnMsIHNwYWNpbmcsIFNwYWNpbmdOYW1lcyB9IGZyb20gJ0BuZGxhL2NvcmUnO1xuXG5pbnRlcmZhY2UgUHJvcHMge1xuICBzaXplPzogU3BhY2luZ05hbWVzO1xuICBtYXJnaW4/OiBzdHJpbmc7XG4gIGludmVydGVkPzogYm9vbGVhbjtcbn1cblxuaW50ZXJmYWNlIFN0eWxlZFByb3BzIGV4dGVuZHMgUHJvcHMge1xuICBzaXplOiBTcGFjaW5nTmFtZXM7XG59XG5cbmNvbnN0IFNwaW5uZXJEaXYgPSBzdHlsZWQoJ2RpdicpPFN0eWxlZFByb3BzPmBcbiAgYm9yZGVyOiBjYWxjKCR7KHByb3BzKSA9PiBzcGFjaW5nW3Byb3BzLnNpemVdfSAvIDYuNSkgc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAkeyhwcm9wcykgPT4gKHByb3BzLmludmVydGVkID8gJyNmZmYnIDogY29sb3JzLmJyYW5kLnByaW1hcnkpfTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBhbmltYXRpb246IHNwaW5uZXJBbmltYXRpb24gMC43cyBsaW5lYXIgaW5maW5pdGU7XG4gIGhlaWdodDogJHsocHJvcHMpID0+IHNwYWNpbmdbcHJvcHMuc2l6ZV19O1xuICB3aWR0aDogJHsocHJvcHMpID0+IHNwYWNpbmdbcHJvcHMuc2l6ZV19O1xuICBtYXJnaW46ICR7KHByb3BzKSA9PiBwcm9wcy5tYXJnaW59O1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGtleWZyYW1lcyBzcGlubmVyQW5pbWF0aW9uIHtcbiAgICAwJSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbiAgfVxuYDtcblxuY29uc3QgU3Bpbm5lciA9ICh7IHNpemUgPSAnbGFyZ2UnLCBtYXJnaW4gPSBgJHtzcGFjaW5nLm5vcm1hbH0gYXV0b2AsIGludmVydGVkIH06IFBhcnRpYWw8UHJvcHM+KSA9PiAoXG4gIDxTcGlubmVyRGl2IHNpemU9e3NpemV9IG1hcmdpbj17bWFyZ2lufSBpbnZlcnRlZD17ISFpbnZlcnRlZH0gLz5cbik7XG5cbmV4cG9ydCBkZWZhdWx0IFNwaW5uZXI7XG4iXX0= */"));
28
-
29
- var Spinner = function Spinner(_ref) {
30
- var _ref$size = _ref.size,
31
- size = _ref$size === void 0 ? 'large' : _ref$size,
32
- _ref$margin = _ref.margin,
33
- margin = _ref$margin === void 0 ? "".concat(spacing.normal, " auto") : _ref$margin,
34
- inverted = _ref.inverted;
35
- return ___EmotionJSX(SpinnerDiv, {
36
- size: size,
37
- margin: margin,
38
- inverted: !!inverted
39
- });
40
- };
41
-
42
- export default Spinner;
@@ -1,2 +0,0 @@
1
- import Spinner from './Spinner';
2
- export default Spinner;
@@ -1,16 +0,0 @@
1
- /**
2
- * Copyright (c) 2018-present, NDLA.
3
- *
4
- * This source code is licensed under the GPLv3 license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- *
7
- */
8
- /// <reference types="react" />
9
- import { SpacingNames } from '@ndla/core';
10
- interface Props {
11
- size?: SpacingNames;
12
- margin?: string;
13
- inverted?: boolean;
14
- }
15
- declare const Spinner: ({ size, margin, inverted }: Partial<Props>) => JSX.Element;
16
- export default Spinner;
@@ -1,54 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports["default"] = void 0;
7
-
8
- var _styledBase = _interopRequireDefault(require("@emotion/styled-base"));
9
-
10
- var _react = _interopRequireDefault(require("react"));
11
-
12
- var _core = require("@ndla/core");
13
-
14
- var _core2 = require("@emotion/core");
15
-
16
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
17
-
18
- /**
19
- * Copyright (c) 2018-present, NDLA.
20
- *
21
- * This source code is licensed under the GPLv3 license found in the
22
- * LICENSE file in the root directory of this source tree.
23
- *
24
- */
25
- var SpinnerDiv = ( /*#__PURE__*/0, _styledBase["default"])('div', {
26
- target: "eecx2hs0",
27
- label: "SpinnerDiv"
28
- })("border:calc(", function (props) {
29
- return _core.spacing[props.size];
30
- }, " / 6.5) solid rgba(0,0,0,0.1);border-bottom-color:", function (props) {
31
- return props.inverted ? '#fff' : _core.colors.brand.primary;
32
- }, ";border-radius:50%;animation:spinnerAnimation 0.7s linear infinite;height:", function (props) {
33
- return _core.spacing[props.size];
34
- }, ";width:", function (props) {
35
- return _core.spacing[props.size];
36
- }, ";margin:", function (props) {
37
- return props.margin;
38
- }, ";display:block;@keyframes spinnerAnimation{0%{transform:rotate(0deg);}100%{transform:rotate(360deg);}}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNwaW5uZXIudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNCNkMiLCJmaWxlIjoiU3Bpbm5lci50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOC1wcmVzZW50LCBORExBLlxuICpcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEdQTHYzIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4gKlxuICovXG5cbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyBjb2xvcnMsIHNwYWNpbmcsIFNwYWNpbmdOYW1lcyB9IGZyb20gJ0BuZGxhL2NvcmUnO1xuXG5pbnRlcmZhY2UgUHJvcHMge1xuICBzaXplPzogU3BhY2luZ05hbWVzO1xuICBtYXJnaW4/OiBzdHJpbmc7XG4gIGludmVydGVkPzogYm9vbGVhbjtcbn1cblxuaW50ZXJmYWNlIFN0eWxlZFByb3BzIGV4dGVuZHMgUHJvcHMge1xuICBzaXplOiBTcGFjaW5nTmFtZXM7XG59XG5cbmNvbnN0IFNwaW5uZXJEaXYgPSBzdHlsZWQoJ2RpdicpPFN0eWxlZFByb3BzPmBcbiAgYm9yZGVyOiBjYWxjKCR7KHByb3BzKSA9PiBzcGFjaW5nW3Byb3BzLnNpemVdfSAvIDYuNSkgc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAkeyhwcm9wcykgPT4gKHByb3BzLmludmVydGVkID8gJyNmZmYnIDogY29sb3JzLmJyYW5kLnByaW1hcnkpfTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBhbmltYXRpb246IHNwaW5uZXJBbmltYXRpb24gMC43cyBsaW5lYXIgaW5maW5pdGU7XG4gIGhlaWdodDogJHsocHJvcHMpID0+IHNwYWNpbmdbcHJvcHMuc2l6ZV19O1xuICB3aWR0aDogJHsocHJvcHMpID0+IHNwYWNpbmdbcHJvcHMuc2l6ZV19O1xuICBtYXJnaW46ICR7KHByb3BzKSA9PiBwcm9wcy5tYXJnaW59O1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGtleWZyYW1lcyBzcGlubmVyQW5pbWF0aW9uIHtcbiAgICAwJSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbiAgfVxuYDtcblxuY29uc3QgU3Bpbm5lciA9ICh7IHNpemUgPSAnbGFyZ2UnLCBtYXJnaW4gPSBgJHtzcGFjaW5nLm5vcm1hbH0gYXV0b2AsIGludmVydGVkIH06IFBhcnRpYWw8UHJvcHM+KSA9PiAoXG4gIDxTcGlubmVyRGl2IHNpemU9e3NpemV9IG1hcmdpbj17bWFyZ2lufSBpbnZlcnRlZD17ISFpbnZlcnRlZH0gLz5cbik7XG5cbmV4cG9ydCBkZWZhdWx0IFNwaW5uZXI7XG4iXX0= */"));
39
-
40
- var Spinner = function Spinner(_ref) {
41
- var _ref$size = _ref.size,
42
- size = _ref$size === void 0 ? 'large' : _ref$size,
43
- _ref$margin = _ref.margin,
44
- margin = _ref$margin === void 0 ? "".concat(_core.spacing.normal, " auto") : _ref$margin,
45
- inverted = _ref.inverted;
46
- return (0, _core2.jsx)(SpinnerDiv, {
47
- size: size,
48
- margin: margin,
49
- inverted: !!inverted
50
- });
51
- };
52
-
53
- var _default = Spinner;
54
- exports["default"] = _default;
@@ -1,2 +0,0 @@
1
- import Spinner from './Spinner';
2
- export default Spinner;
@@ -1,13 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports["default"] = void 0;
7
-
8
- var _Spinner = _interopRequireDefault(require("./Spinner"));
9
-
10
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
11
-
12
- var _default = _Spinner["default"];
13
- exports["default"] = _default;
@@ -1,46 +0,0 @@
1
- /**
2
- * Copyright (c) 2018-present, NDLA.
3
- *
4
- * This source code is licensed under the GPLv3 license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- *
7
- */
8
-
9
- import React from 'react';
10
- import styled from '@emotion/styled';
11
- import { colors, spacing, SpacingNames } from '@ndla/core';
12
-
13
- interface Props {
14
- size?: SpacingNames;
15
- margin?: string;
16
- inverted?: boolean;
17
- }
18
-
19
- interface StyledProps extends Props {
20
- size: SpacingNames;
21
- }
22
-
23
- const SpinnerDiv = styled('div')<StyledProps>`
24
- border: calc(${(props) => spacing[props.size]} / 6.5) solid rgba(0, 0, 0, 0.1);
25
- border-bottom-color: ${(props) => (props.inverted ? '#fff' : colors.brand.primary)};
26
- border-radius: 50%;
27
- animation: spinnerAnimation 0.7s linear infinite;
28
- height: ${(props) => spacing[props.size]};
29
- width: ${(props) => spacing[props.size]};
30
- margin: ${(props) => props.margin};
31
- display: block;
32
- @keyframes spinnerAnimation {
33
- 0% {
34
- transform: rotate(0deg);
35
- }
36
- 100% {
37
- transform: rotate(360deg);
38
- }
39
- }
40
- `;
41
-
42
- const Spinner = ({ size = 'large', margin = `${spacing.normal} auto`, inverted }: Partial<Props>) => (
43
- <SpinnerDiv size={size} margin={margin} inverted={!!inverted} />
44
- );
45
-
46
- export default Spinner;
@@ -1,3 +0,0 @@
1
- import Spinner from './Spinner';
2
-
3
- export default Spinner;