@demos-europe/demosplan-ui 0.3.19 → 0.3.21

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 (94) hide show
  1. package/.idea/shelf/Uncommitted_changes_before_Update_at_17_07_2024_15_21_[Changes]/shelved.patch +36 -0
  2. package/.idea/shelf/Uncommitted_changes_before_Update_at_17_07_2024_15_21__Changes_.xml +4 -0
  3. package/.idea/workspace.xml +37 -7
  4. package/.yarn/install-state.gz +0 -0
  5. package/CHANGELOG.md +20 -1
  6. package/buildTokens.js +157 -41
  7. package/dist/demosplan-ui.umd.js +1 -1
  8. package/package.json +5 -4
  9. package/src/components/DpButtonRow/DpButtonRow.vue +8 -2
  10. package/src/components/DpEditor/DpEditor.vue +46 -33
  11. package/src/components/DpEditor/DpResizableImage.vue +10 -4
  12. package/src/components/DpEditor/DpUploadModal.vue +29 -15
  13. package/src/components/DpUploadFiles/DpUpload.vue +9 -1
  14. package/src/components/DpUploadFiles/DpUploadFiles.vue +7 -0
  15. package/storybook-static/favicon.svg +7 -0
  16. package/storybook-static/index.html +123 -0
  17. package/storybook-static/index.json +1 -0
  18. package/storybook-static/project.json +1 -0
  19. package/storybook-static/sb-addons/essentials-actions-2/manager-bundle.js +3 -0
  20. package/storybook-static/sb-addons/essentials-actions-2/manager-bundle.js.LEGAL.txt +0 -0
  21. package/storybook-static/sb-addons/essentials-backgrounds-3/manager-bundle.js +12 -0
  22. package/storybook-static/sb-addons/essentials-backgrounds-3/manager-bundle.js.LEGAL.txt +0 -0
  23. package/storybook-static/sb-addons/essentials-controls-1/manager-bundle.js +63 -0
  24. package/storybook-static/sb-addons/essentials-controls-1/manager-bundle.js.LEGAL.txt +18 -0
  25. package/storybook-static/sb-addons/essentials-measure-6/manager-bundle.js +3 -0
  26. package/storybook-static/sb-addons/essentials-measure-6/manager-bundle.js.LEGAL.txt +0 -0
  27. package/storybook-static/sb-addons/essentials-outline-7/manager-bundle.js +3 -0
  28. package/storybook-static/sb-addons/essentials-outline-7/manager-bundle.js.LEGAL.txt +0 -0
  29. package/storybook-static/sb-addons/essentials-toolbars-5/manager-bundle.js +3 -0
  30. package/storybook-static/sb-addons/essentials-toolbars-5/manager-bundle.js.LEGAL.txt +0 -0
  31. package/storybook-static/sb-addons/essentials-viewport-4/manager-bundle.js +3 -0
  32. package/storybook-static/sb-addons/essentials-viewport-4/manager-bundle.js.LEGAL.txt +0 -0
  33. package/storybook-static/sb-addons/links-0/manager-bundle.js +3 -0
  34. package/storybook-static/sb-addons/links-0/manager-bundle.js.LEGAL.txt +0 -0
  35. package/storybook-static/sb-common-assets/fonts.css +31 -0
  36. package/storybook-static/sb-common-assets/nunito-sans-bold-italic.woff2 +0 -0
  37. package/storybook-static/sb-common-assets/nunito-sans-bold.woff2 +0 -0
  38. package/storybook-static/sb-common-assets/nunito-sans-italic.woff2 +0 -0
  39. package/storybook-static/sb-common-assets/nunito-sans-regular.woff2 +0 -0
  40. package/storybook-static/sb-manager/WithTooltip-V3YHNWJZ-TRLNWEGW.js +1 -0
  41. package/storybook-static/sb-manager/chunk-4IYAVH3S.js +348 -0
  42. package/storybook-static/sb-manager/chunk-CXYKRFSY.js +9 -0
  43. package/storybook-static/sb-manager/chunk-LVLAH4SI.js +7 -0
  44. package/storybook-static/sb-manager/chunk-VFHDXWEA.js +406 -0
  45. package/storybook-static/sb-manager/chunk-ZEU7PDD3.js +1 -0
  46. package/storybook-static/sb-manager/formatter-SWP5E3XI-7BGIK6BL.js +156 -0
  47. package/storybook-static/sb-manager/globals-module-info.js +1 -0
  48. package/storybook-static/sb-manager/globals.js +1 -0
  49. package/storybook-static/sb-manager/index.js +1 -0
  50. package/storybook-static/sb-manager/runtime.js +1 -0
  51. package/storybook-static/sb-manager/syntaxhighlighter-B5GMVT5T-EA5ASEYD.js +1 -0
  52. package/storybook-static/stories.json +1 -0
  53. package/tailwind.config.js +27 -1
  54. package/tokens/dist/js/boxShadow.js +13 -81
  55. package/tokens/dist/js/breakpoints.js +1 -1
  56. package/tokens/dist/js/color.brand.js +19 -7
  57. package/tokens/dist/js/color.data.js +85 -29
  58. package/tokens/dist/js/color.palette.js +175 -59
  59. package/tokens/dist/js/color.ui-tailwind.js +1899 -0
  60. package/tokens/dist/js/color.ui.js +2063 -57
  61. package/tokens/dist/js/fontSize.js +1 -1
  62. package/tokens/dist/js/rounded.js +1 -77
  63. package/tokens/dist/js/space.js +1 -1
  64. package/tokens/dist/js/zIndex.js +1 -1
  65. package/tokens/dist/scss/_boxShadow.scss +1 -1
  66. package/tokens/dist/scss/_breakpoints.scss +1 -1
  67. package/tokens/dist/scss/_color.brand.scss +1 -1
  68. package/tokens/dist/scss/_color.data.scss +1 -1
  69. package/tokens/dist/scss/_color.palette.scss +1 -1
  70. package/tokens/dist/scss/_color.ui.scss +1 -1
  71. package/tokens/dist/scss/_fontSize.scss +1 -1
  72. package/tokens/dist/scss/_rounded.scss +1 -1
  73. package/tokens/dist/scss/_space.scss +1 -1
  74. package/tokens/dist/scss/_zIndex.scss +1 -1
  75. package/tokens/dist/tailwind/backgroundColor.js +24 -0
  76. package/tokens/dist/tailwind/borderColor.js +9 -0
  77. package/tokens/dist/tailwind/color.brand.js +8 -0
  78. package/tokens/dist/tailwind/color.data.js +30 -0
  79. package/tokens/dist/tailwind/color.js +5 -0
  80. package/tokens/dist/tailwind/color.palette.js +60 -0
  81. package/tokens/dist/tailwind/textColor.js +37 -0
  82. package/tokens/src/boxShadow.json +16 -8
  83. package/tokens/src/color/color.brand.json +12 -6
  84. package/tokens/src/color/color.data.json +56 -28
  85. package/tokens/src/color/color.palette.json +116 -58
  86. package/tokens/src/color/color.ui-tailwind.json +401 -0
  87. package/tokens/src/color/color.ui.json +114 -57
  88. package/tokens/tokens.color.stories.mdx +83 -34
  89. package/tokens/tokens.space.stories.mdx +20 -20
  90. package/.idea/shelf/Uncommitted_changes_before_Checkout_at_12_07_2024_08_46_[Changes]/shelved.patch +0 -30538
  91. package/.idea/shelf/Uncommitted_changes_before_Checkout_at_12_07_2024_08_46__Changes_.xml +0 -4
  92. package/.idea/shelf/Uncommitted_changes_before_Update_at_12_07_2024_14_02_[Changes]/shelved.patch +0 -19
  93. package/.idea/shelf/Uncommitted_changes_before_Update_at_12_07_2024_14_02__Changes_.xml +0 -4
  94. package/style/index.css +0 -7
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@demos-europe/demosplan-ui",
3
- "version": "0.3.19",
3
+ "version": "0.3.21",
4
4
  "license": "MIT",
