@iamproperty/components 2.9.0 → 3.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.
Files changed (89) hide show
  1. package/README.md +9 -130
  2. package/assets/css/core.min.css +1 -1
  3. package/assets/css/core.min.css.map +1 -1
  4. package/assets/css/style.min.css +1 -1
  5. package/assets/css/style.min.css.map +1 -1
  6. package/assets/favicons/manifest.json +32 -0
  7. package/assets/js/main.js +57 -0
  8. package/assets/js/modules/chart.js +18 -17
  9. package/assets/js/modules/file-upload.js +48 -0
  10. package/assets/js/modules/form.js +27 -18
  11. package/assets/js/modules/nav.js +9 -8
  12. package/assets/js/modules/orderablelist.js +122 -0
  13. package/assets/js/modules/table.js +24 -24
  14. package/assets/js/scripts.bundle.js +63 -52
  15. package/assets/js/scripts.bundle.js.map +1 -1
  16. package/assets/js/scripts.bundle.min.js +2 -2
  17. package/assets/js/scripts.bundle.min.js.map +1 -1
  18. package/assets/sass/_functions/utilities.scss +3 -110
  19. package/assets/sass/_functions/variables.scss +3 -2
  20. package/assets/sass/_tests/colours.spec.scss +45 -0
  21. package/assets/sass/_tests/func.spec.scss +233 -0
  22. package/assets/sass/_tests/mixins.spec.scss +194 -0
  23. package/assets/sass/_tests/sass.spec.js +9 -0
  24. package/assets/sass/_tests/typography.spec.scss +36 -0
  25. package/assets/sass/components/alert.scss +1 -1
  26. package/assets/sass/components/cardDeck.scss +1 -1
  27. package/assets/sass/components/carousel.scss +5 -5
  28. package/assets/sass/components/charts.scss +1 -1
  29. package/assets/sass/components/nav.scss +47 -2
  30. package/assets/sass/components/stepper.scss +3 -3
  31. package/assets/sass/elements/buttons.scss +46 -4
  32. package/assets/sass/elements/card.scss +112 -0
  33. package/assets/sass/elements/container.scss +13 -2
  34. package/assets/sass/elements/forms.scss +68 -0
  35. package/assets/sass/elements/links.scss +2 -1
  36. package/assets/sass/elements/lists.scss +48 -1
  37. package/assets/sass/elements/panel.scss +3 -3
  38. package/assets/sass/elements/tables.scss +1 -1
  39. package/assets/sass/elements/tooltips.scss +1 -1
  40. package/assets/sass/foundations/icons.scss +8 -0
  41. package/assets/sass/foundations/root.scss +23 -4
  42. package/assets/ts/main.js +57 -0
  43. package/assets/ts/main.js.map +1 -0
  44. package/assets/ts/main.ts +10 -10
  45. package/assets/ts/modules/accordion.js +33 -0
  46. package/assets/ts/modules/accordion.js.map +1 -0
  47. package/dist/components.es.js +2518 -0
  48. package/dist/components.umd.js +56 -3784
  49. package/dist/style.css +1 -0
  50. package/package.json +87 -87
  51. package/src/components/Accordion/Accordion.screenshot.vue +57 -0
  52. package/src/components/Accordion/Accordion.spec.js +63 -0
  53. package/src/components/Accordion/Accordion.vue +1 -1
  54. package/src/components/Accordion/AccordionItem.vue +1 -1
  55. package/src/components/Accordion/__screenshots__/win32/laptop/Accordion.png +0 -0
  56. package/src/components/Accordion/__screenshots__/win32/mobile/Accordion.png +0 -0
  57. package/src/components/Accordion/__screenshots__/win32/tablet/Accordion.png +0 -0
  58. package/src/components/Alert/Alert.spec.js +49 -0
  59. package/src/components/Alert/Alert.vue +3 -3
  60. package/src/components/Banner/Banner.spec.js +28 -0
  61. package/src/components/CardDeck/CardDeck.spec.js +99 -0
  62. package/src/components/CardDeck/CardDeck.vue +1 -1
  63. package/src/components/Carousel/Carousel.spec.js +45 -0
  64. package/src/components/Chart/Chart.spec.js +201 -0
  65. package/src/components/Chart/Chart.vue +3 -3
  66. package/src/components/Header/Header.spec.js +33 -0
  67. package/src/components/Modal/Modal.spec.js +22 -0
  68. package/src/components/Nav/Nav.spec.js +35 -0
  69. package/src/components/Nav/Nav.vue +5 -2
  70. package/src/components/Stepper/Stepper.spec.js +99 -0
  71. package/src/components/Tabs/Tab.vue +6 -0
  72. package/src/components/Tabs/Tabs.vue +15 -13
  73. package/src/components/Testimonial/Testimonial.spec.js +57 -0
  74. package/src/components/Timeline/Timeline.spec.js +17 -0
  75. package/src/elements/Card/Card.vue +11 -2
  76. package/src/elements/Input/Input.vue +14 -10
  77. package/src/elements/Table/Table.spec.js +90 -0
  78. package/src/elements/Table/Table.vue +8 -5
  79. package/src/foundations/Icon/Icon.spec.js +24 -0
  80. package/src/foundations/Logo/Logo.spec.js +56 -0
  81. package/src/vue-shim.d.ts +6 -0
  82. package/dist/components.common.js +0 -3773
  83. package/dist/components.common.js.map +0 -1
  84. package/dist/components.css +0 -2
  85. package/dist/components.css.map +0 -1
  86. package/dist/components.umd.js.map +0 -1
  87. package/dist/components.umd.min.js +0 -2
  88. package/dist/components.umd.min.js.map +0 -1
  89. package/dist/demo.html +0 -1
