@limetech/lime-elements 39.41.0 → 39.42.1
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/CHANGELOG.md +20 -0
- package/dist/cjs/{image-resize-FAwzj92q.js → image-resize-CG2fitJT.js} +97 -14
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/lime-elements.cjs.js +1 -1
- package/dist/cjs/limel-action-bar_3.cjs.entry.js +1 -1
- package/dist/cjs/limel-ai-avatar.cjs.entry.js +1 -1
- package/dist/cjs/limel-callout.cjs.entry.js +1 -1
- package/dist/cjs/limel-chart.cjs.entry.js +1 -1
- package/dist/cjs/limel-chip-set.cjs.entry.js +1 -1
- package/dist/cjs/limel-chip_2.cjs.entry.js +1 -1
- package/dist/cjs/limel-code-diff.cjs.entry.js +1 -1
- package/dist/cjs/limel-code-editor.cjs.entry.js +1 -1
- package/dist/cjs/limel-collapsible-section.cjs.entry.js +1 -1
- package/dist/cjs/limel-drag-handle.cjs.entry.js +1 -1
- package/dist/cjs/limel-email-viewer.cjs.entry.js +1 -1
- package/dist/cjs/limel-file-viewer.cjs.entry.js +1 -1
- package/dist/cjs/limel-file.cjs.entry.js +84 -18
- package/dist/cjs/limel-flatpickr-adapter.cjs.entry.js +1 -1
- package/dist/cjs/limel-list-item.cjs.entry.js +1 -1
- package/dist/cjs/limel-picker.cjs.entry.js +1 -1
- package/dist/cjs/limel-profile-picture.cjs.entry.js +12 -5
- package/dist/cjs/limel-prosemirror-adapter.cjs.entry.js +1 -1
- package/dist/cjs/limel-snackbar.cjs.entry.js +1 -1
- package/dist/cjs/limel-table.cjs.entry.js +1 -1
- package/dist/cjs/limel-text-editor-link-menu.cjs.entry.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{translations-VEsa81QY.js → translations-Bnw00bkf.js} +8 -0
- package/dist/collection/components/file/file.js +119 -18
- package/dist/collection/components/profile-picture/profile-picture.js +12 -5
- package/dist/collection/translations/da.js +1 -0
- package/dist/collection/translations/de.js +1 -0
- package/dist/collection/translations/en.js +1 -0
- package/dist/collection/translations/fi.js +1 -0
- package/dist/collection/translations/fr.js +1 -0
- package/dist/collection/translations/nl.js +1 -0
- package/dist/collection/translations/no.js +1 -0
- package/dist/collection/translations/sv.js +1 -0
- package/dist/collection/util/image-resize.js +97 -14
- package/dist/esm/{image-resize-DPcww8rE.js → image-resize-BTSG--2-.js} +97 -14
- package/dist/esm/index.js +1 -1
- package/dist/esm/lime-elements.js +1 -1
- package/dist/esm/limel-action-bar_3.entry.js +1 -1
- package/dist/esm/limel-ai-avatar.entry.js +1 -1
- package/dist/esm/limel-callout.entry.js +1 -1
- package/dist/esm/limel-chart.entry.js +1 -1
- package/dist/esm/limel-chip-set.entry.js +1 -1
- package/dist/esm/limel-chip_2.entry.js +1 -1
- package/dist/esm/limel-code-diff.entry.js +1 -1
- package/dist/esm/limel-code-editor.entry.js +1 -1
- package/dist/esm/limel-collapsible-section.entry.js +1 -1
- package/dist/esm/limel-drag-handle.entry.js +1 -1
- package/dist/esm/limel-email-viewer.entry.js +1 -1
- package/dist/esm/limel-file-viewer.entry.js +1 -1
- package/dist/esm/limel-file.entry.js +84 -18
- package/dist/esm/limel-flatpickr-adapter.entry.js +1 -1
- package/dist/esm/limel-list-item.entry.js +1 -1
- package/dist/esm/limel-picker.entry.js +1 -1
- package/dist/esm/limel-profile-picture.entry.js +12 -5
- package/dist/esm/limel-prosemirror-adapter.entry.js +1 -1
- package/dist/esm/limel-snackbar.entry.js +1 -1
- package/dist/esm/limel-table.entry.js +1 -1
- package/dist/esm/limel-text-editor-link-menu.entry.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{translations-EPnIW0K5.js → translations-Cb9R_zmF.js} +8 -0
- package/dist/lime-elements/index.esm.js +1 -1
- package/dist/lime-elements/lime-elements.esm.js +1 -1
- package/dist/lime-elements/{p-068e7087.entry.js → p-19c81ded.entry.js} +2 -2
- package/dist/lime-elements/{p-56781dc7.entry.js → p-1cc3b516.entry.js} +1 -1
- package/dist/lime-elements/{p-ca0a8a5a.entry.js → p-1e3cdfa1.entry.js} +1 -1
- package/dist/lime-elements/{p-2531a103.entry.js → p-2284caa7.entry.js} +1 -1
- package/dist/lime-elements/{p-d8cb7d42.entry.js → p-2f223e46.entry.js} +1 -1
- package/dist/lime-elements/{p-a3a2aafe.entry.js → p-4a09fb2e.entry.js} +1 -1
- package/dist/lime-elements/{p-f197036b.entry.js → p-552d0733.entry.js} +1 -1
- package/dist/lime-elements/{p-fd78537c.entry.js → p-6fbf20c6.entry.js} +1 -1
- package/dist/lime-elements/{p-5571f0de.entry.js → p-758939be.entry.js} +1 -1
- package/dist/lime-elements/{p-19347686.entry.js → p-7f7e2180.entry.js} +1 -1
- package/dist/lime-elements/p-8893e1df.entry.js +1 -0
- package/dist/lime-elements/p-8aeeeb53.entry.js +1 -0
- package/dist/lime-elements/{p-79caf3f6.entry.js → p-9ae7d11b.entry.js} +1 -1
- package/dist/lime-elements/p-BTSG--2-.js +1 -0
- package/dist/lime-elements/p-Cb9R_zmF.js +1 -0
- package/dist/lime-elements/{p-6edf13b1.entry.js → p-a089b580.entry.js} +1 -1
- package/dist/lime-elements/{p-04b4e903.entry.js → p-aa080a8f.entry.js} +1 -1
- package/dist/lime-elements/{p-54961e0e.entry.js → p-c1ceade7.entry.js} +1 -1
- package/dist/lime-elements/{p-e08f770e.entry.js → p-c8116a01.entry.js} +1 -1
- package/dist/lime-elements/{p-36ccc68e.entry.js → p-c8982eef.entry.js} +1 -1
- package/dist/lime-elements/{p-d98168a1.entry.js → p-ca0b86ee.entry.js} +1 -1
- package/dist/lime-elements/{p-1525274d.entry.js → p-d7bb4310.entry.js} +1 -1
- package/dist/lime-elements/{p-bb201b0d.entry.js → p-e545c9e8.entry.js} +1 -1
- package/dist/types/components/file/file.d.ts +20 -0
- package/dist/types/components/profile-picture/profile-picture.d.ts +2 -0
- package/dist/types/components.d.ts +22 -4
- package/dist/types/translations/da.d.ts +1 -0
- package/dist/types/translations/de.d.ts +1 -0
- package/dist/types/translations/en.d.ts +1 -0
- package/dist/types/translations/fi.d.ts +1 -0
- package/dist/types/translations/fr.d.ts +1 -0
- package/dist/types/translations/nl.d.ts +1 -0
- package/dist/types/translations/no.d.ts +1 -0
- package/dist/types/translations/sv.d.ts +1 -0
- package/dist/types/util/image-resize.d.ts +41 -16
- package/package.json +1 -1
- package/dist/lime-elements/p-2a871a95.entry.js +0 -1
- package/dist/lime-elements/p-5cf7464f.entry.js +0 -1
- package/dist/lime-elements/p-DPcww8rE.js +0 -1
- package/dist/lime-elements/p-EPnIW0K5.js +0 -1
|
@@ -31,6 +31,7 @@ import { ClosingActions, DialogHeading } from "./components/dialog/dialog.types"
|
|
|
31
31
|
import { DockItem } from "./components/dock/dock.types";
|
|
32
32
|
import { Email } from "./components/email-viewer/email-viewer.types";
|
|
33
33
|
import { FileInfo } from "./global/shared-types/file.types";
|
|
34
|
+
import { ResizeOptions } from "./util/image-resize";
|
|
34
35
|
import { OfficeViewer } from "./components/file-viewer/file-viewer.types";
|
|
35
36
|
import { FlexContainerAlign, FlexContainerDirection, FlexContainerJustify } from "./components/flex-container/flex-container.types";
|
|
36
37
|
import { FormError, FormSchema, ValidationError, ValidationStatus } from "./components/form/form.types";
|
|
@@ -42,7 +43,6 @@ import { CustomElementDefinition } from "./global/shared-types/custom-element.ty
|
|
|
42
43
|
import { PickerItem } from "./components/picker/picker-item.types";
|
|
43
44
|
import { Searcher } from "./components/picker/searcher.types";
|
|
44
45
|
import { ActionPosition, ActionScrollBehavior } from "./components/picker/actions.types";
|
|
45
|
-
import { ResizeOptions } from "./util/image-resize";
|
|
46
46
|
import { FlowItem } from "./components/progress-flow/progress-flow.types";
|
|
47
47
|
import { EditorImage, EditorMetadata, ImageInserter, InlineImages, TriggerCharacter, TriggerEventDetail } from "./components/text-editor/text-editor.types";
|
|
48
48
|
import { EditorUiType } from "./components/text-editor/types";
|
|
@@ -78,6 +78,7 @@ export { ClosingActions, DialogHeading } from "./components/dialog/dialog.types"
|
|
|
78
78
|
export { DockItem } from "./components/dock/dock.types";
|
|
79
79
|
export { Email } from "./components/email-viewer/email-viewer.types";
|
|
80
80
|
export { FileInfo } from "./global/shared-types/file.types";
|
|
81
|
+
export { ResizeOptions } from "./util/image-resize";
|
|
81
82
|
export { OfficeViewer } from "./components/file-viewer/file-viewer.types";
|
|
82
83
|
export { FlexContainerAlign, FlexContainerDirection, FlexContainerJustify } from "./components/flex-container/flex-container.types";
|
|
83
84
|
export { FormError, FormSchema, ValidationError, ValidationStatus } from "./components/form/form.types";
|
|
@@ -89,7 +90,6 @@ export { CustomElementDefinition } from "./global/shared-types/custom-element.ty
|
|
|
89
90
|
export { PickerItem } from "./components/picker/picker-item.types";
|
|
90
91
|
export { Searcher } from "./components/picker/searcher.types";
|
|
91
92
|
export { ActionPosition, ActionScrollBehavior } from "./components/picker/actions.types";
|
|
92
|
-
export { ResizeOptions } from "./util/image-resize";
|
|
93
93
|
export { FlowItem } from "./components/progress-flow/progress-flow.types";
|
|
94
94
|
export { EditorImage, EditorMetadata, ImageInserter, InlineImages, TriggerCharacter, TriggerEventDetail } from "./components/text-editor/text-editor.types";
|
|
95
95
|
export { EditorUiType } from "./components/text-editor/types";
|
|
@@ -1605,6 +1605,8 @@ export namespace Components {
|
|
|
1605
1605
|
* @exampleComponent limel-example-file-per-file-status
|
|
1606
1606
|
* @exampleComponent limel-example-file-menu-items
|
|
1607
1607
|
* @exampleComponent limel-example-file-accepted-types
|
|
1608
|
+
* @exampleComponent limel-example-file-resize-image
|
|
1609
|
+
* @exampleComponent limel-example-file-resize-mixed
|
|
1608
1610
|
* @exampleComponent limel-example-file-composite
|
|
1609
1611
|
*/
|
|
1610
1612
|
interface LimelFile {
|
|
@@ -1651,6 +1653,11 @@ export namespace Components {
|
|
|
1651
1653
|
* @default false
|
|
1652
1654
|
*/
|
|
1653
1655
|
"required": boolean;
|
|
1656
|
+
/**
|
|
1657
|
+
* Optional client-side image resize, applied before the `change` event is emitted: a selected image is downscaled and re-encoded on the user's device. Only decodable raster images are resized; all other files pass through unchanged. See the examples for details and caveats.
|
|
1658
|
+
* @beta
|
|
1659
|
+
*/
|
|
1660
|
+
"resizeImage"?: ResizeOptions;
|
|
1654
1661
|
/**
|
|
1655
1662
|
* The selected file.
|
|
1656
1663
|
*/
|
|
@@ -3106,7 +3113,7 @@ export namespace Components {
|
|
|
3106
3113
|
*/
|
|
3107
3114
|
"required": boolean;
|
|
3108
3115
|
/**
|
|
3109
|
-
* Optional client-side resize before emitting the file. If provided, the selected image will be resized on the client device. :::note HEIC may not decode in all browsers; when decoding fails, the original file will be emitted. See the examples for more info. :::
|
|
3116
|
+
* Optional client-side resize before emitting the file. If provided, the selected image will be resized on the client device. Omitted options fall back to avatar defaults: `image/jpeg`, `quality` `0.85`, and the component's `imageFit`. :::note HEIC may not decode in all browsers; when decoding fails, the original file will be emitted. See the examples for more info. :::
|
|
3110
3117
|
*/
|
|
3111
3118
|
"resize"?: ResizeOptions;
|
|
3112
3119
|
/**
|
|
@@ -5131,6 +5138,8 @@ declare global {
|
|
|
5131
5138
|
* @exampleComponent limel-example-file-per-file-status
|
|
5132
5139
|
* @exampleComponent limel-example-file-menu-items
|
|
5133
5140
|
* @exampleComponent limel-example-file-accepted-types
|
|
5141
|
+
* @exampleComponent limel-example-file-resize-image
|
|
5142
|
+
* @exampleComponent limel-example-file-resize-mixed
|
|
5134
5143
|
* @exampleComponent limel-example-file-composite
|
|
5135
5144
|
*/
|
|
5136
5145
|
interface HTMLLimelFileElement extends Components.LimelFile, HTMLStencilElement {
|
|
@@ -8223,6 +8232,8 @@ declare namespace LocalJSX {
|
|
|
8223
8232
|
* @exampleComponent limel-example-file-per-file-status
|
|
8224
8233
|
* @exampleComponent limel-example-file-menu-items
|
|
8225
8234
|
* @exampleComponent limel-example-file-accepted-types
|
|
8235
|
+
* @exampleComponent limel-example-file-resize-image
|
|
8236
|
+
* @exampleComponent limel-example-file-resize-mixed
|
|
8226
8237
|
* @exampleComponent limel-example-file-composite
|
|
8227
8238
|
*/
|
|
8228
8239
|
interface LimelFile {
|
|
@@ -8277,6 +8288,11 @@ declare namespace LocalJSX {
|
|
|
8277
8288
|
* @default false
|
|
8278
8289
|
*/
|
|
8279
8290
|
"required"?: boolean;
|
|
8291
|
+
/**
|
|
8292
|
+
* Optional client-side image resize, applied before the `change` event is emitted: a selected image is downscaled and re-encoded on the user's device. Only decodable raster images are resized; all other files pass through unchanged. See the examples for details and caveats.
|
|
8293
|
+
* @beta
|
|
8294
|
+
*/
|
|
8295
|
+
"resizeImage"?: ResizeOptions;
|
|
8280
8296
|
/**
|
|
8281
8297
|
* The selected file.
|
|
8282
8298
|
*/
|
|
@@ -9808,7 +9824,7 @@ declare namespace LocalJSX {
|
|
|
9808
9824
|
*/
|
|
9809
9825
|
"required"?: boolean;
|
|
9810
9826
|
/**
|
|
9811
|
-
* Optional client-side resize before emitting the file. If provided, the selected image will be resized on the client device. :::note HEIC may not decode in all browsers; when decoding fails, the original file will be emitted. See the examples for more info. :::
|
|
9827
|
+
* Optional client-side resize before emitting the file. If provided, the selected image will be resized on the client device. Omitted options fall back to avatar defaults: `image/jpeg`, `quality` `0.85`, and the component's `imageFit`. :::note HEIC may not decode in all browsers; when decoding fails, the original file will be emitted. See the examples for more info. :::
|
|
9812
9828
|
*/
|
|
9813
9829
|
"resize"?: ResizeOptions;
|
|
9814
9830
|
/**
|
|
@@ -12085,6 +12101,8 @@ declare module "@stencil/core" {
|
|
|
12085
12101
|
* @exampleComponent limel-example-file-per-file-status
|
|
12086
12102
|
* @exampleComponent limel-example-file-menu-items
|
|
12087
12103
|
* @exampleComponent limel-example-file-accepted-types
|
|
12104
|
+
* @exampleComponent limel-example-file-resize-image
|
|
12105
|
+
* @exampleComponent limel-example-file-resize-mixed
|
|
12088
12106
|
* @exampleComponent limel-example-file-composite
|
|
12089
12107
|
*/
|
|
12090
12108
|
"limel-file": LocalJSX.IntrinsicElements["limel-file"] & JSXBase.HTMLAttributes<HTMLLimelFileElement>;
|
|
@@ -29,6 +29,7 @@ declare const _default: {
|
|
|
29
29
|
'chip-set.clear-all': string;
|
|
30
30
|
'snackbar.dismiss': string;
|
|
31
31
|
'file.drag-and-drop-tips': string;
|
|
32
|
+
'file.optimizing': string;
|
|
32
33
|
'file-viewer.message.unsupported-filetype': string;
|
|
33
34
|
'file-viewer.message.try-other-options': string;
|
|
34
35
|
'file-viewer.message.file-not-found': string;
|
|
@@ -29,6 +29,7 @@ declare const _default: {
|
|
|
29
29
|
'chip-set.clear-all': string;
|
|
30
30
|
'snackbar.dismiss': string;
|
|
31
31
|
'file.drag-and-drop-tips': string;
|
|
32
|
+
'file.optimizing': string;
|
|
32
33
|
'file-viewer.message.unsupported-filetype': string;
|
|
33
34
|
'file-viewer.message.try-other-options': string;
|
|
34
35
|
'file-viewer.message.file-not-found': string;
|
|
@@ -29,6 +29,7 @@ declare const _default: {
|
|
|
29
29
|
'chip-set.clear-all': string;
|
|
30
30
|
'snackbar.dismiss': string;
|
|
31
31
|
'file.drag-and-drop-tips': string;
|
|
32
|
+
'file.optimizing': string;
|
|
32
33
|
'file-viewer.message.unsupported-filetype': string;
|
|
33
34
|
'file-viewer.message.try-other-options': string;
|
|
34
35
|
'file-viewer.message.file-not-found': string;
|
|
@@ -29,6 +29,7 @@ declare const _default: {
|
|
|
29
29
|
'chip-set.clear-all': string;
|
|
30
30
|
'snackbar.dismiss': string;
|
|
31
31
|
'file.drag-and-drop-tips': string;
|
|
32
|
+
'file.optimizing': string;
|
|
32
33
|
'file-viewer.message.unsupported-filetype': string;
|
|
33
34
|
'file-viewer.message.try-other-options': string;
|
|
34
35
|
'file-viewer.message.file-not-found': string;
|
|
@@ -29,6 +29,7 @@ declare const _default: {
|
|
|
29
29
|
'chip-set.clear-all': string;
|
|
30
30
|
'snackbar.dismiss': string;
|
|
31
31
|
'file.drag-and-drop-tips': string;
|
|
32
|
+
'file.optimizing': string;
|
|
32
33
|
'file-viewer.message.unsupported-filetype': string;
|
|
33
34
|
'file-viewer.message.try-other-options': string;
|
|
34
35
|
'file-viewer.message.file-not-found': string;
|
|
@@ -29,6 +29,7 @@ declare const _default: {
|
|
|
29
29
|
'chip-set.clear-all': string;
|
|
30
30
|
'snackbar.dismiss': string;
|
|
31
31
|
'file.drag-and-drop-tips': string;
|
|
32
|
+
'file.optimizing': string;
|
|
32
33
|
'file-viewer.message.unsupported-filetype': string;
|
|
33
34
|
'file-viewer.message.try-other-options': string;
|
|
34
35
|
'file-viewer.message.file-not-found': string;
|
|
@@ -28,6 +28,7 @@ declare const _default: {
|
|
|
28
28
|
'drag-handle.drag-to-reorder': string;
|
|
29
29
|
'chip-set.clear-all': string;
|
|
30
30
|
'file.drag-and-drop-tips': string;
|
|
31
|
+
'file.optimizing': string;
|
|
31
32
|
'file-viewer.message.unsupported-filetype': string;
|
|
32
33
|
'file-viewer.message.try-other-options': string;
|
|
33
34
|
'file-viewer.message.file-not-found': string;
|
|
@@ -29,6 +29,7 @@ declare const _default: {
|
|
|
29
29
|
'chip-set.clear-all': string;
|
|
30
30
|
'snackbar.dismiss': string;
|
|
31
31
|
'file.drag-and-drop-tips': string;
|
|
32
|
+
'file.optimizing': string;
|
|
32
33
|
'file-viewer.message.unsupported-filetype': string;
|
|
33
34
|
'file-viewer.message.try-other-options': string;
|
|
34
35
|
'file-viewer.message.file-not-found': string;
|
|
@@ -12,15 +12,17 @@
|
|
|
12
12
|
*
|
|
13
13
|
* Why resize client-side?
|
|
14
14
|
* - Faster perceived uploads and lower bandwidth usage
|
|
15
|
-
* - Consistent
|
|
15
|
+
* - Consistent output sizes and formats (e.g., a 400x400 thumbnail)
|
|
16
16
|
* - No server-side transformation required for common cases
|
|
17
17
|
*
|
|
18
18
|
* Fit strategies
|
|
19
|
-
* - `cover
|
|
20
|
-
*
|
|
19
|
+
* - `cover`: The image is scaled to cover the target rectangle, and the excess
|
|
20
|
+
* parts are center-cropped. Good for avatars.
|
|
21
21
|
* - `contain`: The image is scaled to fit entirely within the target rectangle
|
|
22
22
|
* without cropping, letterboxing if needed. Good when you must preserve the
|
|
23
23
|
* entire image.
|
|
24
|
+
* - omitted: scales the whole image to fit without cropping (no pixels are
|
|
25
|
+
* discarded).
|
|
24
26
|
*
|
|
25
27
|
* Decoding & EXIF orientation
|
|
26
28
|
* EXIF orientation is a piece of metadata stored inside image files
|
|
@@ -46,9 +48,11 @@
|
|
|
46
48
|
* library or WASM module; this utility intentionally avoids extra dependencies.
|
|
47
49
|
*
|
|
48
50
|
* Output type & quality
|
|
49
|
-
* -
|
|
50
|
-
*
|
|
51
|
-
*
|
|
51
|
+
* - When `type` is omitted the source format is kept if the canvas can encode
|
|
52
|
+
* it: a PNG stays a PNG (preserving transparency) and everything else is
|
|
53
|
+
* encoded as `image/jpeg`. Set `type` explicitly to force a format.
|
|
54
|
+
* - JPEG `quality` is optional; when omitted the browser's native encoding
|
|
55
|
+
* quality is used rather than an imposed value.
|
|
52
56
|
* - The output filename extension is adjusted to match the chosen MIME type by
|
|
53
57
|
* default (e.g., `.jpg` or `.png`). You can override naming via the `rename`
|
|
54
58
|
* option.
|
|
@@ -73,9 +77,9 @@
|
|
|
73
77
|
* const processed = await resizeImage(file, {
|
|
74
78
|
* width: 400,
|
|
75
79
|
* height: 400,
|
|
76
|
-
* fit: 'cover', //
|
|
77
|
-
* type: 'image/jpeg', //
|
|
78
|
-
* quality: 0.85, //
|
|
80
|
+
* fit: 'cover', // center-crops; omit to fit without cropping
|
|
81
|
+
* type: 'image/jpeg', // omit to keep the source format
|
|
82
|
+
* quality: 0.85, // omit to use the browser's native quality
|
|
79
83
|
* });
|
|
80
84
|
* // Upload `processed` instead of the original file
|
|
81
85
|
* ```
|
|
@@ -108,15 +112,36 @@
|
|
|
108
112
|
* @beta
|
|
109
113
|
*/
|
|
110
114
|
export type ResizeOptions = {
|
|
111
|
-
/**
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
115
|
+
/**
|
|
116
|
+
* Target width in CSS pixels. Omit to derive it from `height` while
|
|
117
|
+
* preserving the source aspect ratio; omit both `width` and `height` to
|
|
118
|
+
* keep the source dimensions and only re-encode.
|
|
119
|
+
*/
|
|
120
|
+
width?: number;
|
|
121
|
+
/**
|
|
122
|
+
* Target height in CSS pixels. Omit to derive it from `width` while
|
|
123
|
+
* preserving the source aspect ratio; omit both `width` and `height` to
|
|
124
|
+
* keep the source dimensions and only re-encode.
|
|
125
|
+
*/
|
|
126
|
+
height?: number;
|
|
127
|
+
/**
|
|
128
|
+
* How the image is fitted into the target box when its aspect ratio
|
|
129
|
+
* differs. `cover` scales to fill and center-crops the overflow; `contain`
|
|
130
|
+
* scales to fit the whole image inside the box. Omit to scale the whole
|
|
131
|
+
* image to fit without cropping (no pixels are discarded). Only relevant
|
|
132
|
+
* when both `width` and `height` are set.
|
|
133
|
+
*/
|
|
116
134
|
fit?: 'cover' | 'contain';
|
|
117
|
-
/**
|
|
135
|
+
/**
|
|
136
|
+
* Output MIME type. Omit to keep the source file's format when the canvas
|
|
137
|
+
* can encode it: a PNG stays a PNG (preserving transparency), otherwise
|
|
138
|
+
* the output is JPEG. Set explicitly to force a format.
|
|
139
|
+
*/
|
|
118
140
|
type?: 'image/jpeg' | 'image/png';
|
|
119
|
-
/**
|
|
141
|
+
/**
|
|
142
|
+
* JPEG quality (0..1); used only for 'image/jpeg'. Omit to let the browser
|
|
143
|
+
* use its native encoding quality rather than imposing a value.
|
|
144
|
+
*/
|
|
120
145
|
quality?: number;
|
|
121
146
|
/** Optional renaming function. Defaults to changing extension to match MIME. */
|
|
122
147
|
rename?: (originalName: string) => string;
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as t,c as e,h as i,H as r}from"./p-BGxJfR2f.js";import{i as o}from"./p-C4caLnTg.js";import{g as s}from"./p-CgNJbSP4.js";import{t as a}from"./p-EPnIW0K5.js";import{c as n}from"./p-JbKhhoXs.js";import{r as l}from"./p-DPcww8rE.js";import{I as h}from"./p-Dpg0OkbJ.js";import"./p-BCq5M9TE.js";import"./p-Bu_YRgCL.js";const c=class{constructor(r){t(this,r),this.change=e(this,"change"),this.filesRejected=e(this,"filesRejected"),this.language="en",this.icon="user",this.disabled=!1,this.readonly=!1,this.required=!1,this.invalid=!1,this.loading=!1,this.imageFit="cover",this.accept="image/jpeg,image/png,image/heic,.jpg,.jpeg,.png,.heic",this.imageError=!1,this.isErrorMessagePopoverOpen=!1,this.removeButtonId=n(),this.browseButtonId=n(),this.renderHelperText=()=>{if(this.helperText)return i("limel-tooltip",{elementId:this.browseButtonId,label:this.helperText})},this.handleNewFiles=async t=>{var e,i;if(t.stopPropagation(),this.disabled)return;const r=null===(e=t.detail)||void 0===e?void 0:e[0];if(!r)return;if(!o(r,this.accept))return void this.filesRejected.emit([r]);this.revokeObjectUrl(),this.imageError=!1;let s=r;if(this.resize&&r.fileContent instanceof File)try{const t=await l(r.fileContent,Object.assign(Object.assign({},this.resize),{fit:null!==(i=this.resize.fit)&&void 0!==i?i:this.imageFit}));s=Object.assign(Object.assign({},r),{filename:t.name,size:t.size,contentType:t.type,fileContent:t})}catch(t){s=r}!s.href&&s.fileContent instanceof File&&(this.objectUrl=URL.createObjectURL(s.fileContent)),this.change.emit(s)},this.handleRejectedFiles=t=>{t.stopPropagation(),this.filesRejected.emit(t.detail)},this.handleClear=t=>{t.stopPropagation(),this.revokeObjectUrl(),this.imageError=!1,this.change.emit(void 0)},this.onImageError=()=>{this.imageError=!0},this.openPopover=t=>{t.stopPropagation(),this.isErrorMessagePopoverOpen=!0},this.onPopoverClose=t=>{t.stopPropagation(),this.isErrorMessagePopoverOpen=!1},this.getTranslation=t=>a.get(t,this.language)}disconnectedCallback(){this.revokeObjectUrl()}handleValueChange(){this.revokeObjectUrl(),this.imageError=!1;const t=this.value;t&&"string"!=typeof t&&!t.href&&t.fileContent instanceof File&&(this.objectUrl=URL.createObjectURL(t.fileContent))}render(){const t={"has-image-error":this.imageError};return this.readonly?i(r,{class:t},this.renderAvatar()):i(r,{class:t},i("limel-file-dropzone",{disabled:this.disabled,accept:this.accept,onFilesSelected:this.handleNewFiles,onFilesRejected:this.handleRejectedFiles},i("limel-file-input",{accept:this.accept,disabled:this.disabled,"aria-required":this.required?"true":void 0,"aria-invalid":this.invalid?"true":void 0},this.renderBrowseButton())),this.renderClearButton(),this.renderSpinner(),this.renderErrorMessage(),this.renderHelperText())}get hasValue(){return"string"==typeof this.value?!!this.value:!(!this.value||!this.value.href&&!this.value.fileContent)||!!this.objectUrl}renderBrowseButton(){return i("button",{id:this.browseButtonId,type:"button",class:"avatar",disabled:this.disabled,"aria-label":this.label,"aria-busy":this.loading?"true":"false","aria-live":"polite"},this.renderAvatar())}renderAvatar(){const t=this.getImageSrc();return t?i(h,{image:{src:t,alt:"",referrerpolicy:"no-referrer"},style:{"--limel-profile-picture-object-fit":this.imageFit},onError:this.onImageError}):this.renderIcon()}renderIcon(){var t,e;const r=s(this.icon);return i("limel-icon",{name:r,style:{color:`${null===(t=this.icon)||void 0===t?void 0:t.color}`,"background-color":`${null===(e=this.icon)||void 0===e?void 0:e.backgroundColor}`}})}renderClearButton(){if(this.hasValue&&!this.disabled)return[i("button",{class:"remove",type:"button",id:this.removeButtonId,onClick:this.handleClear}),i("limel-tooltip",{label:this.getTranslation("profile-picture.remove"),elementId:this.removeButtonId})]}renderSpinner(){if(this.loading)return i("limel-spinner",null)}getUnsupportedPreviewContext(){const t=this.value;return{hasNoSrc:!this.getImageSrc(),hasLocalFile:!(!(t&&"string"!=typeof t&&t.fileContent instanceof File)||t.href),isResizeConfigured:!!this.resize}}shouldShowErrorMessage(){const{hasNoSrc:t,hasLocalFile:e,isResizeConfigured:i}=this.getUnsupportedPreviewContext();return(t||this.imageError)&&e&&i}renderErrorMessage(){if(this.shouldShowErrorMessage())return i("limel-popover",{open:this.isErrorMessagePopoverOpen,onClick:this.openPopover,onClose:this.onPopoverClose},i("limel-icon-button",{slot:"trigger",elevated:!0,icon:{name:"error",color:"rgb(var(--color-orange-dark))"},"aria-live":"polite",label:this.getTranslation("profile-picture.unsupported-preview.title")}),i("limel-callout",{type:"warning",style:{maxWidth:"20rem",borderRadius:"0.75rem"},heading:this.getTranslation("profile-picture.unsupported-preview.title")},this.getTranslation("profile-picture.unsupported-preview.description")))}getImageSrc(){return this.value?"string"==typeof this.value?this.value:this.value.href?this.value.href:this.value.fileContent instanceof File?this.objectUrl:void 0:this.objectUrl}revokeObjectUrl(){this.objectUrl&&(URL.revokeObjectURL(this.objectUrl),this.objectUrl=void 0)}static get watchers(){return{value:[{handleValueChange:0}]}}};c.style="@charset \"UTF-8\";:host(limel-profile-picture){position:relative;display:inline-flex;min-width:1.5rem;min-height:1.5rem;border-radius:var(--profile-picture-border-radius, 100vw);background-color:rgb(var(--contrast-400))}*{box-sizing:border-box}limel-file-dropzone,limel-file-input,button.avatar{display:flex;align-items:center;justify-content:center;width:100%;height:100%}button{appearance:none;background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;text-align:inherit;display:block}button:focus{outline:none}button:focus-visible{outline:none;box-shadow:var(--shadow-depth-8-focused)}button.avatar{overflow:hidden;border-radius:var(--profile-picture-border-radius, 100vw)}:host(:not([disabled]):not([disabled=true])) button.avatar{transition:color var(--limel-clickable-transition-speed, 0.4s) ease, background-color var(--limel-clickable-transition-speed, 0.4s) ease, box-shadow var(--limel-clickable-transform-speed, 0.4s) ease, transform var(--limel-clickable-transform-speed, 0.4s) var(--limel-clickable-transform-timing-function, ease);cursor:pointer;color:var(--limel-theme-on-surface-color);background-color:transparent}:host(:not([disabled]):not([disabled=true])) button.avatar:hover,:host(:not([disabled]):not([disabled=true])) button.avatar:focus,:host(:not([disabled]):not([disabled=true])) button.avatar:focus-visible{will-change:color, background-color, box-shadow, transform}:host(:not([disabled]):not([disabled=true])) button.avatar:hover,:host(:not([disabled]):not([disabled=true])) button.avatar:focus-visible{transform:translate3d(0, 0.01rem, 0);color:var(--limel-theme-on-surface-color);background-color:var(--lime-elevated-surface-background-color)}:host(:not([disabled]):not([disabled=true])) button.avatar:hover{box-shadow:var(--button-shadow-hovered)}:host(:not([disabled]):not([disabled=true])) button.avatar:active{--limel-clickable-transform-timing-function:cubic-bezier( 0.83, -0.15, 0.49, 1.16 );transform:translate3d(0, 0.05rem, 0);box-shadow:var(--button-shadow-pressed)}:host(:not([disabled]):not([disabled=true])) button.avatar:hover,:host(:not([disabled]):not([disabled=true])) button.avatar:active{--limel-clickable-transition-speed:0.2s;--limel-clickable-transform-speed:0.16s}:host([invalid]:not([invalid=false])) button.avatar{box-shadow:var(--shadow-error-state)}button.remove{transition:color var(--limel-clickable-transition-speed, 0.4s) ease, background-color var(--limel-clickable-transition-speed, 0.4s) ease, box-shadow var(--limel-clickable-transform-speed, 0.4s) ease, transform var(--limel-clickable-transform-speed, 0.4s) var(--limel-clickable-transform-timing-function, ease);cursor:pointer;color:var(--limel-theme-on-surface-color);background-color:rgb(var(--contrast-900))}button.remove:hover,button.remove:focus,button.remove:focus-visible{will-change:color, background-color, box-shadow, transform}button.remove:hover,button.remove:focus-visible{transform:translate3d(0, 0.01rem, 0);color:rgb(var(--color-white));background-color:rgb(var(--color-red-default))}button.remove:hover{box-shadow:var(--button-shadow-hovered)}button.remove:active{--limel-clickable-transform-timing-function:cubic-bezier( 0.83, -0.15, 0.49, 1.16 );transform:translate3d(0, 0.05rem, 0);box-shadow:var(--button-shadow-pressed)}button.remove:hover,button.remove:active{--limel-clickable-transition-speed:0.2s;--limel-clickable-transform-speed:0.16s}button.remove{cursor:pointer;height:1.25rem;width:1.25rem;border-radius:50%;background-repeat:no-repeat;background-position:center;background-size:0.75rem;background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2032%2032'%3E%3Cdefs/%3E%3Cpath%20fill='rgb(255,255,255)'%20d='M7.219%205.781L5.78%207.22%2014.563%2016%205.78%2024.781%207.22%2026.22%2016%2017.437l8.781%208.782%201.438-1.438L17.437%2016l8.782-8.781L24.78%205.78%2016%2014.563z'/%3E%3C/svg%3E\");position:absolute;top:0;left:0;opacity:0}:host(:hover) button.remove,:host(:focus) button.remove,:host(:focus-visible) button.remove,:host(:focus-within) button.remove,:host(:active) button.remove{animation:show 0.4s ease-in-out forwards}@keyframes show{0%{transform:scale(0.9);opacity:0}100%{transform:scale(1);opacity:1}}button.avatar,img,limel-icon{border-radius:var(--profile-picture-border-radius, 100vw)}limel-icon{width:calc(100% - 1rem);min-width:1rem;max-width:4rem;color:var(--limel-theme-text-secondary-on-background-color);margin:auto}img{object-fit:var(--limel-profile-picture-object-fit);width:100%;height:100%}:host(.has-image-error) img{border:1px dashed rgb(var(--contrast-600));background:url(\"data:image/svg+xml;charset=utf-8, <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8' style='fill-rule:evenodd;'><path fill='rgba(186,186,192,0.16)' d='M0 0h4v4H0zM4 4h4v4H4z'/></svg>\");background-size:0.5rem}limel-spinner{position:absolute;inset:0;margin:auto}limel-popover{position:absolute;inset:auto 0 0 auto;display:block;width:2.25rem;height:2.25rem}";export{c as limel_profile_picture}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as i,c as t,h as e,H as s}from"./p-BGxJfR2f.js";import{t as r}from"./p-EPnIW0K5.js";import{g as n,a,b as o,c as h}from"./p-BCq5M9TE.js";import{f as l}from"./p-u_sd2HMb.js";import"./p-Bu_YRgCL.js";import"./p-CgNJbSP4.js";const d={id:null,text:null,removable:!0},p=class{constructor(e){i(this,e),this.change=t(this,"change"),this.interact=t(this,"interact"),this.required=!1,this.disabled=!1,this.readonly=!1,this.invalid=!1,this.loading=!1,this.accept="*",this.language="en",this.dropZoneTip=()=>this.getTranslation("file.drag-and-drop-tips"),this.handleNewFiles=i=>{this.preventAndStop(i),this.change.emit(i.detail[0])},this.handleChipSetChange=i=>{i.stopPropagation();const t=0===i.detail.length?i.detail[0]:null;t||this.change.emit(t)},this.handleChipInteract=i=>{this.preventAndStop(i),this.interact.emit(i.detail.id)}}render(){return e(s,{key:"efdeb4e071a7bf484780eb239a1117a0e0fd0472","aria-busy":this.isBusy?"true":"false"},e("limel-file-dropzone",{key:"88d3924f5db23d1f3b07321bc7dc35663feeac8f",disabled:this.disabled||this.readonly||!!this.value,accept:this.accept,onFilesSelected:this.handleNewFiles},this.renderChipset()),this.renderDragAndDropTip(),this.renderSpinner())}get statusText(){var i,t,e;return null!==(e=null===(t=null===(i=this.value)||void 0===i?void 0:i.statusText)||void 0===t?void 0:t.trim())&&void 0!==e?e:""}get isBusy(){var i,t;return this.loading||Boolean(null===(i=this.value)||void 0===i?void 0:i.loading)||void 0!==(null===(t=this.value)||void 0===t?void 0:t.progress)}renderSpinner(){if(this.isBusy)return e("limel-spinner",null)}renderDragAndDropTip(){if(!(this.value||this.disabled||this.readonly||this.isBusy))return e("div",{class:"drag-and-drop-tip"},e("span",{class:"invisible-label-mock",role:"presentation"},this.label),e("span",{class:"tip"},this.dropZoneTip()))}getChipArray(){return this.value?[Object.assign(Object.assign({},d),{text:this.value.filename,id:this.value.id,icon:{name:h(this.value),title:o(this.value),color:a(this.value),backgroundColor:n(this.value)},badge:this.getBadge(),href:this.value.href,menuItems:this.value.menuItems,loading:this.value.loading,progress:this.value.progress,invalid:this.value.invalid})]:[]}getBadge(){return this.statusText?this.statusText:"number"==typeof this.value.size?l(this.value.size):void 0}renderChipset(){const i=e("limel-chip-set",{disabled:this.disabled,readonly:this.readonly,invalid:this.invalid,label:this.label,helperText:this.helperText,leadingIcon:"upload_to_cloud",language:this.language,onChange:this.handleChipSetChange,onInteract:this.handleChipInteract,required:this.required,type:"input",value:this.getChipArray()});return this.value?i:e("limel-file-input",{accept:this.accept,disabled:this.disabled||this.readonly},i)}preventAndStop(i){i.stopPropagation(),i.preventDefault()}getTranslation(i){return r.get(i,this.language)}};p.style='@charset "UTF-8";:host(limel-file){--badge-max-width:auto;position:relative}.drag-and-drop-tip{pointer-events:none;position:absolute;box-sizing:border-box;margin:0.25rem;inset:0;display:flex;align-items:center;justify-content:flex-end;flex-wrap:nowrap;border-radius:0.25rem;border:1px dashed rgb(var(--contrast-700));padding:0 0.5rem}.drag-and-drop-tip .invisible-label-mock{flex-shrink:0;opacity:0;padding-right:1rem;padding-left:1.5rem}.drag-and-drop-tip .tip{font-size:smaller;color:var(--limel-theme-text-secondary-on-background-color);height:auto;max-height:3rem;line-height:1;display:-webkit-box;overflow:hidden;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}limel-spinner{pointer-events:none;position:absolute;inset:0 0.375rem 0 auto;margin:auto}';export{p as limel_file}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
async function n(n,o){const{width:e,height:r,fit:a="cover",type:i="image/jpeg",quality:c=.85,rename:s=n=>t(n,i)}=o,l=await async function(n){var t,o;if("function"==typeof globalThis.createImageBitmap)try{return await globalThis.createImageBitmap(n,{imageOrientation:"from-image"})}catch(n){"production"!==(null===(o=null===(t=globalThis.process)||void 0===t?void 0:t.env)||void 0===o?void 0:o.NODE_ENV)&&"undefined"!=typeof console&&"function"==typeof console.debug&&console.debug("createImageBitmap failed, falling back to HTMLImageElement:",n)}return await async function(n){var t;const o=URL.createObjectURL(n);try{const n=new Image;return n.decoding="sync",n.src=o,await(null===(t=n.decode)||void 0===t?void 0:t.call(n).catch((()=>{}))),n.complete||await new Promise(((t,o)=>{const e=()=>{n.removeEventListener("load",r),n.removeEventListener("error",a)},r=()=>{e(),t()},a=n=>{e(),o(n)};n.addEventListener("load",r),n.addEventListener("error",a)})),n}finally{URL.revokeObjectURL(o)}}(n)}(n),{sx:u,sy:d,sw:f,sh:y,dx:w,dy:g,dw:h,dh:m}=function(n,t,o,e,r){const a=n/t,i=o/e;if("cover"===r){let r,c;return a>i?(c=t,r=t*i):(r=n,c=n/i),{sx:(n-r)/2,sy:(t-c)/2,sw:r,sh:c,dx:0,dy:0,dw:o,dh:e}}let c,s;a>i?(c=o,s=o/a):(s=e,c=e*a);return{sx:0,sy:0,sw:n,sh:t,dx:(o-c)/2,dy:(e-s)/2,dw:c,dh:s}}(l.width,l.height,e,r,a),p=function(n,t){if(function(){try{return"function"==typeof globalThis.OffscreenCanvas}catch(n){return!1}}())return new globalThis.OffscreenCanvas(n,t);const o=document.createElement("canvas");return o.width=n,o.height=t,o}(e,r),v=function(n){const t=n.getContext("2d",{alpha:!0});if(!t)throw new Error("2D canvas context not available");return t}(p);v.clearRect(0,0,e,r),v.drawImage(l,u,d,f,y,w,g,h,m);const b=await function(n,t,o){return"convertToBlob"in n?n.convertToBlob({type:t,quality:o}):new Promise(((e,r)=>{n.toBlob((n=>{n?e(n):r(new Error("Failed to create blob from canvas"))}),t,o)}))}(p,i,c),x=s(n.name);return new File([b],x,{type:i})}function t(n,t){const o="image/png"===t?"png":"jpg",e=n.lastIndexOf(".");return`${e>0?n.slice(0,e):n}.${o}`}export{n as r}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
const e={da:{remove:"Fjern",save:"Gem",cancel:"Annullér",loading:"Indlæser…",value:"Værdi",items:"Elementer","action-bar":"Handlingslinje","callout.note":"Bemærk","callout.important":"Vigtig","callout.tip":"Tip","callout.caution":"Advarsel","callout.warning":"Advarsel","code-editor":"kodeeditor","code-editor.copy":"Kopier","code-editor.copied":"Kopieret","code-editor.copy-failed":"Kunne ikke kopiere","code-editor.copy-aria-label":"Kopier { label } indhold","code-editor.copied-aria-label":"Kopieret { label } indhold","code-editor.copy-failed-aria-label":"Kunne ikke kopiere { label } indhold","collapsible-section.open":"Åbn { header } sektion","collapsible-section.close":"Luk { header } sektion","date-picker.today":"Idag","date-picker.month.heading":"Måned","date-picker.quarter.heading":"Kvartal","date-picker.year.heading":"År","drag-handle.drag-handle":"Trækgreb","drag-handle.drag-to-reorder":"Træk for at omarrangere","chip-set.clear-all":"Ryd alle","snackbar.dismiss":"Luk","file.drag-and-drop-tips":"Træk & slip filen her, eller klik for at gennemse.","file-viewer.message.unsupported-filetype":"Kan ikke vise en forhåndsvisning af denne filtype.","file-viewer.message.try-other-options":"Hent filen eller åbn den i en ny fane.","file-viewer.message.file-not-found":"Filen blev ikke fundet","file-viewer.download":"Hent","file-viewer.exit-fullscreen":"Afslut fuldskærm","file-viewer.open-in-fullscreen":"Åbn i fuld skærm","file-viewer.open-in-new-tab":"Åbn i en ny fane","file-viewer.more-actions":"Mere…","file-viewer.email.subject":"Emne","file-viewer.email.from":"Fra","file-viewer.email.to":"Til","file-viewer.email.cc":"Kopi","file-viewer.email.date":"Dato","file-viewer.email.attachments":"Vedhæftninger","file-viewer.email.attachment.unnamed":"Vedhæftning uden navn","file-viewer.email.remote-images.warning":"Billeder indlæses ikke for at beskytte dit privatliv.","file-viewer.email.remote-images.warning.description":"Mange e-mails indeholder billeder, der hostes på eksterne servere.\nNår billeder indlæses, anmoder din enhed dem fra afsenderens server.\nDet kan afsløre for afsenderen, at du har åbnet beskeden, hvornår du åbnede den, samt metadata såsom din IP-adresse og oplysninger om enhed/browser.\n\nDu kan fortsætte med at blokere billeder (e-mailen kan se ufuldstændig ud) eller indlæse dem, hvis du stoler på afsenderen.","file-viewer.email.remote-images.load":"Indlæs billeder","editor-menu.bold":"Fed","editor-menu.italic":"Kursiv","editor-menu.strikethrough":"Gennemstreget","editor-menu.h1":"Overskrift 1","editor-menu.h2":"Overskrift 2","editor-menu.h3":"Overskrift 3","editor-menu.bulleted-list":"Punktliste","editor-menu.numbered-list":"Nummereret liste","editor-menu.blockquote":"Blokcitat","editor-menu.link":"Tilføj link","editor-link-menu.text":"Tekst","editor-link-menu.link":"Link","editor-menu.code-block":"Kodeblok","editor-menu.code":"Kode","editor-image-view.loading":"Indlæser billede: { filename }...","editor-image-view.failed":"Noget gik galt med billede: { filename }","editor-image-view.success":"Billede: { filename } er klar","editor-image-view.resize-handle":"Træk til højre eller venstre for at ændre størrelsen på billedet","progress-bar":"Fremskridtsindikator","ai-avatar.label":"AI-avatar","ai-avatar.thinking":"tænker","ai-avatar.mode.active":"aktiv","ai-avatar.mode.thinking":"tænker","ai-avatar.mode.typing":"skriver","ai-avatar.mode.working":"arbejder","ai-avatar.mode.waiting":"venter på input","table.select-all":"Vælg alle rækker","table.select-row":"Vælg denne række","code-diff.table-label":"Kodesammenligning","code-diff.no-differences":"Ingen forskelle","code-diff.no-differences-found":"Ingen forskelle fundet","code-diff.copy-old-version":"Kopiér gammel version til udklipsholder","code-diff.copied":"Kopieret!","code-diff.copied-to-clipboard":"Kopieret til udklipsholder","code-diff.copy-change":"Kopiér gammel version af denne ændring","code-diff.search":"Søg i fjernede linjer","code-diff.previous-match":"Forrige match","code-diff.next-match":"Næste match","code-diff.close-search":"Luk søgning","code-diff.no-matches":"Ingen match","code-diff.match-count":"{ current } af { total }","code-diff.hidden-lines":"··· { count } skjulte linjer ···","code-diff.show-hidden-lines":"Vis { count } skjulte linjer","code-diff.expanded-lines":"Skjulte linjer udvidet","code-diff.expanded-lines-end":"Skjulte linjer i slutningen udvidet","code-diff.line-added":"Tilføjet","code-diff.line-removed":"Fjernet","code-diff.line-context":"Uændret","code-diff.old-line":"Gammel linje { number }","code-diff.new-line":"Ny linje { number }","code-diff.diff-addition":"{ count } tilføjelse","code-diff.diff-additions":"{ count } tilføjelser","code-diff.diff-deletion":"{ count } sletning","code-diff.diff-deletions":"{ count } sletninger","code-diff.old-heading":"Original","code-diff.new-heading":"Ændret","code-diff.diff-summary":"Diff: { parts }. Brug piletasterne til at navigere.","profile-picture.remove":"Fjern valgt billede","profile-picture.unsupported-preview.title":"Ikke-understøttet billedformat","profile-picture.unsupported-preview.description":"Vi kan ikke vise det valgte billede i denne browser. Vælg venligst en anden billedfil.","picker.results-matching":'Resultater der matcher "{ query }"',"picker.no-matching-results":'Ingen resultater der matcher "{ query }"'},de:{remove:"Entfernen",save:"Speichern",cancel:"Abbrechen",loading:"Laden…",value:"Wert",items:"Elemente","action-bar":"Aktionsleiste","callout.note":"Hinweis","callout.important":"Wichtig","callout.tip":"Tipp","callout.caution":"Vorsicht","callout.warning":"Warnung","code-editor":"Code-Editor","code-editor.copy":"Kopieren","code-editor.copied":"Kopiert","code-editor.copy-failed":"Kopieren fehlgeschlagen","code-editor.copy-aria-label":"{ label } Inhalt kopieren","code-editor.copied-aria-label":"{ label } Inhalt kopiert","code-editor.copy-failed-aria-label":"{ label } Inhalt konnte nicht kopiert werden","collapsible-section.open":"{ header } Bereich öffnen","collapsible-section.close":"{ header } Bereich schließen","date-picker.today":"Heute","date-picker.month.heading":"Monat","date-picker.quarter.heading":"Quartal","date-picker.year.heading":"Jahr","drag-handle.drag-handle":"Ziehgriff","drag-handle.drag-to-reorder":"Zum Neuordnen ziehen","chip-set.clear-all":"Alles löschen","snackbar.dismiss":"Schließen","file.drag-and-drop-tips":"Ziehen Sie Ihre Datei hierher oder klicken Sie, um zu durchsuchen.","file-viewer.message.unsupported-filetype":"Für diesen Dateityp kann keine Vorschau angezeigt werden.","file-viewer.message.try-other-options":"Laden Sie die Datei herunter oder öffnen Sie sie in einem neuen Tab.","file-viewer.message.file-not-found":"Datei nicht gefunden","file-viewer.download":"Herunterladen","file-viewer.exit-fullscreen":"Vollbildmodus beenden","file-viewer.open-in-fullscreen":"Im Vollbildmodus öffnen","file-viewer.open-in-new-tab":"In einem neuen Tab öffnen","file-viewer.more-actions":"Mehr…","file-viewer.email.subject":"Betreff","file-viewer.email.from":"Von","file-viewer.email.to":"An","file-viewer.email.cc":"Cc","file-viewer.email.date":"Datum","file-viewer.email.attachments":"Anhänge","file-viewer.email.attachment.unnamed":"Unbenannter Anhang","file-viewer.email.remote-images.warning":"Bilder werden nicht geladen, um Ihre Privatsphäre zu schützen.","file-viewer.email.remote-images.warning.description":"Viele E-Mails enthalten Bilder, die auf externen Servern gehostet werden.\nWenn Bilder geladen werden, fordert Ihr Gerät sie vom Server des Absenders an.\nDadurch kann der Absender erfahren, dass Sie die Nachricht geöffnet haben, wann Sie sie geöffnet haben, sowie Metadaten wie Ihre IP-Adresse und Informationen zu Gerät/Browser.\n\nSie können Bilder weiterhin blockieren (die E-Mail kann unvollständig aussehen) oder sie laden, wenn Sie dem Absender vertrauen.","file-viewer.email.remote-images.load":"Bilder laden","editor-menu.bold":"Fett","editor-menu.italic":"Kursiv","editor-menu.strikethrough":"Durchgestrichen","editor-menu.h1":"Überschrift 1","editor-menu.h2":"Überschrift 2","editor-menu.h3":"Überschrift 3","editor-menu.bulleted-list":"Aufzählungsliste","editor-menu.numbered-list":"Nummerierte Liste","editor-menu.blockquote":"Zitatblock","editor-menu.link":"Link","editor-link-menu.text":"Text","editor-link-menu.link":"Link","editor-menu.code-block":"Codeblock","editor-menu.code":"Code","editor-image-view.loading":"Lade Bild: { filename }...","editor-image-view.failed":"Beim Laden des Bildes ist etwas schief gelaufen: { filename }","editor-image-view.success":"Bild: { filename } ist bereit","editor-image-view.resize-handle":"Ziehen Sie nach rechts oder links, um die Größe des Bildes zu ändern.","progress-bar":"Fortschrittsbalken","ai-avatar.label":"KI-Avatar","ai-avatar.thinking":"denkt","ai-avatar.mode.active":"aktiv","ai-avatar.mode.thinking":"denkt","ai-avatar.mode.typing":"tippt","ai-avatar.mode.working":"arbeitet","ai-avatar.mode.waiting":"wartet auf Eingabe","table.select-all":"Alle Zeilen auswählen","table.select-row":"Diese Zeile auswählen","code-diff.table-label":"Code-Vergleich","code-diff.no-differences":"Keine Unterschiede","code-diff.no-differences-found":"Keine Unterschiede gefunden","code-diff.copy-old-version":"Alte Version in Zwischenablage kopieren","code-diff.copied":"Kopiert!","code-diff.copied-to-clipboard":"In die Zwischenablage kopiert","code-diff.copy-change":"Alte Version dieser Änderung kopieren","code-diff.search":"Entfernte Zeilen durchsuchen","code-diff.previous-match":"Vorherige Übereinstimmung","code-diff.next-match":"Nächste Übereinstimmung","code-diff.close-search":"Suche schließen","code-diff.no-matches":"Keine Übereinstimmungen","code-diff.match-count":"{ current } von { total }","code-diff.hidden-lines":"··· { count } ausgeblendete Zeilen ···","code-diff.show-hidden-lines":"{ count } ausgeblendete Zeilen anzeigen","code-diff.expanded-lines":"Ausgeblendete Zeilen eingeblendet","code-diff.expanded-lines-end":"Ausgeblendete Zeilen am Ende eingeblendet","code-diff.line-added":"Hinzugefügt","code-diff.line-removed":"Entfernt","code-diff.line-context":"Unverändert","code-diff.old-line":"Alte Zeile { number }","code-diff.new-line":"Neue Zeile { number }","code-diff.diff-addition":"{ count } Hinzufügung","code-diff.diff-additions":"{ count } Hinzufügungen","code-diff.diff-deletion":"{ count } Löschung","code-diff.diff-deletions":"{ count } Löschungen","code-diff.old-heading":"Original","code-diff.new-heading":"Geändert","code-diff.diff-summary":"Diff: { parts }. Pfeiltasten zum Navigieren verwenden.","profile-picture.remove":"Ausgewähltes Bild entfernen","profile-picture.unsupported-preview.title":"Nicht unterstütztes Bildformat","profile-picture.unsupported-preview.description":"Wir können das ausgewählte Bild in diesem Browser nicht anzeigen. Bitte wählen Sie eine andere Bilddatei.","picker.results-matching":'Ergebnisse passend zu "{ query }"',"picker.no-matching-results":'Keine Ergebnisse passend zu "{ query }"'},en:{remove:"Remove",save:"Save",cancel:"Cancel",loading:"Loading…",value:"Value",items:"Items","action-bar":"Action bar","callout.note":"Note","callout.important":"Important","callout.tip":"Tip","callout.caution":"Caution","callout.warning":"Warning","code-editor":"code editor","code-editor.copy":"Copy","code-editor.copied":"Copied","code-editor.copy-failed":"Failed to copy","code-editor.copy-aria-label":"Copy { label } content","code-editor.copied-aria-label":"Copied { label } content","code-editor.copy-failed-aria-label":"Failed to copy { label } content","collapsible-section.open":"Open { header } section","collapsible-section.close":"Close { header } section","date-picker.today":"Today","date-picker.month.heading":"Month","date-picker.quarter.heading":"Quarter","date-picker.year.heading":"Year","drag-handle.drag-handle":"Drag handle","drag-handle.drag-to-reorder":"Drag to reorder","chip-set.clear-all":"Clear all","snackbar.dismiss":"Dismiss","file.drag-and-drop-tips":"Drag & drop your file here, or click to browse.","file-viewer.message.unsupported-filetype":"Cannot display a preview for this file type.","file-viewer.message.try-other-options":"Download the file or open it in a new tab.","file-viewer.message.file-not-found":"File not found","file-viewer.download":"Download","file-viewer.exit-fullscreen":"Exit fullscreen","file-viewer.open-in-fullscreen":"Open in fullscreen","file-viewer.open-in-new-tab":"Open in a new tab","file-viewer.more-actions":"More…","file-viewer.email.subject":"Subject","file-viewer.email.from":"From","file-viewer.email.to":"To","file-viewer.email.cc":"Cc","file-viewer.email.date":"Date","file-viewer.email.attachments":"Attachments","file-viewer.email.attachment.unnamed":"Unnamed attachment","file-viewer.email.remote-images.warning":"Images aren't loaded to protect your privacy.","file-viewer.email.remote-images.warning.description":"Many emails include images hosted on external servers.\nWhen images are loaded, your device requests them from the sender’s server.\nThis may reveal to the sender that you opened the message, when you opened it, and metadata such as your IP address and device/browser information.\n\nYou can keep images blocked (the email may look incomplete), or load them if you trust the sender.","file-viewer.email.remote-images.load":"Load images","editor-menu.bold":"Bold","editor-menu.italic":"Italic","editor-menu.strikethrough":"Strikethrough","editor-menu.h1":"Heading 1","editor-menu.h2":"Heading 2","editor-menu.h3":"Heading 3","editor-menu.bulleted-list":"Bulleted list","editor-menu.numbered-list":"Numbered list","editor-menu.blockquote":"Blockquote","editor-menu.link":"Link","editor-link-menu.text":"Text","editor-link-menu.link":"Link","editor-menu.code-block":"Code block","editor-menu.code":"Code","editor-image-view.loading":"Loading image: { filename }...","editor-image-view.failed":"Something went wrong with image: { filename }","editor-image-view.success":"Image: { filename } is ready","editor-image-view.resize-handle":"Drag to right or left to resize the image","progress-bar":"Progress bar","ai-avatar.label":"AI Avatar","ai-avatar.thinking":"thinking","ai-avatar.mode.active":"active","ai-avatar.mode.thinking":"thinking","ai-avatar.mode.typing":"typing","ai-avatar.mode.working":"working","ai-avatar.mode.waiting":"waiting for input","table.select-all":"Select all rows","table.select-row":"Select this row","code-diff.table-label":"Code diff","code-diff.no-differences":"No differences","code-diff.no-differences-found":"No differences found","code-diff.copy-old-version":"Copy old version to clipboard","code-diff.copied":"Copied!","code-diff.copied-to-clipboard":"Copied to clipboard","code-diff.copy-change":"Copy old version of this change","code-diff.search":"Search removed lines","code-diff.previous-match":"Previous match","code-diff.next-match":"Next match","code-diff.close-search":"Close search","code-diff.no-matches":"No matches","code-diff.match-count":"{ current } of { total }","code-diff.hidden-lines":"··· { count } hidden lines ···","code-diff.show-hidden-lines":"Show { count } hidden lines","code-diff.expanded-lines":"Expanded hidden lines","code-diff.expanded-lines-end":"Expanded hidden lines at end of diff","code-diff.line-added":"Added","code-diff.line-removed":"Removed","code-diff.line-context":"Unchanged","code-diff.old-line":"Old line { number }","code-diff.new-line":"New line { number }","code-diff.diff-addition":"{ count } addition","code-diff.diff-additions":"{ count } additions","code-diff.diff-deletion":"{ count } deletion","code-diff.diff-deletions":"{ count } deletions","code-diff.old-heading":"Original","code-diff.new-heading":"Modified","code-diff.diff-summary":"Diff: { parts }. Use arrow keys to navigate lines.","profile-picture.remove":"Remove selected picture","profile-picture.unsupported-preview.title":"Unsupported image format","profile-picture.unsupported-preview.description":"We cannot display the selected image in this browser. Please select a different image file.","picker.results-matching":'Results matching "{ query }"',"picker.no-matching-results":'No results matching "{ query }"'},fi:{remove:"Poista",save:"Tallenna",cancel:"Peruuta",loading:"Ladataan…",value:"Arvo",items:"Kohteet","action-bar":"Toimintopalkki","callout.note":"Huomio","callout.important":"Tärkeää","callout.tip":"Vinkki","callout.caution":"Varoitus","callout.warning":"Varoitus","code-editor":"koodieditori","code-editor.copy":"Kopioi","code-editor.copied":"Kopioitu","code-editor.copy-failed":"Kopiointi epäonnistui","code-editor.copy-aria-label":"Kopioi { label } sisältö","code-editor.copied-aria-label":"Kopioitu { label } sisältö","code-editor.copy-failed-aria-label":"Kopiointi epäonnistui { label } sisältö","collapsible-section.open":"Avaa { header } osio","collapsible-section.close":"Sulje { header } osio","date-picker.today":"Tänään","date-picker.month.heading":"Kuukausi","date-picker.quarter.heading":"Vuosineljännes","date-picker.year.heading":"Vuosi","drag-handle.drag-handle":"Raahauskahva","drag-handle.drag-to-reorder":"Raahaa järjestelläksesi","chip-set.clear-all":"Tyhjennä kaikki","snackbar.dismiss":"Sulje","file.drag-and-drop-tips":"Vedä & pudota tiedostosi tähän, tai napsauta selataksesi.","file-viewer.message.unsupported-filetype":"Esikatselua ei voi näyttää tälle tiedostotyypille.","file-viewer.message.try-other-options":"Lataa tiedosto tai avaa se uudessa välilehdessä.","file-viewer.message.file-not-found":"Tiedostoa ei löydy","file-viewer.download":"Ladata","file-viewer.exit-fullscreen":"Poistu koko näytöstä","file-viewer.open-in-fullscreen":"Avaa koko näytössä","file-viewer.open-in-new-tab":"Avaa uudella välilehdellä","file-viewer.more-actions":"Lisää…","file-viewer.email.subject":"Aihe","file-viewer.email.from":"Lähettäjä","file-viewer.email.to":"Vastaanottaja","file-viewer.email.cc":"Kopio","file-viewer.email.date":"Päiväys","file-viewer.email.attachments":"Liitteet","file-viewer.email.attachment.unnamed":"Nimetön liite","file-viewer.email.remote-images.warning":"Kuvia ei ladata yksityisyytesi suojaamiseksi.","file-viewer.email.remote-images.warning.description":"Monet sähköpostit sisältävät kuvia, jotka sijaitsevat ulkoisilla palvelimilla.\nKun kuvat ladataan, laitteesi pyytää ne lähettäjän palvelimelta.\nTämä voi paljastaa lähettäjälle, että avasit viestin, milloin avasit sen, sekä metatietoja, kuten IP-osoitteesi ja tiedot laitteesta/selaimesta.\n\nVoit pitää kuvat estettyinä (sähköposti voi näyttää puutteelliselta) tai ladata ne, jos luotat lähettäjään.","file-viewer.email.remote-images.load":"Lataa kuvat","editor-menu.bold":"Lihavoitu","editor-menu.italic":"Kursivoitu","editor-menu.strikethrough":"Yliviivaus","editor-menu.h1":"Otsikkotaso 1","editor-menu.h2":"Otsikkotaso 2","editor-menu.h3":"Otsikkotaso 3","editor-menu.bulleted-list":"Luettelomerkitty lista","editor-menu.numbered-list":"Numeroitu lista","editor-menu.blockquote":"Lohkoteksti","editor-menu.link":"Lisää linkki","editor-link-menu.text":"Teksti","editor-link-menu.link":"Linkki","editor-menu.code-block":"Koodilohko","editor-menu.code":"Koodi","editor-image-view.loading":"Ladataan kuvaa: { filename }...","editor-image-view.failed":"Jokin meni pieleen kuvan kanssa: { filename }","editor-image-view.success":"Kuva: { filename } on valmis","editor-image-view.resize-handle":"Vedä oikealle tai vasemmalle muuttaaksesi kuvan kokoa","progress-bar":"Edistymispalkki","ai-avatar.label":"Tekoälyavatar","ai-avatar.thinking":"ajattelee","ai-avatar.mode.active":"aktiivinen","ai-avatar.mode.thinking":"ajattelee","ai-avatar.mode.typing":"kirjoittaa","ai-avatar.mode.working":"työskentelee","ai-avatar.mode.waiting":"odottaa syötettä","table.select-all":"Valitse kaikki rivit","table.select-row":"Valitse tämä rivi","code-diff.table-label":"Koodin vertailu","code-diff.no-differences":"Ei eroja","code-diff.no-differences-found":"Eroja ei löytynyt","code-diff.copy-old-version":"Kopioi vanha versio leikepöydälle","code-diff.copied":"Kopioitu!","code-diff.copied-to-clipboard":"Kopioitu leikepöydälle","code-diff.copy-change":"Kopioi tämän muutoksen vanha versio","code-diff.search":"Hae poistetuista riveistä","code-diff.previous-match":"Edellinen osuma","code-diff.next-match":"Seuraava osuma","code-diff.close-search":"Sulje haku","code-diff.no-matches":"Ei osumia","code-diff.match-count":"{ current } / { total }","code-diff.hidden-lines":"··· { count } piilotettua riviä ···","code-diff.show-hidden-lines":"Näytä { count } piilotetut rivit","code-diff.expanded-lines":"Piilotetut rivit näytetty","code-diff.expanded-lines-end":"Lopun piilotetut rivit näytetty","code-diff.line-added":"Lisätty","code-diff.line-removed":"Poistettu","code-diff.line-context":"Muuttumaton","code-diff.old-line":"Vanha rivi { number }","code-diff.new-line":"Uusi rivi { number }","code-diff.diff-addition":"{ count } lisäys","code-diff.diff-additions":"{ count } lisäystä","code-diff.diff-deletion":"{ count } poisto","code-diff.diff-deletions":"{ count } poistoa","code-diff.old-heading":"Alkuperäinen","code-diff.new-heading":"Muokattu","code-diff.diff-summary":"Diff: { parts }. Käytä nuolinäppäimiä navigointiin.","profile-picture.remove":"Poista valittu kuva","profile-picture.unsupported-preview.title":"Tiedostomuoto ei ole tuettu","profile-picture.unsupported-preview.description":"Emme voi näyttää valittua kuvaa tässä selaimessa. Valitse jokin toinen kuvatiedosto.","picker.results-matching":'Hakua "{ query }" vastaavat tulokset',"picker.no-matching-results":'Ei hakua "{ query }" vastaavia tuloksia'},fr:{remove:"Supprimer",save:"Enregistrer",cancel:"Annuler",loading:"Chargement…",value:"Valeur",items:"Éléments","action-bar":"Barre d'actions","callout.note":"Note","callout.important":"Important","callout.tip":"Conseil","callout.caution":"Prudence","callout.warning":"Avertissement","code-editor":"éditeur de code","code-editor.copy":"Copie","code-editor.copied":"Copié ","code-editor.copy-failed":"Échec de la copie","code-editor.copy-aria-label":"Copier le contenu { label }","code-editor.copied-aria-label":"Contenu { label } copié","code-editor.copy-failed-aria-label":"Échec de la copie du contenu { label }","collapsible-section.open":"Ouvrir la section { header }","collapsible-section.close":"Fermer la section { header }","date-picker.today":"Aujourd'hui","date-picker.month.heading":"Mois","date-picker.quarter.heading":"Trimestre","date-picker.year.heading":"Année","drag-handle.drag-handle":"Poignée de déplacement","drag-handle.drag-to-reorder":"Glissez pour réorganiser","chip-set.clear-all":"Tout effacer","snackbar.dismiss":"Fermer","file.drag-and-drop-tips":"Glissez-déposez votre fichier ici, ou cliquez pour parcourir.","file-viewer.message.unsupported-filetype":"Impossible d'afficher un aperçu pour ce type de fichier.","file-viewer.message.try-other-options":"Téléchargez le fichier ou ouvrez-le dans un nouvel onglet.","file-viewer.message.file-not-found":"Fichier introuvable","file-viewer.download":"Télécharger","file-viewer.exit-fullscreen":"Quitter le mode plein écran","file-viewer.open-in-fullscreen":"Ouvrir en plein écran","file-viewer.open-in-new-tab":"Ouvrir dans un nouvel onglet","file-viewer.more-actions":"Plus…","file-viewer.email.subject":"Objet","file-viewer.email.from":"De","file-viewer.email.to":"À","file-viewer.email.cc":"Cc","file-viewer.email.date":"Date","file-viewer.email.attachments":"Pièces jointes","file-viewer.email.attachment.unnamed":"Pièce jointe sans nom","file-viewer.email.remote-images.warning":"Les images ne sont pas chargées afin de protéger votre vie privée.","file-viewer.email.remote-images.warning.description":"De nombreux e-mails contiennent des images hébergées sur des serveurs externes.\nLorsque les images sont chargées, votre appareil les demande au serveur de l'expéditeur.\nCela peut révéler à l'expéditeur que vous avez ouvert le message, quand vous l'avez ouvert, ainsi que des métadonnées telles que votre adresse IP et des informations sur votre appareil/navigateur.\n\nVous pouvez laisser les images bloquées (l'e-mail peut sembler incomplet) ou les charger si vous faites confiance à l'expéditeur.","file-viewer.email.remote-images.load":"Charger les images","editor-menu.bold":"Gras","editor-menu.italic":"Italique","editor-menu.strikethrough":"Barré","editor-menu.h1":"Titre 1","editor-menu.h2":"Titre 2","editor-menu.h3":"Titre 3","editor-menu.bulleted-list":"Liste à puces","editor-menu.numbered-list":"Liste numérotée","editor-menu.blockquote":"Bloc de citation","editor-menu.link":"Lien","editor-link-menu.text":"Texte","editor-link-menu.link":"Lien","editor-menu.code-block":"Bloc de code","editor-menu.code":"Code","editor-image-view.loading":"Chargement de l'image: { filename }...","editor-image-view.failed":"Un problème est survenu avec l'image: { filename }","editor-image-view.success":"Image: { filename } est prête","editor-image-view.resize-handle":"Faites glisser vers la droite ou la gauche pour redimensionner l'image","progress-bar":"Barre de progression","ai-avatar.label":"Avatar IA","ai-avatar.thinking":"en réflexion","ai-avatar.mode.active":"actif","ai-avatar.mode.thinking":"en réflexion","ai-avatar.mode.typing":"en train d’écrire","ai-avatar.mode.working":"au travail","ai-avatar.mode.waiting":"en attente de saisie","table.select-all":"Sélectionner toutes les lignes","table.select-row":"Sélectionner cette ligne","code-diff.table-label":"Comparaison de code","code-diff.no-differences":"Aucune différence","code-diff.no-differences-found":"Aucune différence trouvée","code-diff.copy-old-version":"Copier l’ancienne version dans le presse-papiers","code-diff.copied":"Copié !","code-diff.copied-to-clipboard":"Copié dans le presse-papiers","code-diff.copy-change":"Copier l’ancienne version de cette modification","code-diff.search":"Rechercher dans les lignes supprimées","code-diff.previous-match":"Correspondance précédente","code-diff.next-match":"Correspondance suivante","code-diff.close-search":"Fermer la recherche","code-diff.no-matches":"Aucune correspondance","code-diff.match-count":"{ current } sur { total }","code-diff.hidden-lines":"··· { count } lignes masquées ···","code-diff.show-hidden-lines":"Afficher { count } lignes masquées","code-diff.expanded-lines":"Lignes masquées affichées","code-diff.expanded-lines-end":"Lignes masquées à la fin affichées","code-diff.line-added":"Ajouté","code-diff.line-removed":"Supprimé","code-diff.line-context":"Inchangé","code-diff.old-line":"Ancienne ligne { number }","code-diff.new-line":"Nouvelle ligne { number }","code-diff.diff-addition":"{ count } ajout","code-diff.diff-additions":"{ count } ajouts","code-diff.diff-deletion":"{ count } suppression","code-diff.diff-deletions":"{ count } suppressions","code-diff.old-heading":"Original","code-diff.new-heading":"Modifié","code-diff.diff-summary":"Diff : { parts }. Utilisez les touches fléchées pour naviguer.","profile-picture.remove":"Supprimer l’image sélectionnée","profile-picture.unsupported-preview.title":"Format d'image non pris en charge","profile-picture.unsupported-preview.description":"Nous ne pouvons pas afficher l'image sélectionnée dans ce navigateur. Veuillez sélectionner un autre fichier image.","picker.results-matching":"Résultats correspondant à « { query } »","picker.no-matching-results":"Aucun résultat correspondant à « { query } »"},no:{remove:"Fjerne",save:"Lagre",cancel:"Avbryt",loading:"Laster…",value:"Verdi",items:"Elementer","action-bar":"Handlingsfelt","callout.note":"Note","callout.important":"Viktig","callout.tip":"Tip","callout.caution":"Advarsel","callout.warning":"Advarsel","code-editor":"kodeeditor","code-editor.copy":"Kopier","code-editor.copied":"Kopiert","code-editor.copy-failed":"Kunne ikke kopiere","code-editor.copy-aria-label":"Kopier { label } innhold","code-editor.copied-aria-label":"Kopiert { label } innhold","code-editor.copy-failed-aria-label":"Kunne ikke kopiere { label } innhold","collapsible-section.open":"Åpne { header } seksjon","collapsible-section.close":"Lukk { header } seksjon","date-picker.today":"I dag","date-picker.month.heading":"Måned","date-picker.quarter.heading":"Kvartal","date-picker.year.heading":"År","drag-handle.drag-handle":"Dra-håndtak","drag-handle.drag-to-reorder":"Dra for å omorganisere","chip-set.clear-all":"Fjern alle","file.drag-and-drop-tips":"Dra & slipp filen her, eller klikk for å bla gjennom.","file-viewer.message.unsupported-filetype":"Kan ikke vise en forhåndsvisning av denne filtypen.","file-viewer.message.try-other-options":"Last ned filen eller åpne den i en ny fane.","file-viewer.message.file-not-found":"Filen ble ikke funnet","file-viewer.download":"Nedlasting","file-viewer.exit-fullscreen":"Gå ut av fullskjerm","file-viewer.open-in-fullscreen":"Åpne i fullskjerm","file-viewer.open-in-new-tab":"Åpne i en ny fane","file-viewer.more-actions":"Mer…","file-viewer.email.subject":"Emne","file-viewer.email.from":"Fra","file-viewer.email.to":"Til","file-viewer.email.cc":"Kopi","file-viewer.email.date":"Dato","file-viewer.email.attachments":"Vedlegg","file-viewer.email.attachment.unnamed":"Vedlegg uten navn","file-viewer.email.remote-images.warning":"Bilder lastes ikke inn for å beskytte personvernet ditt.","file-viewer.email.remote-images.warning.description":"Mange e-poster inneholder bilder som ligger på eksterne servere.\nNår bilder lastes inn, henter enheten din dem fra avsenderens server.\nDette kan avsløre for avsenderen at du åpnet meldingen, når du åpnet den, og metadata som IP-adressen din og informasjon om enhet/nettleser.\n\nDu kan fortsette å blokkere bilder (e-posten kan se ufullstendig ut), eller laste dem inn hvis du stoler på avsenderen.","file-viewer.email.remote-images.load":"Last inn bilder","editor-menu.bold":"Fet","editor-menu.italic":"Kursiv","editor-menu.strikethrough":"Gjennomstreking","editor-menu.h1":"Overskrift 1","editor-menu.h2":"Overskrift 2","editor-menu.h3":"Overskrifts 3","editor-menu.bulleted-list":"Punktliste","editor-menu.numbered-list":"Nummerert liste","editor-menu.blockquote":"Blokksitat","editor-menu.link":"Legg til lenke","editor-link-menu.text":"Tekst","editor-link-menu.link":"Lenke","editor-menu.code-block":"Kodeblokk","editor-menu.code":"Kode","editor-image-view.loading":"Laster bilde: { filename }...","editor-image-view.failed":"Noe gikk galt med bildet: { filename }","editor-image-view.success":"Bilde: { filename } er klart","editor-image-view.resize-handle":"Dra til høyre eller venstre for å endre størrelsen på bildet","progress-bar":"Fremdriftsindikator","snackbar.dismiss":"Lukk","ai-avatar.label":"KI-avatar","ai-avatar.thinking":"tenker","ai-avatar.mode.active":"aktiv","ai-avatar.mode.thinking":"tenker","ai-avatar.mode.typing":"skriver","ai-avatar.mode.working":"arbeider","ai-avatar.mode.waiting":"venter på inndata","table.select-all":"Velg alle rader","table.select-row":"Velg denne raden","code-diff.table-label":"Kodesammenligning","code-diff.no-differences":"Ingen forskjeller","code-diff.no-differences-found":"Ingen forskjeller funnet","code-diff.copy-old-version":"Kopier gammel versjon til utklippstavlen","code-diff.copied":"Kopiert!","code-diff.copied-to-clipboard":"Kopiert til utklippstavlen","code-diff.copy-change":"Kopier gammel versjon av denne endringen","code-diff.search":"Søk i fjernede linjer","code-diff.previous-match":"Forrige treff","code-diff.next-match":"Neste treff","code-diff.close-search":"Lukk søk","code-diff.no-matches":"Ingen treff","code-diff.match-count":"{ current } av { total }","code-diff.hidden-lines":"··· { count } skjulte linjer ···","code-diff.show-hidden-lines":"Vis { count } skjulte linjer","code-diff.expanded-lines":"Skjulte linjer vist","code-diff.expanded-lines-end":"Skjulte linjer på slutten vist","code-diff.line-added":"Lagt til","code-diff.line-removed":"Fjernet","code-diff.line-context":"Uendret","code-diff.old-line":"Gammel linje { number }","code-diff.new-line":"Ny linje { number }","code-diff.diff-addition":"{ count } tillegg","code-diff.diff-additions":"{ count } tillegg","code-diff.diff-deletion":"{ count } sletting","code-diff.diff-deletions":"{ count } slettinger","code-diff.old-heading":"Original","code-diff.new-heading":"Endret","code-diff.diff-summary":"Diff: { parts }. Bruk piltastene for å navigere.","profile-picture.remove":"Fjern valgt bilde","profile-picture.unsupported-preview.title":"Ustøttet bildeformat","profile-picture.unsupported-preview.description":"Vi kan ikke vise det valgte bildet i denne nettleseren. Vennligst velg en annen bildefil.","picker.results-matching":'Resultater som matcher "{ query }"',"picker.no-matching-results":'Ingen resultater som matcher "{ query }"'},nl:{remove:"Verwijder",save:"Opslaan",cancel:"Annuleren",loading:"Laden…",value:"Waarde",items:"items","action-bar":"Actiebalk","callout.note":"Opmerking","callout.important":"Belangrijk","callout.tip":"Tip","callout.caution":"Waarschuwing","callout.warning":"Waarschuwing","code-editor":"code-editor","code-editor.copy":"Kopiëren","code-editor.copied":"Gekopieerd","code-editor.copy-failed":"Kopiëren mislukt","code-editor.copy-aria-label":"Kopieer { label } inhoud","code-editor.copied-aria-label":"Gekopieerd { label } inhoud","code-editor.copy-failed-aria-label":"Kopiëren { label } inhoud mislukt","collapsible-section.open":"Open { header } sectie","collapsible-section.close":"Sluit { header } sectie","date-picker.today":"Vandaag","date-picker.month.heading":"Maand","date-picker.quarter.heading":"Kwartaal","date-picker.year.heading":"Jaar","drag-handle.drag-handle":"Sleepgreep","drag-handle.drag-to-reorder":"Slepen om opnieuw te ordenen","chip-set.clear-all":"Alles wissen","snackbar.dismiss":"Sluiten","file.drag-and-drop-tips":"Sleep een bestand hierheen of klik om te bladeren.","file-viewer.message.unsupported-filetype":"Kan geen voorbeeld weergeven voor dit bestandstype.","file-viewer.message.try-other-options":"Download het bestand of open het in een nieuw tabblad.","file-viewer.message.file-not-found":"Bestand niet gevonden","file-viewer.download":"Downloaden","file-viewer.exit-fullscreen":"Verlaat volledig scherm","file-viewer.open-in-fullscreen":"Open in volledig scherm","file-viewer.open-in-new-tab":"Openen op een nieuw tabblad","file-viewer.more-actions":"Meer…","file-viewer.email.subject":"Onderwerp","file-viewer.email.from":"Van","file-viewer.email.to":"Aan","file-viewer.email.cc":"Cc","file-viewer.email.date":"Datum","file-viewer.email.attachments":"Bijlagen","file-viewer.email.attachment.unnamed":"Bijlage zonder naam","file-viewer.email.remote-images.warning":"Afbeeldingen worden niet geladen om je privacy te beschermen.","file-viewer.email.remote-images.warning.description":"Veel e-mails bevatten afbeeldingen die op externe servers worden gehost.\nWanneer afbeeldingen worden geladen, vraagt je apparaat ze op bij de server van de afzender.\nDit kan aan de afzender onthullen dat je het bericht hebt geopend, wanneer je het hebt geopend, en metadata zoals je IP-adres en informatie over apparaat/browser.\n\nJe kunt afbeeldingen geblokkeerd houden (de e-mail kan er onvolledig uitzien) of ze laden als je de afzender vertrouwt.","file-viewer.email.remote-images.load":"Afbeeldingen laden","editor-menu.bold":"Vet","editor-menu.italic":"Cursief","editor-menu.strikethrough":"Doorhalen","editor-menu.h1":"Kopniveau 1","editor-menu.h2":"Kopniveau 2","editor-menu.h3":"Kopniveau 3","editor-menu.bulleted-list":"Opsomming","editor-menu.numbered-list":"Genummerde lijst","editor-menu.blockquote":"Blokcitaat","editor-menu.link":"Link toevoegen","editor-link-menu.text":"Tekst","editor-link-menu.link":"Link","editor-menu.code-block":"Codeblok","editor-menu.code":"Code","editor-image-view.loading":"Afbeelding wordt geladen: { filename }...","editor-image-view.failed":"Er is iets misgegaan met de afbeelding: { filename }","editor-image-view.success":"Afbeelding: { filename } is klaar","editor-image-view.resize-handle":"Sleep naar rechts of links om de afbeeldingsgrootte te veranderen","progress-bar":"Voortgangsbalk","ai-avatar.label":"AI-avatar","ai-avatar.thinking":"aan het denken","ai-avatar.mode.active":"actief","ai-avatar.mode.thinking":"aan het denken","ai-avatar.mode.typing":"aan het typen","ai-avatar.mode.working":"aan het werk","ai-avatar.mode.waiting":"wacht op invoer","table.select-all":"Alle rijen selecteren","table.select-row":"Deze rij selecteren","code-diff.table-label":"Codevergelijking","code-diff.no-differences":"Geen verschillen","code-diff.no-differences-found":"Geen verschillen gevonden","code-diff.copy-old-version":"Oude versie naar klembord kopiëren","code-diff.copied":"Gekopieerd!","code-diff.copied-to-clipboard":"Gekopieerd naar klembord","code-diff.copy-change":"Oude versie van deze wijziging kopiëren","code-diff.search":"Zoeken in verwijderde regels","code-diff.previous-match":"Vorige overeenkomst","code-diff.next-match":"Volgende overeenkomst","code-diff.close-search":"Zoeken sluiten","code-diff.no-matches":"Geen overeenkomsten","code-diff.match-count":"{ current } van { total }","code-diff.hidden-lines":"··· { count } verborgen regels ···","code-diff.show-hidden-lines":"Toon { count } verborgen regels","code-diff.expanded-lines":"Verborgen regels uitgevouwen","code-diff.expanded-lines-end":"Verborgen regels aan het einde uitgevouwen","code-diff.line-added":"Toegevoegd","code-diff.line-removed":"Verwijderd","code-diff.line-context":"Ongewijzigd","code-diff.old-line":"Oude regel { number }","code-diff.new-line":"Nieuwe regel { number }","code-diff.diff-addition":"{ count } toevoeging","code-diff.diff-additions":"{ count } toevoegingen","code-diff.diff-deletion":"{ count } verwijdering","code-diff.diff-deletions":"{ count } verwijderingen","code-diff.old-heading":"Origineel","code-diff.new-heading":"Gewijzigd","code-diff.diff-summary":"Diff: { parts }. Gebruik de pijltoetsen om te navigeren.","profile-picture.remove":"Geselecteerde afbeelding verwijderen","profile-picture.unsupported-preview.title":"Niet-ondersteund afbeeldingsformaat","profile-picture.unsupported-preview.description":"We kunnen de geselecteerde afbeelding niet weergeven in deze browser. Selecteer een ander afbeeldingsbestand.","picker.results-matching":'Resultaten die overeenkomen met "{ query }"',"picker.no-matching-results":'Geen resultaten die overeenkomen met "{ query }"'},sv:{remove:"Ta bort",save:"Spara",cancel:"Avbryt",loading:"Laddar…",value:"Värde",items:"Objekt","action-bar":"Åtgärdsfält","callout.note":"Obs","callout.important":"Viktigt","callout.tip":"Tips","callout.caution":"Varning","callout.warning":"Varning","code-editor":"kodredigerare","code-editor.copy":"Kopiera","code-editor.copied":"Kopierat","code-editor.copy-failed":"kopiering misslyckades","code-editor.copy-aria-label":"Kopiera { label } innehåll","code-editor.copied-aria-label":"Kopierat { label } innehåll","code-editor.copy-failed-aria-label":"Kunde inte kopiera { label } innehåll","collapsible-section.open":"Öppna { header }-sektion","collapsible-section.close":"Stäng { header }-sektion","date-picker.today":"Idag","date-picker.month.heading":"Månad","date-picker.quarter.heading":"Kvartal","date-picker.year.heading":"År","drag-handle.drag-handle":"Draghandtag","drag-handle.drag-to-reorder":"Dra för att ändra ordning","chip-set.clear-all":"Rensa alla","snackbar.dismiss":"Stäng","file.drag-and-drop-tips":"Dra & släpp filen här eller klicka om du vill bläddra.","file-viewer.message.unsupported-filetype":"Kan inte visa en förhandsvisning för denna filtyp.","file-viewer.message.try-other-options":"Ladda ner filen eller öppna den i en ny flik.","file-viewer.message.file-not-found":"Filen hittades inte","file-viewer.download":"Ladda ner","file-viewer.exit-fullscreen":"Avsluta fullskärmsläge","file-viewer.open-in-fullscreen":"Öppna i fullskärmsläge","file-viewer.open-in-new-tab":"Öppna i ny flik","file-viewer.more-actions":"Mer…","file-viewer.email.subject":"Ämne","file-viewer.email.from":"Från","file-viewer.email.to":"Till","file-viewer.email.cc":"Kopia","file-viewer.email.date":"Datum","file-viewer.email.attachments":"Bilagor","file-viewer.email.attachment.unnamed":"Namnlös bilaga","file-viewer.email.remote-images.warning":"Bilder laddas inte för att skydda din integritet.","file-viewer.email.remote-images.warning.description":"Många e-postmeddelanden innehåller bilder som finns på externa servrar.\nNär bilder laddas hämtar din enhet dem från avsändarens server.\nDet kan avslöja för avsändaren att du öppnade meddelandet, när du öppnade det och metadata som din IP-adress samt information om enhet/webbläsare.\n\nDu kan fortsätta blockera bilder (e-posten kan se ofullständig ut) eller ladda dem om du litar på avsändaren.","file-viewer.email.remote-images.load":"Ladda bilder","editor-menu.bold":"Fet","editor-menu.italic":"Kursiv","editor-menu.strikethrough":"Genomstruken","editor-menu.h1":"Rubrik 1","editor-menu.h2":"Rubrik 2","editor-menu.h3":"Rubrik 3","editor-menu.bulleted-list":"Punktlista","editor-menu.numbered-list":"Numrerad lista","editor-menu.blockquote":"Blockcitat","editor-menu.link":"Lägg till länk","editor-link-menu.text":"Text","editor-link-menu.link":"Länk","editor-menu.code-block":"Kodblock","editor-menu.code":"Kod","editor-image-view.loading":"Laddar bilden: { filename }...","editor-image-view.failed":"Något gick fel med bilden: { filename }","editor-image-view.success":"Bilden: { filename } är redo","editor-image-view.resize-handle":"Dra åt höger eller vänster för att ändra storlek på bilden","progress-bar":"Förloppsindikator","ai-avatar.label":"AI-avatar","ai-avatar.thinking":"tänker","ai-avatar.mode.active":"aktiv","ai-avatar.mode.thinking":"tänker","ai-avatar.mode.typing":"skriver","ai-avatar.mode.working":"arbetar","ai-avatar.mode.waiting":"väntar på indata","table.select-all":"Markera alla rader","table.select-row":"Markera denna rad","code-diff.table-label":"Kodjämförelse","code-diff.no-differences":"Inga skillnader","code-diff.no-differences-found":"Inga skillnader hittades","code-diff.copy-old-version":"Kopiera den gamla versionen till urklipp","code-diff.copied":"Kopierat!","code-diff.copied-to-clipboard":"Kopierat till urklipp","code-diff.copy-change":"Kopiera den gamla versionen av ändringen","code-diff.search":"Sök i borttagna rader","code-diff.previous-match":"Föregående träff","code-diff.next-match":"Nästa träff","code-diff.close-search":"Stäng sökning","code-diff.no-matches":"Inga träffar","code-diff.match-count":"{ current } av { total }","code-diff.hidden-lines":"··· { count } dolda rader ···","code-diff.show-hidden-lines":"Visa { count } dolda rader","code-diff.expanded-lines":"Dolda rader expanderade","code-diff.expanded-lines-end":"Dolda rader i slutet expanderade","code-diff.line-added":"Tillagd","code-diff.line-removed":"Borttagen","code-diff.line-context":"Oförändrad","code-diff.old-line":"Gammal rad { number }","code-diff.new-line":"Ny rad { number }","code-diff.diff-addition":"{ count } tillägg","code-diff.diff-additions":"{ count } tillägg","code-diff.diff-deletion":"{ count } borttagning","code-diff.diff-deletions":"{ count } borttagningar","code-diff.old-heading":"Original","code-diff.new-heading":"Modifierad","code-diff.diff-summary":"Diff: { parts }. Använd piltangenterna för att navigera.","profile-picture.remove":"Ta bort vald bild","profile-picture.unsupported-preview.title":"Formatet stöds inte","profile-picture.unsupported-preview.description":"Vi kan inte visa den valda bilden i den här webbläsaren. Välj en annan bildfil.","picker.results-matching":'Resultat som matchar "{ query }"',"picker.no-matching-results":'Inga resultat som matchar "{ query }"'}},i=/\{\s*(\w+)\s*\}/g;var n=new class{get(n,a="en",d){const t=e[a][n];return t?t.replaceAll(i,((e,i)=>d[i]||e)):n}};export{n as t}
|