fds-vue-core 2.1.1 → 2.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/dist/fds-vue-core.cjs.js +3 -2
  2. package/dist/fds-vue-core.cjs.js.map +1 -1
  3. package/dist/fds-vue-core.css +1 -1
  4. package/dist/fds-vue-core.es.js +3 -2
  5. package/dist/fds-vue-core.es.js.map +1 -1
  6. package/package.json +2 -3
  7. package/scripts/sync-peers-from-dev.mjs +29 -0
  8. package/scripts/sync-vscode-settings.mjs +44 -0
  9. package/src/.DS_Store +0 -0
  10. package/src/App.vue +0 -133
  11. package/src/apply.css +0 -60
  12. package/src/assets/icons.ts +0 -517
  13. package/src/components/Blocks/FdsBlockAlert/FdsBlockAlert.stories.ts +0 -94
  14. package/src/components/Blocks/FdsBlockAlert/FdsBlockAlert.vue +0 -112
  15. package/src/components/Blocks/FdsBlockAlert/types.ts +0 -12
  16. package/src/components/Blocks/FdsBlockContent/FdsBlockContent.stories.ts +0 -110
  17. package/src/components/Blocks/FdsBlockContent/FdsBlockContent.vue +0 -66
  18. package/src/components/Blocks/FdsBlockContent/types.ts +0 -6
  19. package/src/components/Blocks/FdsBlockExpander/FdsBlockExpander.stories.ts +0 -123
  20. package/src/components/Blocks/FdsBlockExpander/FdsBlockExpander.vue +0 -87
  21. package/src/components/Blocks/FdsBlockExpander/types.ts +0 -8
  22. package/src/components/Blocks/FdsBlockInfo/FdsBlockInfo.stories.ts +0 -110
  23. package/src/components/Blocks/FdsBlockInfo/FdsBlockInfo.vue +0 -98
  24. package/src/components/Blocks/FdsBlockInfo/types.ts +0 -8
  25. package/src/components/Blocks/FdsBlockLink/FdsBlockLink.css +0 -9
  26. package/src/components/Blocks/FdsBlockLink/FdsBlockLink.stories.ts +0 -179
  27. package/src/components/Blocks/FdsBlockLink/FdsBlockLink.vue +0 -149
  28. package/src/components/Blocks/FdsBlockLink/types.ts +0 -14
  29. package/src/components/Buttons/ButtonBaseProps.ts +0 -18
  30. package/src/components/Buttons/FdsButtonCopy/FdsButtonCopy.stories.ts +0 -53
  31. package/src/components/Buttons/FdsButtonCopy/FdsButtonCopy.vue +0 -87
  32. package/src/components/Buttons/FdsButtonCopy/types.ts +0 -8
  33. package/src/components/Buttons/FdsButtonDownload/FdsButtonDownload.stories.ts +0 -111
  34. package/src/components/Buttons/FdsButtonDownload/FdsButtonDownload.vue +0 -187
  35. package/src/components/Buttons/FdsButtonIcon/FdsButtonIcon.stories.ts +0 -55
  36. package/src/components/Buttons/FdsButtonIcon/FdsButtonIcon.vue +0 -57
  37. package/src/components/Buttons/FdsButtonIcon/types.ts +0 -12
  38. package/src/components/Buttons/FdsButtonMinor/FdsButtonMinor.stories.ts +0 -68
  39. package/src/components/Buttons/FdsButtonMinor/FdsButtonMinor.vue +0 -126
  40. package/src/components/Buttons/FdsButtonPrimary/FdsButtonPrimary.stories.ts +0 -86
  41. package/src/components/Buttons/FdsButtonPrimary/FdsButtonPrimary.vue +0 -107
  42. package/src/components/Buttons/FdsButtonSecondary/FdsButtonSecondary.stories.ts +0 -68
  43. package/src/components/Buttons/FdsButtonSecondary/FdsButtonSecondary.vue +0 -107
  44. package/src/components/FdsIcon/FdsIcon.stories.ts +0 -69
  45. package/src/components/FdsIcon/FdsIcon.vue +0 -34
  46. package/src/components/FdsIcon/types.ts +0 -9
  47. package/src/components/FdsModal/FdsModal.stories.ts +0 -241
  48. package/src/components/FdsModal/FdsModal.vue +0 -261
  49. package/src/components/FdsModal/types.ts +0 -12
  50. package/src/components/FdsPagination/FdsPagination.stories.ts +0 -109
  51. package/src/components/FdsPagination/FdsPagination.vue +0 -193
  52. package/src/components/FdsPagination/types.ts +0 -6
  53. package/src/components/FdsSearchSelect/FdsSearchSelect.stories.ts +0 -428
  54. package/src/components/FdsSearchSelect/FdsSearchSelect.vue +0 -610
  55. package/src/components/FdsSearchSelect/types.ts +0 -25
  56. package/src/components/FdsSpinner/FdsSpinner.stories.ts +0 -31
  57. package/src/components/FdsSpinner/FdsSpinner.vue +0 -90
  58. package/src/components/FdsSpinner/types.ts +0 -6
  59. package/src/components/FdsSticker/FdsSticker.stories.ts +0 -148
  60. package/src/components/FdsSticker/FdsSticker.vue +0 -44
  61. package/src/components/FdsSticker/types.ts +0 -4
  62. package/src/components/FdsTreeView/FdsTreeView.stories.ts +0 -136
  63. package/src/components/FdsTreeView/FdsTreeView.vue +0 -162
  64. package/src/components/FdsTreeView/TreeNode.vue +0 -383
  65. package/src/components/FdsTreeView/types.ts +0 -141
  66. package/src/components/FdsTreeView/useTreeState.ts +0 -607
  67. package/src/components/FdsTreeView/utils.ts +0 -65
  68. package/src/components/FdsTruncatedText/FdsTruncatedText.stories.ts +0 -78
  69. package/src/components/FdsTruncatedText/FdsTruncatedText.vue +0 -85
  70. package/src/components/FdsTruncatedText/types.ts +0 -6
  71. package/src/components/Form/FdsCheckbox/FdsCheckbox.stories.ts +0 -275
  72. package/src/components/Form/FdsCheckbox/FdsCheckbox.vue +0 -155
  73. package/src/components/Form/FdsCheckbox/types.ts +0 -10
  74. package/src/components/Form/FdsInput/FdsInput.stories.ts +0 -319
  75. package/src/components/Form/FdsInput/FdsInput.vue +0 -233
  76. package/src/components/Form/FdsInput/types.ts +0 -25
  77. package/src/components/Form/FdsRadio/FdsRadio.stories.ts +0 -63
  78. package/src/components/Form/FdsRadio/FdsRadio.vue +0 -88
  79. package/src/components/Form/FdsRadio/types.ts +0 -12
  80. package/src/components/Form/FdsSelect/FdsSelect.stories.ts +0 -78
  81. package/src/components/Form/FdsSelect/FdsSelect.vue +0 -136
  82. package/src/components/Form/FdsSelect/types.ts +0 -13
  83. package/src/components/Form/FdsTextarea/FdsTextarea.stories.ts +0 -52
  84. package/src/components/Form/FdsTextarea/FdsTextarea.vue +0 -110
  85. package/src/components/Form/FdsTextarea/types.ts +0 -12
  86. package/src/components/Table/FdsTable/FdsTable.stories.ts +0 -221
  87. package/src/components/Table/FdsTable/FdsTable.vue +0 -25
  88. package/src/components/Table/FdsTable/types.ts +0 -4
  89. package/src/components/Table/FdsTableHead/FdsTableHead.stories.ts +0 -151
  90. package/src/components/Table/FdsTableHead/FdsTableHead.vue +0 -54
  91. package/src/components/Table/FdsTableHead/types.ts +0 -5
  92. package/src/components/Tabs/FdsTabs/FdsTabs.stories.ts +0 -247
  93. package/src/components/Tabs/FdsTabs/FdsTabs.vue +0 -27
  94. package/src/components/Tabs/FdsTabs/types.ts +0 -4
  95. package/src/components/Tabs/FdsTabsItem/FdsTabsItem.vue +0 -125
  96. package/src/components/Tabs/FdsTabsItem/types.ts +0 -16
  97. package/src/components/Typography/FdsHeading/FdsHeading.stories.ts +0 -93
  98. package/src/components/Typography/FdsHeading/FdsHeading.vue +0 -51
  99. package/src/components/Typography/FdsHeading/types.ts +0 -5
  100. package/src/components/Typography/FdsListHeading/FdsListHeading.stories.ts +0 -58
  101. package/src/components/Typography/FdsListHeading/FdsListHeading.vue +0 -62
  102. package/src/components/Typography/FdsListHeading/types.ts +0 -8
  103. package/src/components/Typography/FdsSeparator/FdsSeparator.stories.ts +0 -31
  104. package/src/components/Typography/FdsSeparator/FdsSeparator.vue +0 -5
  105. package/src/components/Typography/FdsText/FdsText.stories.ts +0 -66
  106. package/src/components/Typography/FdsText/FdsText.vue +0 -28
  107. package/src/components/Typography/FdsText/types.ts +0 -3
  108. package/src/composables/useBoldQuery.ts +0 -29
  109. package/src/composables/useElementFinalSize.ts +0 -24
  110. package/src/composables/useHasSlots.ts +0 -17
  111. package/src/composables/useIsPid.ts +0 -48
  112. package/src/docs/Start/Start.mdx +0 -12
  113. package/src/docs/Usage.md +0 -117
  114. package/src/fonts.css +0 -28
  115. package/src/global-components.ts +0 -38
  116. package/src/index.ts +0 -180
  117. package/src/main.ts +0 -7
  118. package/src/slot-styles.css +0 -93
  119. package/src/style.css +0 -89
  120. package/src/tokens.css +0 -252
  121. package/tsconfig.base.json +0 -4
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fds-vue-core",
3
- "version": "2.1.1",
3
+ "version": "2.1.3",
4
4
  "description": "FDS Vue Core Component Library",