package/README.md CHANGED
@@ -1,137 +1,16 @@
1
- # Getting started
1
+ # Vue 3 + TypeScript + Vite
2
2
 
3
- ## Using the component library or assets
3
+ This template should help get you started developing with Vue 3 and TypeScript in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.
4
4
 
5
- ### Install
6
- ```
7
- npm install @iamproperty/components --save
8
- ```
5
+ ## Recommended IDE Setup
9
6
 
10
- ### Usage
7
+ - [VS Code](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar)
11
8
 
12
- #### Static assets
9
+ ## Type Support For `.vue` Imports in TS
13
10
 
14
- The assets folder can be used independently from the Vue components so that they can be used with other frameworks. With the compiled files available to use out of the box alongside the source files that can be configured.
11
+ Since TypeScript cannot handle type information for `.vue` imports, they are shimmed to be a generic Vue component type by default. In most cases this is fine if you don't really care about component prop types outside of templates. However, if you wish to get actual prop types in `.vue` imports (for example to get props validation when using manual `h(...)` calls), you can enable Volar's Take Over mode by following these steps:
15
12
 
16
- ```
17
- <link href="./node_modules/@iamproperty/components/assets/css/style.min.css" as="style" />
18
- <script src="./node_modules/@iamproperty/components/assets/js/scripts.bundle.min.js"></script>
19
- ```
13
+ 1. Run `Extensions: Show Built-in Extensions` from VS Code's command palette, look for `TypeScript and JavaScript Language Features`, then right click and select `Disable (Workspace)`. By default, Take Over mode will enable itself if the default TypeScript extension is disabled.
14
+ 2. Reload the VS Code window by running `Developer: Reload Window` from the command palette.
20
15
 
21
- ##### Sass files
22
- ```
23
- @import './node_modules/@iamproperty/components/assets/sass/_func.scss';
24
- @import './node_modules/@iamproperty/components/assets/sass/_corefiles_.scss';
25
- ```
26
- ##### JS modules
27
- ```
28
- import navbar from @iamproperty/components/assets/js/modules/navbar.js
29
- ```
30
-
31
-
32
- #### Vue application
33
-
34
- ```
35
- import '@iamproperty/components/assets/css/core.min.css'
36
- import '@iamproperty/components/dist/components.css'
37
-
38
- import * as iamkey from '@iamproperty/components'
39
- for (const [key, value] of Object.entries(iamkey)) {
40
- Vue.component(key, value)
41
- }
42
- ```
43
-
44
- Components then can be used as described in the design system documentation.
45
-
46
- ```
47
- <Header title="Page title" image="../../assets/image.jpeg"><p>Page description</p></Header>
48
- ```
49
-
50
- #### NUXT
51
-
52
- To use the components in NUXT you firstly need to add create a plugin file called plugins/iamkey.js and add the below code.
53
-
54
- ```
55
- import Vue from 'vue'
56
-
57
- import '@iamproperty/components/assets/css/core.min.css'
58
- import '@iamproperty/components/dist/components.css'
59
-
60
- import * as iamkey from '@iamproperty/components'
61
- for (const [key, value] of Object.entries(iamkey)) {
62
- Vue.component(key, value)
63
- }
64
- ```
65
-
66
- Then add the plugin to the nuxt.config.js file.
67
-
68
- ```
69
- export default {
70
- plugins: [
71
- 'plugins/iamkey.js'
72
- ],
73
- }
74
- ```
75
-
76
-
77
- ## Contributing to iam key
78
-
79
- ### Create code branch
80
-
81
- Firstly the clone the [repo](https://github.com/iamproperty/iamproperty-vue-component-library) from GitHub and create a new branch using the agreed naming conventention.
82
-
83
- ### Commands
84
-
85
- #### Install node packages
86
-
87
- ```
88
- npm install
89
- ```
90
-
91
- #### Development local web server
92
-
93
- Setup a local web server to run the documentation site this will allow you to modify the code and check it.
94
-
95
- ```
96
- npm run serve
97
- ```
98
-
99
- #### Run your unit tests
100
-
101
- **This command should be ran while the local web server is still running.**
102
-
103
- Unit tests should be ran after changing any code to make sure it has no unwanted side effects.
104
-
105
- The visual regression tests may differ greatly if the tests are running on a windows when the the snapshots where created on Mac.
106
-
107
- ```
108
- npm run test
109
- ```
110
-
111
- #### Prepare for pull request
112
-
113
- **This command should be ran while the local web server is still running.**
114
-
115
- Before creating a pull request we want to make sure assets get re-compiled and audited so that we can keep an eye on file sizes. We also want to recreate visual regression snapshots. This will create a number of files that will be added to the pull request to help the reviewers make judgement on the changes.
116
-
117
- ```
118
- npm run pull-request
119
- ```
120
-
121
- ### Pull request
122
-
123
- You will not have the ability to commit changes directly to the main branch and a pull request will have to be created. This pull request should follow the format dictated in the .github/pull_request_template.md file.
124
-
125
- ## Create release
126
-
127
- Before creating a release you will need to make sure you are logged into the npm registry by running the below command. You will also need to make sure you have access to create releases to the <a href="https://www.npmjs.com/package/@iamproperty/components" target="_blank">npm registry package</a>.
128
-
129
- ```
130
- npm login
131
- ```
132
-
133
- After you are logged in then can publish but remember to increase the package version if the package.json file.
134
-
135
- ```
136
- npm publish
137
- ```
16
+ You can learn more about Take Over mode [here](https://github.com/johnsoncodehk/volar/discussions/471).