5
5
  "private": false,
6
6
  "description": "Vue components, Vue directives, Design Token and Scss files to build interfaces for demosPlan.",
@@ -44,7 +44,7 @@
44
44
  "plyr": "^3.7.2",
45
45
  "qs": "^6.11.0",
46
46
  "tippy.js": "^6.3.7",
47
- "uuid": "^9.0.0",
47
+ "uuid": "^10.0.0",
48
48
  "v-tooltip": "2.1.3",
49
49
  "vue-click-outside": "^1.1.0",
50
50
  "vue-multiselect": "^2.1.6",
@@ -93,17 +93,18 @@
93
93
  "path": "^0.12.7",
94
94
  "postcss": "^8.4.26",
95
95
  "postcss-loader": "^8.0.0",
96
+ "prop-types": "^15.8.1",
96
97
  "react": "^18.2.0",
97
98
  "react-dom": "^18.2.0",
98
99
  "storybook": "7.6.17",
99
100
  "storybook-addon-vue-slots": "^0.9.21",
100
- "string-width": "7.1.0",
101
+ "string-width": "7.2.0",
101
102
  "style-dictionary": "^3.9.2",
102
103
  "style-loader": "^4.0.0",
103
104
  "tailwindcss": "^3.2.1",
104
105
  "ts-jest": "^29.1.0",
