optimized-react-component-library-xyz123 0.1.91 → 0.1.92

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/dist/index.d.mts CHANGED
@@ -1,8 +1,4 @@
1
1
  import React, { FC } from 'react';
2
- import * as reselect from 'reselect';
3
- import * as _reduxjs_toolkit from '@reduxjs/toolkit';
4
- import { PayloadAction } from '@reduxjs/toolkit';
5
- import * as immer from 'immer';
6
2
  import * as react_jsx_runtime from 'react/jsx-runtime';
7
3
 
8
4
  interface IApplicationContent {
@@ -225,90 +221,6 @@ declare function validationCheckAllVisibleQuestions(data: any, formQuestion: any
225
221
 
226
222
  declare function groupQuestionsByStepCategoryGroup(questions: IQuestion[], steps: IStepObject[], validationErrorsList: number[]): any[];
227
223
 
228
- /** ----- Typer ----- */
229
- interface LanguageEntry {
230
- language: string;
231
- backButton: string;
232
- forwardButton: string;
233
- sendButton: string;
234
- }
235
- interface LanguageSupportConfig {
236
- activatedLanguage: string;
237
- languageSupport: LanguageEntry[];
238
- }
239
- interface LanguageState {
240
- activatedLanguage: string;
241
- languageSupport: LanguageEntry[];
242
- languageSupportLoaded: boolean;
243
- backButton: string;
244
- forwardButton: string;
245
- sendButton: string;
246
- }
247
- /** ----- Slice-fabrik (ingen app-specifik state/RootState här) ----- */
248
- declare const createLanguageSlice: (initialConfig: LanguageSupportConfig, options?: {
249
- name?: string;
250
- }) => _reduxjs_toolkit.Slice<LanguageState, {
251
- setActivatedLanguage: (state: immer.WritableDraft<LanguageState>, action: PayloadAction<string>) => void;
252
- setLabelsFromLanguageEntry: (state: immer.WritableDraft<LanguageState>, action: PayloadAction<Pick<LanguageEntry, "backButton" | "forwardButton" | "sendButton">>) => void;
253
- replaceLanguageSupport: (state: immer.WritableDraft<LanguageState>, action: PayloadAction<LanguageSupportConfig>) => void;
254
- }, string, string, _reduxjs_toolkit.SliceSelectors<LanguageState>>;
255
- /** ----- Selector-fabrik (helt generisk, ingen RootState) ----- */
256
- declare const makeLanguageSelectors: <TState>(selectSlice: (state: TState) => LanguageState) => {
257
- selectActivatedLanguage: (state: TState) => string;
258
- selectLanguageSupportLoaded: (state: TState) => boolean;
259
- selectLanguageSupport: (state: TState) => LanguageEntry[];
260
- selectOverallContentState: (state: TState) => LanguageState;
261
- selectOverallContentFromLanguageSupport: ((state: TState, activatedLanguage: string) => {
262
- activatedLanguage: string;
263
- languageSupport: LanguageEntry[];
264
- languageSupportLoaded: boolean;
265
- backButton: string;
266
- forwardButton: string;
267
- sendButton: string;
268
- }) & {
269
- clearCache: () => void;
270
- resultsCount: () => number;
271
- resetResultsCount: () => void;
272
- } & {
273
- resultFunc: (resultFuncArgs_0: LanguageState, resultFuncArgs_1: string) => {
274
- activatedLanguage: string;
275
- languageSupport: LanguageEntry[];
276
- languageSupportLoaded: boolean;
277
- backButton: string;
278
- forwardButton: string;
279
- sendButton: string;
280
- };
281
- memoizedResultFunc: ((resultFuncArgs_0: LanguageState, resultFuncArgs_1: string) => {
282
- activatedLanguage: string;
283
- languageSupport: LanguageEntry[];
284
- languageSupportLoaded: boolean;
285
- backButton: string;
286
- forwardButton: string;
287
- sendButton: string;
288
- }) & {
289
- clearCache: () => void;
290
- resultsCount: () => number;
291
- resetResultsCount: () => void;
292
- };
293
- lastResult: () => {
294
- activatedLanguage: string;
295
- languageSupport: LanguageEntry[];
296
- languageSupportLoaded: boolean;
297
- backButton: string;
298
- forwardButton: string;
299
- sendButton: string;
300
- };
301
- dependencies: [(state: TState) => LanguageState, (_: TState, activatedLanguage: string) => string];
302
- recomputations: () => number;
303
- resetRecomputations: () => void;
304
- dependencyRecomputations: () => number;
305
- resetDependencyRecomputations: () => void;
306
- } & {
307
- memoize: typeof reselect.weakMapMemoize;
308
- argsMemoize: typeof reselect.weakMapMemoize;
309
- };
310
- };
311
-
312
224
  declare const RenderQuestion: ({ question, isTouched, activatedLanguage, showPreview, hideValidationMessage, }: any) => react_jsx_runtime.JSX.Element;
313
225
 
314
226
  declare const RenderQuestionGroup: ({ questionArray, wrapper, legend, isTouched, activatedLanguage, showPreview, AddQuestionDisplayed, hideValidationMessage, }: any) => react_jsx_runtime.JSX.Element;
@@ -415,4 +327,4 @@ interface CookieBannerProps {
415
327
 
416
328
  declare const CookieBanner: React.FC<CookieBannerProps>;
417
329
 
418
- export { AddFiles as AddFilesStandard, CookieBanner, CreateApiDataObject, doCategoriesAndQuestionsVisible as DoCategoriesAndQuestionsVisible, EditPreviewLink as EditPreviewLinkStandard, FilesUpload as FilesUploadStandard, Footer as FooterStandard, groupQuestionByStepPreviewPage as GroupQuestionByStepPreviewPage, groupQuestionsByStepCategoryGroup as GroupQuestionsByStepCategoryGroup, Header as HeaderStandard, type IApplicationContent, type IFormState, type ILanguage, type ILanguageSupport, ILanguageSupportinitialState, type IOption, type IPTSLink, type IQuestion, type IQuestionExtraAttribute, type IStepObject, type IStepQuestionData, type ITextBlock, InfoOnly as InfoOnlyStandard, isDependsOnOtherQuestionTrue as IsDependsOnOtherQuestionTrue, type LanguageSupportConfig, Modal as ModalStandard, MultipleCheckboxes as MultipleCheckboxesStandard, PrincipleOfPublicity as PrincipleOfPublicityStandard, questionHasValidationError as QuestionHasValidationError, QuestioninitialState, InputRadio as RadioMultipleStandard, RenderQuestion, RenderQuestionGroup, ServiceHeadlineAndBody as ServiceHeadlineAndBodyStandard, SkipLink as SkipLinkStandard, StepperButtons as StepperButtonsStandard, Stepper as StepperStandard, InputTextarea as TextAreaStandard, TextFieldStandard, TextHeadlineAndBody as TextHeadlineAndBodyStandard, validationCheckAllVisibleQuestions as ValidationCheckAllVisibleQuestion, ValidationErrorSummaryList, createLanguageSlice, makeLanguageSelectors };
330
+ export { AddFiles as AddFilesStandard, CookieBanner, CreateApiDataObject, doCategoriesAndQuestionsVisible as DoCategoriesAndQuestionsVisible, EditPreviewLink as EditPreviewLinkStandard, FilesUpload as FilesUploadStandard, Footer as FooterStandard, groupQuestionByStepPreviewPage as GroupQuestionByStepPreviewPage, groupQuestionsByStepCategoryGroup as GroupQuestionsByStepCategoryGroup, Header as HeaderStandard, type IApplicationContent, type IFormState, type ILanguage, type ILanguageSupport, ILanguageSupportinitialState, type IOption, type IPTSLink, type IQuestion, type IQuestionExtraAttribute, type IStepObject, type IStepQuestionData, type ITextBlock, InfoOnly as InfoOnlyStandard, isDependsOnOtherQuestionTrue as IsDependsOnOtherQuestionTrue, Modal as ModalStandard, MultipleCheckboxes as MultipleCheckboxesStandard, PrincipleOfPublicity as PrincipleOfPublicityStandard, questionHasValidationError as QuestionHasValidationError, QuestioninitialState, InputRadio as RadioMultipleStandard, RenderQuestion, RenderQuestionGroup, ServiceHeadlineAndBody as ServiceHeadlineAndBodyStandard, SkipLink as SkipLinkStandard, StepperButtons as StepperButtonsStandard, Stepper as StepperStandard, InputTextarea as TextAreaStandard, TextFieldStandard, TextHeadlineAndBody as TextHeadlineAndBodyStandard, validationCheckAllVisibleQuestions as ValidationCheckAllVisibleQuestion, ValidationErrorSummaryList };
package/dist/index.d.ts CHANGED
@@ -1,8 +1,4 @@
1
1
  import React, { FC } from 'react';
2
- import * as reselect from 'reselect';
3
- import * as _reduxjs_toolkit from '@reduxjs/toolkit';
4
- import { PayloadAction } from '@reduxjs/toolkit';
5
- import * as immer from 'immer';
6
2
  import * as react_jsx_runtime from 'react/jsx-runtime';
7
3
 
8
4
  interface IApplicationContent {
@@ -225,90 +221,6 @@ declare function validationCheckAllVisibleQuestions(data: any, formQuestion: any
225
221
 
226
222
  declare function groupQuestionsByStepCategoryGroup(questions: IQuestion[], steps: IStepObject[], validationErrorsList: number[]): any[];
227
223
 
228
- /** ----- Typer ----- */
229
- interface LanguageEntry {
230
- language: string;
231
- backButton: string;
232
- forwardButton: string;
233
- sendButton: string;
234
- }
235
- interface LanguageSupportConfig {
236
- activatedLanguage: string;
237
- languageSupport: LanguageEntry[];
238
- }
239
- interface LanguageState {
240
- activatedLanguage: string;
241
- languageSupport: LanguageEntry[];
242
- languageSupportLoaded: boolean;
243
- backButton: string;
244
- forwardButton: string;
245
- sendButton: string;
246
- }
247
- /** ----- Slice-fabrik (ingen app-specifik state/RootState här) ----- */
248
- declare const createLanguageSlice: (initialConfig: LanguageSupportConfig, options?: {
249
- name?: string;
250
- }) => _reduxjs_toolkit.Slice<LanguageState, {
251
- setActivatedLanguage: (state: immer.WritableDraft<LanguageState>, action: PayloadAction<string>) => void;
252
- setLabelsFromLanguageEntry: (state: immer.WritableDraft<LanguageState>, action: PayloadAction<Pick<LanguageEntry, "backButton" | "forwardButton" | "sendButton">>) => void;
253
- replaceLanguageSupport: (state: immer.WritableDraft<LanguageState>, action: PayloadAction<LanguageSupportConfig>) => void;
254
- }, string, string, _reduxjs_toolkit.SliceSelectors<LanguageState>>;
255
- /** ----- Selector-fabrik (helt generisk, ingen RootState) ----- */
256
- declare const makeLanguageSelectors: <TState>(selectSlice: (state: TState) => LanguageState) => {
257
- selectActivatedLanguage: (state: TState) => string;
258
- selectLanguageSupportLoaded: (state: TState) => boolean;
259
- selectLanguageSupport: (state: TState) => LanguageEntry[];
260
- selectOverallContentState: (state: TState) => LanguageState;
261
- selectOverallContentFromLanguageSupport: ((state: TState, activatedLanguage: string) => {
262
- activatedLanguage: string;
263
- languageSupport: LanguageEntry[];
264
- languageSupportLoaded: boolean;
265
- backButton: string;
266
- forwardButton: string;
267
- sendButton: string;
268
- }) & {
269
- clearCache: () => void;
270
- resultsCount: () => number;
271
- resetResultsCount: () => void;
272
- } & {
273
- resultFunc: (resultFuncArgs_0: LanguageState, resultFuncArgs_1: string) => {
274
- activatedLanguage: string;
275
- languageSupport: LanguageEntry[];
276
- languageSupportLoaded: boolean;
277
- backButton: string;
278
- forwardButton: string;
279
- sendButton: string;
280
- };
281
- memoizedResultFunc: ((resultFuncArgs_0: LanguageState, resultFuncArgs_1: string) => {
282
- activatedLanguage: string;
283
- languageSupport: LanguageEntry[];
284
- languageSupportLoaded: boolean;
285
- backButton: string;
286
- forwardButton: string;
287
- sendButton: string;
288
- }) & {
289
- clearCache: () => void;
290
- resultsCount: () => number;
291
- resetResultsCount: () => void;
292
- };
293
- lastResult: () => {
294
- activatedLanguage: string;
295
- languageSupport: LanguageEntry[];
296
- languageSupportLoaded: boolean;
297
- backButton: string;
298
- forwardButton: string;
299
- sendButton: string;
300
- };
301
- dependencies: [(state: TState) => LanguageState, (_: TState, activatedLanguage: string) => string];
302
- recomputations: () => number;
303
- resetRecomputations: () => void;
304
- dependencyRecomputations: () => number;
305
- resetDependencyRecomputations: () => void;
306
- } & {
307
- memoize: typeof reselect.weakMapMemoize;
308
- argsMemoize: typeof reselect.weakMapMemoize;
309
- };
310
- };
311
-
312
224
  declare const RenderQuestion: ({ question, isTouched, activatedLanguage, showPreview, hideValidationMessage, }: any) => react_jsx_runtime.JSX.Element;
313
225
 
314
226
  declare const RenderQuestionGroup: ({ questionArray, wrapper, legend, isTouched, activatedLanguage, showPreview, AddQuestionDisplayed, hideValidationMessage, }: any) => react_jsx_runtime.JSX.Element;
@@ -415,4 +327,4 @@ interface CookieBannerProps {
415
327
 
416
328
  declare const CookieBanner: React.FC<CookieBannerProps>;
417
329
 
418
- export { AddFiles as AddFilesStandard, CookieBanner, CreateApiDataObject, doCategoriesAndQuestionsVisible as DoCategoriesAndQuestionsVisible, EditPreviewLink as EditPreviewLinkStandard, FilesUpload as FilesUploadStandard, Footer as FooterStandard, groupQuestionByStepPreviewPage as GroupQuestionByStepPreviewPage, groupQuestionsByStepCategoryGroup as GroupQuestionsByStepCategoryGroup, Header as HeaderStandard, type IApplicationContent, type IFormState, type ILanguage, type ILanguageSupport, ILanguageSupportinitialState, type IOption, type IPTSLink, type IQuestion, type IQuestionExtraAttribute, type IStepObject, type IStepQuestionData, type ITextBlock, InfoOnly as InfoOnlyStandard, isDependsOnOtherQuestionTrue as IsDependsOnOtherQuestionTrue, type LanguageSupportConfig, Modal as ModalStandard, MultipleCheckboxes as MultipleCheckboxesStandard, PrincipleOfPublicity as PrincipleOfPublicityStandard, questionHasValidationError as QuestionHasValidationError, QuestioninitialState, InputRadio as RadioMultipleStandard, RenderQuestion, RenderQuestionGroup, ServiceHeadlineAndBody as ServiceHeadlineAndBodyStandard, SkipLink as SkipLinkStandard, StepperButtons as StepperButtonsStandard, Stepper as StepperStandard, InputTextarea as TextAreaStandard, TextFieldStandard, TextHeadlineAndBody as TextHeadlineAndBodyStandard, validationCheckAllVisibleQuestions as ValidationCheckAllVisibleQuestion, ValidationErrorSummaryList, createLanguageSlice, makeLanguageSelectors };
330
+ export { AddFiles as AddFilesStandard, CookieBanner, CreateApiDataObject, doCategoriesAndQuestionsVisible as DoCategoriesAndQuestionsVisible, EditPreviewLink as EditPreviewLinkStandard, FilesUpload as FilesUploadStandard, Footer as FooterStandard, groupQuestionByStepPreviewPage as GroupQuestionByStepPreviewPage, groupQuestionsByStepCategoryGroup as GroupQuestionsByStepCategoryGroup, Header as HeaderStandard, type IApplicationContent, type IFormState, type ILanguage, type ILanguageSupport, ILanguageSupportinitialState, type IOption, type IPTSLink, type IQuestion, type IQuestionExtraAttribute, type IStepObject, type IStepQuestionData, type ITextBlock, InfoOnly as InfoOnlyStandard, isDependsOnOtherQuestionTrue as IsDependsOnOtherQuestionTrue, Modal as ModalStandard, MultipleCheckboxes as MultipleCheckboxesStandard, PrincipleOfPublicity as PrincipleOfPublicityStandard, questionHasValidationError as QuestionHasValidationError, QuestioninitialState, InputRadio as RadioMultipleStandard, RenderQuestion, RenderQuestionGroup, ServiceHeadlineAndBody as ServiceHeadlineAndBodyStandard, SkipLink as SkipLinkStandard, StepperButtons as StepperButtonsStandard, Stepper as StepperStandard, InputTextarea as TextAreaStandard, TextFieldStandard, TextHeadlineAndBody as TextHeadlineAndBodyStandard, validationCheckAllVisibleQuestions as ValidationCheckAllVisibleQuestion, ValidationErrorSummaryList };
package/dist/index.js CHANGED
@@ -59,9 +59,7 @@ __export(index_exports, {
59
59
  TextFieldStandard: () => TextFieldStandard_default,
60
60
  TextHeadlineAndBodyStandard: () => TextHeadlineAndBodyStandard_default,
61
61
  ValidationCheckAllVisibleQuestion: () => ValidationCheckAllVisibleQuestion_default,
62
- ValidationErrorSummaryList: () => ValidationErrorSummaryList_default,
63
- createLanguageSlice: () => createLanguageSlice,
64
- makeLanguageSelectors: () => makeLanguageSelectors
62
+ ValidationErrorSummaryList: () => ValidationErrorSummaryList_default
65
63
  });
66
64
  module.exports = __toCommonJS(index_exports);
67
65
 
@@ -760,12 +758,12 @@ var FilesUploadStandard_default = FilesUpload;
760
758
 
761
759
  // src/NewInputComponentStandard/AddFilesStandard/AddFilesStandard.tsx
762
760
  var import_react7 = require("react");
763
- var import_clsx5 = __toESM(require("clsx"));
761
+ var import_clsx4 = __toESM(require("clsx"));
764
762
 
765
763
  // src/NewInputComponentStandard/AddFilesStandard/DropFilesStandard.tsx
766
764
  var import_react_dropzone = require("react-dropzone");
767
765
  var import_jsx_runtime6 = require("react/jsx-runtime");
768
- var DropFiles = ({ FilesSelected, DropFilesText = "Dra och sl\xE4pp dina filer h\xE4r" }) => {
766
+ var DropFiles = ({ FilesSelected, DropFilesText = "Dra och sl\xE4pp dina filer h\xE4r", language }) => {
769
767
  const onDrop = FilesSelected;
770
768
  const { getRootProps, getInputProps, isDragActive } = (0, import_react_dropzone.useDropzone)({ onDrop, noKeyboard: true });
771
769
  const handleFileExplorer = (event) => {
@@ -786,34 +784,22 @@ var DropFiles = ({ FilesSelected, DropFilesText = "Dra och sl\xE4pp dina filer h
786
784
  }
787
785
  )
788
786
  ] }),
789
- isDragActive ? /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("b", { className: "dropFilesNowText", children: "Sl\xE4pp filerna, nu ...!" }) : /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(import_jsx_runtime6.Fragment, { children: [
790
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
787
+ isDragActive ? /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("b", { className: "dropFilesNowText", children: language === "sv" ? "Sl\xE4pp filerna, nu ...!" : "Drop files here!" }) : /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "DropZone-label-container", children: [
788
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
791
789
  "svg",
792
790
  {
793
- "aria-hidden": "true",
794
791
  xmlns: "http://www.w3.org/2000/svg",
795
- width: "72",
796
- height: "48",
797
- viewBox: "0 0 72 48",
798
- fill: "none",
799
- children: [
800
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("g", { clipPath: "url(#clip0_247_596)", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
801
- "path",
802
- {
803
- d: "M66.6084 23.0844C64.6397 21.6247 62.2209 20.5531 59.6672 19.9752C59.2479 19.8808 58.8641 19.6692 58.5605 19.3649C58.257 19.0606 58.0463 18.6763 57.953 18.2567C56.8561 13.37 54.495 9.1794 51.0244 6.00409C46.9898 2.30706 41.6545 0.273621 36 0.273621C31.0289 0.273621 26.4375 1.83174 22.7292 4.78065C20.216 6.78238 18.193 9.33154 16.8145 12.2338C16.6651 12.5513 16.4434 12.8295 16.1672 13.0461C15.8911 13.2627 15.5681 13.4117 15.2241 13.4811C11.4623 14.2405 8.06625 15.8535 5.47312 18.1386C1.89281 21.3027 0 25.5088 0 30.3111C0 35.1655 2.03766 39.5924 5.73609 42.793C9.26859 45.8431 14.0245 47.5236 19.125 47.5236H33.75V25.956L28.5905 31.1155C28.3751 31.3309 28.1182 31.5003 27.8354 31.6134C27.5525 31.7266 27.2497 31.7811 26.9452 31.7738C26.6406 31.7664 26.3408 31.6973 26.0638 31.5706C25.7867 31.4439 25.5383 31.2623 25.3336 31.0367C24.518 30.141 24.5967 28.7446 25.4531 27.8881L34.4095 18.9331C34.8314 18.5115 35.4035 18.2747 36 18.2747C36.5965 18.2747 37.1686 18.5115 37.5905 18.9331L46.5469 27.8853C47.43 28.7699 47.4806 30.2197 46.6017 31.107C46.3932 31.3176 46.1451 31.485 45.8718 31.5994C45.5984 31.7139 45.3051 31.7732 45.0088 31.774C44.7124 31.7748 44.4188 31.717 44.1449 31.604C43.8709 31.491 43.622 31.325 43.4123 31.1155L38.25 25.956V47.5236H55.6875C60.0947 47.5236 64.1124 46.2861 67.0008 44.0403C70.2717 41.495 72 37.8528 72 33.5174C72 29.3071 70.1353 25.6972 66.6084 23.0844Z",
804
- fill: "#6E3282"
805
- }
806
- ) }),
807
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("clipPath", { id: "clip0_247_596", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
808
- "rect",
809
- {
810
- width: "72",
811
- height: "47.1064",
812
- fill: "white",
813
- transform: "translate(0 0.446777)"
814
- }
815
- ) }) })
816
- ]
792
+ width: "2.4rem",
793
+ height: "2.4rem",
794
+ viewBox: "0 0 7 15",
795
+ fill: "#fff",
796
+ children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
797
+ "path",
798
+ {
799
+ d: "M0 2.5C0 1.83696 0.263392 1.20107 0.732233 0.732233C1.20107 0.263392 1.83696 0 2.5 0C3.16304 0 3.79893 0.263392 4.26777 0.732233C4.73661 1.20107 5 1.83696 5 2.5V11.5C5 11.8978 4.84196 12.2794 4.56066 12.5607C4.27936 12.842 3.89782 13 3.5 13C3.10218 13 2.72064 12.842 2.43934 12.5607C2.15804 12.2794 2 11.8978 2 11.5V4.5C2 4.36739 2.05268 4.24021 2.14645 4.14645C2.24021 4.05268 2.36739 4 2.5 4C2.63261 4 2.75979 4.05268 2.85355 4.14645C2.94732 4.24021 3 4.36739 3 4.5V11.5C3 11.6326 3.05268 11.7598 3.14645 11.8536C3.24021 11.9473 3.36739 12 3.5 12C3.63261 12 3.75979 11.9473 3.85355 11.8536C3.94732 11.7598 4 11.6326 4 11.5V2.5C4 2.30302 3.9612 2.10796 3.88582 1.92597C3.81044 1.74399 3.69995 1.57863 3.56066 1.43934C3.42137 1.30005 3.25601 1.18956 3.07403 1.11418C2.89204 1.0388 2.69698 1 2.5 1C2.30302 1 2.10796 1.0388 1.92597 1.11418C1.74399 1.18956 1.57863 1.30005 1.43934 1.43934C1.30005 1.57863 1.18956 1.74399 1.11418 1.92597C1.0388 2.10796 1 2.30302 1 2.5V11.5C1 12.163 1.26339 12.7989 1.73223 13.2678C2.20107 13.7366 2.83696 14 3.5 14C4.16304 14 4.79893 13.7366 5.26777 13.2678C5.73661 12.7989 6 12.163 6 11.5V4.5C6 4.36739 6.05268 4.24021 6.14645 4.14645C6.24021 4.05268 6.36739 4 6.5 4C6.63261 4 6.75979 4.05268 6.85355 4.14645C6.94732 4.24021 7 4.36739 7 4.5V11.5C7 12.4283 6.63125 13.3185 5.97487 13.9749C5.3185 14.6313 4.42826 15 3.5 15C2.57174 15 1.6815 14.6313 1.02513 13.9749C0.368749 13.3185 0 12.4283 0 11.5V2.5Z",
800
+ fill: "#fff"
801
+ }
802
+ )
817
803
  }
818
804
  ),
819
805
  /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("p", { className: "dropFilesText", children: DropFilesText })
@@ -949,7 +935,6 @@ var Indicator = (filename) => {
949
935
  var IndicatorStandard_default = Indicator;
950
936
 
951
937
  // src/NewInputComponentStandard/AddFilesStandard/SelectedFilesStandard.tsx
952
- var import_clsx4 = __toESM(require("clsx"));
953
938
  var import_jsx_runtime10 = require("react/jsx-runtime");
954
939
  var SelectedFiles = ({
955
940
  questionObject,
@@ -991,53 +976,57 @@ var SelectedFiles = ({
991
976
  };
992
977
  const windowWidth = useWindowWidth();
993
978
  return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(import_jsx_runtime10.Fragment, { children: [
994
- /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { children: [
995
- errorMessageAddingFile.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("ul", { "aria-hidden": true, className: "fileListUnorderedList", children: [
996
- " ",
997
- errorMessageAddingFile.map((errorObj, index) => {
998
- const errorFileName = errorObj.FileName;
999
- let mobileFirstFileName = errorObj.FileName.split(".").shift();
1000
- mobileFirstFileName = mobileFirstFileName.length > 8 ? mobileFirstFileName.substring(0, 8) + ".." : mobileFirstFileName;
1001
- const fileType = errorObj.FileName.split(".").pop();
1002
- mobileFirstFileName = mobileFirstFileName + "." + fileType;
1003
- return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_react6.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { className: "fileInListContainer", children: /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: "fileInList", children: [
1004
- /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(import_react_bootstrap.Row, { children: [
1005
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_react_bootstrap.Col, { style: { maxWidth: "30px" }, children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
1006
- "span",
1007
- {
1008
- "aria-hidden": "true",
1009
- className: (0, import_clsx4.default)("uploadedDot", "uploadFailed"),
1010
- children: "!"
1011
- }
1012
- ) }),
1013
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_react_bootstrap.Col, { children: windowWidth < 768 ? /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("span", { className: "mobileFirstFileName", children: mobileFirstFileName }) : /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("span", { className: "desktopFileName", children: errorObj.FileName }) }),
1014
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_react_bootstrap.Col, { className: "lastCol" })
1015
- ] }),
1016
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_react_bootstrap.Row, { children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
1017
- import_react_bootstrap.Col,
1018
- {
1019
- style: {
1020
- width: "100%",
1021
- color: "#8e0039"
1022
- },
1023
- className: "errorMessageAddingFile",
1024
- ...activatedLanguage === "sv" ? {
1025
- "aria-label": `${errorFileName} ${errorObj.svMessage}`
1026
- } : {
1027
- "aria-label": `${errorFileName} ${errorObj.enMessage}`
1028
- },
1029
- children: activatedLanguage === "sv" ? errorObj.svMessage : errorObj.enMessage
1030
- }
1031
- ) }),
1032
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_react_bootstrap.Row, { style: { marginTop: "12px", marginBottom: "12px" }, children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_react_bootstrap.Col, { className: "makeSpace" }) })
1033
- ] }, index) }) }) }, `error-${errorObj.FileName}-${index}`) });
1034
- })
1035
- ] }),
1036
- errorMessageAddingFile.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("button", { onClick: removeUploadErrors, className: "errorMessageAddingFile", children: [
1037
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("span", { "aria-hidden": true, className: "errorDot", children: "X" }),
1038
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("span", { className: "sr-only", children: "Ta bort felmeddelande f\xF6r uppladdning av filer" })
1039
- ] })
1040
- ] }),
979
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { children: errorMessageAddingFile.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: "pts-errorSummary-container pts-addFile-error-container", children: [
980
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("span", { "aria-hidden": "true", className: "errorDot", children: "!" }),
981
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { className: "addFile-error-list-container", children: /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
982
+ "ul",
983
+ {
984
+ "aria-hidden": true,
985
+ className: "fileListUnorderedList",
986
+ id: "errorSummary-ul",
987
+ children: [
988
+ " ",
989
+ errorMessageAddingFile.map((errorObj, index) => {
990
+ const errorFileName = errorObj.FileName;
991
+ let mobileFirstFileName = errorObj.FileName.split(".").shift();
992
+ mobileFirstFileName = mobileFirstFileName.length > 8 ? mobileFirstFileName.substring(0, 8) + ".." : mobileFirstFileName;
993
+ const fileType = errorObj.FileName.split(".").pop();
994
+ mobileFirstFileName = mobileFirstFileName + "." + fileType;
995
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_react6.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { className: "fileInListContainer", children: /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: "fileInList", children: [
996
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_react_bootstrap.Row, { children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_react_bootstrap.Col, { children: windowWidth < 768 ? /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("span", { className: "mobileFirstFileName", children: mobileFirstFileName }) : /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("span", { className: "desktopFileName", children: errorObj.FileName }) }) }),
997
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_react_bootstrap.Row, { children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
998
+ import_react_bootstrap.Col,
999
+ {
1000
+ style: {
1001
+ width: "100%",
1002
+ color: "#8e0039"
1003
+ },
1004
+ className: "errorMessageAddingFile",
1005
+ ...activatedLanguage === "sv" ? {
1006
+ "aria-label": `${errorFileName} ${errorObj.svMessage}`
1007
+ } : {
1008
+ "aria-label": `${errorFileName} ${errorObj.enMessage}`
1009
+ },
1010
+ children: activatedLanguage === "sv" ? errorObj.svMessage : errorObj.enMessage
1011
+ }
1012
+ ) })
1013
+ ] }, index) }) }) }, `error-${errorObj.FileName}-${index}`) });
1014
+ })
1015
+ ]
1016
+ }
1017
+ ) }),
1018
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { className: "addFile-error-close-button", children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
1019
+ "button",
1020
+ {
1021
+ className: "selectedFilesLinkButton error-close",
1022
+ onClick: () => {
1023
+ removeError();
1024
+ },
1025
+ "aria-label": activatedLanguage === "sv" ? `St\xE4ng felmeddelandet` : `Close error message`,
1026
+ children: activatedLanguage === "sv" ? "St\xE4ng" : "Close"
1027
+ }
1028
+ ) })
1029
+ ] }) }),
1041
1030
  questionObject.files.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("ul", { className: "fileListUnorderedList", "aria-label": "Uppladdade filer", children: questionObject.files.map((file, index) => {
1042
1031
  const indicatorfileName = file.FileName;
1043
1032
  let mobileFirstFileName = file.FileName.split(".").shift();
@@ -1045,7 +1034,7 @@ var SelectedFiles = ({
1045
1034
  const fileType = file.FileName.split(".").pop();
1046
1035
  mobileFirstFileName = mobileFirstFileName + "." + fileType;
1047
1036
  return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_react6.default.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { className: "fileInListContainer", children: /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: "fileInList", children: [
1048
- /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(import_react_bootstrap.Row, { children: [
1037
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(import_react_bootstrap.Row, { className: "fileItem", children: [
1049
1038
  /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_react_bootstrap.Col, { style: { maxWidth: "30px" }, children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("span", { "aria-hidden": "true", className: "uploadedDot", children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
1050
1039
  "svg",
1051
1040
  {
@@ -1259,10 +1248,13 @@ var AddFiles = ({
1259
1248
  const removeFileFromNumberOfFiles = (newCount) => {
1260
1249
  setNumberOfFiles(newCount);
1261
1250
  };
1262
- const removeError = (errorIndex) => {
1251
+ const removeOneError = (errorIndex) => {
1263
1252
  let newErrors = errorMessageAddingFile.filter((e, index) => index !== errorIndex);
1264
1253
  setErrorMessageAddingFile(newErrors);
1265
1254
  };
1255
+ const removeError = () => {
1256
+ setErrorMessageAddingFile([]);
1257
+ };
1266
1258
  const handleRemoveErrors = () => {
1267
1259
  setErrorMessageAddingFile([]);
1268
1260
  };
@@ -1272,7 +1264,7 @@ var AddFiles = ({
1272
1264
  "p",
1273
1265
  {
1274
1266
  id: aboutId,
1275
- className: (0, import_clsx5.default)(
1267
+ className: (0, import_clsx4.default)(
1276
1268
  "addFilesMandatory",
1277
1269
  questionObject.hasValidationError ? " error" : ""
1278
1270
  ),
@@ -1306,7 +1298,7 @@ var AddFiles = ({
1306
1298
  removeUploadErrors: handleRemoveErrors
1307
1299
  }
1308
1300
  ),
1309
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(DropFilesStandard_default, { FilesSelected: onDrop, DropFilesText: dropFilesText }),
1301
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(DropFilesStandard_default, { FilesSelected: onDrop, DropFilesText: dropFilesText, language: activatedLanguage }),
1310
1302
  /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
1311
1303
  SelectedFilesStandard_default,
1312
1304
  {
@@ -1556,86 +1548,6 @@ function groupQuestionsByStepCategoryGroup(questions, steps, validationErrorsLis
1556
1548
  }
1557
1549
  var GroupQuestionsByStepCategoryGroup_default = groupQuestionsByStepCategoryGroup;
1558
1550
 
1559
- // src/NewHelpMethodsStandard/ApplicationContentSlice/applicationContentSlice.ts
1560
- var import_toolkit = require("@reduxjs/toolkit");
1561
- var pickLang = (cfg, lang) => {
1562
- var _a;
1563
- return (_a = cfg.languageSupport.find((l) => l.language === lang)) != null ? _a : cfg.languageSupport[0];
1564
- };
1565
- var createLanguageSlice = (initialConfig, options) => {
1566
- var _a;
1567
- const name = (_a = options == null ? void 0 : options.name) != null ? _a : "applicationContent";
1568
- const initialLang = pickLang(initialConfig, initialConfig.activatedLanguage);
1569
- const initialState = {
1570
- activatedLanguage: initialConfig.activatedLanguage,
1571
- languageSupport: initialConfig.languageSupport,
1572
- languageSupportLoaded: true,
1573
- backButton: initialLang.backButton,
1574
- forwardButton: initialLang.forwardButton,
1575
- sendButton: initialLang.sendButton
1576
- };
1577
- const slice = (0, import_toolkit.createSlice)({
1578
- name,
1579
- initialState,
1580
- reducers: {
1581
- setActivatedLanguage: (state, action) => {
1582
- state.activatedLanguage = action.payload;
1583
- const lang = pickLang(
1584
- { activatedLanguage: state.activatedLanguage, languageSupport: state.languageSupport },
1585
- action.payload
1586
- );
1587
- state.backButton = lang.backButton;
1588
- state.forwardButton = lang.forwardButton;
1589
- state.sendButton = lang.sendButton;
1590
- },
1591
- setLabelsFromLanguageEntry: (state, action) => {
1592
- state.backButton = action.payload.backButton;
1593
- state.forwardButton = action.payload.forwardButton;
1594
- state.sendButton = action.payload.sendButton;
1595
- },
1596
- replaceLanguageSupport: (state, action) => {
1597
- state.languageSupport = action.payload.languageSupport;
1598
- state.activatedLanguage = action.payload.activatedLanguage;
1599
- const lang = pickLang(action.payload, action.payload.activatedLanguage);
1600
- state.backButton = lang.backButton;
1601
- state.forwardButton = lang.forwardButton;
1602
- state.sendButton = lang.sendButton;
1603
- state.languageSupportLoaded = true;
1604
- }
1605
- }
1606
- });
1607
- return slice;
1608
- };
1609
- var makeLanguageSelectors = (selectSlice) => {
1610
- const selectState = selectSlice;
1611
- const selectActivatedLanguage = (state) => selectState(state).activatedLanguage;
1612
- const selectLanguageSupportLoaded = (state) => selectState(state).languageSupportLoaded;
1613
- const selectLanguageSupport = (state) => selectState(state).languageSupport;
1614
- const selectOverallContentState = (state) => selectState(state);
1615
- const selectOverallContentFromLanguageSupport = (0, import_toolkit.createSelector)(
1616
- [selectState, (_, activatedLanguage) => activatedLanguage],
1617
- (applicationContent, activatedLanguage) => {
1618
- const match = applicationContent.languageSupport.find(
1619
- (l) => l.language === activatedLanguage
1620
- );
1621
- if (!match) return { ...applicationContent };
1622
- return {
1623
- ...applicationContent,
1624
- backButton: match.backButton,
1625
- forwardButton: match.forwardButton,
1626
- sendButton: match.sendButton
1627
- };
1628
- }
1629
- );
1630
- return {
1631
- selectActivatedLanguage,
1632
- selectLanguageSupportLoaded,
1633
- selectLanguageSupport,
1634
- selectOverallContentState,
1635
- selectOverallContentFromLanguageSupport
1636
- };
1637
- };
1638
-
1639
1551
  // src/NewRenderFormComponentStandard/RenderQuestion/RenderQuestion.tsx
1640
1552
  var import_jsx_runtime12 = require("react/jsx-runtime");
1641
1553
  var RenderQuestion = ({
@@ -1731,7 +1643,7 @@ var RenderQuestionGroup = ({
1731
1643
  "aria-describedby": questionArray[0].hasValidationError ? `${questionArray[0].id}-error` : void 0,
1732
1644
  children: [
1733
1645
  legend && /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("legend", { children: [
1734
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("span", { children: legend }),
1646
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("span", { className: "pts-legend", children: legend }),
1735
1647
  questionArray[0].hasValidationError && /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("span", { className: "sr-only", children: [
1736
1648
  "Valideringsfel. ",
1737
1649
  questionArray[0].validationDefaultMessesege
@@ -2925,7 +2837,5 @@ var CookieBanner_default = CookieBanner;
2925
2837
  TextFieldStandard,
2926
2838
  TextHeadlineAndBodyStandard,
2927
2839
  ValidationCheckAllVisibleQuestion,
2928
- ValidationErrorSummaryList,
2929
- createLanguageSlice,
2930
- makeLanguageSelectors
2840
+ ValidationErrorSummaryList
2931
2841
  });
package/dist/index.mjs CHANGED
@@ -693,12 +693,12 @@ var FilesUploadStandard_default = FilesUpload;
693
693
 
694
694
  // src/NewInputComponentStandard/AddFilesStandard/AddFilesStandard.tsx
695
695
  import { useCallback, useEffect as useEffect5, useState as useState5 } from "react";
696
- import clsx5 from "clsx";
696
+ import clsx4 from "clsx";
697
697
 
698
698
  // src/NewInputComponentStandard/AddFilesStandard/DropFilesStandard.tsx
699
699
  import { useDropzone } from "react-dropzone";
700
700
  import { Fragment as Fragment6, jsx as jsx6, jsxs as jsxs6 } from "react/jsx-runtime";
701
- var DropFiles = ({ FilesSelected, DropFilesText = "Dra och sl\xE4pp dina filer h\xE4r" }) => {
701
+ var DropFiles = ({ FilesSelected, DropFilesText = "Dra och sl\xE4pp dina filer h\xE4r", language }) => {
702
702
  const onDrop = FilesSelected;
703
703
  const { getRootProps, getInputProps, isDragActive } = useDropzone({ onDrop, noKeyboard: true });
704
704
  const handleFileExplorer = (event) => {
@@ -719,34 +719,22 @@ var DropFiles = ({ FilesSelected, DropFilesText = "Dra och sl\xE4pp dina filer h
719
719
  }
720
720
  )
721
721
  ] }),
722
- isDragActive ? /* @__PURE__ */ jsx6("b", { className: "dropFilesNowText", children: "Sl\xE4pp filerna, nu ...!" }) : /* @__PURE__ */ jsxs6(Fragment6, { children: [
723
- /* @__PURE__ */ jsxs6(
722
+ isDragActive ? /* @__PURE__ */ jsx6("b", { className: "dropFilesNowText", children: language === "sv" ? "Sl\xE4pp filerna, nu ...!" : "Drop files here!" }) : /* @__PURE__ */ jsxs6("div", { className: "DropZone-label-container", children: [
723
+ /* @__PURE__ */ jsx6(
724
724
  "svg",
725
725
  {
726
- "aria-hidden": "true",
727
726
  xmlns: "http://www.w3.org/2000/svg",
728
- width: "72",
729
- height: "48",
730
- viewBox: "0 0 72 48",
731
- fill: "none",
732
- children: [
733
- /* @__PURE__ */ jsx6("g", { clipPath: "url(#clip0_247_596)", children: /* @__PURE__ */ jsx6(
734
- "path",
735
- {
736
- d: "M66.6084 23.0844C64.6397 21.6247 62.2209 20.5531 59.6672 19.9752C59.2479 19.8808 58.8641 19.6692 58.5605 19.3649C58.257 19.0606 58.0463 18.6763 57.953 18.2567C56.8561 13.37 54.495 9.1794 51.0244 6.00409C46.9898 2.30706 41.6545 0.273621 36 0.273621C31.0289 0.273621 26.4375 1.83174 22.7292 4.78065C20.216 6.78238 18.193 9.33154 16.8145 12.2338C16.6651 12.5513 16.4434 12.8295 16.1672 13.0461C15.8911 13.2627 15.5681 13.4117 15.2241 13.4811C11.4623 14.2405 8.06625 15.8535 5.47312 18.1386C1.89281 21.3027 0 25.5088 0 30.3111C0 35.1655 2.03766 39.5924 5.73609 42.793C9.26859 45.8431 14.0245 47.5236 19.125 47.5236H33.75V25.956L28.5905 31.1155C28.3751 31.3309 28.1182 31.5003 27.8354 31.6134C27.5525 31.7266 27.2497 31.7811 26.9452 31.7738C26.6406 31.7664 26.3408 31.6973 26.0638 31.5706C25.7867 31.4439 25.5383 31.2623 25.3336 31.0367C24.518 30.141 24.5967 28.7446 25.4531 27.8881L34.4095 18.9331C34.8314 18.5115 35.4035 18.2747 36 18.2747C36.5965 18.2747 37.1686 18.5115 37.5905 18.9331L46.5469 27.8853C47.43 28.7699 47.4806 30.2197 46.6017 31.107C46.3932 31.3176 46.1451 31.485 45.8718 31.5994C45.5984 31.7139 45.3051 31.7732 45.0088 31.774C44.7124 31.7748 44.4188 31.717 44.1449 31.604C43.8709 31.491 43.622 31.325 43.4123 31.1155L38.25 25.956V47.5236H55.6875C60.0947 47.5236 64.1124 46.2861 67.0008 44.0403C70.2717 41.495 72 37.8528 72 33.5174C72 29.3071 70.1353 25.6972 66.6084 23.0844Z",
737
- fill: "#6E3282"
738
- }
739
- ) }),
740
- /* @__PURE__ */ jsx6("defs", { children: /* @__PURE__ */ jsx6("clipPath", { id: "clip0_247_596", children: /* @__PURE__ */ jsx6(
741
- "rect",
742
- {
743
- width: "72",
744
- height: "47.1064",
745
- fill: "white",
746
- transform: "translate(0 0.446777)"
747
- }
748
- ) }) })
749
- ]
727
+ width: "2.4rem",
728
+ height: "2.4rem",
729
+ viewBox: "0 0 7 15",
730
+ fill: "#fff",
731
+ children: /* @__PURE__ */ jsx6(
732
+ "path",
733
+ {
734
+ d: "M0 2.5C0 1.83696 0.263392 1.20107 0.732233 0.732233C1.20107 0.263392 1.83696 0 2.5 0C3.16304 0 3.79893 0.263392 4.26777 0.732233C4.73661 1.20107 5 1.83696 5 2.5V11.5C5 11.8978 4.84196 12.2794 4.56066 12.5607C4.27936 12.842 3.89782 13 3.5 13C3.10218 13 2.72064 12.842 2.43934 12.5607C2.15804 12.2794 2 11.8978 2 11.5V4.5C2 4.36739 2.05268 4.24021 2.14645 4.14645C2.24021 4.05268 2.36739 4 2.5 4C2.63261 4 2.75979 4.05268 2.85355 4.14645C2.94732 4.24021 3 4.36739 3 4.5V11.5C3 11.6326 3.05268 11.7598 3.14645 11.8536C3.24021 11.9473 3.36739 12 3.5 12C3.63261 12 3.75979 11.9473 3.85355 11.8536C3.94732 11.7598 4 11.6326 4 11.5V2.5C4 2.30302 3.9612 2.10796 3.88582 1.92597C3.81044 1.74399 3.69995 1.57863 3.56066 1.43934C3.42137 1.30005 3.25601 1.18956 3.07403 1.11418C2.89204 1.0388 2.69698 1 2.5 1C2.30302 1 2.10796 1.0388 1.92597 1.11418C1.74399 1.18956 1.57863 1.30005 1.43934 1.43934C1.30005 1.57863 1.18956 1.74399 1.11418 1.92597C1.0388 2.10796 1 2.30302 1 2.5V11.5C1 12.163 1.26339 12.7989 1.73223 13.2678C2.20107 13.7366 2.83696 14 3.5 14C4.16304 14 4.79893 13.7366 5.26777 13.2678C5.73661 12.7989 6 12.163 6 11.5V4.5C6 4.36739 6.05268 4.24021 6.14645 4.14645C6.24021 4.05268 6.36739 4 6.5 4C6.63261 4 6.75979 4.05268 6.85355 4.14645C6.94732 4.24021 7 4.36739 7 4.5V11.5C7 12.4283 6.63125 13.3185 5.97487 13.9749C5.3185 14.6313 4.42826 15 3.5 15C2.57174 15 1.6815 14.6313 1.02513 13.9749C0.368749 13.3185 0 12.4283 0 11.5V2.5Z",
735
+ fill: "#fff"
736
+ }
737
+ )
750
738
  }
751
739
  ),
752
740
  /* @__PURE__ */ jsx6("p", { className: "dropFilesText", children: DropFilesText })
@@ -882,7 +870,6 @@ var Indicator = (filename) => {
882
870
  var IndicatorStandard_default = Indicator;
883
871
 
884
872
  // src/NewInputComponentStandard/AddFilesStandard/SelectedFilesStandard.tsx
885
- import clsx4 from "clsx";
886
873
  import { Fragment as Fragment10, jsx as jsx10, jsxs as jsxs8 } from "react/jsx-runtime";
887
874
  var SelectedFiles = ({
888
875
  questionObject,
@@ -924,53 +911,57 @@ var SelectedFiles = ({
924
911
  };
925
912
  const windowWidth = useWindowWidth();
926
913
  return /* @__PURE__ */ jsxs8(Fragment10, { children: [
927
- /* @__PURE__ */ jsxs8("div", { children: [
928
- errorMessageAddingFile.length > 0 && /* @__PURE__ */ jsxs8("ul", { "aria-hidden": true, className: "fileListUnorderedList", children: [
929
- " ",
930
- errorMessageAddingFile.map((errorObj, index) => {
931
- const errorFileName = errorObj.FileName;
932
- let mobileFirstFileName = errorObj.FileName.split(".").shift();
933
- mobileFirstFileName = mobileFirstFileName.length > 8 ? mobileFirstFileName.substring(0, 8) + ".." : mobileFirstFileName;
934
- const fileType = errorObj.FileName.split(".").pop();
935
- mobileFirstFileName = mobileFirstFileName + "." + fileType;
936
- return /* @__PURE__ */ jsx10("li", { children: /* @__PURE__ */ jsx10(React5.Fragment, { children: /* @__PURE__ */ jsx10("div", { children: /* @__PURE__ */ jsx10("div", { className: "fileInListContainer", children: /* @__PURE__ */ jsxs8("div", { className: "fileInList", children: [
937
- /* @__PURE__ */ jsxs8(Row, { children: [
938
- /* @__PURE__ */ jsx10(Col, { style: { maxWidth: "30px" }, children: /* @__PURE__ */ jsx10(
939
- "span",
940
- {
941
- "aria-hidden": "true",
942
- className: clsx4("uploadedDot", "uploadFailed"),
943
- children: "!"
944
- }
945
- ) }),
946
- /* @__PURE__ */ jsx10(Col, { children: windowWidth < 768 ? /* @__PURE__ */ jsx10("span", { className: "mobileFirstFileName", children: mobileFirstFileName }) : /* @__PURE__ */ jsx10("span", { className: "desktopFileName", children: errorObj.FileName }) }),
947
- /* @__PURE__ */ jsx10(Col, { className: "lastCol" })
948
- ] }),
949
- /* @__PURE__ */ jsx10(Row, { children: /* @__PURE__ */ jsx10(
950
- Col,
951
- {
952
- style: {
953
- width: "100%",
954
- color: "#8e0039"
955
- },
956
- className: "errorMessageAddingFile",
957
- ...activatedLanguage === "sv" ? {
958
- "aria-label": `${errorFileName} ${errorObj.svMessage}`
959
- } : {
960
- "aria-label": `${errorFileName} ${errorObj.enMessage}`
961
- },
962
- children: activatedLanguage === "sv" ? errorObj.svMessage : errorObj.enMessage
963
- }
964
- ) }),
965
- /* @__PURE__ */ jsx10(Row, { style: { marginTop: "12px", marginBottom: "12px" }, children: /* @__PURE__ */ jsx10(Col, { className: "makeSpace" }) })
966
- ] }, index) }) }) }, `error-${errorObj.FileName}-${index}`) });
967
- })
968
- ] }),
969
- errorMessageAddingFile.length > 0 && /* @__PURE__ */ jsxs8("button", { onClick: removeUploadErrors, className: "errorMessageAddingFile", children: [
970
- /* @__PURE__ */ jsx10("span", { "aria-hidden": true, className: "errorDot", children: "X" }),
971
- /* @__PURE__ */ jsx10("span", { className: "sr-only", children: "Ta bort felmeddelande f\xF6r uppladdning av filer" })
972
- ] })
973
- ] }),
914
+ /* @__PURE__ */ jsx10("div", { children: errorMessageAddingFile.length > 0 && /* @__PURE__ */ jsxs8("div", { className: "pts-errorSummary-container pts-addFile-error-container", children: [
915
+ /* @__PURE__ */ jsx10("span", { "aria-hidden": "true", className: "errorDot", children: "!" }),
916
+ /* @__PURE__ */ jsx10("div", { className: "addFile-error-list-container", children: /* @__PURE__ */ jsxs8(
917
+ "ul",
918
+ {
919
+ "aria-hidden": true,
920
+ className: "fileListUnorderedList",
921
+ id: "errorSummary-ul",
922
+ children: [
923
+ " ",
924
+ errorMessageAddingFile.map((errorObj, index) => {
925
+ const errorFileName = errorObj.FileName;
926
+ let mobileFirstFileName = errorObj.FileName.split(".").shift();
927
+ mobileFirstFileName = mobileFirstFileName.length > 8 ? mobileFirstFileName.substring(0, 8) + ".." : mobileFirstFileName;
928
+ const fileType = errorObj.FileName.split(".").pop();
929
+ mobileFirstFileName = mobileFirstFileName + "." + fileType;
930
+ return /* @__PURE__ */ jsx10("li", { children: /* @__PURE__ */ jsx10(React5.Fragment, { children: /* @__PURE__ */ jsx10("div", { children: /* @__PURE__ */ jsx10("div", { className: "fileInListContainer", children: /* @__PURE__ */ jsxs8("div", { className: "fileInList", children: [
931
+ /* @__PURE__ */ jsx10(Row, { children: /* @__PURE__ */ jsx10(Col, { children: windowWidth < 768 ? /* @__PURE__ */ jsx10("span", { className: "mobileFirstFileName", children: mobileFirstFileName }) : /* @__PURE__ */ jsx10("span", { className: "desktopFileName", children: errorObj.FileName }) }) }),
932
+ /* @__PURE__ */ jsx10(Row, { children: /* @__PURE__ */ jsx10(
933
+ Col,
934
+ {
935
+ style: {
936
+ width: "100%",
937
+ color: "#8e0039"
938
+ },
939
+ className: "errorMessageAddingFile",
940
+ ...activatedLanguage === "sv" ? {
941
+ "aria-label": `${errorFileName} ${errorObj.svMessage}`
942
+ } : {
943
+ "aria-label": `${errorFileName} ${errorObj.enMessage}`
944
+ },
945
+ children: activatedLanguage === "sv" ? errorObj.svMessage : errorObj.enMessage
946
+ }
947
+ ) })
948
+ ] }, index) }) }) }, `error-${errorObj.FileName}-${index}`) });
949
+ })
950
+ ]
951
+ }
952
+ ) }),
953
+ /* @__PURE__ */ jsx10("div", { className: "addFile-error-close-button", children: /* @__PURE__ */ jsx10(
954
+ "button",
955
+ {
956
+ className: "selectedFilesLinkButton error-close",
957
+ onClick: () => {
958
+ removeError();
959
+ },
960
+ "aria-label": activatedLanguage === "sv" ? `St\xE4ng felmeddelandet` : `Close error message`,
961
+ children: activatedLanguage === "sv" ? "St\xE4ng" : "Close"
962
+ }
963
+ ) })
964
+ ] }) }),
974
965
  questionObject.files.length > 0 && /* @__PURE__ */ jsx10("ul", { className: "fileListUnorderedList", "aria-label": "Uppladdade filer", children: questionObject.files.map((file, index) => {
975
966
  const indicatorfileName = file.FileName;
976
967
  let mobileFirstFileName = file.FileName.split(".").shift();
@@ -978,7 +969,7 @@ var SelectedFiles = ({
978
969
  const fileType = file.FileName.split(".").pop();
979
970
  mobileFirstFileName = mobileFirstFileName + "." + fileType;
980
971
  return /* @__PURE__ */ jsx10("li", { children: /* @__PURE__ */ jsx10(React5.Fragment, { children: /* @__PURE__ */ jsx10("div", { children: /* @__PURE__ */ jsx10("div", { className: "fileInListContainer", children: /* @__PURE__ */ jsxs8("div", { className: "fileInList", children: [
981
- /* @__PURE__ */ jsxs8(Row, { children: [
972
+ /* @__PURE__ */ jsxs8(Row, { className: "fileItem", children: [
982
973
  /* @__PURE__ */ jsx10(Col, { style: { maxWidth: "30px" }, children: /* @__PURE__ */ jsx10("span", { "aria-hidden": "true", className: "uploadedDot", children: /* @__PURE__ */ jsx10(
983
974
  "svg",
984
975
  {
@@ -1192,10 +1183,13 @@ var AddFiles = ({
1192
1183
  const removeFileFromNumberOfFiles = (newCount) => {
1193
1184
  setNumberOfFiles(newCount);
1194
1185
  };
1195
- const removeError = (errorIndex) => {
1186
+ const removeOneError = (errorIndex) => {
1196
1187
  let newErrors = errorMessageAddingFile.filter((e, index) => index !== errorIndex);
1197
1188
  setErrorMessageAddingFile(newErrors);
1198
1189
  };
1190
+ const removeError = () => {
1191
+ setErrorMessageAddingFile([]);
1192
+ };
1199
1193
  const handleRemoveErrors = () => {
1200
1194
  setErrorMessageAddingFile([]);
1201
1195
  };
@@ -1205,7 +1199,7 @@ var AddFiles = ({
1205
1199
  "p",
1206
1200
  {
1207
1201
  id: aboutId,
1208
- className: clsx5(
1202
+ className: clsx4(
1209
1203
  "addFilesMandatory",
1210
1204
  questionObject.hasValidationError ? " error" : ""
1211
1205
  ),
@@ -1239,7 +1233,7 @@ var AddFiles = ({
1239
1233
  removeUploadErrors: handleRemoveErrors
1240
1234
  }
1241
1235
  ),
1242
- /* @__PURE__ */ jsx11(DropFilesStandard_default, { FilesSelected: onDrop, DropFilesText: dropFilesText }),
1236
+ /* @__PURE__ */ jsx11(DropFilesStandard_default, { FilesSelected: onDrop, DropFilesText: dropFilesText, language: activatedLanguage }),
1243
1237
  /* @__PURE__ */ jsx11(
1244
1238
  SelectedFilesStandard_default,
1245
1239
  {
@@ -1489,86 +1483,6 @@ function groupQuestionsByStepCategoryGroup(questions, steps, validationErrorsLis
1489
1483
  }
1490
1484
  var GroupQuestionsByStepCategoryGroup_default = groupQuestionsByStepCategoryGroup;
1491
1485
 
1492
- // src/NewHelpMethodsStandard/ApplicationContentSlice/applicationContentSlice.ts
1493
- import { createSlice, createSelector } from "@reduxjs/toolkit";
1494
- var pickLang = (cfg, lang) => {
1495
- var _a;
1496
- return (_a = cfg.languageSupport.find((l) => l.language === lang)) != null ? _a : cfg.languageSupport[0];
1497
- };
1498
- var createLanguageSlice = (initialConfig, options) => {
1499
- var _a;
1500
- const name = (_a = options == null ? void 0 : options.name) != null ? _a : "applicationContent";
1501
- const initialLang = pickLang(initialConfig, initialConfig.activatedLanguage);
1502
- const initialState = {
1503
- activatedLanguage: initialConfig.activatedLanguage,
1504
- languageSupport: initialConfig.languageSupport,
1505
- languageSupportLoaded: true,
1506
- backButton: initialLang.backButton,
1507
- forwardButton: initialLang.forwardButton,
1508
- sendButton: initialLang.sendButton
1509
- };
1510
- const slice = createSlice({
1511
- name,
1512
- initialState,
1513
- reducers: {
1514
- setActivatedLanguage: (state, action) => {
1515
- state.activatedLanguage = action.payload;
1516
- const lang = pickLang(
1517
- { activatedLanguage: state.activatedLanguage, languageSupport: state.languageSupport },
1518
- action.payload
1519
- );
1520
- state.backButton = lang.backButton;
1521
- state.forwardButton = lang.forwardButton;
1522
- state.sendButton = lang.sendButton;
1523
- },
1524
- setLabelsFromLanguageEntry: (state, action) => {
1525
- state.backButton = action.payload.backButton;
1526
- state.forwardButton = action.payload.forwardButton;
1527
- state.sendButton = action.payload.sendButton;
1528
- },
1529
- replaceLanguageSupport: (state, action) => {
1530
- state.languageSupport = action.payload.languageSupport;
1531
- state.activatedLanguage = action.payload.activatedLanguage;
1532
- const lang = pickLang(action.payload, action.payload.activatedLanguage);
1533
- state.backButton = lang.backButton;
1534
- state.forwardButton = lang.forwardButton;
1535
- state.sendButton = lang.sendButton;
1536
- state.languageSupportLoaded = true;
1537
- }
1538
- }
1539
- });
1540
- return slice;
1541
- };
1542
- var makeLanguageSelectors = (selectSlice) => {
1543
- const selectState = selectSlice;
1544
- const selectActivatedLanguage = (state) => selectState(state).activatedLanguage;
1545
- const selectLanguageSupportLoaded = (state) => selectState(state).languageSupportLoaded;
1546
- const selectLanguageSupport = (state) => selectState(state).languageSupport;
1547
- const selectOverallContentState = (state) => selectState(state);
1548
- const selectOverallContentFromLanguageSupport = createSelector(
1549
- [selectState, (_, activatedLanguage) => activatedLanguage],
1550
- (applicationContent, activatedLanguage) => {
1551
- const match = applicationContent.languageSupport.find(
1552
- (l) => l.language === activatedLanguage
1553
- );
1554
- if (!match) return { ...applicationContent };
1555
- return {
1556
- ...applicationContent,
1557
- backButton: match.backButton,
1558
- forwardButton: match.forwardButton,
1559
- sendButton: match.sendButton
1560
- };
1561
- }
1562
- );
1563
- return {
1564
- selectActivatedLanguage,
1565
- selectLanguageSupportLoaded,
1566
- selectLanguageSupport,
1567
- selectOverallContentState,
1568
- selectOverallContentFromLanguageSupport
1569
- };
1570
- };
1571
-
1572
1486
  // src/NewRenderFormComponentStandard/RenderQuestion/RenderQuestion.tsx
1573
1487
  import { Fragment as Fragment12, jsx as jsx12, jsxs as jsxs10 } from "react/jsx-runtime";
1574
1488
  var RenderQuestion = ({
@@ -1664,7 +1578,7 @@ var RenderQuestionGroup = ({
1664
1578
  "aria-describedby": questionArray[0].hasValidationError ? `${questionArray[0].id}-error` : void 0,
1665
1579
  children: [
1666
1580
  legend && /* @__PURE__ */ jsxs11("legend", { children: [
1667
- /* @__PURE__ */ jsx13("span", { children: legend }),
1581
+ /* @__PURE__ */ jsx13("span", { className: "pts-legend", children: legend }),
1668
1582
  questionArray[0].hasValidationError && /* @__PURE__ */ jsxs11("span", { className: "sr-only", children: [
1669
1583
  "Valideringsfel. ",
1670
1584
  questionArray[0].validationDefaultMessesege
@@ -2857,7 +2771,5 @@ export {
2857
2771
  TextFieldStandard_default as TextFieldStandard,
2858
2772
  TextHeadlineAndBodyStandard_default as TextHeadlineAndBodyStandard,
2859
2773
  ValidationCheckAllVisibleQuestion_default as ValidationCheckAllVisibleQuestion,
2860
- ValidationErrorSummaryList_default as ValidationErrorSummaryList,
2861
- createLanguageSlice,
2862
- makeLanguageSelectors
2774
+ ValidationErrorSummaryList_default as ValidationErrorSummaryList
2863
2775
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "optimized-react-component-library-xyz123",
3
- "version": "0.1.91",
3
+ "version": "0.1.92",
4
4
  "description": "A modern React component library using TypeScript with React 19 support.",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -66,7 +66,6 @@
66
66
  "vitest": "^2.0.0"
67
67
  },
68
68
  "dependencies": {
69
- "@reduxjs/toolkit": "^2.10.1",
70
69
  "clsx": "^2.1.1",
71
70
  "date-fns": "^4.1.0",
72
71
  "dompurify": "^3.2.6",
@@ -155,15 +155,6 @@ fieldset {
155
155
  margin-bottom: 3.6rem;
156
156
  }
157
157
 
158
- .pts-root-question legend {
159
- font-family: Arial;
160
- font-size: 1.6rem;
161
- font-style: normal;
162
- font-weight: 400;
163
- line-height: 20px;
164
- margin-bottom: 0.8rem;
165
- }
166
-
167
158
  .pts-root-question legend,
168
159
  .pts-root-question label,
169
160
  .pts-radio-option {
@@ -172,6 +163,14 @@ fieldset {
172
163
  cursor: pointer;
173
164
  margin-bottom: 0.6rem;
174
165
  }
166
+ .pts-root-question legend {
167
+ font-family: Arial;
168
+ font-size: 1.6rem;
169
+ font-style: normal;
170
+ font-weight: 400;
171
+ line-height: 20px;
172
+ margin: 0.8rem 0 0.8rem 0;
173
+ }
175
174
 
176
175
  .pts-root-about {
177
176
  font-size: 1.4rem;
@@ -1498,6 +1497,20 @@ dd {
1498
1497
  opacity: 0.9;
1499
1498
  cursor: copy;
1500
1499
  }
1500
+
1501
+ .DropZone-label-container{
1502
+ display: flex;
1503
+ }
1504
+
1505
+ .DropZone svg {
1506
+ border-radius: 50%;
1507
+ background: var(--purple-purple-900-primary, #6E3282);
1508
+ border: 2px solid #6E3282;
1509
+ margin-top: 17px;
1510
+ margin-right: 16px;
1511
+ }
1512
+
1513
+
1501
1514
  .ClipboardLink {
1502
1515
  display: block;
1503
1516
  position: relative;
@@ -1511,6 +1524,8 @@ dd {
1511
1524
  cursor: pointer;
1512
1525
  }
1513
1526
 
1527
+
1528
+
1514
1529
  /* SelectedFiles.tsx */
1515
1530
 
1516
1531
  .makeTopSpace {
@@ -1578,7 +1593,7 @@ dd {
1578
1593
  }
1579
1594
 
1580
1595
  .fileInListContainer {
1581
- max-width: 624px;
1596
+ /* max-width: 624px;*/
1582
1597
  }
1583
1598
 
1584
1599
  .fileListUnorderedList {
@@ -1611,6 +1626,11 @@ dd {
1611
1626
  justify-content: flex-end;
1612
1627
  }
1613
1628
 
1629
+ .fileItem{
1630
+ display: grid;
1631
+ grid-template-columns: 1fr 90% 1fr;
1632
+ }
1633
+
1614
1634
  .fileInList .makeSpace {
1615
1635
  border-bottom: 1px solid #747474;
1616
1636
  /* margin-top: 24px; */
@@ -1707,18 +1727,20 @@ dd {
1707
1727
  }
1708
1728
 
1709
1729
  .uploadedDot {
1710
- border-radius: 17px;
1711
- background: var(--red-green-green, #008e55);
1712
- display: flex;
1713
- width: 16px;
1714
- height: 16px;
1715
- padding: 10px;
1716
- flex-direction: column;
1717
- justify-content: center;
1718
- align-items: center;
1719
- gap: 10px;
1720
- flex-shrink: 0;
1730
+ border-radius: 17px;
1731
+ background: var(--red-green-green, #008e55);
1732
+ display: flex;
1733
+ width: 1rem;
1734
+ height: 1rem;
1735
+ padding: 4px;
1736
+ margin: 0 8px 10px 0;
1737
+ }
1738
+
1739
+ .uploadedDot svg{
1740
+ width: 1rem;
1741
+ height: 1rem;
1721
1742
  }
1743
+
1722
1744
  .uploadedDot.uploadFailed {
1723
1745
  background: var(--red-green-red, #8e0039);
1724
1746
 
@@ -1940,6 +1962,32 @@ dd {
1940
1962
  margin-bottom: 0px;
1941
1963
  }
1942
1964
 
1965
+ .pts-addFile-error-container{
1966
+ display: inline-flex;
1967
+ width: 100%;
1968
+ }
1969
+ .pts-addFile-error-container li{
1970
+ display: flex;
1971
+ cursor: none;
1972
+ padding: 0 20px 1.6rem 0;
1973
+ width: 100%;
1974
+ margin-bottom: 1.6rem;
1975
+ }
1976
+ .desktopFileName {
1977
+ display: block;
1978
+ margin-bottom: 0.6rem;
1979
+ }
1980
+
1981
+ .error-close{
1982
+ color: #8E0039;
1983
+ font-weight: 400;
1984
+ line-height: 24px;
1985
+ background: #fff;
1986
+ border: none;
1987
+ cursor: pointer;
1988
+ font-size: 1.6rem;
1989
+ }
1990
+
1943
1991
  /* preview */
1944
1992
 
1945
1993
  /* .addFilesPreviewContainer {