@arbetsformedlingen/yrkesvaljaren 2.0.12 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +38 -21
- package/dist/cjs/{af-validation-message-Cy89nVEv.js → af-validation-message-BdR9X_qh.js} +1 -1
- package/dist/cjs/core-selector.cjs.entry.js +342 -23
- package/dist/cjs/digi-service-job-selector.cjs.entry.js +352 -61
- package/dist/cjs/{index-hZgOvC17.js → index-DMQDFAL7.js} +0 -22
- package/dist/cjs/index.cjs.js +4 -7
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/{esm/fuse-BPnhMTul.js → cjs/types-DdzCbiye.js} +965 -1
- package/dist/cjs/yrkesvaljaren.cjs.js +2 -2
- package/dist/collection/collection-manifest.json +0 -1
- package/dist/collection/components/core-selector/core-selector.css +26 -1
- package/dist/collection/components/core-selector/core-selector.js +309 -14
- package/dist/collection/components/design-compat/af-icon.js +8 -7
- package/dist/collection/components/job-selector/job-selector-controller.js +13 -3
- package/dist/collection/components/job-selector/job-selector.css +154 -1
- package/dist/collection/components/job-selector/job-selector.js +199 -10
- package/dist/components/core-selector2.js +1 -1
- package/dist/components/digi-service-job-selector.js +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/types.js +1 -1
- package/dist/esm/{af-validation-message-BgoGzzBf.js → af-validation-message-DMoOu-0k.js} +1 -1
- package/dist/esm/core-selector.entry.js +342 -23
- package/dist/esm/digi-service-job-selector.entry.js +310 -19
- package/dist/esm/{index-HNd02eQb.js → index-vJ-tamti.js} +1 -22
- package/dist/esm/index.js +2 -4
- package/dist/esm/loader.js +3 -3
- package/dist/{cjs/fuse-BTLNKxuL.js → esm/types-DVos4HHS.js} +948 -2
- package/dist/esm/yrkesvaljaren.js +3 -3
- package/dist/types/components/core-selector/core-selector.d.ts +68 -0
- package/dist/types/components/job-selector/job-selector-controller.d.ts +5 -0
- package/dist/types/components/job-selector/job-selector.d.ts +21 -3
- package/dist/types/components/job-selector/types.d.ts +12 -0
- package/dist/types/components.d.ts +20 -99
- package/dist/types/index.d.ts +1 -1
- package/dist/vendor/taxonomy-core/af-data-layer.d.ts +16 -0
- package/dist/vendor/taxonomy-core/af-data-layer.js +24 -0
- package/dist/vendor/taxonomy-core/index.d.ts +1 -1
- package/dist/vendor/taxonomy-core/index.js +1 -1
- package/dist/vendor/taxonomy-core/pii-sanitizer.d.ts +25 -0
- package/dist/vendor/taxonomy-core/pii-sanitizer.js +137 -0
- package/dist/vendor/taxonomy-core/selector-navigation.d.ts +9 -1
- package/dist/vendor/taxonomy-core/selector-navigation.js +28 -1
- package/dist/vendor/taxonomy-core/selector-types.d.ts +12 -0
- package/dist/yrkesvaljaren/index.esm.js +1 -1
- package/dist/yrkesvaljaren/p-4f5b36c5.entry.js +1 -0
- package/dist/yrkesvaljaren/{p-BUviBbwX.js → p-DHK95AvZ.js} +1 -1
- package/dist/yrkesvaljaren/p-DVos4HHS.js +1 -0
- package/dist/yrkesvaljaren/p-ff349084.entry.js +1 -0
- package/dist/yrkesvaljaren/p-vJ-tamti.js +3 -0
- package/dist/yrkesvaljaren/yrkesvaljaren.esm.js +1 -1
- package/package.json +10 -10
- package/dist/cjs/geo-valjaren.cjs.entry.js +0 -14910
- package/dist/cjs/job-selector-demo.cjs.entry.js +0 -690
- package/dist/cjs/neobrutal-search.cjs.entry.js +0 -171
- package/dist/cjs/search.engine-D4cpbVzd.js +0 -504
- package/dist/cjs/taxonomy-registry-Dzt0SPzT.js +0 -454
- package/dist/cjs/types-CtHBl6Ra.js +0 -14
- package/dist/collection/components/geovaljaren/geovaljaren.css +0 -21
- package/dist/collection/components/geovaljaren/geovaljaren.js +0 -304
- package/dist/collection/components/geovaljaren/logic/adapter.utils.js +0 -20
- package/dist/collection/components/geovaljaren/logic/data.utils.js +0 -12
- package/dist/collection/components/geovaljaren/logic/history-service.js +0 -25
- package/dist/collection/components/geovaljaren/logic/search.engine.js +0 -28
- package/dist/collection/verkstad/verkstad.js +0 -408
- package/dist/components/fuse.js +0 -1
- package/dist/components/geo-valjaren.d.ts +0 -11
- package/dist/components/geo-valjaren.js +0 -1
- package/dist/components/job-selector-demo.d.ts +0 -11
- package/dist/components/job-selector-demo.js +0 -1
- package/dist/components/job-selector.js +0 -1
- package/dist/components/neobrutal-search.d.ts +0 -11
- package/dist/components/neobrutal-search.js +0 -1
- package/dist/components/search.engine.js +0 -1
- package/dist/esm/geo-valjaren.entry.js +0 -14908
- package/dist/esm/job-selector-demo.entry.js +0 -688
- package/dist/esm/neobrutal-search.entry.js +0 -169
- package/dist/esm/search.engine-BaWUTc3r.js +0 -493
- package/dist/esm/taxonomy-registry-C-pSh51L.js +0 -449
- package/dist/esm/types-DHUftoZJ.js +0 -12
- package/dist/types/components/geovaljaren/geovaljaren.d.ts +0 -24
- package/dist/types/components/geovaljaren/logic/adapter.utils.d.ts +0 -7
- package/dist/types/components/geovaljaren/logic/data.utils.d.ts +0 -7
- package/dist/types/components/geovaljaren/logic/history-service.d.ts +0 -6
- package/dist/types/components/geovaljaren/logic/search.engine.d.ts +0 -7
- package/dist/types/components/job-selector-demo/job-selector-demo.d.ts +0 -65
- package/dist/types/components/neobrutal-search/neobrutal-search.d.ts +0 -18
- package/dist/types/verkstad/verkstad.d.ts +0 -1
- package/dist/types/vitest-globals.d.ts +0 -1
- package/dist/yrkesvaljaren/p-5c3a5308.entry.js +0 -1
- package/dist/yrkesvaljaren/p-9ecd5177.entry.js +0 -1
- package/dist/yrkesvaljaren/p-BPnhMTul.js +0 -1
- package/dist/yrkesvaljaren/p-C-pSh51L.js +0 -1
- package/dist/yrkesvaljaren/p-CjMoDiZD.js +0 -1
- package/dist/yrkesvaljaren/p-DHUftoZJ.js +0 -1
- package/dist/yrkesvaljaren/p-HNd02eQb.js +0 -3
- package/dist/yrkesvaljaren/p-b6130085.entry.js +0 -1
- package/dist/yrkesvaljaren/p-dbbea724.entry.js +0 -1
- package/dist/yrkesvaljaren/p-df3fa43b.entry.js +0 -1
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@ En robust och intelligent sökkomponent för svenska yrken, designad för hög p
|
|
|
7
7
|
|
|
8
8
|
### Beskrivning
|
|
9
9
|
|
|
10
|
-
* **Enkelt hitta rätt yrke för användaren** <br>Sökalgoritmen prioriterar exakta träffar, prefix, flerdelade direktträffar och innehåller-träffar. Om inga direktträffar finns kan upp till
|
|
10
|
+
* **Enkelt hitta rätt yrke för användaren** <br>Sökalgoritmen prioriterar exakta träffar, prefix, flerdelade direktträffar och innehåller-träffar. Om inga direktträffar finns kan fuzzy-träffar visas: upp till fem när en av dem tydligt matchar roten i sökordet, annars upp till tre. Viktdata används som sekundär sortering.
|
|
11
11
|
* **Hög prestanda:** <br>Sökningen sker lokalt i webbläsaren mot inläst yrkesdata. Komponenten gör inga sökanrop till Taxonomy API.
|
|
12
12
|
* **Flexibel datahantering:** <br>Versionerat npm-datapaket (rekommenderas), automatiskt uppdaterad data eller en egen URL.
|
|
13
13
|
|
|
@@ -147,20 +147,21 @@ Yrkesväljaren är uppbyggd med designsystemets tokens, typografi, färger, foku
|
|
|
147
147
|
|
|
148
148
|
### Attribut
|
|
149
149
|
|
|
150
|
-
| Attribut | Beskrivning | Typ |
|
|
151
|
-
|
|
152
|
-
| `af-label` | Etikettext som visas ovanför sökfältet. | `string` | `'Välj yrke'` |
|
|
153
|
-
| `disabled` | Om satt till `true`, kan väljaren inte användas med mus eller tangentbord. | `boolean` | `false` |
|
|
154
|
-
| `af-label-description
|
|
155
|
-
| `af-placeholder` | Hjälptext som visas inuti sökfältet. Denna är ett bra stöd för de med kognitiv funktionsvariation - vi rekommenderar att behålla denna text (den är osynlig för skärmläsare). | `string` | `'T.ex. målare, florist, kock'` |
|
|
156
|
-
| `af-error-message` | Ett anpassat felmeddelande som visas vid valideringsfel. | `string` | `undefined` |
|
|
157
|
-
| `af-enable-multiple` | Om satt till `true`, tillåts val av flera yrken. | `boolean` | `false` |
|
|
158
|
-
| `af-history` | Sparar användarval lokalt i webbläsarens Local Storage och visar historiken på samma domän. | `boolean` | `true` |
|
|
159
|
-
| `af-required` | Om satt till `true`, måste användaren göra ett val för att fältet ska vara giltigt (obligatoriskt fält). | `boolean` | `false` |
|
|
160
|
-
| `af-manual-input` | Om satt till `true` kan användaren ange ett yrke som fritext när det inte finns i listan.
|
|
161
|
-
| `af-
|
|
162
|
-
| `af-
|
|
163
|
-
| `af-
|
|
150
|
+
| Attribut | Property | Beskrivning | Typ | Förvalt |
|
|
151
|
+
| --- | --- | --- | --- | --- |
|
|
152
|
+
| `af-label` | `label` | Etikettext som visas ovanför sökfältet. | `string` | `'Välj yrke'` |
|
|
153
|
+
| `disabled` | `disabled` | Om satt till `true`, kan väljaren inte användas med mus eller tangentbord. | `boolean` | `false` |
|
|
154
|
+
| `af-label-description` | `labelDescription` | En valfri beskrivningstext som visas under etiketten. | `string` | `undefined` |
|
|
155
|
+
| `af-placeholder` | `placeholder` | Hjälptext som visas inuti sökfältet. Denna är ett bra stöd för de med kognitiv funktionsvariation - vi rekommenderar att behålla denna text (den är osynlig för skärmläsare). | `string` | `'T.ex. målare, florist, kock'` |
|
|
156
|
+
| `af-error-message` | `errorMessage` | Ett anpassat felmeddelande som visas vid valideringsfel. | `string` | `undefined` |
|
|
157
|
+
| `af-enable-multiple` | `enableMultiple` | Om satt till `true`, tillåts val av flera yrken. | `boolean` | `false` |
|
|
158
|
+
| `af-history` | `history` | Sparar användarval lokalt i webbläsarens Local Storage och visar historiken på samma domän. | `boolean` | `true` |
|
|
159
|
+
| `af-required` | `required` | Om satt till `true`, måste användaren göra ett val för att fältet ska vara giltigt (obligatoriskt fält). | `boolean` | `false` |
|
|
160
|
+
| `af-manual-input` | `manualInput` | Om satt till `true` kan användaren ange ett yrke som fritext när det inte finns i listan. | `boolean` | `false` |
|
|
161
|
+
| `af-feedback` | `feedback` | Om satt till `true` kan användaren föreslå ett saknat yrke med en frivillig motivering. Förslaget skickas till Arbetsförmedlingen, se [Förslag och Piwik PRO](#förslag-och-piwik-pro). | `boolean` | `false` |
|
|
162
|
+
| `af-size` | `size` | Storleken på inputfältet. Möjliga värden: `'small'`, `'medium'`, `'large'`. | `string` | `'medium'` |
|
|
163
|
+
| `af-popular` | `popular` | Om satt till `true` visas sektionen "Populära sökningar" när historiken är tom. | `boolean` | `true` |
|
|
164
|
+
| `af-taxonomy-url` | `taxonomyUrl` | Fullständig, explicit URL till en egenhostad datafil. Utelämna attributet för att använda senaste data automatiskt. | `string` | `undefined` |
|
|
164
165
|
|
|
165
166
|
### Riktlinjer och rekommendationer
|
|
166
167
|
|
|
@@ -171,11 +172,11 @@ Tre centrala inställningar styr användarupplevelsen och datakvaliteten i Yrkes
|
|
|
171
172
|
* **När det rekommenderas:** I formulär och flöden där ett yrkesval är ett obligatoriskt steg i ett ärende (t.ex. inskrivning och aktivitetsrapportering).
|
|
172
173
|
* **När det bör undvikas:** I öppna sök- eller filtreringsvyer där användaren ska kunna söka brett, filtrera på andra parametrar (t.ex. enbart ort/geografi) eller frivilligt specificera yrke.
|
|
173
174
|
|
|
174
|
-
####
|
|
175
|
-
* **Hur man kan resonera:**
|
|
176
|
-
* **
|
|
177
|
-
* **Strikt taxonomi (`af-manual-input="false"` – standard & rekommenderas):** När yrkesdatan ska användas för automatisk matchning, statistiska analyser
|
|
178
|
-
* **Fritext tillåten (`af-manual-input="true"`):** I öppna fritextprofiler, fritextenkäter eller intresseanmälningar där det är viktigare att fånga upp vad användaren själv kallar sin roll än att få ett taxonomi-ID
|
|
175
|
+
#### Förslag på saknade yrken (`af-feedback`) och fritext (`af-manual-input`)
|
|
176
|
+
* **Hur man kan resonera:**
|
|
177
|
+
* **Förslag till Arbetsförmedlingen (`af-feedback="true"`, av som standard):** Komponenten ger användaren möjlighet att föreslå saknade yrken med en frivillig motivering. Förslaget skickas som eventet `afOnSubmitJobSuggestion`. Det når Arbetsförmedlingen bara när Arbetsförmedlingens Piwik PRO-skript finns på sidan. Du behöver ingen egen backend för detta. Vi rekommenderar att du slår på `af-feedback`, eftersom förslagen hjälper Arbetsförmedlingens taxonomiredaktion att fånga upp nya och saknade yrken.
|
|
178
|
+
* **Strikt taxonomi (`af-manual-input="false"` – standard & rekommenderas):** När yrkesdatan ska användas för automatisk matchning, statistiska analyser eller integration mot backend-system som förutsätter Concept ID. Om `af-feedback="true"` kan användaren skicka in sitt förslag men måste därefter välja ett befintligt yrke ur listan.
|
|
179
|
+
* **Fritext tillåten (`af-manual-input="true"`):** I öppna fritextprofiler, fritextenkäter eller intresseanmälningar där det är viktigare att fånga upp vad användaren själv kallar sin roll än att få ett taxonomi-ID.
|
|
179
180
|
|
|
180
181
|
#### Tillåt historik (`af-history`)
|
|
181
182
|
* **Hur man kan resonera:** Sparar gjorda val i webbläsarens localStorage per domän och enhet, och visar dem som "Tidigare val" när användaren fokuserar Yrkesväljaren. Det betyder att historiken kommer att visas på alla tjänster med yrkesväljare på arbetsformedlingen.se (så länge personen använder samma enhet, t.ex. sin mobil).
|
|
@@ -192,8 +193,12 @@ Välj ett av följande sätt:
|
|
|
192
193
|
|
|
193
194
|
En angiven `af-taxonomy-url` är den valda datakällan. Om URL:en inte kan laddas
|
|
194
195
|
går komponenten till felläge och skickar `afJobDataLoadFailed`.
|
|
195
|
-
<br>
|
|
196
196
|
|
|
197
|
+
Från `1.1.0` (`@taxonomy/yrkesvaljaren-data-vNN`) respektive `NN.1.0` (`@arbetsformedlingen/yrkesvaljaren-data`)
|
|
198
|
+
har varje post i datapaketets `taxonomyData` både `ssyk_level_4_id` (SSYK nivå 4 som concept-id) och
|
|
199
|
+
`ssyk_code_2012` (den fyrsiffriga SSYK 2012-koden). Hela posttypen finns i paketets `index.d.ts`.
|
|
200
|
+
Fälten är till för värdappar som läser datat direkt. Av de två fälten finns bara `ssyk_code_2012` i komponentens output.
|
|
201
|
+
<br>
|
|
197
202
|
### Events
|
|
198
203
|
|
|
199
204
|
| Händelse | Beskrivning |
|
|
@@ -201,6 +206,18 @@ går komponenten till felläge och skickar `afJobDataLoadFailed`.
|
|
|
201
206
|
| `afJobSelected` | Skickas ut när användaren ändrar valet. `event.detail` innehåller `JobSelectionItem[]` som kan skickas tillbaka till `setSelection()`. |
|
|
202
207
|
| `afJobDataLoadFailed` | Skickas när laddningen av yrkesdata misslyckas. |
|
|
203
208
|
| `afJobValidationChange` | Skickas när komponenten kör validering efter att fältet har berörts. `event.detail` innehåller `{ isValid: boolean, errorType: 'required'|'invalidInput'|null }`. |
|
|
209
|
+
| `afOnSubmitJobSuggestion` | Skickas när användaren skickar in ett förslag på saknat yrke till Arbetsförmedlingen. `event.detail` innehåller `{ selectedJobs: JobSelectionItem[], suggestionJob: string, suggestionMotivation: string }`. |
|
|
210
|
+
|
|
211
|
+
### Förslag och Piwik PRO
|
|
212
|
+
|
|
213
|
+
Förslag skickas automatiskt till Arbetsförmedlingens Piwik PRO när sidan har AF:s
|
|
214
|
+
Piwik PRO-skript. Containern lyssnar på `afOnSubmitJobSuggestion` och registrerar förslaget som
|
|
215
|
+
"AS - Designsystem - Yrkesväljaren - Inskickat förslag". Integratören behöver inte göra något,
|
|
216
|
+
och sidor utan skriptet påverkas inte.
|
|
217
|
+
|
|
218
|
+
Förslag och motivering kontrolleras mot vanliga personuppgifter, till exempel personnummer,
|
|
219
|
+
e-post, telefonnummer, adresser, kontonummer och webbadresser. Vid träff skickas ingenting och
|
|
220
|
+
användaren får rätta texten. Kontrollen minskar risken men garanterar inte att texten är anonym.
|
|
204
221
|
|
|
205
222
|
### Metoder
|
|
206
223
|
|