@ndla/ui 46.1.0 → 47.1.0
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.
- package/es/Article/Article.js +7 -20
- package/es/Embed/AudioEmbed.js +6 -14
- package/es/Embed/BrightcoveEmbed.js +13 -5
- package/es/Embed/ConceptEmbed.js +16 -14
- package/es/Embed/ImageEmbed.js +11 -4
- package/es/Embed/conceptComponents.js +11 -12
- package/es/Footer/FooterLinks.js +6 -6
- package/es/FrontpageArticle/FrontpageArticle.js +8 -12
- package/es/LicenseByline/EmbedByline.js +7 -15
- package/es/Messages/MessageBanner.js +4 -13
- package/es/Messages/MessageBox.js +10 -20
- package/es/Navigation/NavigationTopicAbout.js +15 -17
- package/es/Notion/Notion.js +8 -7
- package/es/SearchTypeResult/SearchFieldHeader.js +4 -4
- package/es/ToolboxPage/ToolboxInfo.js +4 -13
- package/es/Topic/Topic.js +31 -37
- package/es/all.css +1 -1
- package/es/locale/messages-en.js +12 -0
- package/es/locale/messages-nb.js +12 -0
- package/es/locale/messages-nn.js +12 -0
- package/es/locale/messages-se.js +12 -0
- package/es/locale/messages-sma.js +12 -0
- package/lib/Article/Article.d.ts +2 -4
- package/lib/Article/Article.js +6 -19
- package/lib/Embed/AudioEmbed.js +6 -15
- package/lib/Embed/BrightcoveEmbed.js +12 -4
- package/lib/Embed/ConceptEmbed.js +15 -13
- package/lib/Embed/ImageEmbed.js +10 -3
- package/lib/Embed/conceptComponents.d.ts +1 -1
- package/lib/Embed/conceptComponents.js +11 -12
- package/lib/Footer/FooterLinks.js +6 -6
- package/lib/FrontpageArticle/FrontpageArticle.js +6 -10
- package/lib/LicenseByline/EmbedByline.d.ts +2 -2
- package/lib/LicenseByline/EmbedByline.js +8 -16
- package/lib/Messages/MessageBanner.d.ts +2 -1
- package/lib/Messages/MessageBanner.js +5 -13
- package/lib/Messages/MessageBox.d.ts +2 -1
- package/lib/Messages/MessageBox.js +11 -19
- package/lib/Navigation/NavigationTopicAbout.d.ts +2 -3
- package/lib/Navigation/NavigationTopicAbout.js +15 -17
- package/lib/Notion/Notion.js +7 -6
- package/lib/SearchTypeResult/SearchFieldHeader.js +4 -4
- package/lib/TagSelector/ariaMessages.d.ts +1 -1
- package/lib/ToolboxPage/ToolboxInfo.js +3 -13
- package/lib/Topic/Topic.d.ts +2 -3
- package/lib/Topic/Topic.js +30 -36
- package/lib/all.css +1 -1
- package/lib/locale/messages-en.d.ts +12 -0
- package/lib/locale/messages-en.js +12 -0
- package/lib/locale/messages-nb.d.ts +12 -0
- package/lib/locale/messages-nb.js +12 -0
- package/lib/locale/messages-nn.d.ts +12 -0
- package/lib/locale/messages-nn.js +12 -0
- package/lib/locale/messages-se.d.ts +12 -0
- package/lib/locale/messages-se.js +12 -0
- package/lib/locale/messages-sma.d.ts +12 -0
- package/lib/locale/messages-sma.js +12 -0
- package/lib/types.d.ts +1 -1
- package/package.json +25 -26
- package/src/Article/Article.tsx +5 -24
- package/src/Article/component.article.scss +4 -4
- package/src/Embed/AudioEmbed.tsx +5 -11
- package/src/Embed/BrightcoveEmbed.tsx +10 -7
- package/src/Embed/ConceptEmbed.stories.tsx +1 -1
- package/src/Embed/ConceptEmbed.tsx +9 -4
- package/src/Embed/ImageEmbed.tsx +12 -2
- package/src/Embed/conceptComponents.tsx +2 -3
- package/src/Footer/FooterLinks.tsx +1 -1
- package/src/FrontpageArticle/FrontpageArticle.tsx +6 -16
- package/src/LicenseByline/EmbedByline.tsx +4 -11
- package/src/Messages/MessageBanner.tsx +3 -8
- package/src/Messages/MessageBox.tsx +3 -8
- package/src/Navigation/NavigationTopicAbout.tsx +2 -5
- package/src/Notion/Notion.tsx +2 -2
- package/src/SearchTypeResult/SearchFieldHeader.tsx +4 -4
- package/src/TagSelector/ariaMessages.ts +1 -1
- package/src/ToolboxPage/ToolboxInfo.tsx +3 -19
- package/src/Topic/Topic.tsx +6 -15
- package/src/locale/messages-en.ts +13 -0
- package/src/locale/messages-nb.ts +13 -0
- package/src/locale/messages-nn.ts +13 -0
- package/src/locale/messages-se.ts +13 -0
- package/src/locale/messages-sma.ts +13 -0
- package/src/types.ts +1 -1
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
import { ReactNode
|
|
9
|
+
import { ReactNode } from 'react';
|
|
10
10
|
import { useTranslation } from 'react-i18next';
|
|
11
11
|
import styled from '@emotion/styled';
|
|
12
12
|
import { css } from '@emotion/react';
|
|
@@ -17,14 +17,13 @@ import { ICopyright as AudioCopyright } from '@ndla/types-backend/audio-api';
|
|
|
17
17
|
import { IDraftCopyright as ConceptCopyright } from '@ndla/types-backend/concept-api';
|
|
18
18
|
import { BrightcoveCopyright } from '@ndla/types-embed';
|
|
19
19
|
import { WarningOutline } from '@ndla/icons/common';
|
|
20
|
-
import { parseMarkdown } from '@ndla/util';
|
|
21
20
|
import LicenseLink from './LicenseLink';
|
|
22
21
|
import LicenseDescription from './LicenseDescription';
|
|
23
22
|
|
|
24
23
|
interface BaseProps {
|
|
25
24
|
topRounded?: boolean;
|
|
26
25
|
bottomRounded?: boolean;
|
|
27
|
-
description?:
|
|
26
|
+
description?: ReactNode;
|
|
28
27
|
children?: ReactNode;
|
|
29
28
|
visibleAlt?: string;
|
|
30
29
|
error?: true | false;
|
|
@@ -132,7 +131,7 @@ const EmbedByline = ({
|
|
|
132
131
|
type,
|
|
133
132
|
topRounded,
|
|
134
133
|
bottomRounded,
|
|
135
|
-
description
|
|
134
|
+
description,
|
|
136
135
|
children,
|
|
137
136
|
visibleAlt,
|
|
138
137
|
first = true,
|
|
@@ -140,12 +139,6 @@ const EmbedByline = ({
|
|
|
140
139
|
...props
|
|
141
140
|
}: Props) => {
|
|
142
141
|
const { t, i18n } = useTranslation();
|
|
143
|
-
const strippedDescription = descriptionProp?.trim();
|
|
144
|
-
|
|
145
|
-
const description = useMemo(() => {
|
|
146
|
-
const stripped = strippedDescription?.trim() ?? '';
|
|
147
|
-
return parseMarkdown(stripped, 'caption');
|
|
148
|
-
}, [strippedDescription]);
|
|
149
142
|
|
|
150
143
|
if (props.error) {
|
|
151
144
|
const typeString = type === 'h5p' ? 'H5P' : t(`embed.type.${type}`).toLowerCase();
|
|
@@ -164,7 +157,7 @@ const EmbedByline = ({
|
|
|
164
157
|
|
|
165
158
|
return (
|
|
166
159
|
<BylineWrapper data-top-rounded={topRounded} data-bottom-rounded={bottomRounded} data-first={first}>
|
|
167
|
-
{
|
|
160
|
+
{description && <LicenseDescription description={description} />}
|
|
168
161
|
{visibleAlt ? <StyledSpan>{`Alt: ${visibleAlt}`}</StyledSpan> : null}
|
|
169
162
|
<RightsWrapper data-grid={inGrid}>
|
|
170
163
|
{license ? <LicenseLink license={license} asLink={!!license.url.length} /> : null}
|
|
@@ -8,9 +8,8 @@
|
|
|
8
8
|
|
|
9
9
|
import styled from '@emotion/styled';
|
|
10
10
|
import { colors, spacing } from '@ndla/core';
|
|
11
|
-
// @ts-ignore
|
|
12
|
-
import { Remarkable } from 'remarkable';
|
|
13
11
|
import { CloseButton } from '@ndla/button';
|
|
12
|
+
import { ReactNode } from 'react';
|
|
14
13
|
|
|
15
14
|
interface WrapperProps {
|
|
16
15
|
small?: boolean;
|
|
@@ -44,19 +43,15 @@ const StyledClosebutton = styled(CloseButton)`
|
|
|
44
43
|
|
|
45
44
|
interface Props {
|
|
46
45
|
small?: boolean;
|
|
47
|
-
children?:
|
|
46
|
+
children?: ReactNode;
|
|
48
47
|
showCloseButton?: boolean;
|
|
49
48
|
onClose?: () => void;
|
|
50
49
|
}
|
|
51
50
|
|
|
52
|
-
const markdown = new Remarkable({ breaks: true });
|
|
53
|
-
markdown.inline.ruler.enable(['sub', 'sup']);
|
|
54
|
-
markdown.block.ruler.disable(['list', 'table']);
|
|
55
|
-
|
|
56
51
|
const MessageBanner = ({ children, onClose, showCloseButton, small }: Props) => {
|
|
57
52
|
return (
|
|
58
53
|
<MessageBannerWrapper small={small}>
|
|
59
|
-
<TextWrapper
|
|
54
|
+
<TextWrapper>{children}</TextWrapper>
|
|
60
55
|
{showCloseButton && <StyledClosebutton onClick={onClose} />}
|
|
61
56
|
</MessageBannerWrapper>
|
|
62
57
|
);
|
|
@@ -10,14 +10,9 @@ import styled from '@emotion/styled';
|
|
|
10
10
|
import { breakpoints, colors, fonts, mq, spacing } from '@ndla/core';
|
|
11
11
|
import { InformationOutline, HumanMaleBoard, Forward, WarningOutline } from '@ndla/icons/common';
|
|
12
12
|
|
|
13
|
-
// @ts-ignore
|
|
14
|
-
import { Remarkable } from 'remarkable';
|
|
15
13
|
import { CloseButton } from '@ndla/button';
|
|
16
14
|
import { css } from '@emotion/react';
|
|
17
|
-
|
|
18
|
-
const markdown = new Remarkable({ breaks: true });
|
|
19
|
-
markdown.inline.ruler.enable(['sub', 'sup']);
|
|
20
|
-
markdown.block.ruler.disable(['list', 'table']);
|
|
15
|
+
import { ReactNode } from 'react';
|
|
21
16
|
|
|
22
17
|
type MessageBoxType = 'ghost' | 'danger';
|
|
23
18
|
|
|
@@ -109,7 +104,7 @@ interface LinkProps {
|
|
|
109
104
|
|
|
110
105
|
interface Props {
|
|
111
106
|
type?: MessageBoxType;
|
|
112
|
-
children?:
|
|
107
|
+
children?: ReactNode;
|
|
113
108
|
links?: LinkProps[];
|
|
114
109
|
showCloseButton?: boolean;
|
|
115
110
|
onClose?: () => void;
|
|
@@ -133,7 +128,7 @@ export const MessageBox = ({ type, children = '', links, showCloseButton, onClos
|
|
|
133
128
|
<Icon type={type} />
|
|
134
129
|
</IconWrapper>
|
|
135
130
|
<div>
|
|
136
|
-
<TextWrapper
|
|
131
|
+
<TextWrapper>{children}</TextWrapper>
|
|
137
132
|
{links && (
|
|
138
133
|
<LinkWrapper>
|
|
139
134
|
{links.map((x) => (
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
|
-
import parse from 'html-react-parser';
|
|
3
2
|
import styled from '@emotion/styled';
|
|
4
3
|
import { breakpoints, colors, fonts, mq, spacing } from '@ndla/core';
|
|
5
4
|
import { css } from '@emotion/react';
|
|
@@ -105,13 +104,12 @@ const StyledContentWrapper = styled.div<InvertItProps>`
|
|
|
105
104
|
|
|
106
105
|
type Props = {
|
|
107
106
|
heading: string;
|
|
108
|
-
introduction:
|
|
107
|
+
introduction: ReactNode;
|
|
109
108
|
onToggleShowContent: () => void;
|
|
110
109
|
showContent: boolean;
|
|
111
110
|
isLoading: boolean;
|
|
112
111
|
isAdditionalTopic?: boolean;
|
|
113
112
|
invertedStyle?: boolean;
|
|
114
|
-
renderMarkdown: (text: string) => string;
|
|
115
113
|
children: ReactNode;
|
|
116
114
|
};
|
|
117
115
|
|
|
@@ -123,7 +121,6 @@ export const NavigationTopicAbout = ({
|
|
|
123
121
|
isLoading,
|
|
124
122
|
isAdditionalTopic,
|
|
125
123
|
invertedStyle,
|
|
126
|
-
renderMarkdown,
|
|
127
124
|
children,
|
|
128
125
|
}: Props) => {
|
|
129
126
|
const { t } = useTranslation();
|
|
@@ -143,7 +140,7 @@ export const NavigationTopicAbout = ({
|
|
|
143
140
|
) : (
|
|
144
141
|
<>
|
|
145
142
|
<StyledIngress invertedStyle={invertedStyle}>
|
|
146
|
-
{
|
|
143
|
+
{introduction}
|
|
147
144
|
<StyledButtonWrapper invertedStyle={invertedStyle}>
|
|
148
145
|
<ButtonV2
|
|
149
146
|
aria-expanded={!!showContent}
|
package/src/Notion/Notion.tsx
CHANGED
|
@@ -8,7 +8,6 @@
|
|
|
8
8
|
import { Fragment, ReactNode } from 'react';
|
|
9
9
|
import styled from '@emotion/styled';
|
|
10
10
|
import { useTranslation } from 'react-i18next';
|
|
11
|
-
import { parseMarkdown } from '@ndla/util';
|
|
12
11
|
import { breakpoints, fonts, mq, spacing } from '@ndla/core';
|
|
13
12
|
|
|
14
13
|
const ContentWrapper = styled.div`
|
|
@@ -83,7 +82,8 @@ const Notion = ({ id, labels = [], text, title, visualElement, imageElement, chi
|
|
|
83
82
|
{imageElement}
|
|
84
83
|
{visualElement}
|
|
85
84
|
<TextWrapper hasVisualElement={!!(imageElement || visualElement)}>
|
|
86
|
-
{
|
|
85
|
+
<b>{title.trim()}</b>
|
|
86
|
+
{text}
|
|
87
87
|
{!!labels.length && (
|
|
88
88
|
<LabelsContainer>
|
|
89
89
|
{t('searchPage.resultType.notionLabels')}
|
|
@@ -109,17 +109,17 @@ const SearchFieldHeader = ({
|
|
|
109
109
|
{value && (
|
|
110
110
|
<ClearButton
|
|
111
111
|
type="button"
|
|
112
|
-
value={t
|
|
112
|
+
value={t('welcomePage.resetSearch')}
|
|
113
113
|
onClick={() => {
|
|
114
114
|
onChange('');
|
|
115
115
|
inputRef.current?.focus();
|
|
116
116
|
}}
|
|
117
117
|
>
|
|
118
|
-
<CrossIcon style={iconStyle} title={t
|
|
118
|
+
<CrossIcon style={iconStyle} title={t('welcomePage.resetSearch')} />
|
|
119
119
|
</ClearButton>
|
|
120
120
|
)}
|
|
121
|
-
<SearchButton type="submit" value={t
|
|
122
|
-
<SearchIcon style={iconStyle} title={t
|
|
121
|
+
<SearchButton type="submit" value={t('searchPage.search')}>
|
|
122
|
+
<SearchIcon style={iconStyle} title={t('searchPage.search')} />
|
|
123
123
|
</SearchButton>
|
|
124
124
|
</StyledForm>
|
|
125
125
|
);
|
|
@@ -6,7 +6,6 @@
|
|
|
6
6
|
*
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
import { TFunction } from 'react-i18next';
|
|
10
9
|
import {
|
|
11
10
|
AriaGuidanceProps,
|
|
12
11
|
AriaOnChangeProps,
|
|
@@ -15,6 +14,7 @@ import {
|
|
|
15
14
|
GroupBase,
|
|
16
15
|
OptionsOrGroups,
|
|
17
16
|
} from 'react-select';
|
|
17
|
+
import { TFunction } from 'i18next';
|
|
18
18
|
import { TagType } from './types';
|
|
19
19
|
|
|
20
20
|
export const createAriaMessages = (t: TFunction) => ({
|
|
@@ -7,27 +7,11 @@
|
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
import { MouseEvent } from 'react';
|
|
10
|
-
import styled from '@emotion/styled';
|
|
11
|
-
import { breakpoints, fonts, mq } from '@ndla/core';
|
|
12
10
|
import { useTranslation } from 'react-i18next';
|
|
13
|
-
import { Heading } from '@ndla/typography';
|
|
11
|
+
import { Heading, Text } from '@ndla/typography';
|
|
14
12
|
import { ItemProps } from '../Navigation/NavigationBox';
|
|
15
13
|
import { NavigationBox } from '../Navigation';
|
|
16
14
|
|
|
17
|
-
const Introduction = styled.p`
|
|
18
|
-
max-width: 800px;
|
|
19
|
-
font-weight: ${fonts.weight.light};
|
|
20
|
-
${fonts.sizes('18px', '28px')};
|
|
21
|
-
|
|
22
|
-
${mq.range({ from: breakpoints.tablet })} {
|
|
23
|
-
${fonts.sizes('22px', '32px')};
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
${mq.range({ from: breakpoints.desktop })} {
|
|
27
|
-
${fonts.sizes('26px', '36px')};
|
|
28
|
-
}
|
|
29
|
-
`;
|
|
30
|
-
|
|
31
15
|
interface Props {
|
|
32
16
|
id?: string;
|
|
33
17
|
title: string;
|
|
@@ -40,10 +24,10 @@ const ToolboxInfo = ({ title, introduction, topics, onSelectTopic, id }: Props)
|
|
|
40
24
|
const { t } = useTranslation();
|
|
41
25
|
return (
|
|
42
26
|
<>
|
|
43
|
-
<Heading element="h1" headingStyle="h1" id={id} tabIndex={-1}>
|
|
27
|
+
<Heading element="h1" headingStyle="h1-resource" id={id} tabIndex={-1}>
|
|
44
28
|
{title}
|
|
45
29
|
</Heading>
|
|
46
|
-
<
|
|
30
|
+
<Text textStyle="ingress">{introduction}</Text>
|
|
47
31
|
<NavigationBox
|
|
48
32
|
items={topics}
|
|
49
33
|
listDirection="floating"
|
package/src/Topic/Topic.tsx
CHANGED
|
@@ -8,9 +8,9 @@
|
|
|
8
8
|
|
|
9
9
|
import { ReactNode, MouseEvent, useMemo } from 'react';
|
|
10
10
|
import styled from '@emotion/styled';
|
|
11
|
-
import { animations, breakpoints, colors,
|
|
11
|
+
import { animations, breakpoints, colors, mq, spacing } from '@ndla/core';
|
|
12
|
+
import { Text, Heading } from '@ndla/typography';
|
|
12
13
|
|
|
13
|
-
import parse from 'html-react-parser';
|
|
14
14
|
import { ChevronDown, ChevronUp, PlayCircleFilled } from '@ndla/icons/common';
|
|
15
15
|
import { ModalCloseButton, ModalContent, Modal, ModalHeader, ModalTrigger } from '@ndla/modal';
|
|
16
16
|
import { ButtonV2 } from '@ndla/button';
|
|
@@ -18,7 +18,6 @@ import { CursorClick, ExpandTwoArrows } from '@ndla/icons/action';
|
|
|
18
18
|
import { css } from '@emotion/react';
|
|
19
19
|
import { useTranslation } from 'react-i18next';
|
|
20
20
|
import { EmbedMetaData } from '@ndla/types-embed';
|
|
21
|
-
import { Heading } from '@ndla/typography';
|
|
22
21
|
import Loader from './Loader';
|
|
23
22
|
import { ItemProps } from '../Navigation/NavigationBox';
|
|
24
23
|
import { NavigationBox } from '../Navigation';
|
|
@@ -145,14 +144,6 @@ const HeadingWrapper = styled.hgroup`
|
|
|
145
144
|
}
|
|
146
145
|
`;
|
|
147
146
|
|
|
148
|
-
const TopicIntroduction = styled.div`
|
|
149
|
-
font-weight: ${fonts.weight.light};
|
|
150
|
-
max-width: 612px;
|
|
151
|
-
${mq.range({ from: breakpoints.tablet })} {
|
|
152
|
-
${fonts.sizes('22px', '32px')};
|
|
153
|
-
}
|
|
154
|
-
`;
|
|
155
|
-
|
|
156
147
|
const StyledButtonWrapper = styled.div<InvertItProps>`
|
|
157
148
|
margin-top: ${spacing.small};
|
|
158
149
|
padding: ${spacing.xsmall} 0 ${spacing.xsmall} ${spacing.medium};
|
|
@@ -197,13 +188,12 @@ export type TopicProps = {
|
|
|
197
188
|
alt: string;
|
|
198
189
|
};
|
|
199
190
|
title: string;
|
|
200
|
-
introduction:
|
|
191
|
+
introduction: ReactNode;
|
|
201
192
|
resources?: ReactNode;
|
|
202
193
|
visualElementEmbedMeta?: EmbedMetaData;
|
|
203
194
|
subTopics?: ItemProps[] | null | undefined;
|
|
204
195
|
onSubTopicSelected?: (event: MouseEvent<HTMLElement>, id?: string) => void;
|
|
205
196
|
isLoading?: boolean;
|
|
206
|
-
renderMarkdown?: (text: string) => string;
|
|
207
197
|
invertedStyle?: boolean;
|
|
208
198
|
onToggleShowContent?: () => void;
|
|
209
199
|
showContent?: boolean;
|
|
@@ -229,7 +219,6 @@ const Topic = ({
|
|
|
229
219
|
subTopics,
|
|
230
220
|
onSubTopicSelected,
|
|
231
221
|
isLoading,
|
|
232
|
-
renderMarkdown,
|
|
233
222
|
invertedStyle,
|
|
234
223
|
onToggleShowContent,
|
|
235
224
|
showContent,
|
|
@@ -284,7 +273,9 @@ const Topic = ({
|
|
|
284
273
|
</>
|
|
285
274
|
)}
|
|
286
275
|
</HeadingWrapper>
|
|
287
|
-
<
|
|
276
|
+
<Text textStyle="ingress" element="div">
|
|
277
|
+
{introduction}
|
|
278
|
+
</Text>
|
|
288
279
|
</div>
|
|
289
280
|
{metaImage && (
|
|
290
281
|
<TopicHeaderVisualElementWrapper>
|
|
@@ -1271,6 +1271,19 @@ const messages = {
|
|
|
1271
1271
|
text: 'When you save a resource, you will have the option to tag it with a keyword. This tag can be used to find the resource across folders. By selecting <strong>My tags</strong> on the menu to the left, you will see all the tags your have used. You can also see which resources are tagget with which keyword.',
|
|
1272
1272
|
},
|
|
1273
1273
|
},
|
|
1274
|
+
myProfile: {
|
|
1275
|
+
title: 'My Profile',
|
|
1276
|
+
disclaimerTitle: 'Where is my picture and name used?',
|
|
1277
|
+
disclaimerText: 'Your picture and name are displayed when you participate in discussions in the arena.',
|
|
1278
|
+
preferenceTitle: 'Choose whether you want to display name when sharing a folder',
|
|
1279
|
+
preferenceText:
|
|
1280
|
+
'Here you can choose whether you want to display your name when you share a folder. The selected option applies to all your folders and can be changed later. If you later change the option, your name will appear on all your shared folders.',
|
|
1281
|
+
editButtonText: 'Change profile picture',
|
|
1282
|
+
radioButtonText: {
|
|
1283
|
+
option1: 'Show my name when I share a folder',
|
|
1284
|
+
option2: 'Do not show my name when I share a folder',
|
|
1285
|
+
},
|
|
1286
|
+
},
|
|
1274
1287
|
resource: {
|
|
1275
1288
|
add: 'Add folder/tag',
|
|
1276
1289
|
remove: 'Remove',
|
|
@@ -1267,6 +1267,19 @@ const messages = {
|
|
|
1267
1267
|
text: 'Når du lagrer en ressurs, får du mulighet til å markere ressursen med en emneknagg. Emneknaggen er et nøkkelord du kan bruke til å finne tilbake til ressurser på tvers av mapper. Du finner alle emneknaggene du har brukt, ved å velge <strong>Mine emneknagger</strong> i venstremenyen. Her kan du også se hvilke ressurser du har markert med hvilken emneknagg.',
|
|
1268
1268
|
},
|
|
1269
1269
|
},
|
|
1270
|
+
myProfile: {
|
|
1271
|
+
title: 'Min Profil',
|
|
1272
|
+
disclaimerTitle: 'Hvor brukes bildet og navnet mitt?',
|
|
1273
|
+
disclaimerText: 'Bilde og navn vises når du deltar i diskusjoner i arenaen.',
|
|
1274
|
+
preferenceTitle: 'Velg om du vil vise navn når du deler en mappe',
|
|
1275
|
+
preferenceText:
|
|
1276
|
+
'Her kan du selv velge om du vil vise navnet ditt når du deler en mappe. Valget gjelder for alle mappene dine og kan endres senere. Dersom du endrer vil navnet ditt vises på alle dine delte mapper.',
|
|
1277
|
+
editButtonText: 'Endre profilbilde',
|
|
1278
|
+
radioButtonText: {
|
|
1279
|
+
option1: 'Vis navnet mitt når jeg deler en mappe',
|
|
1280
|
+
option2: 'Ikke vis navnet mitt når jeg deler mappe',
|
|
1281
|
+
},
|
|
1282
|
+
},
|
|
1270
1283
|
resource: {
|
|
1271
1284
|
add: 'Legg til mappe/emneknagg',
|
|
1272
1285
|
remove: 'Fjern',
|
|
@@ -1267,6 +1267,19 @@ const messages = {
|
|
|
1267
1267
|
text: 'Når du lagrar ein ressurs, får du høve til å markere ressursen med ein emneknagg. Emneknaggen er eit nøkkelord du kan bruke til å finne tilbake til ressursar på tvers av mapper. Du finn alle emneknaggane du har brukt, ved å velje <strong>Mine emneknaggar</strong> i venstremenyen. Her kan du også sjå kva for ressursar du har merkt med kva knagg.',
|
|
1268
1268
|
},
|
|
1269
1269
|
},
|
|
1270
|
+
myProfile: {
|
|
1271
|
+
title: 'Min Profil',
|
|
1272
|
+
disclaimerTitle: 'Kvar blir biletet og namnet mitt brukt?',
|
|
1273
|
+
disclaimerText: 'Bilete og namn vert vist når du deltek i diskusjonar i arenaen.',
|
|
1274
|
+
preferenceTitle: 'Vel om du vil vise namn når du deler ei mappe',
|
|
1275
|
+
preferenceText:
|
|
1276
|
+
'Her kan du sjølv velje om du vil vise namnet ditt når du deler ei mappe. Valet gjeld for alle mappene dine og kan endrast seinare. Dersom du endrar vil namnet ditt visast på alle dine delte mapper.',
|
|
1277
|
+
editButtonText: 'Endre profilbilete',
|
|
1278
|
+
radioButtonText: {
|
|
1279
|
+
option1: 'Vis namnet mitt når eg deler ei mappe',
|
|
1280
|
+
option2: 'Ikkje vis namnet mitt når eg deler mappe',
|
|
1281
|
+
},
|
|
1282
|
+
},
|
|
1270
1283
|
resource: {
|
|
1271
1284
|
add: 'Legg til mappe/emneknagg',
|
|
1272
1285
|
remove: 'Fjern',
|
|
@@ -1267,6 +1267,19 @@ const messages = {
|
|
|
1267
1267
|
text: 'Go vurket muhtin resurssa de lea vejolaš merket resurssa fáddágilkoriin. Fáddágilkor lea čoavddasátni man sáhtát geavahit gávdnan dihte ruovttoluotta resurssaide máhpaid rastá. Gávnnat buot fáddágilkoriid maid leat geavahan go válljet mu fáddágilkoriid gurut bealde fálus. Das oainnát maiddái maid resurssaid don leat merken juohke fáddágilkoriin.',
|
|
1268
1268
|
},
|
|
1269
1269
|
},
|
|
1270
|
+
myProfile: {
|
|
1271
|
+
title: 'Mu profiila',
|
|
1272
|
+
disclaimerTitle: 'Gos geavahit mu gova ja mu nama?',
|
|
1273
|
+
disclaimerText: 'Govva ja namma čájehuvvojit go searvat digaštallamii arenain.',
|
|
1274
|
+
preferenceTitle: 'Vállje jos namma čájehuvvo máhpa juohkkedettiin',
|
|
1275
|
+
preferenceText:
|
|
1276
|
+
'Dás válljet jos iežat namma čájehuvvo juohkkedettiin máhpa. Dát molssaeaktu guoská buot máhpaide ja sáhttá rievdaduvvot maŋŋil. Jos rievdadat dán, de čájehuvvo du namma buot juogaduvvon máhpain.',
|
|
1277
|
+
editButtonText: 'Rievdat profiilagova',
|
|
1278
|
+
radioButtonText: {
|
|
1279
|
+
option1: 'Čájet mu nama máhpa juohkkedettiin',
|
|
1280
|
+
option2: 'Ale čájet mu nama máhpa juohkkedettiin',
|
|
1281
|
+
},
|
|
1282
|
+
},
|
|
1270
1283
|
resource: {
|
|
1271
1284
|
add: 'Lasit máhpa/fáddágilkora',
|
|
1272
1285
|
remove: 'Sihko',
|
|
@@ -1272,6 +1272,19 @@ const messages = {
|
|
|
1272
1272
|
text: 'Når du lagrar ein ressurs, får du høve til å markere ressursen med ein emneknagg. Emneknaggen er eit nøkkelord du kan bruke til å finne tilbake til ressursar på tvers av mapper. Du finn alle emneknaggane du har brukt, ved å velje <strong>Mine emneknaggar</strong> i venstremenyen. Her kan du også sjå kva for ressursar du har merkt med kva knagg.',
|
|
1273
1273
|
},
|
|
1274
1274
|
},
|
|
1275
|
+
myProfile: {
|
|
1276
|
+
title: 'Mov Profijle',
|
|
1277
|
+
disclaimerTitle: 'Gusnie guvvie jïh nomme åtnasuvvieh?',
|
|
1278
|
+
disclaimerText: 'Guvvie jïh nomme våajnoes sjidtieh gosse meatan digkiedimmesne sijjesne.',
|
|
1279
|
+
preferenceTitle: 'Sjïehtedh jis edtja nommem vuesiehtidh gosse maabpam juekedh',
|
|
1280
|
+
preferenceText:
|
|
1281
|
+
'Daesnie jïjtje veeljh mejtie sïjhth dov nommem vuesiehtidh gosse maabpam juekedh . Daate veeljeme lea gaajhkine dov maabpojne, jïh maahta dam mænngan jarkelidh. Jis jeatjahdahtah , dov nomme sæjhta våajnoes årrodh gaajhkine dov joekedamme maabpojne.',
|
|
1282
|
+
editButtonText: 'Naemhtie profijleguvviem jarkelidh',
|
|
1283
|
+
radioButtonText: {
|
|
1284
|
+
option1: 'Vuesehth mov nommem gosse maabpam juekieh',
|
|
1285
|
+
option2: 'Aellieh mov nommem vuesehth gosse maabpam juekieh',
|
|
1286
|
+
},
|
|
1287
|
+
},
|
|
1275
1288
|
resource: {
|
|
1276
1289
|
add: 'Legg til mappe/emneknagg',
|
|
1277
1290
|
remove: 'Fjern',
|