@icij/murmur-next 4.0.0 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (273) hide show
  1. package/README.md +15 -19
  2. package/dist/lib/components/AccordionStep.vue.d.ts +79 -0
  3. package/dist/lib/components/AccordionWrapper.vue.d.ts +33 -0
  4. package/dist/lib/components/ActiveTextTruncate.vue.d.ts +101 -0
  5. package/dist/lib/components/AdvancedLinkForm.vue.d.ts +168 -0
  6. package/dist/lib/components/Brand.vue.d.ts +55 -0
  7. package/dist/lib/components/BrandExpansion.vue.d.ts +105 -0
  8. package/dist/lib/components/ConfirmButton.vue.d.ts +158 -0
  9. package/dist/lib/components/ContentPlaceholder.vue.d.ts +44 -0
  10. package/dist/lib/components/CustomPagination.vue.d.ts +130 -0
  11. package/dist/lib/components/DigitsInput.vue.d.ts +66 -0
  12. package/dist/lib/components/DonateForm.vue.d.ts +46 -0
  13. package/dist/lib/components/EmbedForm.vue.d.ts +121 -0
  14. package/dist/lib/components/EmbeddableFooter.vue.d.ts +103 -0
  15. package/dist/lib/components/FollowUsPopover.vue.d.ts +16 -0
  16. package/dist/lib/components/GenericFooter.vue.d.ts +47 -0
  17. package/dist/lib/components/GenericHeader.vue.d.ts +928 -0
  18. package/dist/lib/components/HapticCopy.vue.d.ts +156 -0
  19. package/dist/lib/components/ImddbHeader.vue.d.ts +960 -0
  20. package/dist/lib/components/OrdinalLegend.vue.d.ts +87 -0
  21. package/dist/lib/components/RangePicker.vue.d.ts +196 -0
  22. package/dist/lib/components/ResponsiveIframe.vue.d.ts +45 -0
  23. package/dist/lib/components/ScaleLegend.vue.d.ts +101 -0
  24. package/dist/lib/components/SecretInput.vue.d.ts +99 -0
  25. package/dist/lib/components/SelectableDropdown.vue.d.ts +210 -0
  26. package/dist/lib/components/SharingOptions.vue.d.ts +153 -0
  27. package/dist/lib/components/SharingOptionsLink.vue.d.ts +200 -0
  28. package/dist/lib/components/SignUpForm.vue.d.ts +141 -0
  29. package/dist/lib/components/SlideUpDown.vue.d.ts +74 -0
  30. package/dist/lib/components/TexturedDeck.vue.d.ts +89 -0
  31. package/dist/lib/components/TinyPagination.vue.d.ts +188 -0
  32. package/dist/lib/composables/chart.d.ts +48 -0
  33. package/dist/lib/composables/resizeObserver.d.ts +22 -0
  34. package/dist/lib/composables/sendEmail.d.ts +6 -0
  35. package/dist/lib/config.d.ts +19 -0
  36. package/dist/lib/config.default.d.ts +34 -0
  37. package/dist/lib/datavisualisations/BarChart.vue.d.ts +234 -0
  38. package/dist/lib/datavisualisations/ColumnChart.vue.d.ts +404 -0
  39. package/dist/lib/datavisualisations/LineChart.vue.d.ts +200 -0
  40. package/dist/lib/datavisualisations/StackedBarChart.vue.d.ts +342 -0
  41. package/dist/lib/datavisualisations/StackedColumnChart.vue.d.ts +412 -0
  42. package/dist/lib/enums.d.ts +32 -0
  43. package/dist/lib/i18n.d.ts +4 -0
  44. package/dist/lib/keys.d.ts +2 -0
  45. package/dist/lib/main.d.ts +52 -0
  46. package/dist/lib/maps/ChoroplethMap.vue.d.ts +460 -0
  47. package/dist/lib/maps/ChoroplethMapAnnotation.vue.d.ts +188 -0
  48. package/dist/lib/maps/SymbolMap.vue.d.ts +276 -0
  49. package/dist/lib/murmur.css +1 -0
  50. package/dist/lib/murmur.js +44661 -0
  51. package/dist/lib/murmur.js.map +1 -0
  52. package/dist/lib/murmur.umd.cjs +837 -0
  53. package/dist/lib/murmur.umd.cjs.map +1 -0
  54. package/dist/lib/types.d.ts +44 -0
  55. package/dist/lib/utils/animation.d.ts +8 -0
  56. package/dist/lib/utils/assets.d.ts +2 -0
  57. package/dist/lib/utils/clipboard.d.ts +2 -0
  58. package/dist/lib/utils/iframe-resizer.d.ts +10 -0
  59. package/dist/lib/utils/placeholder.d.ts +12 -0
  60. package/dist/lib/utils/placeholderTypes.d.ts +18 -0
  61. package/dist/lib/utils/strings.d.ts +1 -0
  62. package/package.json +15 -1
  63. package/.github/workflows/deploy-github-pages.yaml +0 -50
  64. package/.storybook/app.scss +0 -14
  65. package/.storybook/doc_variables.scss +0 -20
  66. package/.storybook/main.ts +0 -35
  67. package/.storybook/preview-head.html +0 -2
  68. package/.storybook/preview.ts +0 -32
  69. package/deploy.js +0 -15
  70. package/docs/components/ApiTable.vue +0 -171
  71. package/docs/components/App.vue +0 -146
  72. package/docs/components/CollapsibleBlock.vue +0 -122
  73. package/docs/components/DocsHeader.vue +0 -68
  74. package/docs/components/DocsMenu.vue +0 -201
  75. package/docs/components/DocsMenuSection.vue +0 -109
  76. package/docs/components/EditLink.vue +0 -49
  77. package/docs/components/OutboundLink.vue +0 -13
  78. package/docs/components/PalettePresenter.vue +0 -96
  79. package/docs/components/RepositoryLink.vue +0 -28
  80. package/docs/components/SampleCard.vue +0 -119
  81. package/docs/main.js +0 -42
  82. package/docs/pages/components/accordion/doc.md +0 -96
  83. package/docs/pages/components/active-text-truncate/doc.md +0 -44
  84. package/docs/pages/components/advanced-link-form/doc.md +0 -105
  85. package/docs/pages/components/brand/doc.md +0 -30
  86. package/docs/pages/components/brand-expansion/doc.md +0 -70
  87. package/docs/pages/components/confirm-button/doc.md +0 -91
  88. package/docs/pages/components/content-placeholder/doc.md +0 -16
  89. package/docs/pages/components/custom-pagination/doc.md +0 -61
  90. package/docs/pages/components/digits-input/doc.md +0 -28
  91. package/docs/pages/components/donate-form/doc.md +0 -20
  92. package/docs/pages/components/embed-form/doc.md +0 -22
  93. package/docs/pages/components/embeddable-footer/doc.md +0 -60
  94. package/docs/pages/components/follow-us-popover/doc.md +0 -5
  95. package/docs/pages/components/generic-footer/doc.md +0 -21
  96. package/docs/pages/components/generic-header/doc.md +0 -24
  97. package/docs/pages/components/haptic-copy/doc.md +0 -27
  98. package/docs/pages/components/imddb-header/doc.md +0 -23
  99. package/docs/pages/components/ordinal-legend/doc.md +0 -44
  100. package/docs/pages/components/range-picker/doc.md +0 -86
  101. package/docs/pages/components/responsive-iframe/doc.md +0 -13
  102. package/docs/pages/components/scale-legend/doc.md +0 -65
  103. package/docs/pages/components/secret-input/doc.md +0 -12
  104. package/docs/pages/components/selectable-dropdown/doc.md +0 -156
  105. package/docs/pages/components/sharing-options/doc.md +0 -13
  106. package/docs/pages/components/sharing-options-link/doc.md +0 -36
  107. package/docs/pages/components/sign-up-form/doc.md +0 -13
  108. package/docs/pages/components/slide-up-down/doc.md +0 -28
  109. package/docs/pages/components/textured-deck/doc.md +0 -78
  110. package/docs/pages/components/tiny-pagination/doc.md +0 -92
  111. package/docs/pages/datavisualisation/bars/doc.md +0 -110
  112. package/docs/pages/datavisualisation/columns/doc.md +0 -165
  113. package/docs/pages/datavisualisation/lines/doc.md +0 -139
  114. package/docs/pages/datavisualisation/stacked-bar/doc.md +0 -160
  115. package/docs/pages/datavisualisation/stacked-column/doc.md +0 -191
  116. package/docs/pages/getting-started/about-icij/doc.md +0 -13
  117. package/docs/pages/getting-started/custom-bootstrap/doc.md +0 -36
  118. package/docs/pages/getting-started/installation-guide/doc.md +0 -59
  119. package/docs/pages/getting-started/internationalization/doc.md +0 -74
  120. package/docs/pages/maps/choropleth-map/doc.md +0 -420
  121. package/docs/pages/maps/choropleth-map-annotation/doc.md +0 -373
  122. package/docs/pages/maps/symbol-map/doc.md +0 -203
  123. package/docs/pages/structure/breakpoints/doc.md +0 -3
  124. package/docs/pages/structure/grid/doc.md +0 -3
  125. package/docs/pages/utilities/assets/doc.md +0 -138
  126. package/docs/pages/utilities/config/doc.md +0 -52
  127. package/docs/pages/utilities/iframes/doc.md +0 -3
  128. package/docs/pages/visual/colors/doc.md +0 -31
  129. package/docs/pages/visual/iconography/doc.md +0 -56
  130. package/docs/pages/visual/states/doc.md +0 -77
  131. package/docs/pages/visual/themes/doc.md +0 -3
  132. package/docs/pages/visual/typography/doc.md +0 -71
  133. package/docs/routes.js +0 -25
  134. package/docs/store/index.js +0 -21
  135. package/docs/styles/app.scss +0 -36
  136. package/docs/styles/variables.scss +0 -20
  137. package/loaders/highlight-loader.js +0 -13
  138. package/loaders/markdown-loader.js +0 -91
  139. package/loaders/metadata-loader.js +0 -18
  140. package/loaders/sass-extract-loader.js +0 -14
  141. package/loaders/vue-docgen-loader.js +0 -14
  142. package/plugins/MdPluginTypes.ts +0 -10
  143. package/plugins/docs.ts +0 -50
  144. package/plugins/front-matter.ts +0 -36
  145. package/plugins/highlight.ts +0 -27
  146. package/plugins/markdown-it/api-table.ts +0 -25
  147. package/plugins/markdown-it/sample-card.ts +0 -31
  148. package/plugins/plugin-delete.ts +0 -47
  149. package/plugins/plugin-docgen.ts +0 -23
  150. package/plugins/sass-vars.ts +0 -25
  151. package/plugins/vue-docgen.ts +0 -29
  152. package/public/android-chrome-192x192.png +0 -0
  153. package/public/android-chrome-512x512.png +0 -0
  154. package/public/apple-touch-icon.png +0 -0
  155. package/public/assets/img/arrow-bottom.svg +0 -3
  156. package/public/assets/img/texture-brick-black.jpg +0 -0
  157. package/public/assets/img/texture-brick.jpg +0 -0
  158. package/public/assets/img/texture-carbon-black.jpg +0 -0
  159. package/public/assets/img/texture-carbon.jpg +0 -0
  160. package/public/assets/img/texture-crack-black.jpg +0 -0
  161. package/public/assets/img/texture-crack.jpg +0 -0
  162. package/public/assets/img/texture-rock-black.jpg +0 -0
  163. package/public/assets/img/texture-rock.jpg +0 -0
  164. package/public/assets/img/texture-sand-black.jpg +0 -0
  165. package/public/assets/img/texture-sand.jpg +0 -0
  166. package/public/assets/img/texture-silk-black.jpg +0 -0
  167. package/public/assets/img/texture-silk.jpg +0 -0
  168. package/public/assets/topojson/france-departments.json +0 -1
  169. package/public/assets/topojson/paris-arrondissements.json +0 -1
  170. package/public/assets/topojson/world-countries-sans-antarctica.json +0 -1
  171. package/public/favicon-16x16.png +0 -0
  172. package/public/favicon-32x32.png +0 -0
  173. package/public/favicon.ico +0 -0
  174. package/public/site.webmanifest +0 -1
  175. package/stories/assets/code-brackets.svg +0 -1
  176. package/stories/assets/colors.svg +0 -1
  177. package/stories/assets/comments.svg +0 -1
  178. package/stories/assets/direction.svg +0 -1
  179. package/stories/assets/flow.svg +0 -1
  180. package/stories/assets/plugin.svg +0 -1
  181. package/stories/assets/repo.svg +0 -1
  182. package/stories/assets/stackalt.svg +0 -1
  183. package/stories/getting-started/about-icij.mdx +0 -14
  184. package/stories/getting-started/custom-bootstrap.mdx +0 -23
  185. package/stories/getting-started/installation-guide.mdx +0 -62
  186. package/stories/getting-started/internationalization.mdx +0 -63
  187. package/stories/murmur/components/AccordionStep.stories.ts +0 -33
  188. package/stories/murmur/components/AccordionWrapper.stories.ts +0 -69
  189. package/stories/murmur/components/ActiveTextTruncate.stories.ts +0 -32
  190. package/stories/murmur/components/AdvancedLinkForm.stories.ts +0 -77
  191. package/stories/murmur/components/Brand.stories.ts +0 -30
  192. package/stories/murmur/components/BrandExpansion.stories.ts +0 -41
  193. package/stories/murmur/components/ConfirmButton.stories.ts +0 -40
  194. package/stories/murmur/components/ContentPlaceholder.stories.ts +0 -41
  195. package/stories/murmur/components/CustomPagination.stories.ts +0 -42
  196. package/stories/murmur/components/DigitsInput.stories.ts +0 -29
  197. package/stories/murmur/components/DonateForm.stories.ts +0 -29
  198. package/stories/murmur/components/EmbedForm.stories.ts +0 -35
  199. package/stories/murmur/components/EmbeddableFooter.stories.ts +0 -59
  200. package/stories/murmur/components/FollowUsPopover.stories.ts +0 -24
  201. package/stories/murmur/components/GenericFooter.stories.ts +0 -27
  202. package/stories/murmur/components/GenericHeader.stories.ts +0 -27
  203. package/stories/murmur/components/HapticCopy.stories.ts +0 -40
  204. package/stories/murmur/components/ImddbHeader.stories.ts +0 -27
  205. package/stories/murmur/components/OrdinalLegend.stories.ts +0 -49
  206. package/stories/murmur/components/RangePicker.stories.ts +0 -98
  207. package/stories/murmur/components/ResponsiveIframe.stories.ts +0 -24
  208. package/stories/murmur/components/ScaleLegend.stories.ts +0 -65
  209. package/stories/murmur/components/SecretInput.stories.ts +0 -60
  210. package/stories/murmur/components/SelectableDropdown.stories.ts +0 -143
  211. package/stories/murmur/components/SharingOptions.stories.ts +0 -32
  212. package/stories/murmur/components/SharingOptionsLink.stories.ts +0 -53
  213. package/stories/murmur/components/SignUpForm.stories.ts +0 -51
  214. package/stories/murmur/components/SlideUpDown.stories.ts +0 -32
  215. package/stories/murmur/components/TexturedDeck.stories.ts +0 -83
  216. package/stories/murmur/components/TinyPagination.stories.ts +0 -65
  217. package/stories/murmur/datavisualisations/BarChart.stories.ts +0 -54
  218. package/stories/murmur/datavisualisations/ColumnChart.stories.ts +0 -88
  219. package/stories/murmur/datavisualisations/LineChart.stories.ts +0 -139
  220. package/stories/murmur/datavisualisations/StackedBarChart.stories.ts +0 -199
  221. package/stories/murmur/datavisualisations/StackedColumnChart.stories.ts +0 -136
  222. package/stories/murmur/decorators.ts +0 -108
  223. package/stories/murmur/maps/ChoroplethMap.stories.ts +0 -440
  224. package/stories/murmur/maps/ChoroplethMapAnnotation.stories.ts +0 -26
  225. package/stories/murmur/maps/SymbolMap.stories.ts +0 -24
  226. package/stories/murmur/utils.ts +0 -7
  227. package/tests/unit/components/AccordionStep.spec.ts +0 -157
  228. package/tests/unit/components/AccordionWrapper.spec.ts +0 -57
  229. package/tests/unit/components/ActiveTextTruncate.spec.js +0 -30
  230. package/tests/unit/components/AdvancedLinkForm.spec.js +0 -124
  231. package/tests/unit/components/Brand.spec.js +0 -50
  232. package/tests/unit/components/ContentPlaceholder.spec.js +0 -29
  233. package/tests/unit/components/CustomPagination.spec.js +0 -72
  234. package/tests/unit/components/DigitsInput.spec.ts +0 -157
  235. package/tests/unit/components/DonateForm.spec.js +0 -149
  236. package/tests/unit/components/EmbedForm.spec.js +0 -108
  237. package/tests/unit/components/EmbeddableFooter.spec.js +0 -11
  238. package/tests/unit/components/Fa.spec.js +0 -18
  239. package/tests/unit/components/FollowUsPopover.spec.js +0 -29
  240. package/tests/unit/components/GenericFooter.spec.js +0 -29
  241. package/tests/unit/components/GenericHeader.spec.js +0 -104
  242. package/tests/unit/components/HapticCopy.spec.js +0 -123
  243. package/tests/unit/components/ImddbHeader.spec.js +0 -96
  244. package/tests/unit/components/OrdinalLegend.spec.js +0 -120
  245. package/tests/unit/components/RangePicker.spec.ts +0 -87
  246. package/tests/unit/components/ResponsiveIframe.spec.js +0 -20
  247. package/tests/unit/components/ScaleLegend.spec.js +0 -139
  248. package/tests/unit/components/SecretInput.spec.js +0 -81
  249. package/tests/unit/components/SelectableDropdown.spec.js +0 -160
  250. package/tests/unit/components/SharingOptions.spec.js +0 -125
  251. package/tests/unit/components/SharingOptionsLink.spec.js +0 -184
  252. package/tests/unit/components/SignUpForm.spec.js +0 -145
  253. package/tests/unit/components/SlideUpDown.spec.js +0 -59
  254. package/tests/unit/components/TinyPagination.spec.js +0 -46
  255. package/tests/unit/config.spec.js +0 -136
  256. package/tests/unit/datavisualisations/BarChart.spec.js +0 -63
  257. package/tests/unit/datavisualisations/ColumnChart.spec.js +0 -344
  258. package/tests/unit/datavisualisations/LineChart.spec.js +0 -155
  259. package/tests/unit/datavisualisations/StackedBarChart.spec.js +0 -294
  260. package/tests/unit/datavisualisations/StackedColumnChart.spec.js +0 -443
  261. package/tests/unit/i18n.spec.ts +0 -19
  262. package/tests/unit/main.spec.js +0 -82
  263. package/tests/unit/maps/ChoroplethMap.spec.js +0 -214
  264. package/tests/unit/maps/ChoroplethMapAnnotation.spec.ts +0 -186
  265. package/tests/unit/maps/SymbolMap.spec.js +0 -92
  266. package/tests/unit/require.spec.js +0 -22
  267. package/tests/unit/setup.js +0 -13
  268. package/tests/unit/utils/assets.spec.js +0 -61
  269. package/tests/unit/utils/clipboard.spec.js +0 -18
  270. package/tests/unit/utils/iframe-resizer.spec.js +0 -71
  271. package/tsconfig.json +0 -35
  272. package/vite.config.ts +0 -79
  273. package/vitest.config.ts +0 -19