5
5
  "type": "module",
6
6
  "main": "./dist/fds-vue-core.cjs.js",
@@ -28,10 +28,9 @@
28
28
  },
29
29
  "files": [
30
30
  "dist",
31
- "src",
32
31
  "tailwind.preset.cjs",
33
32
  "configs",
34
- "tsconfig.base.json"
33
+ "scripts"
35
34
  ],
36
35
  "license": "UNLICENSED",
37
36
  "keywords": [
@@ -0,0 +1,29 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Sync selected devDependencies into peerDependencies.
4
+ * Keeps published peers aligned with the versions we actually use.
5
+ */
6
+
7
+ import fs from 'node:fs'
8
+ import path from 'node:path'
9
+
10
+ const pkgPath = path.resolve(process.cwd(), 'package.json')
11
+ const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf8'))
12
+
13
+ const sources = { ...pkg.devDependencies, ...pkg.dependencies }
14
+
15
+ pkg.peerDependencies = pkg.peerDependencies || {}
16
+ const peerKeys = Object.keys(pkg.peerDependencies)
17
+
18
+ for (const name of peerKeys) {
19
+ const version = sources[name]
20
+ if (version) {
21
+ pkg.peerDependencies[name] = version
22
+ } else {
23
+ // If missing locally, leave existing peer version untouched
24
+ console.warn(`[sync-peers] Skipping ${name} (not found in devDependencies/dependencies)`)
25
+ }
26
+ }
27
+
28
+ fs.writeFileSync(pkgPath, `${JSON.stringify(pkg, null, 2)}\n`)
29
+ console.warn('[sync-peers] peerDependencies updated from devDependencies')
@@ -0,0 +1,44 @@
1
+ #!/usr/bin/env node
2
+
3
+ /**
4
+ * Script to copy fds-vue-core VS Code settings to local .vscode/settings.json
5
+ *
6
+ * Usage:
7
+ * node scripts/sync-vscode-settings.mjs
8
+ * # or via npm: npm run sync:vscode
9
+ */
10
+
11
+ import { copyFileSync, existsSync, mkdirSync } from 'fs'
12
+ import { dirname, join } from 'path'
13
+
14
+ // Use process.cwd() to get the consuming repo's root directory
15
+ // This works correctly even with yarn/npm link
16
+ const projectRoot = process.cwd()
17
+
18
+ // Find the base settings file
19
+ // First check node_modules (for consuming repos), then check if we're in fds-vue-core itself
20
+ const baseSettingsPath = existsSync(
21
+ join(projectRoot, 'node_modules', 'fds-vue-core', 'configs', 'vscode-settings.json'),
22
+ )
23
+ ? join(projectRoot, 'node_modules', 'fds-vue-core', 'configs', 'vscode-settings.json')
24
+ : existsSync(join(projectRoot, 'configs', 'vscode-settings.json'))
25
+ ? join(projectRoot, 'configs', 'vscode-settings.json')
26
+ : null
27
+
28
+ const localSettingsPath = join(projectRoot, '.vscode', 'settings.json')
29
+
30
+ // Exit silently if fds-vue-core is not installed (for repos that don't use it)
31
+ if (!existsSync(baseSettingsPath)) {
32
+ process.exit(0)
33
+ }
34
+
35
+ try {
36
+ // Create .vscode directory if it doesn't exist
37
+ mkdirSync(dirname(localSettingsPath), { recursive: true })
38
+
39
+ // Copy base settings
40
+ copyFileSync(baseSettingsPath, localSettingsPath)
41
+ } catch (error) {
42
+ console.error('❌ Error syncing VS Code settings:', error.message)
43
+ process.exit(1)
44
+ }
package/src/.DS_Store DELETED
Binary file
package/src/App.vue DELETED
@@ -1,133 +0,0 @@
1
- <script setup lang="ts">
2
- import FdsTreeView from '@/components/FdsTreeView/FdsTreeView.vue'
3
- import type { FdsTreeNode } from '@/components/FdsTreeView/types'
4
- import { ref } from 'vue'
5
-
6
- // Mock tree data
7
- const mockTreeData: FdsTreeNode<Record<string, unknown>>[] = [
8
- {
9
- nodeId: 'root-1',
10
- title: 'Documents',
11
- children: [
12
- {
13
- nodeId: 'doc-1',
14
- title: 'Work',
15
- children: [
16
- {
17
- nodeId: 'work-1',
18
- title: 'Projects',
19
- children: [
20
- {
21
- nodeId: 'proj-1',
22
- title: 'Project Alpha',
23
- data: { type: 'project', status: 'active' },
24
- },
25
- {
26
- nodeId: 'proj-2',
27
- title: 'Project Beta',
28
- data: { type: 'project', status: 'completed' },
29
- },
30
- {
31
- nodeId: 'proj-3',
32
- title: 'Project Gamma',
33
- data: { type: 'project', status: 'planning', person_name: 'Anna Sjöström' },
34
- },
35
- ],
36
- },
37
- {
38
- nodeId: 'work-2',
39
- title: 'Reports',
40
- children: [],
41
- },
42
- ],
43
- },
44
- {
45
- nodeId: 'doc-2',
46
- title: 'Personal',
47
- children: [
48
- { nodeId: 'pers-1', title: 'Photos', data: { type: 'folder', count: 150 } },
49
- { nodeId: 'pers-2', title: 'Videos', data: { type: 'folder', count: 25 } },
50
- { nodeId: 'pers-3', title: 'Music', data: { type: 'folder', count: 500 } },
51
- ],
52
- },
53
- ],
54
- },
55
- {
56
- nodeId: 'root-2',
57
- title: 'Applications',
58
- children: [
59
- {
60
- nodeId: 'app-1',
61
- title: 'Development',
62
- children: [
63
- { nodeId: 'dev-1', title: 'VS Code', data: { type: 'app', category: 'editor' } },
64
- { nodeId: 'dev-2', title: 'Terminal', data: { type: 'app', category: 'utility' } },
65
- { nodeId: 'dev-3', title: 'Git', data: { type: 'app', category: 'version-control' } },
66
- ],
67
- },
68
- {
69
- nodeId: 'app-2',
70
- title: 'Design',
71
- children: [
72
- { nodeId: 'design-1', title: 'Figma', data: { type: 'app', category: 'design' } },
73
- { nodeId: 'design-2', title: 'Sketch', data: { type: 'app', category: 'design' } },
74
- ],
75
- },
76
- ],
77
- },
78
- {
79
- nodeId: 'root-3',
80
- title: 'Settings',
81
- children: [
82
- { nodeId: 'set-1', title: 'General', data: { type: 'setting', category: 'preferences' } },
83
- { nodeId: 'set-2', title: 'Privacy', data: { type: 'setting', category: 'security' } },
84
- { nodeId: 'set-3', title: 'Notifications', data: { type: 'setting', category: 'alerts' } },
85
- ],
86
- },
87
- ]
88
-
89
- const treeData: FdsTreeNode<Record<string, unknown>> = {
90
- nodeId: 'root',
91
- title: 'Root',
92
- children: mockTreeData,
93
- data: { type: 'root' },
94
- }
95
-
96
- type SelectedShape = Pick<FdsTreeNode, 'nodeId' | 'title' | 'data' | 'children'>
97
- const selectedNodes = ref<SelectedShape[]>([])
98
- </script>
99
-
100
- <template>
101
- <div class="app p-8">
102
- <div class="border border-gray-200 rounded-lg p-4 mb-8">
103
- <h2 class="text-lg font-semibold mb-4">FDS Tree View Test</h2>
104
- <FdsTreeView
105
- :data="treeData"
106
- :expandAllChildrenOnParentCheck="true"
107
- :expandChildrenOnParentCheck="true"
108
- :horizontalScroll="true"
109
- :indentation="36"
110
- :nodeCollapseIcon="'arrowUp'"
111
- :nodeExpandIcon="'arrowDown'"
112
- :searchEnabled="true"
113
- :searchExpandNodes="true"
114
- :searchHighlighting="true"
115
- :searchLabel="'Sök noder'"
116
- :searchMatchParams="['title']"
117
- :showIndeterminate="true"
118
- :showIndeterminateOnlyOnChildrenSelection="true"
119
- :titleTemplate="'[[title]] ([[nodeId]])'"
120
- :searchResultNoMatchesTitle="'Inga resultat hittades'"
121
- :searchResultNoMatchesBody="'Pröva sök på något annat'"
122
- :searchCountTemplate="'[[filteredNodes]] av [[totalNodes]] avdelningar'"
123
- :searchCountTemplateUnfiltered="'[[totalNodes]] avdelningar'"
124
- :popoverLabels="{
125
- parentAndChildren: 'Denna och alla underliggande',
126
- parent: 'Endast denna nivå',
127
- }"
128
- :searchInputTriggerLength="2"
129
- v-model:selectedNodes="selectedNodes"
130
- />
131
- </div>
132
- </div>
133
- </template>
package/src/apply.css DELETED
@@ -1,60 +0,0 @@
1
- @import './tokens.css';
2
-
3
- /** Create stencil components for this */
4
- @layer components {
5
- h1,
6
- .h1 {
7
- @apply font-heading text-2xl sm:text-4xl lg:text-6xl/tight font-extrabold mb-3 mt-0;
8
- }
9
- h2,
10
- .h2 {
11
- @apply font-heading text-xl sm:text-3xl font-extrabold mt-4 mb-4;
12
- }
13
- .h2--small {
14
- @apply font-heading text-xl font-extrabold mt-4 mb-4;
15
- }
16
-
17
- h3,
18
- .h3 {
19
- @apply font-heading text-xl font-extrabold mt-4 mb-4;
20
- }
21
-
22
- .h3--small {
23
- @apply font-heading text-lg font-extrabold mt-4 mb-2;
24
- }
25
- h1:focus,
26
- h2:focus,
27
- h3:focus {
28
- @apply focus:outline-0;
29
- }
30
-
31
- .label {
32
- @apply font-bold mb-2! tracking-wide;
33
- }
34
- p {
35
- @apply mb-4;
36
- }
37
- li:not(:last-child) {
38
- @apply mb-2;
39
- }
40
- .link,
41
- .html a {
42
- @apply text-blue-600 hover:text-blue-700 active:text-blue-800 underline focus-visible:outline-dashed focus-visible:outline-2 focus-visible:outline-offset-4 focus-visible:outline-blue-500;
43
- }
44
-
45
- .capitalize-first::first-letter {
46
- text-transform: uppercase;
47
- }
48
- }
49
-
50
- @layer utilities {
51
- /** Override browser background color when autocomplete field */
52
- input:not(input[type='checkbox'], input[type='radio']),
53
- textarea {
54
- box-shadow: 0 0 0 1000px #fff inset !important;
55
- }
56
- /** Style active router link in main nav */
57
- .nav-items .router-link-active {
58
- @apply bg-blue-100 text-blue-700 font-bold;
59
- }
60
- }