105
106
  "ts-loader": "^9.4.4",
106
- "typescript": "~5.4.2",
107
+ "typescript": "~5.5.3",
107
108
  "vue-jest": "^3.0.7",
108
109
  "vue-loader": "^15",
109
110
  "vue-template-compiler": "^2.7.15",
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <div
3
- :class="[`text--${align}`, $attrs.class]"
3
+ :class="[align, $attrs.class]"
4
4
  class="space-inline-s">
5
5
  <dp-button
6
6
  v-if="primary"
@@ -37,7 +37,7 @@ export default {
37
37
  /**
38
38
  * Specifies if the buttons should align left or right inside their container.
39
39
  */
40
- align: {
40
+ alignment: {
41
41
  type: String,
42
42
  required: false,
43
43
  default: 'right'
@@ -123,6 +123,12 @@ export default {
123
123
  default: 'solid',
124
124
  validator: (prop) => ['solid', 'outline', 'subtle'].includes(prop)
125
125
  }
126
+ },
127
+
128
+ computed: {
129
+ align () {
130
+ return this.alignment === 'left' ? 'text-left' : 'text-right'
131
+ }
126
132
  }
127
133
  }
128
134
  </script>
@@ -29,12 +29,13 @@
29
29
  <div :class="[readonly ? prefixClass('readonly'): '', prefixClass('menubar')]">
30
30
  <!-- Cut -->
31
31
  <button
32
- @click="cut"
32
+ :aria-label="translations.cut"
33
33
  :class="prefixClass('menubar__button')"
34
+ data-cy="editor:cut"
35
+ :disabled="readonly"
34
36
  type="button"
35
- :aria-label="translations.cut"
36
- v-tooltip="translations.cut"
37
- :disabled="readonly">
37
+ @click="cut"
38
+ v-tooltip="translations.cut">
38
39
  <i
39
40
  :class="prefixClass('fa fa-scissors')"
40
41
  aria-hidden="true" />
@@ -42,24 +43,26 @@
42
43
  &#10072;
43
44
  <!-- Undo -->
44
45
  <button
45
- @click="editor.chain().focus().undo().run()"
46
+ :aria-label="translations.undo"
46
47
  :class="prefixClass('menubar__button')"
48
+ data-cy="editor:undo"
49
+ :disabled="readonly"
47
50
  type="button"
48
- :aria-label="translations.undo"
49
- v-tooltip="translations.undo"
50
- :disabled="readonly">
51
+ @click="editor.chain().focus().undo().run()"
52
+ v-tooltip="translations.undo">
51
53
  <i
52
54
  :class="prefixClass('fa fa-reply')"
53
55
  aria-hidden="true" />
54
56
  </button>
55
57
  <!-- Redo -->
56
58
  <button
57
- @click="editor.chain().focus().redo().run()"
59
+ :aria-label="translations.redo"
58
60
  :class="prefixClass('menubar__button')"
61
+ data-cy="editor:redo"
62
+ :disabled="readonly"
59
63
  type="button"
60
- :aria-label="translations.redo"
61
- v-tooltip="translations.redo"
62
- :disabled="readonly">
64
+ @click="editor.chain().focus().redo().run()"
65
+ v-tooltip="translations.redo">
63
66
  <i
64
67
  :class="prefixClass('fa fa-share')"
65
68
  aria-hidden="true" />
@@ -69,12 +72,13 @@
69
72
  <!-- Bold -->
70
73
 
71
74
  <button
72
- @click="editor.chain().focus().toggleBold().run()"
75
+ :aria-label="translations.bold"
73
76
  :class="[editor.isActive('bold') ? prefixClass('is-active'): '', prefixClass('menubar__button')]"
77
+ data-cy="editor:bold"
78
+ :disabled="readonly"
74
79
  type="button"
75
- :aria-label="translations.bold"
76
- v-tooltip="translations.bold"
77
- :disabled="readonly">
80
+ @click="editor.chain().focus().toggleBold().run()"
81
+ v-tooltip="translations.bold">
78
82
  <i
79
83
  :class="prefixClass('fa fa-bold')"
80
84
  aria-hidden="true" />
@@ -82,24 +86,26 @@
82
86
 
83
87
  <!-- Italic -->
84
88
  <button
85
- @click="editor.chain().focus().toggleItalic().run()"
89
+ :aria-label="translations.italic"
86
90
  :class="[editor.isActive('italic') ? prefixClass('is-active') : '', prefixClass('menubar__button') ]"
91
+ data-cy="editor:italic"
92
+ :disabled="readonly"
87
93
  type="button"
88
- :aria-label="translations.italic"
89
- v-tooltip="translations.italic"
90
- :disabled="readonly">
94
+ @click="editor.chain().focus().toggleItalic().run()"
95
+ v-tooltip="translations.italic">
91
96
  <i
92
97
  :class="prefixClass('fa fa-italic')"
93
98
  aria-hidden="true" />
94
99
  </button>
95
100
  <!-- Underline -->
96
101
  <button
97
- @click="editor.chain().focus().toggleUnderline().run()"
102
+ :aria-label="translations.underline"
98
103
  :class="[editor.isActive('underline') ? prefixClass('is-active') : '', prefixClass('menubar__button')]"
104
+ data-cy="editor:underline"
105
+ :disabled="readonly"
99
106
  type="button"
100
- :aria-label="translations.underline"
101
- v-tooltip="translations.underline"
102
- :disabled="readonly">
107
+ @click="editor.chain().focus().toggleUnderline().run()"
108
+ v-tooltip="translations.underline">
103
109
  <i
104
110
  :class="prefixClass('fa fa-underline')"
105
111
  aria-hidden="true" />
@@ -108,12 +114,13 @@
108
114
  <!-- Strike through -->
109
115
  <button
110
116
  v-if="toolbar.strikethrough"
111
- @click="editor.chain().focus().toggleStrike().run()"
117
+ :aria-label="translations.strikethrough"
112
118
  :class="[editor.isActive('strike') ? prefixClass('is-active') : '', prefixClass('menubar__button')]"
119
+ data-cy="editor:strikethrough"
120
+ :disabled="readonly"
113
121
  type="button"
114
- :aria-label="translations.strikethrough"
115
- v-tooltip="translations.strikethrough"
116
- :disabled="readonly">
122
+ @click="editor.chain().focus().toggleStrike().run()"
123
+ v-tooltip="translations.strikethrough">
117
124
  <i
118
125
  :class="prefixClass('fa fa-strikethrough')"
119
126
  aria-hidden="true" />
@@ -123,10 +130,10 @@
123
130
  :class="prefixClass('inline-block relative')">
124
131
  <button
125
132
  :class="[editor.isActive('insert') || editor.isActive('delete') ? prefixClass('is-active') : '', prefixClass('menubar__button')]"
133
+ :disabled="readonly"
126
134
  type="button"
127
135
  @click.stop="toggleSubMenu('diffMenu', !diffMenu.isOpen)"
128
- @keydown.tab.shift.exact="toggleSubMenu('diffMenu', false)"
129
- :disabled="readonly">
136
+ @keydown.tab.shift.exact="toggleSubMenu('diffMenu', false)">
130
137
  <dp-icon
131
138
  class="align-text-top inline-block"
132
139
  icon="highlighter" />
@@ -355,6 +362,7 @@ import DpResizableImage from './DpResizableImage'
355
362
  import { handleWordPaste } from './libs/handleWordPaste'
356
363
  import { maxlengthHint } from '~/utils/'
357
364
  import { prefixClassMixin } from '~/mixins'
365
+ import { v4 as uuid } from 'uuid'
358
366
 
359
367
  export default {
360
368
  name: 'DpEditor',
@@ -1041,6 +1049,7 @@ export default {
1041
1049
 
1042
1050
  mounted () {
1043
1051
  this.editor = new Editor({
1052
+ id: uuid(),
1044
1053
  editable: !this.readonly,
1045
1054
  extensions: this.collectExtensions(),
1046
1055
  content: this.currentValue,
@@ -1089,9 +1098,13 @@ export default {
1089
1098
  }
1090
1099
  })
1091
1100
 
1092
- this.$root.$on('open-image-alt-modal', (e, id) => {
1093
- this.editingImage = id
1094
- this.openUploadModal({ editAltOnly: true, currentAlt: e.target.getAttribute('alt') })
1101
+ this.$root.$on('open-image-alt-modal', ({ event, imgId, editorId }) => {
1102
+ if (this.editor.options.id !== editorId) {
1103
+ return
1104
+ }
1105
+
1106
+ this.editingImage = imgId
1107
+ this.openUploadModal({ editAltOnly: true, currentAlt: event.target.getAttribute('alt'), imgSrc: event.target.getAttribute('src') })
1095
1108
  })
1096
1109
  /*
1097
1110
  * On form-reset the editor has to be cleared manually.
@@ -7,9 +7,10 @@
7
7
  <img
8
8
  :alt="node.attrs.alt"
9
9
  ref="image"
10
+ data-cy="editor:resizableImage"
10
11
  :src="node.attrs.src"
11
12
  :title="imageTitle"
12
- @click.ctrl="$root.$emit('open-image-alt-modal', $event, id)">
13
+ @click.ctrl="$root.$emit('open-image-alt-modal', { event: $event, imgId: id, editorId: editor.options.id })">
13
14
  </node-view-wrapper>
14
15
  </template>
15
16
 
@@ -59,7 +60,7 @@ export default {
59
60
  img.onload = () => {
60
61
  this.ratioFactor = img.width / img.height
61
62
 
62
- // If the width is not set jet, set it to the image original dimensions
63
+ // If the width is not set yet, set it to the image original dimensions
63
64
  if (updateSize) {
64
65
  this.updateImageDimensions()
65
66
  }
@@ -89,11 +90,16 @@ export default {
89
90
 
90
91
  this.initResizeObserver()
91
92
 
92
- // May or not may be necessary
93
- // this.$refs.imagewrapper.$el.style.width = this.node.attrs.width + 'px'
93
+ this.$refs.imagewrapper.$el.style.width = this.node.attrs.width + 'px'
94
94
 
95
95
  const updateSize = (this.node.attrs.height > 0) === false || this.node.attrs.height === Infinity
96
96
  this.setRatio(updateSize)
97
+ },
98
+
99
+ beforeDestroy () {
100
+ if (this.observer) {
101
+ this.observer.disconnect()
102
+ }
97
103
  }
98
104
  }
99
105
  </script>
@@ -1,7 +1,9 @@
1
1
  <template>
2
2
  <dp-modal
3
3
  ref="uploadModal"
4
- content-classes="u-2-of-3-lap-up u-1-of-2-desk-up">
4
+ content-classes="w-fit"
5
+ data-cy="editor:uploadModal"
6
+ @modal:toggled="(isOpen) => { if (!isOpen) reset() }">
5
7
  <template>
6
8
  <h3
7
9
  v-if="editAltTextOnly"
@@ -13,7 +15,7 @@
13
15
  class="u-mb">
14
16
  {{ translations.insertImage }}
15
17
  </h3>
16
- <div v-show="editAltTextOnly === false">
18
+ <div v-if="!editAltTextOnly">
17
19
  <dp-upload-files
18
20
  allowed-file-types="img"
19
21
  :basic-auth="basicAuth"
@@ -26,25 +28,34 @@
26
28
  :tus-endpoint="tusEndpoint"
27
29
  @upload-success="setFile" />
28
30
  </div>
31
+ <div v-else>
32
+ <img
33
+ :alt="altText"
34
+ class="mb-4"
35
+ :src="this.imgSrc">
36
+ </div>
29
37
  <dp-input
30
38
  id="altText"
31
39
  v-model="altText"
32
40
  class="u-mb"
41
+ data-cy="uploadModal:altText"
33
42
  :label="{
34
43
  hint: translations.altTextHint,
35
44
  text: translations.altText,
36
45
  }" />
37
- <div class="u-mt text--right w-full space-inline-s">
46
+ <div class="u-mt text-right w-full space-inline-s">
38
47
  <button
39
48
  class="btn btn--primary"
49
+ data-cy="uploadModal:save"
40
50
  type="button"
41
- @click="emitAndClose()">
42
- {{ Translator.trans('insert') }}
51
+ @click="emitAndClose()"
52
+ v-text="editAltTextOnly ? Translator.trans('save') : Translator.trans('insert')">
43
53
  </button>
44
54
  <button
45
55
  class="btn btn--secondary"
56
+ data-cy="uploadModal:abort"
46
57
  type="button"
47
- @click="resetAndClose()">
58
+ @click="closeAndReset()">
48
59
  {{ Translator.trans('abort') }}
49
60
  </button>
50
61
  </div>
@@ -96,6 +107,7 @@ export default {
96
107
  fileUrl: '',
97
108
  altText: '',
98
109
  editAltTextOnly: false,
110
+ imgSrc: '',
99
111
  translations: {
100
112
  altText: de.altText.default,
101
113
  altTextHint: de.image.alt.explanation,
@@ -107,21 +119,26 @@ export default {
107
119
  },
108
120
 
109
121
  methods: {
122
+ closeAndReset () {
123
+ this.reset()
124
+ this.$emit('close')
125
+ this.toggleModal()
126
+ },
127
+
110
128
  emitAndClose () {
111
129
  if (this.editAltTextOnly) {
112
130
  this.$emit('add-alt', this.altText)
113
131
  } else if (this.fileUrl) {
114
132
  this.$emit('insert-image', this.fileUrl, this.altText)
115
133
  }
116
- this.resetAndClose()
134
+
135
+ this.closeAndReset()
117
136
  },
118
137
 
119
- resetAndClose () {
138
+ reset () {
120
139
  this.altText = ''
121
140
  this.fileUrl = ''
122
141
  this.editAltTextOnly = false
123
- this.$emit('close')
124
- this.toggleModal()
125
142
  },
126
143
 
127
144
  setFile ({ hash }) {
@@ -131,13 +148,10 @@ export default {
131
148
  },
132
149
 
133
150
  toggleModal (data) {
134
- const willCloseModal = this.$refs.uploadModal.isOpenModal === true
135
-
136
- if (willCloseModal) {
137
- this.$refs.uploader.clearFilesList()
138
- } else if (data) {
151
+ if (data) {
139
152
  this.editAltTextOnly = data.editAltOnly
140
153
  this.altText = data.currentAlt
154
+ this.imgSrc = data.imgSrc
141
155
  }
142
156
 
143
157
  this.$refs.uploadModal.toggle()
@@ -1,5 +1,7 @@
1
1
  <template>
2
- <div ref="fileInput" />
2
+ <div
3
+ :data-cy="dataCy"
4
+ ref="fileInput" />
3
5
  </template>
4
6
 
5
7
  <script>
@@ -56,6 +58,12 @@ export default {
56
58
  required: false
57
59
  },
58
60
 
61
+ dataCy: {
62
+ type: String,
63
+ required: false,
64
+ default: 'upload'
65
+ },
66
+
59
67
  /**
60
68
  * Maximum file size in bytes for each individual file
61
69
  */
@@ -16,6 +16,7 @@
16
16
  :basic-auth="basicAuth"
17
17
  :chunk-size="chunkSize"
18
18
  :class="[prefixClass('layout__item u-1-of-1-palm'), prefixClass(sideBySide ? 'u-1-of-2' : 'u-1-of-1')]"
19
+ :data-cy="dataCy"
19
20
  :max-number-of-files="maxNumberOfFiles"
20
21
  :max-file-size="maxFileSize"
21
22
  :translations="translations"
@@ -92,6 +93,12 @@ export default {
92
93
  required: false
93
94
  },
94
95
 
96
+ dataCy: {
97
+ type: String,
98
+ required: false,
99
+ default: 'uploadFile'
100
+ },
101
+
95
102
  /**
96
103
  * Use to conditionally validate a required upload field
97
104
  * "required" and "needsHiddenInput" need to be set to true in that case
@@ -0,0 +1,7 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.com/svgjs" width="164" height="164">
2
+ <svg width="164" height="164" viewBox="0 0 164 164" fill="none" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="M22.467 147.762 17.5 15.402a8.062 8.062 0 0 1 7.553-8.35L137.637.016a8.061 8.061 0 0 1 8.565 8.047v144.23a8.063 8.063 0 0 1-8.424 8.054l-107.615-4.833a8.062 8.062 0 0 1-7.695-7.752Z" fill="#FF4785"></path>
4
+ <path fill-rule="evenodd" clip-rule="evenodd" d="m128.785.57-15.495.968-.755 18.172a1.203 1.203 0 0 0 1.928 1.008l7.06-5.354 5.962 4.697a1.202 1.202 0 0 0 1.946-.987L128.785.569Zm-12.059 60.856c-2.836 2.203-23.965 3.707-23.965.57.447-11.969-4.912-12.494-7.889-12.494-2.828 0-7.59.855-7.59 7.267 0 6.534 6.96 10.223 15.13 14.553 11.607 6.15 25.654 13.594 25.654 32.326 0 17.953-14.588 27.871-33.194 27.871-19.201 0-35.981-7.769-34.086-34.702.744-3.163 25.156-2.411 25.156 0-.298 11.114 2.232 14.383 8.633 14.383 4.912 0 7.144-2.708 7.144-7.267 0-6.9-7.252-10.973-15.595-15.657C64.827 81.933 51.53 74.468 51.53 57.34c0-17.098 11.76-28.497 32.747-28.497 20.988 0 32.449 11.224 32.449 32.584Z" fill="#fff"></path>
5
+ </svg>
6
+ <style>@media (prefers-color-scheme: light) { :root { filter: none; } }</style>
7
+ </svg>
@@ -0,0 +1,123 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+
6
+ <title>@storybook/cli - Storybook</title>
7
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
8
+
9
+
10
+ <link rel="icon" type="image/svg+xml" href="./favicon.svg" />
11
+
12
+ <link
13
+ rel="prefetch"
14
+ href="./sb-common-assets/nunito-sans-regular.woff2"
15
+ as="font"
16
+ type="font/woff2"
17
+ crossorigin
18
+ />
19
+ <link
20
+ rel="prefetch"
21
+ href="./sb-common-assets/nunito-sans-bold.woff2"
22
+ as="font"
23
+ type="font/woff2"
24
+ crossorigin
25
+ />
26
+ <link rel="stylesheet" href="./sb-common-assets/fonts.css" />
27
+
28
+ <link href="./sb-manager/runtime.js" rel="modulepreload" />
29
+
30
+
31
+ <link href="./sb-addons/links-0/manager-bundle.js" rel="modulepreload" />
32
+
33
+ <link href="./sb-addons/essentials-controls-1/manager-bundle.js" rel="modulepreload" />
34
+
35
+ <link href="./sb-addons/essentials-actions-2/manager-bundle.js" rel="modulepreload" />
36
+
37
+ <link href="./sb-addons/essentials-backgrounds-3/manager-bundle.js" rel="modulepreload" />
38
+
39
+ <link href="./sb-addons/essentials-viewport-4/manager-bundle.js" rel="modulepreload" />
40
+
41
+ <link href="./sb-addons/essentials-toolbars-5/manager-bundle.js" rel="modulepreload" />
42
+
43
+ <link href="./sb-addons/essentials-measure-6/manager-bundle.js" rel="modulepreload" />
44
+
45
+ <link href="./sb-addons/essentials-outline-7/manager-bundle.js" rel="modulepreload" />
46
+
47
+
48
+ <style>
49
+ #storybook-root[hidden] {
50
+ display: none !important;
51
+ }
52
+ </style>
53
+
54
+
55
+ </head>
56
+ <body>
57
+ <div id="root"></div>
58
+
59
+
60
+ <script>
61
+
62
+
63
+ window['FEATURES'] = {
64
+ "warnOnLegacyHierarchySeparator": true,
65
+ "buildStoriesJson": false,
66
+ "storyStoreV7": true,
67
+ "argTypeTargetsV7": true,
68
+ "legacyDecoratorFileOrder": false,
69
+ "disallowImplicitActionsInRenderV8": false
70
+ };
71
+
72
+
73
+
74
+ window['REFS'] = {};
75
+
76
+
77
+
78
+ window['LOGLEVEL'] = "info";
79
+
80
+
81
+
82
+ window['DOCS_OPTIONS'] = {
83
+ "defaultName": "Docs",
84
+ "autodocs": true
85
+ };
86
+
87
+
88
+
89
+ window['CONFIG_TYPE'] = "PRODUCTION";
90
+
91
+
92
+
93
+
94
+
95
+
96
+ </script>
97
+
98
+
99
+ <script type="module">
100
+ import './sb-manager/runtime.js';
101
+
102
+
103
+ import './sb-addons/links-0/manager-bundle.js';
104
+
105
+ import './sb-addons/essentials-controls-1/manager-bundle.js';
106
+
107
+ import './sb-addons/essentials-actions-2/manager-bundle.js';
108
+
109
+ import './sb-addons/essentials-backgrounds-3/manager-bundle.js';
110
+
111
+ import './sb-addons/essentials-viewport-4/manager-bundle.js';
112
+
113
+ import './sb-addons/essentials-toolbars-5/manager-bundle.js';
114
+
115
+ import './sb-addons/essentials-measure-6/manager-bundle.js';
116
+
117
+ import './sb-addons/essentials-outline-7/manager-bundle.js';
118
+
119
+ </script>
120
+
121
+ <link href="./sb-preview/runtime.js" rel="prefetch" as="script" />
122
+ </body>
123
+ </html>