@@ -1,119 +0,0 @@
1
- <template>
2
- <div class="sample-card mb-5">
3
- <h4 v-if="title" class="sample-card__title">
4
- {{ title }}
5
- </h4>
6
- <p v-if="description" class="sample-card__description text-muted">
7
- {{ description }}
8
- </p>
9
- <div class="sample-card__body card">
10
- <slide-up-down :active="collapseCode" class="sample-card__body__render bg-light">
11
- <slot v-if="useSlot"></slot>
12
- <template v-else-if="component">
13
- <component :is="component" />
14
- </template>
15
- </slide-up-down>
16
- <div class="sample-card__body__actions border-top row no-gutters">
17
- <button class="btn btn-sm fw-bold btn col" :class="{ active: !collapseCode }" @click="toggleCode()">
18
- <fa icon="code" class="me-1" />
19
- <span v-if="collapseCode">Show code</span>
20
- <span v-if="!collapseCode">Hide code</span>
21
- </button>
22
- <haptic-copy v-if="extractedCode" class="btn-sm fw-bold btn col" :text="extractedCode" />
23
- </div>
24
- <slide-up-down :active="!collapseCode" class="sample-card__body__code bg-dark">
25
- <slot name="code">
26
- <pre><code :class="lang" v-html="code"></code></pre>
27
- </slot>
28
- </slide-up-down>
29
- </div>
30
- </div>
31
- </template>
32
-
33
- <script>
34
- import { faCode } from '@fortawesome/free-solid-svg-icons/faCode'
35
-
36
- import { default as Fa, library } from '@/components/Fa'
37
- import SlideUpDown from '@/components/SlideUpDown.vue'
38
- import HapticCopy from '@/components/HapticCopy.vue'
39
-
40
- export default {
41
- name: 'SampleCard',
42
- components: {
43
- HapticCopy,
44
- SlideUpDown,
45
- Fa
46
- },
47
- props: {
48
- title: {
49
- type: String
50
- },
51
- description: {
52
- type: String
53
- },
54
- component: {
55
- type: [Object, Function],
56
- default: () => null
57
- },
58
- code: {
59
- type: String,
60
- default: null
61
- },
62
- lang: {
63
- type: String,
64
- default: 'html'
65
- }
66
- },
67
- data() {
68
- return {
69
- collapseCode: true,
70
- extractedCode: null
71
- }
72
- },
73
- computed: {
74
- useSlot() {
75
- return !!this.$slots.default && !!this.$slots.default.length
76
- }
77
- },
78
- beforeMount() {
79
- library.add(faCode)
80
- },
81
- async mounted() {
82
- await this.$nextTick()
83
- const codeElement = this.$el.querySelector('.sample-card__body__code code')
84
- this.extractedCode = this.code || codeElement?.textContent?.replace(/\\/, '')
85
- },
86
- methods: {
87
- toggleCode(toggle = !this.collapseCode) {
88
- this.collapseCode = toggle
89
- }
90
- }
91
- }
92
- </script>
93
-
94
- <style lang="scss">
95
- @import '../styles/variables.scss';
96
-
97
- .sample-card {
98
- &__body {
99
- &__render {
100
- overflow: visible;
101
- max-width: 100%;
102
- }
103
-
104
- &__actions .btn {
105
- background: darken($light, 5%);
106
- &:not(:last-of-type) {
107
- border-right: $border-width solid $border-color;
108
- }
109
- }
110
-
111
- &__code {
112
- pre {
113
- padding: $spacer * 0.5;
114
- margin: 0;
115
- }
116
- }
117
- }
118
- }
119
- </style>
package/docs/main.js DELETED
@@ -1,42 +0,0 @@
1
- // BootstrapVue recommend using this
2
- import 'mutationobserver-shim'
3
- // The Vue build version to load with the `import` command
4
- // (runtime-only or standalone) has been set in webpack.base.conf with an alias.
5
- import Vue from 'vue'
6
- import VueRouter from 'vue-router'
7
- import BootstrapVue from 'bootstrap-vue'
8
- import Murmur from '@/main'
9
-
10
- import store from './store'
11
- import App from './components/App.vue'
12
- import ApiTable from './components/ApiTable.vue'
13
- import CollapsibleBlock from './components/CollapsibleBlock.vue'
14
- import OutboundLink from './components/OutboundLink.vue'
15
- import PalettePresenter from './components/PalettePresenter.vue'
16
- import RepositoryLink from './components/RepositoryLink.vue'
17
- import SampleCard from './components/SampleCard.vue'
18
-
19
- import routes from './routes'
20
- import './styles/app.scss'
21
-
22
- Vue.use(VueRouter)
23
- Vue.use(BootstrapVue)
24
- Vue.use(Murmur)
25
-
26
- Vue.config.productionTip = false
27
-
28
- Vue.component('ApiTable', ApiTable)
29
- Vue.component('CollapsibleBlock', CollapsibleBlock)
30
- Vue.component('OutboundLink', OutboundLink)
31
- Vue.component('PalettePresenter', PalettePresenter)
32
- Vue.component('RepositoryLink', RepositoryLink)
33
- Vue.component('SampleCard', SampleCard)
34
-
35
- Murmur.config.set('project.name', 'Demo Project')
36
-
37
- /* eslint-disable no-new */
38
- new Vue({
39
- store,
40
- render: h => h(App),
41
- router: new VueRouter({ routes })
42
- }).$mount('#app')
@@ -1,96 +0,0 @@
1
- ---
2
- title: Accordion
3
- description: Display a step by step accordion
4
- ---
5
-
6
- Accordion and accordion steps.
7
-
8
-
9
- Accordion "provides" functions and current step to accordion steps. Therefore, each accordion steps has the accordion methods and attributes "injected".
10
-
11
- The AccordionWrapper provides the step numbering and animation. It will also provide the current steps to all children.
12
- The AccordionStep component can be used independently of the AccordionWrapper component and the AccordionWrapper component can use other children components than the AccordionStep component we provide.
13
-
14
- ## AccordionWrapper
15
-
16
- :::sample-card
17
- <div class="p-4">
18
- <accordion-wrapper :steps="steps" v-model="step" class="p-2">
19
- <accordion-step
20
- :step="$options.stepsEnum.MAILVELOPE"
21
- class="accordion-step__mailvelope"
22
- title="Install Mailvelope"
23
- content="Install Mailvelope and create your key"
24
- />
25
- <accordion-step
26
- :step="$options.stepsEnum.EXPORT_PUBLIC_KEY"
27
- title="Export your public key"
28
- >
29
- <template #content>
30
- <p>
31
- Export your public PGP key as a .asc file and download on your
32
- computer
33
- </p>
34
- </template>
35
- </accordion-step>
36
- <accordion-step
37
- :active="active"
38
- :step="$options.stepsEnum.UPLOAD_PUBLIC_KEY"
39
- >
40
- <template #title>
41
- Upload your publickey
42
- </template>
43
- <template #nextStepButton>
44
- <b-button variant="info">The end!</b-button>
45
- </template>
46
- </accordion-step>
47
- </accordion-wrapper>
48
- </div>
49
- :::
50
-
51
- <api-table path="components/AccordionWrapper.vue"></api-table>
52
- <br/>
53
-
54
- ## AccordionStep
55
-
56
- A single AccordionStep component with the possibility to collapse/expand the content
57
-
58
-
59
- :::sample-card
60
- <div class="p-4">
61
- <accordion-step :active="active"
62
- :step="$options.stepsEnum.MAILVELOPE"
63
- content="Install Mailvelope and create your key"
64
- ><template #title>
65
- <b-button @click="active = !active">{{active?'Expanded':'Collapsed'}}</b-button> Install Mailvelope
66
- </template>
67
- </accordion-step>
68
-
69
- </div>
70
- :::
71
-
72
- <api-table path="components/AccordionStep.vue"></api-table>
73
-
74
- <style>
75
- .bg-striped {
76
- background: repeating-linear-gradient(45deg, #dfdddd, #dfdddd 10px, #cfcccc 10px, #cfcccc 20px)
77
- }
78
- </style>
79
-
80
- <script>
81
-
82
- export default {
83
- data () {
84
- return {
85
- step: this.$options.stepsEnum.MAILVELOPE,
86
- steps: Object.values(this.$options.stepsEnum),
87
- active: false
88
- }
89
- },
90
- stepsEnum:Object.freeze({
91
- MAILVELOPE: Symbol("MAILVELOPE"),
92
- EXPORT_PUBLIC_KEY: Symbol("EXPORT_PUBLIC_KEY"),
93
- UPLOAD_PUBLIC_KEY: Symbol("UPLOAD_PGP"),
94
- })
95
- }
96
- </script>
@@ -1,44 +0,0 @@
1
- ---
2
- title: Active Text Truncate
3
- description: Truncate text with an active display of the extended value
4
- ---
5
-
6
- The end of the text will be truncated with an elegant gradient mask.
7
-
8
- :::sample-card
9
- <div class="p-4">
10
- <active-text-truncate class="p-2 bg-striped">
11
- Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
12
- </active-text-truncate>
13
- </div>
14
- :::
15
-
16
- This can be combined, for instance, with the haptic copy button for a subtle effect:
17
-
18
- :::sample-card
19
- <div class="p-4">
20
- <haptic-copy class="btn btn-link w-100 border" text="https://www.icij.org/investigations/luanda-leaks/banking-documents-reveal-consulting-giants-cash-windfall-under-angolan-billionaire-isabel-dos-santos/">
21
- <active-text-truncate>
22
- https://www.icij.org/investigations/luanda-leaks/banking-documents-reveal-consulting-giants-cash-windfall-under-angolan-billionaire-isabel-dos-santos/
23
- </active-text-truncate>
24
- </haptic-copy>
25
- </div>
26
- :::
27
-
28
- Finally, this component can be used to truncate string from the start:
29
-
30
- :::sample-card
31
- <div class="p-4">
32
- <active-text-truncate class="p-2 bg-white text-monospace" direction="rtl">
33
- /secret-location/encrypted-disk/icij-investigations/leaks/luxleaks/v1/2001 and before/H4201030M.pdf
34
- </active-text-truncate>
35
- </div>
36
- :::
37
-
38
- ::: api-table components/ActiveTextTruncate.vue :::
39
-
40
- <style>
41
- .bg-striped {
42
- background: repeating-linear-gradient(45deg, #dfdddd, #dfdddd 10px, #cfcccc 10px, #cfcccc 20px)
43
- }
44
- </style>
@@ -1,105 +0,0 @@
1
- ---
2
- title: Advanced Link Form
3
- description: A form with tabs to offer several copy formats to users.
4
- ---
5
-
6
- Inside a card:
7
-
8
- :::sample-card
9
- <div class="text-center p-4">
10
- <b-card no-body>
11
- <advanced-link-form
12
- card
13
- title="Medtronic spends millions each year on lobbying in the US"
14
- link="https://projects.icij.org/the-implant-files/graphics/#/medtronic-lobbying" />
15
- </b-card>
16
- </div>
17
- :::
18
-
19
- Inside a modal (the modal's body is set to have no body):
20
-
21
- :::sample-card
22
- <div>
23
- <div class="p-4 text-center">
24
- <button class="btn btn-info fw-bold" @click="$refs.formModal.show()">
25
- Click to see the form
26
- </button>
27
- </div>
28
- <b-modal hide-footer hide-header body-class="p-0" ref="formModal" size="md" no-headings>
29
- <advanced-link-form
30
- card
31
- title="Medtronic spends millions each year on lobbying in the US"
32
- link="https://projects.icij.org/the-implant-files/graphics/#/medtronic-lobbying" />
33
- </b-modal>
34
- </div>
35
- :::
36
-
37
- This component can be use inside a popover. Here is a example with only `raw`
38
- and `markdown` forms, using no fading animation, and using a `small` layout:
39
-
40
- :::sample-card
41
- <template>
42
- <div>
43
- <div class="p-4 text-center">
44
- <button class="btn btn-info fw-bold" id="popover-button-sample">
45
- Click to see the form
46
- </button>
47
- </div>
48
- <b-popover ref="formPopover" target="popover-button-sample" placement="right" triggers="focus">
49
- <advanced-link-form
50
- card
51
- small
52
- no-fade
53
- :forms="['raw', 'markdown']"
54
- title="Medtronic spends millions each year on lobbying in the US"
55
- link="https://projects.icij.org/the-implant-files/graphics/#/medtronic-lobbying" />
56
- </b-popover>
57
- </div>
58
- </template>
59
- :::
60
-
61
- With tabs as pills:
62
-
63
- :::sample-card
64
- <div class="text-center p-4">
65
- <b-card no-body>
66
- <advanced-link-form
67
- card
68
- pills
69
- title="Medtronic spends millions each year on lobbying in the US"
70
- link="https://projects.icij.org/the-implant-files/graphics/#/medtronic-lobbying" />
71
- </b-card>
72
- </div>
73
- :::
74
-
75
- With tabs as pills and a different active class:
76
-
77
- :::sample-card
78
- <div class="text-center p-4">
79
- <b-card no-body>
80
- <advanced-link-form
81
- card
82
- pills
83
- active-nav-item-class="bg-primary fw-bold"
84
- title="Medtronic spends millions each year on lobbying in the US"
85
- link="https://projects.icij.org/the-implant-files/graphics/#/medtronic-lobbying" />
86
- </b-card>
87
- </div>
88
- :::
89
-
90
- With vertical tabs:
91
-
92
- :::sample-card
93
- <div class="text-center p-4">
94
- <b-card no-body>
95
- <advanced-link-form
96
- card
97
- vertical
98
- pills
99
- title="Medtronic spends millions each year on lobbying in the US"
100
- link="https://projects.icij.org/the-implant-files/graphics/#/medtronic-lobbying" />
101
- </b-card>
102
- </div>
103
- :::
104
-
105
- ::: api-table components/AdvancedLinkForm.vue :::
@@ -1,30 +0,0 @@
1
- ---
2
- title: Brand
3
- description: A component to create variations of ICIJ logo.
4
- ---
5
-
6
- :::sample-card
7
- <div class="text-center position-relative">
8
- <div class="position-absolute p-3">
9
- <b-form-checkbox v-model="animated" name="check-button" size="sm" switch>
10
- Animated
11
- </b-form-checkbox>
12
- </div>
13
- <brand class="p-1 m-3" square :animated="animated" />
14
- <brand class="p-1 m-3" square background="#000" color="#FFFF" :animated="animated" />
15
- <brand class="p-1 m-3" square background="#FFF" color="#000" :animated="animated" />
16
- </div>
17
- :::
18
-
19
- ::: api-table components/Brand.vue :::
20
-
21
-
22
- <script>
23
- export default {
24
- data () {
25
- return {
26
- animated: false
27
- }
28
- }
29
- }
30
- </script>
@@ -1,70 +0,0 @@
1
- ---
2
- title: Brand Expansion
3
- description: A component to create variations of ICIJ logo with text
4
- ---
5
-
6
- ### Short
7
-
8
- A variation of the logo with only the acronym "ICIJ":
9
-
10
- :::sample-card
11
- <div class="text-center position-relative">
12
- <div class="position-absolute p-3">
13
- <b-form-checkbox v-model="animated" name="check-button" size="sm" switch>
14
- Animated
15
- </b-form-checkbox>
16
- </div>
17
- <brand-expansion class="p-4 d-block" :animated="animated" />
18
- <brand-expansion class="p-4 d-block" background="#000" dark />
19
- <brand-expansion class="p-4 d-block" background="#000" color="#FFFF" />
20
- <brand-expansion class="p-4 d-block" background="#FFF" color="#000" />
21
- </div>
22
- :::
23
-
24
- ### Medium
25
-
26
- A variation of the logo with the definition of the acronym "ICIJ":
27
-
28
- :::sample-card
29
- <div class="text-center position-relative">
30
- <div class="position-absolute p-3">
31
- <b-form-checkbox v-model="animated" name="check-button" size="sm" switch>
32
- Animated
33
- </b-form-checkbox>
34
- </div>
35
- <brand-expansion class="p-4 d-block" mode="medium" :animated="animated" />
36
- <brand-expansion class="p-4 d-block" mode="medium" background="#000" dark />
37
- <brand-expansion class="p-4 d-block" mode="medium" background="#000" color="#FFFF" />
38
- <brand-expansion class="p-4 d-block" mode="medium" background="#FFF" color="#000" />
39
- </div>
40
- :::
41
-
42
- ### Long
43
-
44
- A variation of the logo with ICIJ's punchline:
45
-
46
- :::sample-card
47
- <div class="text-center position-relative">
48
- <div class="position-absolute p-3">
49
- <b-form-checkbox v-model="animated" name="check-button" size="sm" switch>
50
- Animated
51
- </b-form-checkbox>
52
- </div>
53
- <brand-expansion class="p-4 d-block" mode="long" :animated="animated" />
54
- <brand-expansion class="p-4 d-block" mode="long" background="#000" dark />
55
- <brand-expansion class="p-4 d-block" mode="long" background="#000" color="#FFFF" />
56
- <brand-expansion class="p-4 d-block" mode="long" background="#FFF" color="#000" />
57
- </div>
58
- :::
59
-
60
- ::: api-table components/BrandExpansion.vue :::
61
-
62
- <script>
63
- export default {
64
- data () {
65
- return {
66
- animated: false
67
- }
68
- }
69
- }
70
- </script>
@@ -1,91 +0,0 @@
1
- ---
2
- title: Confirm Button
3
- ---
4
-
5
- A component to create button with a confirmation tooltip
6
-
7
- :::sample-card
8
- <div class="p-2 text-center">
9
- <confirm-button class="btn btn-info" :confirmed="confirmed" no-close-button>
10
- Click to confirm
11
- </confirm-button>
12
- </div>
13
- :::
14
-
15
- You can also add a description:
16
-
17
- :::sample-card
18
- <div class="p-2 text-center">
19
- <confirm-button class="btn btn-info" description="Do, or do not. There is no try.">
20
- Click to confirm
21
- </confirm-button>
22
- </div>
23
- :::
24
-
25
- Or use different texts for the buttons:
26
-
27
- :::sample-card
28
- <div class="p-2 text-center">
29
- <confirm-button class="btn btn-info" label="Will you bilge Matey?" yes="Aye" no="Abandon ship!">
30
- Click to confirm
31
- </confirm-button>
32
- </div>
33
- :::
34
-
35
- Finally, you can change the default placement of the tooltip:
36
-
37
- :::sample-card
38
- <div class="p-2 text-center">
39
- <confirm-button class="btn btn-outline-dark m-2" placement="top">
40
- On <code>top</code>
41
- </confirm-button>
42
- <confirm-button class="btn btn-outline-dark m-2" placement="bottom">
43
- On <code>bottom</code>
44
- </confirm-button>
45
- <confirm-button class="btn btn-outline-dark m-2" placement="left">
46
- On <code>left</code>
47
- </confirm-button>
48
- <confirm-button class="btn btn-outline-dark m-2" placement="right">
49
- On <code>right</code>
50
- </confirm-button>
51
- <confirm-button class="btn btn-outline-dark m-2" placement="auto">
52
- On <code>auto</code>
53
- </confirm-button>
54
- <confirm-button class="btn btn-outline-dark m-2" placement="topleft">
55
- On <code>topleft</code>
56
- </confirm-button>
57
- <confirm-button class="btn btn-outline-dark m-2" placement="topright">
58
- On <code>topright</code>
59
- </confirm-button>
60
- <confirm-button class="btn btn-outline-dark m-2" placement="bottomleft">
61
- On <code>bottomleft</code>
62
- </confirm-button>
63
- <confirm-button class="btn btn-outline-dark m-2" placement="bottomright">
64
- On <code>bottomright</code>
65
- </confirm-button>
66
- <confirm-button class="btn btn-outline-dark m-2" placement="lefttop">
67
- On <code>lefttop</code>
68
- </confirm-button>
69
- <confirm-button class="btn btn-outline-dark m-2" placement="leftbottom">
70
- On <code>leftbottom</code>
71
- </confirm-button>
72
- <confirm-button class="btn btn-outline-dark m-2" placement="righttop">
73
- On <code>righttop</code>
74
- </confirm-button>
75
- <confirm-button class="btn btn-outline-dark m-2" placement="rightbottom">
76
- On <code>rightbottom</code>
77
- </confirm-button>
78
- </div>
79
- :::
80
-
81
- ::: api-table components/ConfirmButton.vue :::
82
-
83
- <script>
84
- export default {
85
- methods: {
86
- confirmed() {
87
- alert('Confirmed !')
88
- }
89
- }
90
- }
91
- </script>
@@ -1,16 +0,0 @@
1
- ---
2
- title: Content Placeholder
3
- ---
4
-
5
- A component to fill empty spaces with animated placeholders until content is loaded.
6
-
7
- :::sample-card
8
- <div class="card card-xs py-2 px-3 mx-auto m-4">
9
- <content-placeholder class="my-1" />
10
- <content-placeholder class="my-1" />
11
- <content-placeholder class="my-1" />
12
- <content-placeholder class="my-1"/>
13
- </div>
14
- :::
15
-
16
- ::: api-table components/ContentPlaceholder.vue :::
@@ -1,61 +0,0 @@
1
- ---
2
- title: Custom Pagination
3
- description: A custom pagination component with the option to jump ahead to a specific page using a form input.
4
- ---
5
-
6
- Default styling:
7
-
8
- :::sample-card
9
- <div class="p-2 text-center">
10
- <custom-pagination v-model="currentPage" :per-page="10" :total-rows="200" />
11
- </div>
12
- :::
13
-
14
- Default styling for the pagination element, while using a `small` layout:
15
-
16
- :::sample-card
17
- <div class="p-2 text-center">
18
- <custom-pagination v-model="currentPage" :per-page="10" :total-rows="200" small />
19
- </div>
20
- :::
21
-
22
- With pills:
23
-
24
- :::sample-card
25
- <div class="p-2 text-center">
26
- <custom-pagination v-model="currentPage" :pages="3" pills :total-rows="200" />
27
- </div>
28
- :::
29
-
30
- With pills, using a `sm` layout:
31
-
32
- :::sample-card
33
- <div class="p-2 text-center">
34
- <custom-pagination v-model="currentPage" :per-page="10" pills :total-rows="200" size="sm" />
35
- </div>
36
- :::
37
-
38
- Or a `compact` layout:
39
-
40
- :::sample-card
41
- <div class="p-2 text-center">
42
- <custom-pagination v-model="currentPage" :per-page="50" :pages="3" compact />
43
- </div>
44
- :::
45
-
46
- ::: api-table components/CustomPagination.vue :::
47
-
48
- <script>
49
- export default {
50
- data () {
51
- return {
52
- currentPage: 1
53
- }
54
- },
55
- watch: {
56
- currentPage (page) {
57
- this.$router.push({ query: { page } })
58
- }
59
- }
60
- }
61
- </script>