@siemens/ix 1.5.0-beta.0 → 1.5.0-beta.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 (241) hide show
  1. package/dist/cjs/index-478a4b66.js +8 -0
  2. package/dist/cjs/index.cjs.js +12 -0
  3. package/dist/cjs/index.cjs.js.map +1 -1
  4. package/dist/cjs/ix-blind.cjs.entry.js +6 -3
  5. package/dist/cjs/ix-blind.cjs.entry.js.map +1 -1
  6. package/dist/cjs/ix-breadcrumb_2.cjs.entry.js +1 -1
  7. package/dist/cjs/ix-breadcrumb_2.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ix-category-filter.cjs.entry.js +2 -2
  9. package/dist/cjs/ix-category-filter.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ix-chip.cjs.entry.js +6 -1
  11. package/dist/cjs/ix-chip.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ix-dropdown_2.cjs.entry.js +1 -1
  13. package/dist/cjs/ix-dropdown_2.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ix-filter-chip.cjs.entry.js +2 -2
  15. package/dist/cjs/ix-filter-chip.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ix-flip-tile_2.cjs.entry.js +11 -2
  17. package/dist/cjs/ix-flip-tile_2.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ix-index-button.cjs.entry.js +28 -0
  19. package/dist/cjs/ix-index-button.cjs.entry.js.map +1 -0
  20. package/dist/cjs/ix-input-group.cjs.entry.js +1 -1
  21. package/dist/cjs/ix-input-group.cjs.entry.js.map +1 -1
  22. package/dist/cjs/ix-menu_9.cjs.entry.js +1 -1
  23. package/dist/cjs/ix-menu_9.cjs.entry.js.map +1 -1
  24. package/dist/cjs/ix-pagination.cjs.entry.js +115 -0
  25. package/dist/cjs/ix-pagination.cjs.entry.js.map +1 -0
  26. package/dist/cjs/ix-select_2.cjs.entry.js +3 -3
  27. package/dist/cjs/ix-select_2.cjs.entry.js.map +1 -1
  28. package/dist/cjs/ix-toast_2.cjs.entry.js +10 -1
  29. package/dist/cjs/ix-toast_2.cjs.entry.js.map +1 -1
  30. package/dist/cjs/ix-tooltip.cjs.entry.js +31 -27
  31. package/dist/cjs/ix-tooltip.cjs.entry.js.map +1 -1
  32. package/dist/cjs/ix-tree_2.cjs.entry.js +4 -0
  33. package/dist/cjs/ix-tree_2.cjs.entry.js.map +1 -1
  34. package/dist/cjs/ix-upload.cjs.entry.js +8 -23
  35. package/dist/cjs/ix-upload.cjs.entry.js.map +1 -1
  36. package/dist/cjs/ix-workflow-step_2.cjs.entry.js +1 -1
  37. package/dist/cjs/ix-workflow-step_2.cjs.entry.js.map +1 -1
  38. package/dist/cjs/loader.cjs.js +1 -1
  39. package/dist/cjs/siemens-ix.cjs.js +1 -1
  40. package/dist/cjs/upload-file-state-a79acf2b.js +19 -0
  41. package/dist/cjs/upload-file-state-a79acf2b.js.map +1 -0
  42. package/dist/collection/collection-manifest.json +2 -0
  43. package/dist/collection/components/blind/blind.css +12 -6
  44. package/dist/collection/components/blind/blind.js +25 -2
  45. package/dist/collection/components/blind/blind.js.map +1 -1
  46. package/dist/collection/components/breadcrumb/breadcrumb.css +1 -2
  47. package/dist/collection/components/category-filter/category-filter.js +2 -2
  48. package/dist/collection/components/category-filter/category-filter.js.map +1 -1
  49. package/dist/collection/components/chip/chip.js +27 -2
  50. package/dist/collection/components/chip/chip.js.map +1 -1
  51. package/dist/collection/components/dropdown-item/dropdown-item.js +1 -1
  52. package/dist/collection/components/dropdown-item/dropdown-item.js.map +1 -1
  53. package/dist/collection/components/filter-chip/filter-chip.css +14 -7
  54. package/dist/collection/components/filter-chip/filter-chip.js +1 -1
  55. package/dist/collection/components/filter-chip/filter-chip.js.map +1 -1
  56. package/dist/collection/components/flip-tile/flip-tile.css +0 -4
  57. package/dist/collection/components/flip-tile/flip-tile.js +56 -2
  58. package/dist/collection/components/flip-tile/flip-tile.js.map +1 -1
  59. package/dist/collection/components/index-button/index-button.css +31 -0
  60. package/dist/collection/components/index-button/index-button.js +83 -0
  61. package/dist/collection/components/index-button/index-button.js.map +1 -0
  62. package/dist/collection/components/input-group/input-group.css +3 -0
  63. package/dist/collection/components/menu-item/menu-item.css +15 -10
  64. package/dist/collection/components/pagination/pagination.css +58 -0
  65. package/dist/collection/components/pagination/pagination.js +303 -0
  66. package/dist/collection/components/pagination/pagination.js.map +1 -0
  67. package/dist/collection/components/select/select.js +3 -3
  68. package/dist/collection/components/select/select.js.map +1 -1
  69. package/dist/collection/components/toast/toast-container.js +16 -4
  70. package/dist/collection/components/toast/toast-container.js.map +1 -1
  71. package/dist/collection/components/toast/toast-utils.js +4 -1
  72. package/dist/collection/components/toast/toast-utils.js.map +1 -1
  73. package/dist/collection/components/tooltip/tooltip.css +8 -7
  74. package/dist/collection/components/tooltip/tooltip.js +31 -27
  75. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  76. package/dist/collection/components/tree/tree.js +38 -0
  77. package/dist/collection/components/tree/tree.js.map +1 -1
  78. package/dist/collection/components/workflow-step/workflow-step.css +1 -0
  79. package/dist/collection/index.js +1 -0
  80. package/dist/collection/index.js.map +1 -1
  81. package/dist/components/dropdown-item.js +1 -1
  82. package/dist/components/dropdown-item.js.map +1 -1
  83. package/dist/components/filter-chip.js +2 -2
  84. package/dist/components/filter-chip.js.map +1 -1
  85. package/dist/components/index-button.js +41 -0
  86. package/dist/components/index-button.js.map +1 -0
  87. package/dist/components/index.js +5 -1
  88. package/dist/components/index.js.map +1 -1
  89. package/dist/components/ix-blind.js +15 -5
  90. package/dist/components/ix-blind.js.map +1 -1
  91. package/dist/components/ix-breadcrumb.js +1 -1
  92. package/dist/components/ix-breadcrumb.js.map +1 -1
  93. package/dist/components/ix-category-filter.js +2 -2
  94. package/dist/components/ix-category-filter.js.map +1 -1
  95. package/dist/components/ix-chip.js +6 -1
  96. package/dist/components/ix-chip.js.map +1 -1
  97. package/dist/components/ix-flip-tile.js +13 -2
  98. package/dist/components/ix-flip-tile.js.map +1 -1
  99. package/dist/components/ix-index-button.d.ts +11 -0
  100. package/dist/components/ix-index-button.js +8 -0
  101. package/dist/components/ix-index-button.js.map +1 -0
  102. package/dist/components/ix-input-group.js +1 -1
  103. package/dist/components/ix-input-group.js.map +1 -1
  104. package/dist/components/ix-pagination.d.ts +11 -0
  105. package/dist/components/ix-pagination.js +185 -0
  106. package/dist/components/ix-pagination.js.map +1 -0
  107. package/dist/components/ix-select.js +1 -341
  108. package/dist/components/ix-select.js.map +1 -1
  109. package/dist/components/ix-toast-container.js +10 -1
  110. package/dist/components/ix-toast-container.js.map +1 -1
  111. package/dist/components/ix-tooltip.js +32 -28
  112. package/dist/components/ix-tooltip.js.map +1 -1
  113. package/dist/components/ix-tree.js +4 -0
  114. package/dist/components/ix-tree.js.map +1 -1
  115. package/dist/components/ix-upload.js +1 -16
  116. package/dist/components/ix-upload.js.map +1 -1
  117. package/dist/components/ix-workflow-step.js +1 -1
  118. package/dist/components/ix-workflow-step.js.map +1 -1
  119. package/dist/components/menu-item.js +1 -1
  120. package/dist/components/menu-item.js.map +1 -1
  121. package/dist/components/select.js +345 -0
  122. package/dist/components/select.js.map +1 -0
  123. package/dist/components/upload-file-state.js +19 -0
  124. package/dist/components/upload-file-state.js.map +1 -0
  125. package/dist/esm/index-3d163acd.js +8 -0
  126. package/dist/esm/index.js +5 -1
  127. package/dist/esm/index.js.map +1 -1
  128. package/dist/esm/ix-blind.entry.js +6 -3
  129. package/dist/esm/ix-blind.entry.js.map +1 -1
  130. package/dist/esm/ix-breadcrumb_2.entry.js +1 -1
  131. package/dist/esm/ix-breadcrumb_2.entry.js.map +1 -1
  132. package/dist/esm/ix-category-filter.entry.js +2 -2
  133. package/dist/esm/ix-category-filter.entry.js.map +1 -1
  134. package/dist/esm/ix-chip.entry.js +6 -1
  135. package/dist/esm/ix-chip.entry.js.map +1 -1
  136. package/dist/esm/ix-dropdown_2.entry.js +1 -1
  137. package/dist/esm/ix-dropdown_2.entry.js.map +1 -1
  138. package/dist/esm/ix-filter-chip.entry.js +2 -2
  139. package/dist/esm/ix-filter-chip.entry.js.map +1 -1
  140. package/dist/esm/ix-flip-tile_2.entry.js +11 -2
  141. package/dist/esm/ix-flip-tile_2.entry.js.map +1 -1
  142. package/dist/esm/ix-index-button.entry.js +24 -0
  143. package/dist/esm/ix-index-button.entry.js.map +1 -0
  144. package/dist/esm/ix-input-group.entry.js +1 -1
  145. package/dist/esm/ix-input-group.entry.js.map +1 -1
  146. package/dist/esm/ix-menu_9.entry.js +1 -1
  147. package/dist/esm/ix-menu_9.entry.js.map +1 -1
  148. package/dist/esm/ix-pagination.entry.js +111 -0
  149. package/dist/esm/ix-pagination.entry.js.map +1 -0
  150. package/dist/esm/ix-select_2.entry.js +3 -3
  151. package/dist/esm/ix-select_2.entry.js.map +1 -1
  152. package/dist/esm/ix-toast_2.entry.js +10 -1
  153. package/dist/esm/ix-toast_2.entry.js.map +1 -1
  154. package/dist/esm/ix-tooltip.entry.js +32 -28
  155. package/dist/esm/ix-tooltip.entry.js.map +1 -1
  156. package/dist/esm/ix-tree_2.entry.js +4 -0
  157. package/dist/esm/ix-tree_2.entry.js.map +1 -1
  158. package/dist/esm/ix-upload.entry.js +1 -16
  159. package/dist/esm/ix-upload.entry.js.map +1 -1
  160. package/dist/esm/ix-workflow-step_2.entry.js +1 -1
  161. package/dist/esm/ix-workflow-step_2.entry.js.map +1 -1
  162. package/dist/esm/loader.js +1 -1
  163. package/dist/esm/siemens-ix.js +1 -1
  164. package/dist/esm/upload-file-state-532a36d3.js +19 -0
  165. package/dist/esm/upload-file-state-532a36d3.js.map +1 -0
  166. package/dist/siemens-ix/index.esm.js +1 -1
  167. package/dist/siemens-ix/index.esm.js.map +1 -1
  168. package/dist/siemens-ix/p-030078b4.entry.js +2 -0
  169. package/dist/siemens-ix/p-030078b4.entry.js.map +1 -0
  170. package/dist/siemens-ix/p-076c29d1.js +2 -0
  171. package/dist/siemens-ix/p-076c29d1.js.map +1 -0
  172. package/dist/siemens-ix/p-0f864265.entry.js +2 -0
  173. package/dist/siemens-ix/p-0f864265.entry.js.map +1 -0
  174. package/dist/siemens-ix/p-16ec6f50.entry.js +2 -0
  175. package/dist/siemens-ix/p-16ec6f50.entry.js.map +1 -0
  176. package/dist/siemens-ix/p-1701b127.entry.js +2 -0
  177. package/dist/siemens-ix/p-1701b127.entry.js.map +1 -0
  178. package/dist/siemens-ix/p-24d2d95e.entry.js +2 -0
  179. package/dist/siemens-ix/p-24d2d95e.entry.js.map +1 -0
  180. package/dist/siemens-ix/{p-11af475f.entry.js → p-28f50519.entry.js} +2 -2
  181. package/dist/siemens-ix/p-28f50519.entry.js.map +1 -0
  182. package/dist/siemens-ix/{p-6790d123.entry.js → p-34e3a10e.entry.js} +2 -2
  183. package/dist/siemens-ix/{p-6790d123.entry.js.map → p-34e3a10e.entry.js.map} +1 -1
  184. package/dist/siemens-ix/p-446a0a3f.entry.js +2 -0
  185. package/dist/siemens-ix/p-446a0a3f.entry.js.map +1 -0
  186. package/dist/siemens-ix/p-55d0fabf.entry.js +2 -0
  187. package/dist/siemens-ix/p-55d0fabf.entry.js.map +1 -0
  188. package/dist/siemens-ix/{p-9f55716d.entry.js → p-58ef1328.entry.js} +2 -2
  189. package/dist/siemens-ix/p-58ef1328.entry.js.map +1 -0
  190. package/dist/siemens-ix/{p-aafd18a8.entry.js → p-62b4d696.entry.js} +2 -2
  191. package/dist/siemens-ix/p-62b4d696.entry.js.map +1 -0
  192. package/dist/siemens-ix/p-6facc3cc.entry.js +2 -0
  193. package/dist/siemens-ix/p-6facc3cc.entry.js.map +1 -0
  194. package/dist/siemens-ix/p-73f7ef87.entry.js +2 -0
  195. package/dist/siemens-ix/p-73f7ef87.entry.js.map +1 -0
  196. package/dist/siemens-ix/{p-1811d669.entry.js → p-88a47c9b.entry.js} +2 -2
  197. package/dist/siemens-ix/p-88a47c9b.entry.js.map +1 -0
  198. package/dist/siemens-ix/p-9546cbdd.entry.js +2 -0
  199. package/dist/siemens-ix/p-9546cbdd.entry.js.map +1 -0
  200. package/dist/siemens-ix/{p-5ce07b8b.entry.js → p-afd1f351.entry.js} +2 -2
  201. package/dist/siemens-ix/p-afd1f351.entry.js.map +1 -0
  202. package/dist/siemens-ix/p-b9fbd029.entry.js +2 -0
  203. package/dist/siemens-ix/p-b9fbd029.entry.js.map +1 -0
  204. package/dist/siemens-ix/siemens-ix.css +6 -0
  205. package/dist/siemens-ix/siemens-ix.esm.js +1 -1
  206. package/dist/siemens-ix/siemens-ix.esm.js.map +1 -1
  207. package/dist/types/components/blind/blind.d.ts +5 -0
  208. package/dist/types/components/chip/chip.d.ts +8 -0
  209. package/dist/types/components/flip-tile/flip-tile.d.ts +11 -0
  210. package/dist/types/components/index-button/index-button.d.ts +16 -0
  211. package/dist/types/components/pagination/pagination.d.ts +55 -0
  212. package/dist/types/components/toast/toast-container.d.ts +3 -1
  213. package/dist/types/components/toast/toast-utils.d.ts +3 -0
  214. package/dist/types/components/tree/tree.d.ts +13 -0
  215. package/dist/types/components.d.ts +182 -2
  216. package/dist/types/index.d.ts +1 -0
  217. package/package.json +3 -2
  218. package/scss/components/_forms.scss +1 -1
  219. package/dist/siemens-ix/p-0d15aa1a.entry.js +0 -2
  220. package/dist/siemens-ix/p-0d15aa1a.entry.js.map +0 -1
  221. package/dist/siemens-ix/p-11af475f.entry.js.map +0 -1
  222. package/dist/siemens-ix/p-1259ea24.entry.js +0 -2
  223. package/dist/siemens-ix/p-1259ea24.entry.js.map +0 -1
  224. package/dist/siemens-ix/p-1811d669.entry.js.map +0 -1
  225. package/dist/siemens-ix/p-29bd1814.entry.js +0 -2
  226. package/dist/siemens-ix/p-29bd1814.entry.js.map +0 -1
  227. package/dist/siemens-ix/p-5845a03c.entry.js +0 -2
  228. package/dist/siemens-ix/p-5845a03c.entry.js.map +0 -1
  229. package/dist/siemens-ix/p-5ce07b8b.entry.js.map +0 -1
  230. package/dist/siemens-ix/p-7ce0c0e2.entry.js +0 -2
  231. package/dist/siemens-ix/p-7ce0c0e2.entry.js.map +0 -1
  232. package/dist/siemens-ix/p-967f7d5d.entry.js +0 -2
  233. package/dist/siemens-ix/p-967f7d5d.entry.js.map +0 -1
  234. package/dist/siemens-ix/p-9f55716d.entry.js.map +0 -1
  235. package/dist/siemens-ix/p-aafd18a8.entry.js.map +0 -1
  236. package/dist/siemens-ix/p-d7def96c.entry.js +0 -2
  237. package/dist/siemens-ix/p-d7def96c.entry.js.map +0 -1
  238. package/dist/siemens-ix/p-f961c22a.entry.js +0 -2
  239. package/dist/siemens-ix/p-f961c22a.entry.js.map +0 -1
  240. package/dist/siemens-ix/p-fe690347.entry.js +0 -2
  241. package/dist/siemens-ix/p-fe690347.entry.js.map +0 -1
@@ -1 +1 @@
1
- {"file":"ix-tree.ix-tree-item.entry.cjs.js","mappings":"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","names":["require","renderDefaultItem","h","Host"],"sources":["../../node_modules/hyperlist/dist/hyperlist.js","./src/components/tree/tree.css?tag=ix-tree&encapsulation=scoped","./src/components/tree/tree.tsx","./src/components/tree-item/tree-item.scss?tag=ix-tree-item&encapsulation=scoped","./src/components/tree-item/tree-item.tsx"],"sourcesContent":["(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.HyperList = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(_dereq_,module,exports){\n'use strict';\n\n// Default configuration.\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar defaultConfig = {\n width: '100%',\n height: '100%'\n\n // Check for valid number.\n};var isNumber = function isNumber(input) {\n return Number(input) === Number(input);\n};\n\n// Add a class to an element.\nvar addClass = 'classList' in document.documentElement ? function (element, className) {\n element.classList.add(className);\n} : function (element, className) {\n var oldClass = element.getAttribute('class') || '';\n element.setAttribute('class', oldClass + ' ' + className);\n};\n\n/**\n * Creates a HyperList instance that virtually scrolls very large amounts of\n * data effortlessly.\n */\n\nvar HyperList = function () {\n _createClass(HyperList, null, [{\n key: 'create',\n value: function create(element, userProvidedConfig) {\n return new HyperList(element, userProvidedConfig);\n }\n\n /**\n * Merge given css style on an element\n * @param {DOMElement} element\n * @param {Object} style\n */\n\n }, {\n key: 'mergeStyle',\n value: function mergeStyle(element, style) {\n for (var i in style) {\n if (element.style[i] !== style[i]) {\n element.style[i] = style[i];\n }\n }\n }\n }, {\n key: 'getMaxBrowserHeight',\n value: function getMaxBrowserHeight() {\n // Create two elements, the wrapper is `1px` tall and is transparent and\n // positioned at the top of the page. Inside that is an element that gets\n // set to 1 billion pixels. Then reads the max height the browser can\n // calculate.\n var wrapper = document.createElement('div');\n var fixture = document.createElement('div');\n\n // As said above, these values get set to put the fixture elements into the\n // right visual state.\n HyperList.mergeStyle(wrapper, { position: 'absolute', height: '1px', opacity: 0 });\n HyperList.mergeStyle(fixture, { height: '1e7px' });\n\n // Add the fixture into the wrapper element.\n wrapper.appendChild(fixture);\n\n // Apply to the page, the values won't kick in unless this is attached.\n document.body.appendChild(wrapper);\n\n // Get the maximum element height in pixels.\n var maxElementHeight = fixture.offsetHeight;\n\n // Remove the element immediately after reading the value.\n document.body.removeChild(wrapper);\n\n return maxElementHeight;\n }\n }]);\n\n function HyperList(element, userProvidedConfig) {\n var _this = this;\n\n _classCallCheck(this, HyperList);\n\n this._config = {};\n this._lastRepaint = null;\n this._maxElementHeight = HyperList.getMaxBrowserHeight();\n\n this.refresh(element, userProvidedConfig);\n\n var config = this._config;\n\n // Create internal render loop.\n var render = function render() {\n var scrollTop = _this._getScrollPosition();\n var lastRepaint = _this._lastRepaint;\n\n _this._renderAnimationFrame = window.requestAnimationFrame(render);\n\n if (scrollTop === lastRepaint) {\n return;\n }\n\n var diff = lastRepaint ? scrollTop - lastRepaint : 0;\n if (!lastRepaint || diff < 0 || diff > _this._averageHeight) {\n var rendered = _this._renderChunk();\n\n _this._lastRepaint = scrollTop;\n\n if (rendered !== false && typeof config.afterRender === 'function') {\n config.afterRender();\n }\n }\n };\n\n render();\n }\n\n _createClass(HyperList, [{\n key: 'destroy',\n value: function destroy() {\n window.cancelAnimationFrame(this._renderAnimationFrame);\n }\n }, {\n key: 'refresh',\n value: function refresh(element, userProvidedConfig) {\n var _scrollerStyle;\n\n Object.assign(this._config, defaultConfig, userProvidedConfig);\n\n if (!element || element.nodeType !== 1) {\n throw new Error('HyperList requires a valid DOM Node container');\n }\n\n this._element = element;\n\n var config = this._config;\n\n var scroller = this._scroller || config.scroller || document.createElement(config.scrollerTagName || 'tr');\n\n // Default configuration option `useFragment` to `true`.\n if (typeof config.useFragment !== 'boolean') {\n this._config.useFragment = true;\n }\n\n if (!config.generate) {\n throw new Error('Missing required `generate` function');\n }\n\n if (!isNumber(config.total)) {\n throw new Error('Invalid required `total` value, expected number');\n }\n\n if (!Array.isArray(config.itemHeight) && !isNumber(config.itemHeight)) {\n throw new Error('\\n Invalid required `itemHeight` value, expected number or array\\n '.trim());\n } else if (isNumber(config.itemHeight)) {\n this._itemHeights = Array(config.total).fill(config.itemHeight);\n } else {\n this._itemHeights = config.itemHeight;\n }\n\n // Width and height should be coerced to string representations. Either in\n // `%` or `px`.\n Object.keys(defaultConfig).filter(function (prop) {\n return prop in config;\n }).forEach(function (prop) {\n var value = config[prop];\n var isValueNumber = isNumber(value);\n\n if (value && typeof value !== 'string' && typeof value !== 'number') {\n var msg = 'Invalid optional `' + prop + '`, expected string or number';\n throw new Error(msg);\n } else if (isValueNumber) {\n config[prop] = value + 'px';\n }\n });\n\n var isHoriz = Boolean(config.horizontal);\n var value = config[isHoriz ? 'width' : 'height'];\n\n if (value) {\n var isValueNumber = isNumber(value);\n var isValuePercent = isValueNumber ? false : value.slice(-1) === '%';\n // Compute the containerHeight as number\n var numberValue = isValueNumber ? value : parseInt(value.replace(/px|%/, ''), 10);\n var innerSize = window[isHoriz ? 'innerWidth' : 'innerHeight'];\n\n if (isValuePercent) {\n this._containerSize = innerSize * numberValue / 100;\n } else {\n this._containerSize = isNumber(value) ? value : numberValue;\n }\n }\n\n var scrollContainer = config.scrollContainer;\n var scrollerHeight = config.itemHeight * config.total;\n var maxElementHeight = this._maxElementHeight;\n\n if (scrollerHeight > maxElementHeight) {\n console.warn(['HyperList: The maximum element height', maxElementHeight + 'px has', 'been exceeded; please reduce your item height.'].join(' '));\n }\n\n // Decorate the container element with styles that will match\n // the user supplied configuration.\n var elementStyle = {\n width: '' + config.width,\n height: scrollContainer ? scrollerHeight + 'px' : '' + config.height,\n overflow: scrollContainer ? 'none' : 'auto',\n position: 'relative'\n };\n\n HyperList.mergeStyle(element, elementStyle);\n\n if (scrollContainer) {\n HyperList.mergeStyle(config.scrollContainer, { overflow: 'auto' });\n }\n\n var scrollerStyle = (_scrollerStyle = {\n opacity: '0',\n position: 'absolute'\n }, _defineProperty(_scrollerStyle, isHoriz ? 'height' : 'width', '1px'), _defineProperty(_scrollerStyle, isHoriz ? 'width' : 'height', scrollerHeight + 'px'), _scrollerStyle);\n\n HyperList.mergeStyle(scroller, scrollerStyle);\n\n // Only append the scroller element once.\n if (!this._scroller) {\n element.appendChild(scroller);\n }\n\n var padding = this._computeScrollPadding();\n this._scrollPaddingBottom = padding.bottom;\n this._scrollPaddingTop = padding.top;\n\n // Set the scroller instance.\n this._scroller = scroller;\n this._scrollHeight = this._computeScrollHeight();\n\n // Reuse the item positions if refreshed, otherwise set to empty array.\n this._itemPositions = this._itemPositions || Array(config.total).fill(0);\n\n // Each index in the array should represent the position in the DOM.\n this._computePositions(0);\n\n // Render after refreshing. Force render if we're calling refresh manually.\n this._renderChunk(this._lastRepaint !== null);\n\n if (typeof config.afterRender === 'function') {\n config.afterRender();\n }\n }\n }, {\n key: '_getRow',\n value: function _getRow(i) {\n var config = this._config;\n var item = config.generate(i);\n var height = item.height;\n\n if (height !== undefined && isNumber(height)) {\n item = item.element;\n\n // The height isn't the same as predicted, compute positions again\n if (height !== this._itemHeights[i]) {\n this._itemHeights[i] = height;\n this._computePositions(i);\n this._scrollHeight = this._computeScrollHeight(i);\n }\n } else {\n height = this._itemHeights[i];\n }\n\n if (!item || item.nodeType !== 1) {\n throw new Error('Generator did not return a DOM Node for index: ' + i);\n }\n\n addClass(item, config.rowClassName || 'vrow');\n\n var top = this._itemPositions[i] + this._scrollPaddingTop;\n\n HyperList.mergeStyle(item, _defineProperty({\n position: 'absolute'\n }, config.horizontal ? 'left' : 'top', top + 'px'));\n\n return item;\n }\n }, {\n key: '_getScrollPosition',\n value: function _getScrollPosition() {\n var config = this._config;\n\n if (typeof config.overrideScrollPosition === 'function') {\n return config.overrideScrollPosition();\n }\n\n return this._element[config.horizontal ? 'scrollLeft' : 'scrollTop'];\n }\n }, {\n key: '_renderChunk',\n value: function _renderChunk(force) {\n var config = this._config;\n var element = this._element;\n var scrollTop = this._getScrollPosition();\n var total = config.total;\n\n var from = config.reverse ? this._getReverseFrom(scrollTop) : this._getFrom(scrollTop) - 1;\n\n if (from < 0 || from - this._screenItemsLen < 0) {\n from = 0;\n }\n\n if (!force && this._lastFrom === from) {\n return false;\n }\n\n this._lastFrom = from;\n\n var to = from + this._cachedItemsLen;\n\n if (to > total || to + this._cachedItemsLen > total) {\n to = total;\n }\n\n // Append all the new rows in a document fragment that we will later append\n // to the parent node\n var fragment = config.useFragment ? document.createDocumentFragment() : []\n // Sometimes you'll pass fake elements to this tool and Fragments require\n // real elements.\n\n\n // The element that forces the container to scroll.\n ;var scroller = this._scroller;\n\n // Keep the scroller in the list of children.\n fragment[config.useFragment ? 'appendChild' : 'push'](scroller);\n\n for (var i = from; i < to; i++) {\n var row = this._getRow(i);\n\n fragment[config.useFragment ? 'appendChild' : 'push'](row);\n }\n\n if (config.applyPatch) {\n return config.applyPatch(element, fragment);\n }\n\n element.innerHTML = '';\n element.appendChild(fragment);\n }\n }, {\n key: '_computePositions',\n value: function _computePositions() {\n var from = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;\n\n var config = this._config;\n var total = config.total;\n var reverse = config.reverse;\n\n if (from < 1 && !reverse) {\n from = 1;\n }\n\n for (var i = from; i < total; i++) {\n if (reverse) {\n if (i === 0) {\n this._itemPositions[0] = this._scrollHeight - this._itemHeights[0];\n } else {\n this._itemPositions[i] = this._itemPositions[i - 1] - this._itemHeights[i];\n }\n } else {\n this._itemPositions[i] = this._itemHeights[i - 1] + this._itemPositions[i - 1];\n }\n }\n }\n }, {\n key: '_computeScrollHeight',\n value: function _computeScrollHeight() {\n var _HyperList$mergeStyle2,\n _this2 = this;\n\n var config = this._config;\n var isHoriz = Boolean(config.horizontal);\n var total = config.total;\n var scrollHeight = this._itemHeights.reduce(function (a, b) {\n return a + b;\n }, 0) + this._scrollPaddingBottom + this._scrollPaddingTop;\n\n HyperList.mergeStyle(this._scroller, (_HyperList$mergeStyle2 = {\n opacity: 0,\n position: 'absolute',\n top: '0px'\n }, _defineProperty(_HyperList$mergeStyle2, isHoriz ? 'height' : 'width', '1px'), _defineProperty(_HyperList$mergeStyle2, isHoriz ? 'width' : 'height', scrollHeight + 'px'), _HyperList$mergeStyle2));\n\n // Calculate the height median\n var sortedItemHeights = this._itemHeights.slice(0).sort(function (a, b) {\n return a - b;\n });\n var middle = Math.floor(total / 2);\n var averageHeight = total % 2 === 0 ? (sortedItemHeights[middle] + sortedItemHeights[middle - 1]) / 2 : sortedItemHeights[middle];\n\n var clientProp = isHoriz ? 'clientWidth' : 'clientHeight';\n var element = config.scrollContainer ? config.scrollContainer : this._element;\n var containerHeight = element[clientProp] ? element[clientProp] : this._containerSize;\n this._screenItemsLen = Math.ceil(containerHeight / averageHeight);\n this._containerSize = containerHeight;\n\n // Cache 3 times the number of items that fit in the container viewport.\n this._cachedItemsLen = Math.max(this._cachedItemsLen || 0, this._screenItemsLen * 3);\n this._averageHeight = averageHeight;\n\n if (config.reverse) {\n window.requestAnimationFrame(function () {\n if (isHoriz) {\n _this2._element.scrollLeft = scrollHeight;\n } else {\n _this2._element.scrollTop = scrollHeight;\n }\n });\n }\n\n return scrollHeight;\n }\n }, {\n key: '_computeScrollPadding',\n value: function _computeScrollPadding() {\n var config = this._config;\n var isHoriz = Boolean(config.horizontal);\n var isReverse = config.reverse;\n var styles = window.getComputedStyle(this._element);\n\n var padding = function padding(location) {\n var cssValue = styles.getPropertyValue('padding-' + location);\n return parseInt(cssValue, 10) || 0;\n };\n\n if (isHoriz && isReverse) {\n return {\n bottom: padding('left'),\n top: padding('right')\n };\n } else if (isHoriz) {\n return {\n bottom: padding('right'),\n top: padding('left')\n };\n } else if (isReverse) {\n return {\n bottom: padding('top'),\n top: padding('bottom')\n };\n } else {\n return {\n bottom: padding('bottom'),\n top: padding('top')\n };\n }\n }\n }, {\n key: '_getFrom',\n value: function _getFrom(scrollTop) {\n var i = 0;\n\n while (this._itemPositions[i] < scrollTop) {\n i++;\n }\n\n return i;\n }\n }, {\n key: '_getReverseFrom',\n value: function _getReverseFrom(scrollTop) {\n var i = this._config.total - 1;\n\n while (i > 0 && this._itemPositions[i] < scrollTop + this._containerSize) {\n i--;\n }\n\n return i;\n }\n }]);\n\n return HyperList;\n}();\n\nexports.default = HyperList;\nmodule.exports = exports['default'];\n\n},{}]},{},[1])(1)\n});\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n:host {\n display: block;\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n Watch,\n} from '@stencil/core';\nimport Hyperlist from 'hyperlist';\nimport { renderDefaultItem } from '../tree-item/default-tree-item';\nimport {\n TreeContext,\n TreeItem,\n TreeItemContext,\n TreeItemVisual,\n TreeModel,\n UpdateCallback,\n} from './tree-model';\n\n@Component({\n tag: 'ix-tree',\n styleUrl: 'tree.css',\n scoped: true,\n})\nexport class Tree {\n @Element() host!: HTMLIxTreeElement;\n\n /**\n * Initial root element will not be rendered\n */\n @Prop() root: string;\n\n /**\n * Tree model\n */\n @Prop() model: TreeModel<any>;\n\n /**\n * Render function of tree items\n */\n @Prop() renderItem: <T = any>(\n index: number,\n data: T,\n dataList: Array<T>,\n context: TreeContext,\n update: (callback: UpdateCallback) => void\n ) => HTMLElement;\n\n /**\n * Selection and collapsed state management\n */\n @Prop({ mutable: true }) context: TreeContext = {};\n\n /**\n * Context changed\n */\n @Event() contextChange: EventEmitter<TreeContext>;\n\n /**\n * Emits removed nodes\n */\n @Event() nodeRemoved: EventEmitter<any>;\n\n private hyperlist: Hyperlist;\n\n private toggleListener = new Map<HTMLElement, Function>();\n private itemClickListener = new Map<HTMLElement, Function>();\n private updates = new Map<string, UpdateCallback>();\n\n private observer: MutationObserver;\n\n private hasFirstRender = false;\n\n private getVirtualizerOptions() {\n const list = this.buildTreeList(this.model[this.root]);\n\n let setToggleListener = (\n item: TreeItemVisual<any>,\n el: HTMLElement,\n index: number\n ) => {\n if (item.hasChildren && !this.toggleListener.has(el)) {\n const toggleCallback = (e: Event) => {\n e.preventDefault();\n e.stopPropagation();\n const context = this.getContext(list[index].id);\n context.isExpanded = !context.isExpanded;\n this.setContext(item.id, context);\n };\n el.addEventListener('toggle', toggleCallback);\n this.toggleListener.set(el, toggleCallback);\n }\n };\n\n return {\n itemHeight: 32,\n total: list.length,\n generate: (index: number) => {\n const item = list[index];\n const renderedTreeItem = this.host.querySelector(\n `[data-tree-node-id=\"${item.id}\"]`\n ) as HTMLIxTreeItemElement;\n\n const context = this.getContext(item.id);\n\n if (renderedTreeItem) {\n renderedTreeItem.hasChildren = item.hasChildren;\n renderedTreeItem.context = { ...context };\n\n setToggleListener(item, renderedTreeItem, index);\n\n if (this.updates.has(item.id)) {\n const doUpdate = this.updates.get(item.id);\n doUpdate(item, { ...this.context });\n }\n\n return renderedTreeItem;\n }\n\n const update = (callback: UpdateCallback) => {\n this.updates.set(item.id, callback);\n };\n\n let innerElement: HTMLElement | null = null;\n if (this.renderItem) {\n innerElement = this.renderItem(\n index,\n item,\n list,\n { ...this.context },\n update\n );\n }\n\n if (innerElement === null) {\n innerElement = renderDefaultItem(item, context, update);\n }\n\n const el = innerElement;\n el.setAttribute('data-tree-node-id', item.id);\n el.style.paddingLeft = item.level + 'rem';\n el.style.paddingRight = '1rem';\n\n if (!this.itemClickListener.has(el)) {\n const itemClickCallback = (e: Event) => {\n e.preventDefault();\n e.stopPropagation();\n Object.values(this.context).forEach((c) => (c.isSelected = false));\n const context = this.getContext(item.id);\n context.isSelected = true;\n this.setContext(item.id, context);\n };\n el.addEventListener('itemClick', itemClickCallback);\n this.itemClickListener.set(el, itemClickCallback);\n }\n\n setToggleListener(item, el, index);\n\n return el;\n },\n };\n }\n\n private setContext(id: string, context: TreeItemContext) {\n this.context = {\n ...this.context,\n [id]: context,\n };\n\n this.contextChange.emit(this.context);\n }\n\n private getContext(id: string): TreeItemContext {\n if (!this.context) {\n return {\n isExpanded: false,\n isSelected: false,\n };\n }\n if (!this.context[id]) {\n this.context[id] = {\n isExpanded: false,\n isSelected: false,\n };\n }\n return this.context[id];\n }\n\n private buildTreeList(\n root: TreeItem<any>,\n level: number = 0\n ): TreeItemVisual<any>[] {\n const itemList: TreeItemVisual<any>[] = [];\n\n if (root?.hasChildren) {\n const newLevel = level + 1;\n root.children.forEach((id: string) => {\n const item = this.model[id];\n const context = this.getContext(id);\n itemList.push({ ...item, level });\n if (item.hasChildren && context.isExpanded) {\n itemList.push(...this.buildTreeList(item, newLevel));\n }\n });\n }\n\n return itemList;\n }\n\n componentDidLoad() {\n this.initList();\n\n this.observer = new MutationObserver((records) => {\n let removed = [];\n\n records.forEach((record) => {\n removed = [...removed, ...Array.from(record.removedNodes)];\n\n record.addedNodes.forEach((an) => {\n const index = removed.indexOf(an);\n if (index >= 0) {\n removed.splice(index, 1);\n }\n });\n });\n\n this.nodeRemoved.emit(removed);\n });\n\n this.observer.observe(this.host, {\n childList: true,\n });\n }\n\n componentWillRender() {\n this.hasFirstRender = true;\n\n if (this.isListInitialized()) {\n this.refreshList();\n } else {\n this.initList();\n }\n }\n\n disconnectedCallback() {\n this.hyperlist.destroy();\n this.observer.disconnect();\n }\n\n @Watch('model')\n modelChange() {\n if (this.hasFirstRender && !this.isListInitialized()) {\n this.initList();\n }\n }\n\n private isListInitialized() {\n const itemPositions = this.hyperlist?._itemPositions;\n\n return (\n itemPositions !== undefined &&\n itemPositions.length &&\n !itemPositions?.some(\n (item: number) => item === undefined || Number.isNaN(item)\n )\n );\n }\n\n private refreshList() {\n if (this.hyperlist) {\n this.hyperlist.refresh(this.host, this.getVirtualizerOptions());\n }\n }\n\n private initList() {\n this.hyperlist?.destroy();\n const config = this.getVirtualizerOptions();\n this.hyperlist = new Hyperlist(this.host, config);\n }\n\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'mixins/hover';\n@import 'common-variables';\n@import 'mixins/hover';\n@import 'mixins/text-truncation';\n\n:host {\n display: flex;\n align-items: center;\n\n height: 32px;\n width: 100%;\n\n cursor: pointer;\n\n &:not(.disabled):not(:disabled):not(.selected) {\n &.hover,\n &:hover {\n background-color: var(--theme-tree-item--background--hover);\n }\n\n &.active,\n &:active {\n background-color: var(--theme-tree-item--background--active);\n }\n }\n\n &.selected {\n background-color: var(--theme-tree-item--background--selected);\n\n &.hover,\n &:hover {\n background-color: var(--theme-tree-item--background--selected-hover);\n }\n\n &.active,\n &:active {\n background-color: var(--theme-tree-item--background--selected-active);\n }\n }\n\n .tree-node-container {\n display: flex;\n align-items: center;\n height: $x-large-space;\n flex-grow: 1;\n align-items: center;\n }\n\n .icon-toggle-container {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 2rem;\n height: 2rem;\n\n ix-icon {\n transition: transform $default-time ease-in-out;\n\n &.icon-toggle-down {\n transform: rotate(90deg);\n }\n }\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, Event, EventEmitter, h, Host, Prop } from '@stencil/core';\nimport { TreeItemContext } from '../tree/tree-model';\n\n@Component({\n tag: 'ix-tree-item',\n styleUrl: 'tree-item.scss',\n scoped: true,\n})\nexport class TreeItem {\n /**\n * Text\n */\n @Prop() text: string;\n\n /**\n * Has tree item children\n */\n @Prop() hasChildren: boolean;\n\n /**\n * Context\n */\n @Prop() context: TreeItemContext;\n\n /**\n * Expand/Collapsed toggled\n */\n @Event() toggle: EventEmitter<void>;\n\n /**\n * Clicked\n */\n @Event() itemClick: EventEmitter<void>;\n\n render() {\n return (\n <Host\n class={{\n selected: this.context?.isSelected,\n }}\n >\n <div\n class=\"icon-toggle-container\"\n onClick={(e) => {\n e.preventDefault();\n this.toggle.emit();\n }}\n >\n {this.hasChildren ? (\n <ix-icon\n name=\"chevron-right\"\n size=\"16\"\n class={{\n ['icon-toggle-down']: this.context?.isExpanded,\n }}\n color={`color-${\n this.context?.isExpanded ? 'primary' : 'std-text'\n }`}\n />\n ) : null}\n </div>\n <div\n class=\"tree-node-container\"\n onClick={() => {\n this.itemClick.emit();\n }}\n >\n {this.text}\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ix-tree.ix-tree-item.entry.cjs.js","mappings":"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","names":["require","renderDefaultItem","h","Host"],"sources":["../../node_modules/hyperlist/dist/hyperlist.js","./src/components/tree/tree.css?tag=ix-tree&encapsulation=scoped","./src/components/tree/tree.tsx","./src/components/tree-item/tree-item.scss?tag=ix-tree-item&encapsulation=scoped","./src/components/tree-item/tree-item.tsx"],"sourcesContent":["(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.HyperList = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(_dereq_,module,exports){\n'use strict';\n\n// Default configuration.\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar defaultConfig = {\n width: '100%',\n height: '100%'\n\n // Check for valid number.\n};var isNumber = function isNumber(input) {\n return Number(input) === Number(input);\n};\n\n// Add a class to an element.\nvar addClass = 'classList' in document.documentElement ? function (element, className) {\n element.classList.add(className);\n} : function (element, className) {\n var oldClass = element.getAttribute('class') || '';\n element.setAttribute('class', oldClass + ' ' + className);\n};\n\n/**\n * Creates a HyperList instance that virtually scrolls very large amounts of\n * data effortlessly.\n */\n\nvar HyperList = function () {\n _createClass(HyperList, null, [{\n key: 'create',\n value: function create(element, userProvidedConfig) {\n return new HyperList(element, userProvidedConfig);\n }\n\n /**\n * Merge given css style on an element\n * @param {DOMElement} element\n * @param {Object} style\n */\n\n }, {\n key: 'mergeStyle',\n value: function mergeStyle(element, style) {\n for (var i in style) {\n if (element.style[i] !== style[i]) {\n element.style[i] = style[i];\n }\n }\n }\n }, {\n key: 'getMaxBrowserHeight',\n value: function getMaxBrowserHeight() {\n // Create two elements, the wrapper is `1px` tall and is transparent and\n // positioned at the top of the page. Inside that is an element that gets\n // set to 1 billion pixels. Then reads the max height the browser can\n // calculate.\n var wrapper = document.createElement('div');\n var fixture = document.createElement('div');\n\n // As said above, these values get set to put the fixture elements into the\n // right visual state.\n HyperList.mergeStyle(wrapper, { position: 'absolute', height: '1px', opacity: 0 });\n HyperList.mergeStyle(fixture, { height: '1e7px' });\n\n // Add the fixture into the wrapper element.\n wrapper.appendChild(fixture);\n\n // Apply to the page, the values won't kick in unless this is attached.\n document.body.appendChild(wrapper);\n\n // Get the maximum element height in pixels.\n var maxElementHeight = fixture.offsetHeight;\n\n // Remove the element immediately after reading the value.\n document.body.removeChild(wrapper);\n\n return maxElementHeight;\n }\n }]);\n\n function HyperList(element, userProvidedConfig) {\n var _this = this;\n\n _classCallCheck(this, HyperList);\n\n this._config = {};\n this._lastRepaint = null;\n this._maxElementHeight = HyperList.getMaxBrowserHeight();\n\n this.refresh(element, userProvidedConfig);\n\n var config = this._config;\n\n // Create internal render loop.\n var render = function render() {\n var scrollTop = _this._getScrollPosition();\n var lastRepaint = _this._lastRepaint;\n\n _this._renderAnimationFrame = window.requestAnimationFrame(render);\n\n if (scrollTop === lastRepaint) {\n return;\n }\n\n var diff = lastRepaint ? scrollTop - lastRepaint : 0;\n if (!lastRepaint || diff < 0 || diff > _this._averageHeight) {\n var rendered = _this._renderChunk();\n\n _this._lastRepaint = scrollTop;\n\n if (rendered !== false && typeof config.afterRender === 'function') {\n config.afterRender();\n }\n }\n };\n\n render();\n }\n\n _createClass(HyperList, [{\n key: 'destroy',\n value: function destroy() {\n window.cancelAnimationFrame(this._renderAnimationFrame);\n }\n }, {\n key: 'refresh',\n value: function refresh(element, userProvidedConfig) {\n var _scrollerStyle;\n\n Object.assign(this._config, defaultConfig, userProvidedConfig);\n\n if (!element || element.nodeType !== 1) {\n throw new Error('HyperList requires a valid DOM Node container');\n }\n\n this._element = element;\n\n var config = this._config;\n\n var scroller = this._scroller || config.scroller || document.createElement(config.scrollerTagName || 'tr');\n\n // Default configuration option `useFragment` to `true`.\n if (typeof config.useFragment !== 'boolean') {\n this._config.useFragment = true;\n }\n\n if (!config.generate) {\n throw new Error('Missing required `generate` function');\n }\n\n if (!isNumber(config.total)) {\n throw new Error('Invalid required `total` value, expected number');\n }\n\n if (!Array.isArray(config.itemHeight) && !isNumber(config.itemHeight)) {\n throw new Error('\\n Invalid required `itemHeight` value, expected number or array\\n '.trim());\n } else if (isNumber(config.itemHeight)) {\n this._itemHeights = Array(config.total).fill(config.itemHeight);\n } else {\n this._itemHeights = config.itemHeight;\n }\n\n // Width and height should be coerced to string representations. Either in\n // `%` or `px`.\n Object.keys(defaultConfig).filter(function (prop) {\n return prop in config;\n }).forEach(function (prop) {\n var value = config[prop];\n var isValueNumber = isNumber(value);\n\n if (value && typeof value !== 'string' && typeof value !== 'number') {\n var msg = 'Invalid optional `' + prop + '`, expected string or number';\n throw new Error(msg);\n } else if (isValueNumber) {\n config[prop] = value + 'px';\n }\n });\n\n var isHoriz = Boolean(config.horizontal);\n var value = config[isHoriz ? 'width' : 'height'];\n\n if (value) {\n var isValueNumber = isNumber(value);\n var isValuePercent = isValueNumber ? false : value.slice(-1) === '%';\n // Compute the containerHeight as number\n var numberValue = isValueNumber ? value : parseInt(value.replace(/px|%/, ''), 10);\n var innerSize = window[isHoriz ? 'innerWidth' : 'innerHeight'];\n\n if (isValuePercent) {\n this._containerSize = innerSize * numberValue / 100;\n } else {\n this._containerSize = isNumber(value) ? value : numberValue;\n }\n }\n\n var scrollContainer = config.scrollContainer;\n var scrollerHeight = config.itemHeight * config.total;\n var maxElementHeight = this._maxElementHeight;\n\n if (scrollerHeight > maxElementHeight) {\n console.warn(['HyperList: The maximum element height', maxElementHeight + 'px has', 'been exceeded; please reduce your item height.'].join(' '));\n }\n\n // Decorate the container element with styles that will match\n // the user supplied configuration.\n var elementStyle = {\n width: '' + config.width,\n height: scrollContainer ? scrollerHeight + 'px' : '' + config.height,\n overflow: scrollContainer ? 'none' : 'auto',\n position: 'relative'\n };\n\n HyperList.mergeStyle(element, elementStyle);\n\n if (scrollContainer) {\n HyperList.mergeStyle(config.scrollContainer, { overflow: 'auto' });\n }\n\n var scrollerStyle = (_scrollerStyle = {\n opacity: '0',\n position: 'absolute'\n }, _defineProperty(_scrollerStyle, isHoriz ? 'height' : 'width', '1px'), _defineProperty(_scrollerStyle, isHoriz ? 'width' : 'height', scrollerHeight + 'px'), _scrollerStyle);\n\n HyperList.mergeStyle(scroller, scrollerStyle);\n\n // Only append the scroller element once.\n if (!this._scroller) {\n element.appendChild(scroller);\n }\n\n var padding = this._computeScrollPadding();\n this._scrollPaddingBottom = padding.bottom;\n this._scrollPaddingTop = padding.top;\n\n // Set the scroller instance.\n this._scroller = scroller;\n this._scrollHeight = this._computeScrollHeight();\n\n // Reuse the item positions if refreshed, otherwise set to empty array.\n this._itemPositions = this._itemPositions || Array(config.total).fill(0);\n\n // Each index in the array should represent the position in the DOM.\n this._computePositions(0);\n\n // Render after refreshing. Force render if we're calling refresh manually.\n this._renderChunk(this._lastRepaint !== null);\n\n if (typeof config.afterRender === 'function') {\n config.afterRender();\n }\n }\n }, {\n key: '_getRow',\n value: function _getRow(i) {\n var config = this._config;\n var item = config.generate(i);\n var height = item.height;\n\n if (height !== undefined && isNumber(height)) {\n item = item.element;\n\n // The height isn't the same as predicted, compute positions again\n if (height !== this._itemHeights[i]) {\n this._itemHeights[i] = height;\n this._computePositions(i);\n this._scrollHeight = this._computeScrollHeight(i);\n }\n } else {\n height = this._itemHeights[i];\n }\n\n if (!item || item.nodeType !== 1) {\n throw new Error('Generator did not return a DOM Node for index: ' + i);\n }\n\n addClass(item, config.rowClassName || 'vrow');\n\n var top = this._itemPositions[i] + this._scrollPaddingTop;\n\n HyperList.mergeStyle(item, _defineProperty({\n position: 'absolute'\n }, config.horizontal ? 'left' : 'top', top + 'px'));\n\n return item;\n }\n }, {\n key: '_getScrollPosition',\n value: function _getScrollPosition() {\n var config = this._config;\n\n if (typeof config.overrideScrollPosition === 'function') {\n return config.overrideScrollPosition();\n }\n\n return this._element[config.horizontal ? 'scrollLeft' : 'scrollTop'];\n }\n }, {\n key: '_renderChunk',\n value: function _renderChunk(force) {\n var config = this._config;\n var element = this._element;\n var scrollTop = this._getScrollPosition();\n var total = config.total;\n\n var from = config.reverse ? this._getReverseFrom(scrollTop) : this._getFrom(scrollTop) - 1;\n\n if (from < 0 || from - this._screenItemsLen < 0) {\n from = 0;\n }\n\n if (!force && this._lastFrom === from) {\n return false;\n }\n\n this._lastFrom = from;\n\n var to = from + this._cachedItemsLen;\n\n if (to > total || to + this._cachedItemsLen > total) {\n to = total;\n }\n\n // Append all the new rows in a document fragment that we will later append\n // to the parent node\n var fragment = config.useFragment ? document.createDocumentFragment() : []\n // Sometimes you'll pass fake elements to this tool and Fragments require\n // real elements.\n\n\n // The element that forces the container to scroll.\n ;var scroller = this._scroller;\n\n // Keep the scroller in the list of children.\n fragment[config.useFragment ? 'appendChild' : 'push'](scroller);\n\n for (var i = from; i < to; i++) {\n var row = this._getRow(i);\n\n fragment[config.useFragment ? 'appendChild' : 'push'](row);\n }\n\n if (config.applyPatch) {\n return config.applyPatch(element, fragment);\n }\n\n element.innerHTML = '';\n element.appendChild(fragment);\n }\n }, {\n key: '_computePositions',\n value: function _computePositions() {\n var from = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;\n\n var config = this._config;\n var total = config.total;\n var reverse = config.reverse;\n\n if (from < 1 && !reverse) {\n from = 1;\n }\n\n for (var i = from; i < total; i++) {\n if (reverse) {\n if (i === 0) {\n this._itemPositions[0] = this._scrollHeight - this._itemHeights[0];\n } else {\n this._itemPositions[i] = this._itemPositions[i - 1] - this._itemHeights[i];\n }\n } else {\n this._itemPositions[i] = this._itemHeights[i - 1] + this._itemPositions[i - 1];\n }\n }\n }\n }, {\n key: '_computeScrollHeight',\n value: function _computeScrollHeight() {\n var _HyperList$mergeStyle2,\n _this2 = this;\n\n var config = this._config;\n var isHoriz = Boolean(config.horizontal);\n var total = config.total;\n var scrollHeight = this._itemHeights.reduce(function (a, b) {\n return a + b;\n }, 0) + this._scrollPaddingBottom + this._scrollPaddingTop;\n\n HyperList.mergeStyle(this._scroller, (_HyperList$mergeStyle2 = {\n opacity: 0,\n position: 'absolute',\n top: '0px'\n }, _defineProperty(_HyperList$mergeStyle2, isHoriz ? 'height' : 'width', '1px'), _defineProperty(_HyperList$mergeStyle2, isHoriz ? 'width' : 'height', scrollHeight + 'px'), _HyperList$mergeStyle2));\n\n // Calculate the height median\n var sortedItemHeights = this._itemHeights.slice(0).sort(function (a, b) {\n return a - b;\n });\n var middle = Math.floor(total / 2);\n var averageHeight = total % 2 === 0 ? (sortedItemHeights[middle] + sortedItemHeights[middle - 1]) / 2 : sortedItemHeights[middle];\n\n var clientProp = isHoriz ? 'clientWidth' : 'clientHeight';\n var element = config.scrollContainer ? config.scrollContainer : this._element;\n var containerHeight = element[clientProp] ? element[clientProp] : this._containerSize;\n this._screenItemsLen = Math.ceil(containerHeight / averageHeight);\n this._containerSize = containerHeight;\n\n // Cache 3 times the number of items that fit in the container viewport.\n this._cachedItemsLen = Math.max(this._cachedItemsLen || 0, this._screenItemsLen * 3);\n this._averageHeight = averageHeight;\n\n if (config.reverse) {\n window.requestAnimationFrame(function () {\n if (isHoriz) {\n _this2._element.scrollLeft = scrollHeight;\n } else {\n _this2._element.scrollTop = scrollHeight;\n }\n });\n }\n\n return scrollHeight;\n }\n }, {\n key: '_computeScrollPadding',\n value: function _computeScrollPadding() {\n var config = this._config;\n var isHoriz = Boolean(config.horizontal);\n var isReverse = config.reverse;\n var styles = window.getComputedStyle(this._element);\n\n var padding = function padding(location) {\n var cssValue = styles.getPropertyValue('padding-' + location);\n return parseInt(cssValue, 10) || 0;\n };\n\n if (isHoriz && isReverse) {\n return {\n bottom: padding('left'),\n top: padding('right')\n };\n } else if (isHoriz) {\n return {\n bottom: padding('right'),\n top: padding('left')\n };\n } else if (isReverse) {\n return {\n bottom: padding('top'),\n top: padding('bottom')\n };\n } else {\n return {\n bottom: padding('bottom'),\n top: padding('top')\n };\n }\n }\n }, {\n key: '_getFrom',\n value: function _getFrom(scrollTop) {\n var i = 0;\n\n while (this._itemPositions[i] < scrollTop) {\n i++;\n }\n\n return i;\n }\n }, {\n key: '_getReverseFrom',\n value: function _getReverseFrom(scrollTop) {\n var i = this._config.total - 1;\n\n while (i > 0 && this._itemPositions[i] < scrollTop + this._containerSize) {\n i--;\n }\n\n return i;\n }\n }]);\n\n return HyperList;\n}();\n\nexports.default = HyperList;\nmodule.exports = exports['default'];\n\n},{}]},{},[1])(1)\n});\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n:host {\n display: block;\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n Watch,\n} from '@stencil/core';\nimport Hyperlist from 'hyperlist';\nimport { renderDefaultItem } from '../tree-item/default-tree-item';\nimport {\n TreeContext,\n TreeItem,\n TreeItemContext,\n TreeItemVisual,\n TreeModel,\n UpdateCallback,\n} from './tree-model';\n\n@Component({\n tag: 'ix-tree',\n styleUrl: 'tree.css',\n scoped: true,\n})\nexport class Tree {\n @Element() host!: HTMLIxTreeElement;\n\n /**\n * Initial root element will not be rendered\n */\n @Prop() root: string;\n\n /**\n * Tree model\n */\n @Prop() model: TreeModel<any>;\n\n /**\n * Render function of tree items\n */\n @Prop() renderItem: <T = any>(\n index: number,\n data: T,\n dataList: Array<T>,\n context: TreeContext,\n update: (callback: UpdateCallback) => void\n ) => HTMLElement;\n\n /**\n * Selection and collapsed state management\n */\n @Prop({ mutable: true }) context: TreeContext = {};\n\n /**\n * Context changed\n */\n @Event() contextChange: EventEmitter<TreeContext>;\n\n /**\n * Node toggled event\n * @since 1.5.0\n */\n @Event() nodeToggled: EventEmitter<{ id: string; isExpaned: boolean }>;\n\n /**\n * Node clicked event\n * @since 1.5.0\n */\n @Event() nodeClicked: EventEmitter<string>;\n\n /**\n * Emits removed nodes\n */\n @Event() nodeRemoved: EventEmitter<any>;\n\n private hyperlist: Hyperlist;\n\n private toggleListener = new Map<HTMLElement, Function>();\n private itemClickListener = new Map<HTMLElement, Function>();\n private updates = new Map<string, UpdateCallback>();\n\n private observer: MutationObserver;\n\n private hasFirstRender = false;\n\n private getVirtualizerOptions() {\n const list = this.buildTreeList(this.model[this.root]);\n\n let setToggleListener = (\n item: TreeItemVisual<any>,\n el: HTMLElement,\n index: number\n ) => {\n if (item.hasChildren && !this.toggleListener.has(el)) {\n const toggleCallback = (e: Event) => {\n e.preventDefault();\n e.stopPropagation();\n const context = this.getContext(list[index].id);\n context.isExpanded = !context.isExpanded;\n this.nodeToggled.emit({ id: item.id, isExpaned: context.isExpanded });\n this.setContext(item.id, context);\n };\n el.addEventListener('toggle', toggleCallback);\n this.toggleListener.set(el, toggleCallback);\n }\n };\n\n return {\n itemHeight: 32,\n total: list.length,\n generate: (index: number) => {\n const item = list[index];\n const renderedTreeItem = this.host.querySelector(\n `[data-tree-node-id=\"${item.id}\"]`\n ) as HTMLIxTreeItemElement;\n\n const context = this.getContext(item.id);\n\n if (renderedTreeItem) {\n renderedTreeItem.hasChildren = item.hasChildren;\n renderedTreeItem.context = { ...context };\n\n setToggleListener(item, renderedTreeItem, index);\n\n if (this.updates.has(item.id)) {\n const doUpdate = this.updates.get(item.id);\n doUpdate(item, { ...this.context });\n }\n\n return renderedTreeItem;\n }\n\n const update = (callback: UpdateCallback) => {\n this.updates.set(item.id, callback);\n };\n\n let innerElement: HTMLElement | null = null;\n if (this.renderItem) {\n innerElement = this.renderItem(\n index,\n item,\n list,\n { ...this.context },\n update\n );\n }\n\n if (innerElement === null) {\n innerElement = renderDefaultItem(item, context, update);\n }\n\n const el = innerElement;\n el.setAttribute('data-tree-node-id', item.id);\n el.style.paddingLeft = item.level + 'rem';\n el.style.paddingRight = '1rem';\n\n if (!this.itemClickListener.has(el)) {\n const itemClickCallback = (e: Event) => {\n e.preventDefault();\n e.stopPropagation();\n Object.values(this.context).forEach((c) => (c.isSelected = false));\n const context = this.getContext(item.id);\n context.isSelected = true;\n this.setContext(item.id, context);\n this.nodeClicked.emit(item.id);\n };\n el.addEventListener('itemClick', itemClickCallback);\n this.itemClickListener.set(el, itemClickCallback);\n }\n\n setToggleListener(item, el, index);\n\n return el;\n },\n };\n }\n\n private setContext(id: string, context: TreeItemContext) {\n this.context = {\n ...this.context,\n [id]: context,\n };\n\n this.contextChange.emit(this.context);\n }\n\n private getContext(id: string): TreeItemContext {\n if (!this.context) {\n return {\n isExpanded: false,\n isSelected: false,\n };\n }\n if (!this.context[id]) {\n this.context[id] = {\n isExpanded: false,\n isSelected: false,\n };\n }\n return this.context[id];\n }\n\n private buildTreeList(\n root: TreeItem<any>,\n level: number = 0\n ): TreeItemVisual<any>[] {\n const itemList: TreeItemVisual<any>[] = [];\n\n if (root?.hasChildren) {\n const newLevel = level + 1;\n root.children.forEach((id: string) => {\n const item = this.model[id];\n const context = this.getContext(id);\n itemList.push({ ...item, level });\n if (item.hasChildren && context.isExpanded) {\n itemList.push(...this.buildTreeList(item, newLevel));\n }\n });\n }\n\n return itemList;\n }\n\n componentDidLoad() {\n this.initList();\n\n this.observer = new MutationObserver((records) => {\n let removed = [];\n\n records.forEach((record) => {\n removed = [...removed, ...Array.from(record.removedNodes)];\n\n record.addedNodes.forEach((an) => {\n const index = removed.indexOf(an);\n if (index >= 0) {\n removed.splice(index, 1);\n }\n });\n });\n\n this.nodeRemoved.emit(removed);\n });\n\n this.observer.observe(this.host, {\n childList: true,\n });\n }\n\n componentWillRender() {\n this.hasFirstRender = true;\n\n if (this.isListInitialized()) {\n this.refreshList();\n } else {\n this.initList();\n }\n }\n\n disconnectedCallback() {\n this.hyperlist.destroy();\n this.observer.disconnect();\n }\n\n @Watch('model')\n modelChange() {\n if (this.hasFirstRender && !this.isListInitialized()) {\n this.initList();\n }\n }\n\n private isListInitialized() {\n const itemPositions = this.hyperlist?._itemPositions;\n\n return (\n itemPositions !== undefined &&\n itemPositions.length &&\n !itemPositions?.some(\n (item: number) => item === undefined || Number.isNaN(item)\n )\n );\n }\n\n private refreshList() {\n if (this.hyperlist) {\n this.hyperlist.refresh(this.host, this.getVirtualizerOptions());\n }\n }\n\n private initList() {\n this.hyperlist?.destroy();\n const config = this.getVirtualizerOptions();\n this.hyperlist = new Hyperlist(this.host, config);\n }\n\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'mixins/hover';\n@import 'common-variables';\n@import 'mixins/hover';\n@import 'mixins/text-truncation';\n\n:host {\n display: flex;\n align-items: center;\n\n height: 32px;\n width: 100%;\n\n cursor: pointer;\n\n &:not(.disabled):not(:disabled):not(.selected) {\n &.hover,\n &:hover {\n background-color: var(--theme-tree-item--background--hover);\n }\n\n &.active,\n &:active {\n background-color: var(--theme-tree-item--background--active);\n }\n }\n\n &.selected {\n background-color: var(--theme-tree-item--background--selected);\n\n &.hover,\n &:hover {\n background-color: var(--theme-tree-item--background--selected-hover);\n }\n\n &.active,\n &:active {\n background-color: var(--theme-tree-item--background--selected-active);\n }\n }\n\n .tree-node-container {\n display: flex;\n align-items: center;\n height: $x-large-space;\n flex-grow: 1;\n align-items: center;\n }\n\n .icon-toggle-container {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 2rem;\n height: 2rem;\n\n ix-icon {\n transition: transform $default-time ease-in-out;\n\n &.icon-toggle-down {\n transform: rotate(90deg);\n }\n }\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, Event, EventEmitter, h, Host, Prop } from '@stencil/core';\nimport { TreeItemContext } from '../tree/tree-model';\n\n@Component({\n tag: 'ix-tree-item',\n styleUrl: 'tree-item.scss',\n scoped: true,\n})\nexport class TreeItem {\n /**\n * Text\n */\n @Prop() text: string;\n\n /**\n * Has tree item children\n */\n @Prop() hasChildren: boolean;\n\n /**\n * Context\n */\n @Prop() context: TreeItemContext;\n\n /**\n * Expand/Collapsed toggled\n */\n @Event() toggle: EventEmitter<void>;\n\n /**\n * Clicked\n */\n @Event() itemClick: EventEmitter<void>;\n\n render() {\n return (\n <Host\n class={{\n selected: this.context?.isSelected,\n }}\n >\n <div\n class=\"icon-toggle-container\"\n onClick={(e) => {\n e.preventDefault();\n this.toggle.emit();\n }}\n >\n {this.hasChildren ? (\n <ix-icon\n name=\"chevron-right\"\n size=\"16\"\n class={{\n ['icon-toggle-down']: this.context?.isExpanded,\n }}\n color={`color-${\n this.context?.isExpanded ? 'primary' : 'std-text'\n }`}\n />\n ) : null}\n </div>\n <div\n class=\"tree-node-container\"\n onClick={() => {\n this.itemClick.emit();\n }}\n >\n {this.text}\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -3,22 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-478a4b66.js');
6
-
7
- /*
8
- * SPDX-FileCopyrightText: 2023 Siemens AG
9
- *
10
- * SPDX-License-Identifier: MIT
11
- *
12
- * This source code is licensed under the MIT license found in the
13
- * LICENSE file in the root directory of this source tree.
14
- */
15
- var UploadFileState;
16
- (function (UploadFileState) {
17
- UploadFileState["SELECT_FILE"] = "SELECT_FILE";
18
- UploadFileState["LOADING"] = "LOADING";
19
- UploadFileState["UPLOAD_FAILED"] = "UPLOAD_FAILED";
20
- UploadFileState["UPLOAD_SUCCESSED"] = "UPLOAD_SUCCESSED";
21
- })(UploadFileState || (UploadFileState = {}));
6
+ const uploadFileState = require('./upload-file-state-a79acf2b.js');
22
7
 
23
8
  const uploadCss = ".sc-ix-upload-h{display:block;min-height:4rem;height:4rem}.sc-ix-upload-h .file-upload-area.sc-ix-upload{display:flex;flex-direction:row;align-items:center;justify-content:space-between;overflow:hidden;height:100%;width:100%;padding:1rem;border:1px dashed var(--theme-upload--border-color);border-radius:var(--theme-upload--border-radius);color:var(--theme-upload-text--color)}.sc-ix-upload-h .file-upload-area.multiline.sc-ix-upload{max-height:unset;height:auto}.sc-ix-upload-h .file-upload-area.multiline.sc-ix-upload .glyph.sc-ix-upload{align-self:flex-start;-webkit-margin-before:3px;margin-block-start:3px}.sc-ix-upload-h .file-upload-area.multiline.sc-ix-upload>div.sc-ix-upload{align-self:flex-start}.sc-ix-upload-h .file-upload-area.sc-ix-upload:not(.multiline) .state.sc-ix-upload,.sc-ix-upload-h .file-upload-area.sc-ix-upload:not(.multiline) .upload-text.sc-ix-upload{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sc-ix-upload-h .file-upload-area.file-over.sc-ix-upload{border-color:var(--theme-upload--border-color--dragover);border-style:solid}.sc-ix-upload-h .file-upload-area.checking.sc-ix-upload{color:var(--theme-upload-text--color--checking);border-style:solid}.sc-ix-upload-h .file-upload-area.disabled.sc-ix-upload{border-style:solid;color:var(--theme-upload-text--color--disabled)}.sc-ix-upload-h .file-upload-area.sc-ix-upload ix-button.sc-ix-upload{-webkit-margin-start:1rem;margin-inline-start:1rem}.sc-ix-upload-h .file-upload-area.sc-ix-upload .upload-browser.sc-ix-upload{opacity:0;overflow:hidden;position:absolute;z-index:-1}.sc-ix-upload-h .file-upload-area.sc-ix-upload .loader.sc-ix-upload{margin:2.187rem auto;font-size:0.937rem;width:1rem;height:1rem;border-radius:50%;position:relative;text-indent:-9999em;animation:optimise-loading 1.1s infinite ease;transform:translateZ(0)}.sc-ix-upload-h .file-upload-area.sc-ix-upload .upload-filename.sc-ix-upload{margin-bottom:1rem}.sc-ix-upload-h .file-upload-area.sc-ix-upload .state.sc-ix-upload{display:flex;align-items:center}.sc-ix-upload-h .file-upload-area.sc-ix-upload .state.sc-ix-upload>ix-spinner.sc-ix-upload{-webkit-margin-end:0.5rem;margin-inline-end:0.5rem;height:1.5rem;width:1.5rem}.sc-ix-upload-h .file-upload-area.sc-ix-upload .state.sc-ix-upload>i.sc-ix-upload{-webkit-margin-end:0.5rem;margin-inline-end:0.5rem}.sc-ix-upload-h .file-upload-area.sc-ix-upload .state.sc-ix-upload>i.glyph-error.sc-ix-upload{color:var(--theme-color-alarm)}.sc-ix-upload-h .file-upload-area.sc-ix-upload .state.sc-ix-upload>i.glyph-success.sc-ix-upload{color:var(--theme-color-success)}";
24
9
 
@@ -26,7 +11,7 @@ const Upload = class {
26
11
  get inputElement() {
27
12
  return this.hostElement.querySelector('#upload-browser');
28
13
  }
29
- constructor(hostRef) { index.registerInstance(this, hostRef); this.filesChanged = index.createEvent(this, "filesChanged", 7); this.accept = undefined; this.multiple = false; this.multiline = false; this.disabled = false; this.state = UploadFileState.SELECT_FILE; this.selectFileText = '+ Drag files here or…'; this.loadingText = 'Checking files…'; this.uploadFailedText = 'Upload failed. Please try again.'; this.uploadSuccessText = 'Upload successful'; this.i18nUploadFile = 'Upload file…'; this.i18nUploadDisabled = 'File upload currently not possible.'; this.isFileOver = false; }
14
+ constructor(hostRef) { index.registerInstance(this, hostRef); this.filesChanged = index.createEvent(this, "filesChanged", 7); this.accept = undefined; this.multiple = false; this.multiline = false; this.disabled = false; this.state = uploadFileState.UploadFileState.SELECT_FILE; this.selectFileText = '+ Drag files here or…'; this.loadingText = 'Checking files…'; this.uploadFailedText = 'Upload failed. Please try again.'; this.uploadSuccessText = 'Upload successful'; this.i18nUploadFile = 'Upload file…'; this.i18nUploadDisabled = 'File upload currently not possible.'; this.isFileOver = false; }
30
15
  fileDropped(evt) {
31
16
  evt.preventDefault();
32
17
  const file = evt.dataTransfer.files;
@@ -73,13 +58,13 @@ const Upload = class {
73
58
  return (index.h("span", { class: "state" }, index.h("span", { class: "upload-text" }, this.i18nUploadDisabled)));
74
59
  }
75
60
  switch (this.state) {
76
- case UploadFileState.SELECT_FILE:
61
+ case uploadFileState.UploadFileState.SELECT_FILE:
77
62
  return (index.h("span", { class: "state" }, index.h("span", { class: "upload-text" }, this.selectFileText)));
78
- case UploadFileState.LOADING:
63
+ case uploadFileState.UploadFileState.LOADING:
79
64
  return (index.h("span", { class: "state" }, index.h("ix-spinner", { variant: "primary" }), index.h("span", { class: "upload-text" }, this.loadingText)));
80
- case UploadFileState.UPLOAD_FAILED:
65
+ case uploadFileState.UploadFileState.UPLOAD_FAILED:
81
66
  return (index.h("span", { class: "state" }, index.h("i", { class: "glyph glyph-error" }), index.h("span", { class: "upload-text" }, this.uploadFailedText)));
82
- case UploadFileState.UPLOAD_SUCCESSED:
67
+ case uploadFileState.UploadFileState.UPLOAD_SUCCESSED:
83
68
  return (index.h("span", { class: "state" }, index.h("i", { class: "glyph glyph-success" }), index.h("span", { class: "upload-text" }, this.uploadSuccessText)));
84
69
  default:
85
70
  return '';
@@ -96,12 +81,12 @@ const Upload = class {
96
81
  return (index.h(index.Host, null, index.h("div", { class: {
97
82
  'file-upload-area': true,
98
83
  'file-over': this.isFileOver,
99
- checking: this.state === UploadFileState.LOADING,
84
+ checking: this.state === uploadFileState.UploadFileState.LOADING,
100
85
  disabled: this.disabled,
101
86
  multiline: this.multiline,
102
87
  }, onDrop: (e) => this.fileDropped(e), onDragOver: (e) => this.fileOver(e), onDragLeave: () => this.fileLeave(), draggable: !this.disabled }, this.renderUploadState(), index.h("div", null, index.h("input", { multiple: this.multiple, type: "file", class: "upload-browser", id: "upload-browser", onChange: (e) => {
103
88
  this.fileChangeEvent(e);
104
- }, accept: this.accept }), index.h("ix-button", { tabindex: "-1", outline: true, onClick: () => this.inputElement.click(), disabled: this.disabled || this.state === UploadFileState.LOADING }, this.i18nUploadFile)))));
89
+ }, accept: this.accept }), index.h("ix-button", { tabindex: "-1", outline: true, onClick: () => this.inputElement.click(), disabled: this.disabled || this.state === uploadFileState.UploadFileState.LOADING }, this.i18nUploadFile)))));
105
90
  }
106
91
  get hostElement() { return index.getElement(this); }
107
92
  };
@@ -1 +1 @@
1
- {"file":"ix-upload.entry.cjs.js","mappings":"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","names":["h","Host"],"sources":["./src/components/upload/upload-file-state.ts","./src/components/upload/upload.scss?tag=ix-upload&encapsulation=scoped","./src/components/upload/upload.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nexport enum UploadFileState {\n SELECT_FILE = 'SELECT_FILE',\n LOADING = 'LOADING',\n UPLOAD_FAILED = 'UPLOAD_FAILED',\n UPLOAD_SUCCESSED = 'UPLOAD_SUCCESSED',\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/text-truncation';\n\n:host {\n display: block;\n min-height: 4rem;\n height: 4rem;\n\n .file-upload-area {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n\n overflow: hidden;\n\n height: 100%;\n width: 100%;\n\n padding: $default-space;\n\n border: 1px dashed var(--theme-upload--border-color);\n border-radius: var(--theme-upload--border-radius);\n color: var(--theme-upload-text--color);\n\n &.multiline {\n max-height: unset;\n height: auto;\n\n .glyph {\n align-self: flex-start;\n margin-block-start: 3px;\n }\n\n > div {\n align-self: flex-start;\n }\n }\n\n &:not(.multiline) {\n .state,\n .upload-text {\n @include ellipsis;\n }\n }\n\n &.file-over {\n border-color: var(--theme-upload--border-color--dragover);\n border-style: solid;\n }\n\n &.checking {\n color: var(--theme-upload-text--color--checking);\n border-style: solid;\n }\n\n &.disabled {\n border-style: solid;\n color: var(--theme-upload-text--color--disabled);\n }\n\n ix-button {\n margin-inline-start: $default-space;\n }\n\n .upload-browser {\n opacity: 0;\n overflow: hidden;\n position: absolute;\n z-index: -1;\n }\n\n .loader {\n margin: 2.187rem auto;\n font-size: 0.937rem;\n width: $default-space;\n height: $default-space;\n border-radius: 50%;\n position: relative;\n text-indent: -9999em;\n animation: optimise-loading 1.1s infinite ease;\n transform: translateZ(0);\n }\n\n .upload-filename {\n margin-bottom: $default-space;\n }\n\n .state {\n display: flex;\n align-items: center;\n\n > ix-spinner {\n margin-inline-end: $small-space;\n height: $large-space;\n width: $large-space;\n }\n\n > i {\n margin-inline-end: $small-space;\n\n &.glyph-error {\n color: var(--theme-color-alarm);\n }\n\n &.glyph-success {\n color: var(--theme-color-success);\n }\n }\n }\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n} from '@stencil/core';\nimport { UploadFileState } from './upload-file-state';\n\n@Component({\n tag: 'ix-upload',\n styleUrl: 'upload.scss',\n scoped: true,\n})\nexport class Upload {\n /**\n * The accept attribute specifies the types of files that the server accepts (that can be submitted through a file upload).\n * [accept]{@link \"https://www.w3schools.com/tags/att_input_accept.asp\"}\n */\n @Prop() accept: string;\n\n /**\n * If multiple is true the user can drop or select multiple files\n */\n @Prop() multiple = false;\n\n /**\n * Whether the text should wrap to more than one line\n */\n @Prop() multiline = false;\n\n /**\n * Disable all input events\n */\n @Prop() disabled = false;\n\n /**\n * After a file is uploaded you can set the upload component to a defined state\n */\n @Prop() state: UploadFileState = UploadFileState.SELECT_FILE;\n\n /**\n * Will be used by state = UploadFileState.SELECT_FILE\n */\n @Prop() selectFileText = '+ Drag files here or…';\n\n /**\n * Will be used by state = UploadFileState.LOADING\n */\n @Prop() loadingText = 'Checking files…';\n\n /**\n * Will be used by state = UploadFileState.UPLOAD_FAILED\n */\n @Prop() uploadFailedText = 'Upload failed. Please try again.';\n\n /**\n * Will be used by state = UploadFileState.UPLOAD_SUCCESSED\n */\n @Prop() uploadSuccessText = 'Upload successful';\n\n /**\n * Label for upload file button\n */\n @Prop() i18nUploadFile = 'Upload file…';\n\n /**\n * Text for disabled state\n */\n @Prop() i18nUploadDisabled = 'File upload currently not possible.';\n\n /**\n * You get an array of Files after drop-action or browse action is finished\n */\n @Event() filesChanged: EventEmitter<Array<File>>;\n\n @Element() hostElement!: HTMLIxUploadElement;\n\n get inputElement(): HTMLInputElement {\n return this.hostElement.querySelector('#upload-browser');\n }\n\n @State() isFileOver = false;\n\n private filesToUpload: Array<File>;\n\n constructor() {}\n\n private fileDropped(evt: DragEvent) {\n evt.preventDefault();\n\n const file: File | FileList = evt.dataTransfer.files;\n this.isFileOver = false;\n\n this.filesToUpload = this.convertToFileArray(file);\n\n this.filesChanged.emit(this.filesToUpload);\n }\n\n private fileOver(event: DragEvent) {\n event.preventDefault();\n event.dataTransfer.dropEffect = 'move';\n\n if (!this.multiple && event.dataTransfer.items.length > 1) {\n event.preventDefault();\n event.stopPropagation();\n event.dataTransfer.effectAllowed = 'none';\n event.dataTransfer.dropEffect = 'none';\n } else {\n this.isFileOver = true;\n }\n }\n\n private fileLeave() {\n this.isFileOver = false;\n }\n\n private fileChangeEvent(event: any) {\n this.filesToUpload = this.convertToFileArray(event.target.files);\n\n this.filesChanged.emit(this.filesToUpload);\n\n // Workaround for bug in native input element, that prevents the user from uploading\n // a file with the same name as the most recent one, but with changed content.\n this.inputElement.type = '';\n this.inputElement.type = 'file';\n }\n\n private convertToFileArray(filesFromEvent: FileList | File): File[] {\n let files = [];\n if (filesFromEvent instanceof FileList) {\n files = Array.from(filesFromEvent);\n } else {\n files = [filesFromEvent];\n }\n return files;\n }\n\n private renderUploadState() {\n if (this.disabled) {\n return (\n <span class=\"state\">\n <span class=\"upload-text\">{this.i18nUploadDisabled}</span>\n </span>\n );\n }\n\n switch (this.state) {\n case UploadFileState.SELECT_FILE:\n return (\n <span class=\"state\">\n <span class=\"upload-text\">{this.selectFileText}</span>\n </span>\n );\n case UploadFileState.LOADING:\n return (\n <span class=\"state\">\n <ix-spinner variant=\"primary\"></ix-spinner>\n <span class=\"upload-text\">{this.loadingText}</span>\n </span>\n );\n case UploadFileState.UPLOAD_FAILED:\n return (\n <span class=\"state\">\n <i class=\"glyph glyph-error\"></i>\n <span class=\"upload-text\">{this.uploadFailedText}</span>\n </span>\n );\n case UploadFileState.UPLOAD_SUCCESSED:\n return (\n <span class=\"state\">\n <i class=\"glyph glyph-success\"></i>\n <span class=\"upload-text\">{this.uploadSuccessText}</span>\n </span>\n );\n default:\n return '';\n }\n }\n\n /**\n * Set files\n * @param obj\n */\n @Method()\n async setFilesToUpload(obj: any) {\n this.filesToUpload = obj;\n }\n\n render() {\n return (\n <Host>\n <div\n class={{\n 'file-upload-area': true,\n 'file-over': this.isFileOver,\n checking: this.state === UploadFileState.LOADING,\n disabled: this.disabled,\n multiline: this.multiline,\n }}\n onDrop={(e) => this.fileDropped(e)}\n onDragOver={(e) => this.fileOver(e)}\n onDragLeave={() => this.fileLeave()}\n draggable={!this.disabled}\n >\n {this.renderUploadState()}\n <div>\n <input\n multiple={this.multiple}\n type=\"file\"\n class=\"upload-browser\"\n id=\"upload-browser\"\n onChange={(e) => {\n this.fileChangeEvent(e);\n }}\n accept={this.accept}\n />\n <ix-button\n tabindex=\"-1\"\n outline\n onClick={() => this.inputElement.click()}\n disabled={this.disabled || this.state === UploadFileState.LOADING}\n >\n {this.i18nUploadFile}\n </ix-button>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ix-upload.entry.cjs.js","mappings":"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","names":["UploadFileState","h","Host"],"sources":["./src/components/upload/upload.scss?tag=ix-upload&encapsulation=scoped","./src/components/upload/upload.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import 'common-variables';\n@import 'mixins/text-truncation';\n\n:host {\n display: block;\n min-height: 4rem;\n height: 4rem;\n\n .file-upload-area {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n\n overflow: hidden;\n\n height: 100%;\n width: 100%;\n\n padding: $default-space;\n\n border: 1px dashed var(--theme-upload--border-color);\n border-radius: var(--theme-upload--border-radius);\n color: var(--theme-upload-text--color);\n\n &.multiline {\n max-height: unset;\n height: auto;\n\n .glyph {\n align-self: flex-start;\n margin-block-start: 3px;\n }\n\n > div {\n align-self: flex-start;\n }\n }\n\n &:not(.multiline) {\n .state,\n .upload-text {\n @include ellipsis;\n }\n }\n\n &.file-over {\n border-color: var(--theme-upload--border-color--dragover);\n border-style: solid;\n }\n\n &.checking {\n color: var(--theme-upload-text--color--checking);\n border-style: solid;\n }\n\n &.disabled {\n border-style: solid;\n color: var(--theme-upload-text--color--disabled);\n }\n\n ix-button {\n margin-inline-start: $default-space;\n }\n\n .upload-browser {\n opacity: 0;\n overflow: hidden;\n position: absolute;\n z-index: -1;\n }\n\n .loader {\n margin: 2.187rem auto;\n font-size: 0.937rem;\n width: $default-space;\n height: $default-space;\n border-radius: 50%;\n position: relative;\n text-indent: -9999em;\n animation: optimise-loading 1.1s infinite ease;\n transform: translateZ(0);\n }\n\n .upload-filename {\n margin-bottom: $default-space;\n }\n\n .state {\n display: flex;\n align-items: center;\n\n > ix-spinner {\n margin-inline-end: $small-space;\n height: $large-space;\n width: $large-space;\n }\n\n > i {\n margin-inline-end: $small-space;\n\n &.glyph-error {\n color: var(--theme-color-alarm);\n }\n\n &.glyph-success {\n color: var(--theme-color-success);\n }\n }\n }\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n} from '@stencil/core';\nimport { UploadFileState } from './upload-file-state';\n\n@Component({\n tag: 'ix-upload',\n styleUrl: 'upload.scss',\n scoped: true,\n})\nexport class Upload {\n /**\n * The accept attribute specifies the types of files that the server accepts (that can be submitted through a file upload).\n * [accept]{@link \"https://www.w3schools.com/tags/att_input_accept.asp\"}\n */\n @Prop() accept: string;\n\n /**\n * If multiple is true the user can drop or select multiple files\n */\n @Prop() multiple = false;\n\n /**\n * Whether the text should wrap to more than one line\n */\n @Prop() multiline = false;\n\n /**\n * Disable all input events\n */\n @Prop() disabled = false;\n\n /**\n * After a file is uploaded you can set the upload component to a defined state\n */\n @Prop() state: UploadFileState = UploadFileState.SELECT_FILE;\n\n /**\n * Will be used by state = UploadFileState.SELECT_FILE\n */\n @Prop() selectFileText = '+ Drag files here or…';\n\n /**\n * Will be used by state = UploadFileState.LOADING\n */\n @Prop() loadingText = 'Checking files…';\n\n /**\n * Will be used by state = UploadFileState.UPLOAD_FAILED\n */\n @Prop() uploadFailedText = 'Upload failed. Please try again.';\n\n /**\n * Will be used by state = UploadFileState.UPLOAD_SUCCESSED\n */\n @Prop() uploadSuccessText = 'Upload successful';\n\n /**\n * Label for upload file button\n */\n @Prop() i18nUploadFile = 'Upload file…';\n\n /**\n * Text for disabled state\n */\n @Prop() i18nUploadDisabled = 'File upload currently not possible.';\n\n /**\n * You get an array of Files after drop-action or browse action is finished\n */\n @Event() filesChanged: EventEmitter<Array<File>>;\n\n @Element() hostElement!: HTMLIxUploadElement;\n\n get inputElement(): HTMLInputElement {\n return this.hostElement.querySelector('#upload-browser');\n }\n\n @State() isFileOver = false;\n\n private filesToUpload: Array<File>;\n\n constructor() {}\n\n private fileDropped(evt: DragEvent) {\n evt.preventDefault();\n\n const file: File | FileList = evt.dataTransfer.files;\n this.isFileOver = false;\n\n this.filesToUpload = this.convertToFileArray(file);\n\n this.filesChanged.emit(this.filesToUpload);\n }\n\n private fileOver(event: DragEvent) {\n event.preventDefault();\n event.dataTransfer.dropEffect = 'move';\n\n if (!this.multiple && event.dataTransfer.items.length > 1) {\n event.preventDefault();\n event.stopPropagation();\n event.dataTransfer.effectAllowed = 'none';\n event.dataTransfer.dropEffect = 'none';\n } else {\n this.isFileOver = true;\n }\n }\n\n private fileLeave() {\n this.isFileOver = false;\n }\n\n private fileChangeEvent(event: any) {\n this.filesToUpload = this.convertToFileArray(event.target.files);\n\n this.filesChanged.emit(this.filesToUpload);\n\n // Workaround for bug in native input element, that prevents the user from uploading\n // a file with the same name as the most recent one, but with changed content.\n this.inputElement.type = '';\n this.inputElement.type = 'file';\n }\n\n private convertToFileArray(filesFromEvent: FileList | File): File[] {\n let files = [];\n if (filesFromEvent instanceof FileList) {\n files = Array.from(filesFromEvent);\n } else {\n files = [filesFromEvent];\n }\n return files;\n }\n\n private renderUploadState() {\n if (this.disabled) {\n return (\n <span class=\"state\">\n <span class=\"upload-text\">{this.i18nUploadDisabled}</span>\n </span>\n );\n }\n\n switch (this.state) {\n case UploadFileState.SELECT_FILE:\n return (\n <span class=\"state\">\n <span class=\"upload-text\">{this.selectFileText}</span>\n </span>\n );\n case UploadFileState.LOADING:\n return (\n <span class=\"state\">\n <ix-spinner variant=\"primary\"></ix-spinner>\n <span class=\"upload-text\">{this.loadingText}</span>\n </span>\n );\n case UploadFileState.UPLOAD_FAILED:\n return (\n <span class=\"state\">\n <i class=\"glyph glyph-error\"></i>\n <span class=\"upload-text\">{this.uploadFailedText}</span>\n </span>\n );\n case UploadFileState.UPLOAD_SUCCESSED:\n return (\n <span class=\"state\">\n <i class=\"glyph glyph-success\"></i>\n <span class=\"upload-text\">{this.uploadSuccessText}</span>\n </span>\n );\n default:\n return '';\n }\n }\n\n /**\n * Set files\n * @param obj\n */\n @Method()\n async setFilesToUpload(obj: any) {\n this.filesToUpload = obj;\n }\n\n render() {\n return (\n <Host>\n <div\n class={{\n 'file-upload-area': true,\n 'file-over': this.isFileOver,\n checking: this.state === UploadFileState.LOADING,\n disabled: this.disabled,\n multiline: this.multiline,\n }}\n onDrop={(e) => this.fileDropped(e)}\n onDragOver={(e) => this.fileOver(e)}\n onDragLeave={() => this.fileLeave()}\n draggable={!this.disabled}\n >\n {this.renderUploadState()}\n <div>\n <input\n multiple={this.multiple}\n type=\"file\"\n class=\"upload-browser\"\n id=\"upload-browser\"\n onChange={(e) => {\n this.fileChangeEvent(e);\n }}\n accept={this.accept}\n />\n <ix-button\n tabindex=\"-1\"\n outline\n onClick={() => this.inputElement.click()}\n disabled={this.disabled || this.state === UploadFileState.LOADING}\n >\n {this.i18nUploadFile}\n </ix-button>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-478a4b66.js');
6
6
 
7
- const workflowStepCss = ".sc-ix-workflow-step-h .step.sc-ix-workflow-step{display:flex;flex-direction:column;align-items:center;background-color:var(--theme-workflow-step--background);border-radius:var(--theme-workflow--border-radius);width:auto;padding:1.125rem 0 0.5rem 0;height:4rem;width:12.75rem}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step{display:flex;width:100%;align-items:center;justify-content:center}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.sc-ix-workflow-step{width:100%;height:0.125rem;background-color:var(--theme-workflow-step-icon-default--color)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.first.sc-ix-workflow-step,.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.last.sc-ix-workflow-step{width:50%;margin:0 0 0 auto}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.last.sc-ix-workflow-step{margin:0 auto 0 0}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.selected.sc-ix-workflow-step{background-color:var(--theme-workflow-step-icon-default--color--selected)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.done.sc-ix-workflow-step{background-color:var(--theme-workflow-step-icon-done--color)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.done.selected.sc-ix-workflow-step{background-color:var(--theme-workflow-step-icon-done--color--selected)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.warning.sc-ix-workflow-step{background-color:var(--theme-color-warning)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.success.sc-ix-workflow-step{background-color:var(--theme-color-success)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.error.sc-ix-workflow-step{background-color:var(--theme-color-alarm)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .iconWrapper.sc-ix-workflow-step{display:flex;align-items:center;justify-content:center;position:absolute}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .iconWrapper.sc-ix-workflow-step .absolute.sc-ix-workflow-step{position:absolute}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .text.sc-ix-workflow-step{margin-top:1rem;width:auto;padding:0 0.5rem}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step{flex-direction:row;padding:0}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .wrapper.sc-ix-workflow-step{width:auto;padding-left:1.125rem;height:4rem}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.sc-ix-workflow-step{width:0.125rem;height:100%}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.first.sc-ix-workflow-step,.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.last.sc-ix-workflow-step{height:50%;margin:auto 0 0 0}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.last.sc-ix-workflow-step{margin:0 0 auto 0}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .text.sc-ix-workflow-step{margin-top:0;margin-left:1rem;padding:0}.sc-ix-workflow-step-h .step.sc-ix-workflow-step:hover{background-color:var(--theme-workflow-step--background--hover)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step:active{background-color:var(--theme-workflow-step--background--active)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step:focus-visible{outline:1px solid var(--focus--border-color);border-radius:0}.sc-ix-workflow-step-h .step.selected.sc-ix-workflow-step{background-color:var(--theme-workflow-step--background--selected)}.sc-ix-workflow-step-h .step.disabled.sc-ix-workflow-step{background-color:var(--theme-workflow-step--background--disabled)}.sc-ix-workflow-step-h .step.disabled.sc-ix-workflow-step .line.sc-ix-workflow-step{background-color:var(--theme-workflow-step-icon-default--color--disabled) !important}.sc-ix-workflow-step-h .step.disabled.sc-ix-workflow-step .text.sc-ix-workflow-step{color:var(--theme-workflow-step--color--disabled)}";
7
+ const workflowStepCss = ".sc-ix-workflow-step-h .step.sc-ix-workflow-step{display:flex;flex-direction:column;align-items:center;background-color:var(--theme-workflow-step--background);border-radius:var(--theme-workflow--border-radius);width:auto;padding:1.125rem 0 0.5rem 0;height:4rem;width:12.75rem}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step{display:flex;width:100%;align-items:center;justify-content:center;position:relative}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.sc-ix-workflow-step{width:100%;height:0.125rem;background-color:var(--theme-workflow-step-icon-default--color)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.first.sc-ix-workflow-step,.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.last.sc-ix-workflow-step{width:50%;margin:0 0 0 auto}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.last.sc-ix-workflow-step{margin:0 auto 0 0}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.selected.sc-ix-workflow-step{background-color:var(--theme-workflow-step-icon-default--color--selected)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.done.sc-ix-workflow-step{background-color:var(--theme-workflow-step-icon-done--color)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.done.selected.sc-ix-workflow-step{background-color:var(--theme-workflow-step-icon-done--color--selected)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.warning.sc-ix-workflow-step{background-color:var(--theme-color-warning)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.success.sc-ix-workflow-step{background-color:var(--theme-color-success)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.error.sc-ix-workflow-step{background-color:var(--theme-color-alarm)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .iconWrapper.sc-ix-workflow-step{display:flex;align-items:center;justify-content:center;position:absolute}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .iconWrapper.sc-ix-workflow-step .absolute.sc-ix-workflow-step{position:absolute}.sc-ix-workflow-step-h .step.sc-ix-workflow-step .text.sc-ix-workflow-step{margin-top:1rem;width:auto;padding:0 0.5rem}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step{flex-direction:row;padding:0}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .wrapper.sc-ix-workflow-step{width:auto;padding-left:1.125rem;height:4rem}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.sc-ix-workflow-step{width:0.125rem;height:100%}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.first.sc-ix-workflow-step,.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.last.sc-ix-workflow-step{height:50%;margin:auto 0 0 0}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .wrapper.sc-ix-workflow-step .line.last.sc-ix-workflow-step{margin:0 0 auto 0}.sc-ix-workflow-step-h .step.vertical.sc-ix-workflow-step .text.sc-ix-workflow-step{margin-top:0;margin-left:1rem;padding:0}.sc-ix-workflow-step-h .step.sc-ix-workflow-step:hover{background-color:var(--theme-workflow-step--background--hover)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step:active{background-color:var(--theme-workflow-step--background--active)}.sc-ix-workflow-step-h .step.sc-ix-workflow-step:focus-visible{outline:1px solid var(--focus--border-color);border-radius:0}.sc-ix-workflow-step-h .step.selected.sc-ix-workflow-step{background-color:var(--theme-workflow-step--background--selected)}.sc-ix-workflow-step-h .step.disabled.sc-ix-workflow-step{background-color:var(--theme-workflow-step--background--disabled)}.sc-ix-workflow-step-h .step.disabled.sc-ix-workflow-step .line.sc-ix-workflow-step{background-color:var(--theme-workflow-step-icon-default--color--disabled) !important}.sc-ix-workflow-step-h .step.disabled.sc-ix-workflow-step .text.sc-ix-workflow-step{color:var(--theme-workflow-step--color--disabled)}";
8
8
 
9
9
  const WorkflowStep = class {
10
10
  constructor(hostRef) {
@@ -1 +1 @@
1
- {"file":"ix-workflow-step.ix-workflow-steps.entry.cjs.js","mappings":"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","names":["h","Fragment","Host"],"sources":["./src/components/workflow-step/workflow-step.scss?tag=ix-workflow-step&encapsulation=scoped","./src/components/workflow-step/workflow-step.tsx","./src/components/workflow-steps/workflow-steps.scss?tag=ix-workflow-steps&encapsulation=scoped","./src/components/workflow-steps/workflow-steps.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n/*\n * COPYRIGHT (c) Siemens AG 2018-2022 ALL RIGHTS RESERVED.\n */\n\n@import 'common-variables';\n\n:host {\n .step {\n display: flex;\n flex-direction: column;\n align-items: center;\n background-color: var(--theme-workflow-step--background);\n border-radius: var(--theme-workflow--border-radius);\n width: auto;\n padding: 1.125rem 0 $small-space 0;\n height: 4rem;\n width: 12.75rem;\n\n .wrapper {\n display: flex;\n width: 100%;\n align-items: center;\n justify-content: center;\n\n .line {\n width: 100%;\n height: 0.125rem;\n background-color: var(--theme-workflow-step-icon-default--color);\n\n &.first,\n &.last {\n width: 50%;\n margin: 0 0 0 auto;\n }\n\n &.last {\n margin: 0 auto 0 0;\n }\n\n &.selected {\n background-color: var(\n --theme-workflow-step-icon-default--color--selected\n );\n }\n\n &.done {\n background-color: var(--theme-workflow-step-icon-done--color);\n\n &.selected {\n background-color: var(\n --theme-workflow-step-icon-done--color--selected\n );\n }\n }\n\n &.warning {\n background-color: var(--theme-color-warning);\n }\n\n &.success {\n background-color: var(--theme-color-success);\n }\n\n &.error {\n background-color: var(--theme-color-alarm);\n }\n }\n\n .iconWrapper {\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n\n .absolute {\n position: absolute;\n }\n }\n }\n\n .text {\n margin-top: $default-space;\n width: auto;\n padding: 0 $small-space;\n }\n\n &.vertical {\n flex-direction: row;\n padding: 0;\n\n .wrapper {\n width: auto;\n padding-left: 1.125rem;\n height: 4rem;\n\n .line {\n width: 0.125rem;\n height: 100%;\n\n &.first,\n &.last {\n height: 50%;\n margin: auto 0 0 0;\n }\n\n &.last {\n margin: 0 0 auto 0;\n }\n }\n }\n\n .text {\n margin-top: 0;\n margin-left: $default-space;\n padding: 0;\n }\n }\n\n &:hover {\n background-color: var(--theme-workflow-step--background--hover);\n }\n\n &:active {\n background-color: var(--theme-workflow-step--background--active);\n }\n\n &:focus-visible {\n outline: 1px solid var(--focus--border-color);\n border-radius: 0;\n }\n\n &.selected {\n background-color: var(--theme-workflow-step--background--selected);\n }\n\n &.disabled {\n background-color: var(--theme-workflow-step--background--disabled);\n\n .line {\n background-color: var(\n --theme-workflow-step-icon-default--color--disabled\n ) !important;\n }\n\n .text {\n color: var(--theme-workflow-step--color--disabled);\n }\n }\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n/*\n * COPYRIGHT (c) Siemens AG 2018-2022 ALL RIGHTS RESERVED.\n */\n\nimport {\n Component,\n Element,\n Fragment,\n h,\n Host,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\n\n@Component({\n tag: 'ix-workflow-step',\n styleUrl: 'workflow-step.scss',\n scoped: true,\n})\nexport class WorkflowStep {\n @Element() hostElement: HTMLIxWorkflowStepElement;\n\n /**\n * Select orientation\n */\n @Prop() vertical: boolean = false;\n\n /**\n * Set disabled\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Set status\n */\n @Prop() status: 'open' | 'success' | 'done' | 'warning' | 'error' = 'open';\n\n /**\n * Activate navigation click\n */\n @Prop() clickable: boolean = false;\n\n /**\n * Set selected\n */\n @Prop({ mutable: true }) selected: boolean = false;\n\n /**\n * Activate navigation click\n */\n @Prop() position: 'first' | 'last' | 'undefined' = 'undefined';\n\n @State() iconName: 'circle' | 'circle-dot' | 'success' | 'warning' | 'error' =\n 'circle';\n @State() iconColor: string = 'workflow-step-icon-default--color';\n\n private customIconSlot: boolean;\n\n private select() {\n if (!this.clickable) return;\n if (this.disabled) return;\n\n this.selected = true;\n this.selectedHandler();\n }\n\n @Watch('selected')\n selectedHandler() {\n const selectedStyle = this.selected ? '--selected' : '';\n\n if (this.status === 'open') {\n this.iconName = this.selected ? 'circle-dot' : 'circle';\n this.iconColor = `workflow-step-icon-default--color${selectedStyle}`;\n }\n\n if (this.status === 'done' && !this.disabled) {\n this.iconColor = `workflow-step-icon-done--color${selectedStyle}`;\n }\n }\n\n @Watch('status')\n watchPropHandler() {\n switch (this.status) {\n case 'open':\n this.iconName = 'circle';\n this.iconColor = 'workflow-step-icon-default--color';\n break;\n case 'success':\n this.iconName = 'success';\n this.iconColor = 'color-success';\n break;\n case 'done':\n this.iconName = 'success';\n this.iconColor = 'workflow-step-icon-done--color';\n break;\n case 'warning':\n this.iconName = 'warning';\n this.iconColor = 'color-warning';\n break;\n case 'error':\n this.iconName = 'error';\n this.iconColor = 'color-alarm';\n break;\n\n default:\n this.iconName = 'circle';\n break;\n }\n\n if (this.disabled) {\n this.iconColor = 'workflow-step-icon-success--color--disabled';\n }\n }\n\n componentDidLoad() {\n this.watchPropHandler();\n this.selectedHandler();\n\n this.customIconSlot = !!this.hostElement.querySelector(\n '[slot=\"custom-icon\"]'\n );\n }\n\n render() {\n const icons = !this.customIconSlot ? (\n <Fragment>\n <ix-icon\n color=\"color-1\"\n name={\n this.iconName === 'warning' ? 'triangle-filled' : 'circle-filled'\n }\n class=\"absolute\"\n size=\"24\"\n ></ix-icon>\n <ix-icon\n color={this.iconColor}\n name={this.iconName}\n class=\"absolute\"\n size=\"24\"\n ></ix-icon>\n </Fragment>\n ) : (\n ''\n );\n\n return (\n <Host>\n <div\n tabIndex={0}\n onClick={() => this.select()}\n class={{\n step: true,\n selected: this.selected,\n vertical: this.vertical,\n disabled: this.disabled,\n }}\n >\n <div class=\"wrapper\">\n <div\n class={{\n line: true,\n selected: this.selected,\n [this.status]: true,\n [this.position]: true,\n }}\n ></div>\n <div class=\"iconWrapper\">\n {icons}\n <slot name=\"custom-icon\"></slot>\n </div>\n </div>\n <div class=\"text\">\n <slot></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n/*\n * COPYRIGHT (c) Siemens AG 2018-2022 ALL RIGHTS RESERVED.\n */\n\n@import 'common-variables';\n\n:host {\n .steps {\n display: flex;\n\n &.vertical {\n display: block;\n }\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n/*\n * COPYRIGHT (c) Siemens AG 2018-2022 ALL RIGHTS RESERVED.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n} from '@stencil/core';\n\n@Component({\n tag: 'ix-workflow-steps',\n styleUrl: 'workflow-steps.scss',\n scoped: true,\n})\nexport class WorkflowSteps {\n @Element() hostElement!: HTMLIxWorkflowStepsElement;\n\n /**\n * Select orientation\n */\n @Prop() vertical: boolean = false;\n\n /**\n * Select linear mode\n */\n @Prop() linear: boolean = false;\n\n /**\n * Activate navigation click\n */\n @Prop() clickable: boolean = false;\n\n /**\n * Activate navigation click\n */\n @Prop() selectedIndex: number = 0;\n\n /**\n * On step selected event\n */\n @Event() stepSelected: EventEmitter<number>;\n\n private getSteps() {\n return Array.from(this.hostElement.querySelectorAll('ix-workflow-step'));\n }\n\n private deselectAll() {\n const steps = this.getSteps();\n steps.forEach((element) => {\n element.setAttribute('selected', 'false');\n });\n }\n\n componentDidRender() {\n const steps = this.getSteps();\n\n steps.forEach((element, index) => {\n element.setAttribute(\n 'vertical',\n this.vertical === true ? 'true' : 'false'\n );\n element.setAttribute(\n 'clickable',\n this.clickable === true ? 'true' : 'false'\n );\n element.setAttribute(\n 'selected',\n this.selectedIndex === index ? 'true' : 'false'\n );\n if (index === 0) element.setAttribute('position', 'first');\n if (index === steps.length - 1) element.setAttribute('position', 'last');\n });\n }\n\n componentWillRender() {\n const steps = this.getSteps();\n steps.forEach((element, index) => {\n element.addEventListener('click', () => {\n if (!this.clickable) return;\n const previousElement = steps[index - 1];\n if (\n this.linear &&\n previousElement &&\n !['done', 'success'].includes(previousElement?.status)\n ) {\n return element.setAttribute('selected', 'false');\n }\n this.deselectAll();\n element.setAttribute('selected', 'true');\n this.stepSelected.emit(index);\n });\n // const isEnabled = element.getAttribute('first');\n // if(isEnabled){\n\n // }\n // console.log(isEnabled)\n // const isDisabled = element.getAttribute('disabled') !== null;\n // if (!isDisabled) element.addEventListener('click', () => '');\n //element.addEventListener('mousedown', event => this.clicked(element, index));\n });\n }\n\n render() {\n return (\n <Host>\n <div class={{ steps: true, vertical: this.vertical }}>\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ix-workflow-step.ix-workflow-steps.entry.cjs.js","mappings":"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","names":["h","Fragment","Host"],"sources":["./src/components/workflow-step/workflow-step.scss?tag=ix-workflow-step&encapsulation=scoped","./src/components/workflow-step/workflow-step.tsx","./src/components/workflow-steps/workflow-steps.scss?tag=ix-workflow-steps&encapsulation=scoped","./src/components/workflow-steps/workflow-steps.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n/*\n * COPYRIGHT (c) Siemens AG 2018-2022 ALL RIGHTS RESERVED.\n */\n\n@import 'common-variables';\n\n:host {\n .step {\n display: flex;\n flex-direction: column;\n align-items: center;\n background-color: var(--theme-workflow-step--background);\n border-radius: var(--theme-workflow--border-radius);\n width: auto;\n padding: 1.125rem 0 $small-space 0;\n height: 4rem;\n width: 12.75rem;\n\n .wrapper {\n display: flex;\n width: 100%;\n align-items: center;\n justify-content: center;\n position: relative;\n\n .line {\n width: 100%;\n height: 0.125rem;\n background-color: var(--theme-workflow-step-icon-default--color);\n\n &.first,\n &.last {\n width: 50%;\n margin: 0 0 0 auto;\n }\n\n &.last {\n margin: 0 auto 0 0;\n }\n\n &.selected {\n background-color: var(--theme-workflow-step-icon-default--color--selected);\n }\n\n &.done {\n background-color: var(--theme-workflow-step-icon-done--color);\n\n &.selected {\n background-color: var(--theme-workflow-step-icon-done--color--selected);\n }\n }\n\n &.warning {\n background-color: var(--theme-color-warning);\n }\n\n &.success {\n background-color: var(--theme-color-success);\n }\n\n &.error {\n background-color: var(--theme-color-alarm);\n }\n }\n\n .iconWrapper {\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n\n .absolute {\n position: absolute;\n }\n }\n }\n\n .text {\n margin-top: $default-space;\n width: auto;\n padding: 0 $small-space;\n }\n\n &.vertical {\n flex-direction: row;\n padding: 0;\n\n .wrapper {\n width: auto;\n padding-left: 1.125rem;\n height: 4rem;\n\n .line {\n width: 0.125rem;\n height: 100%;\n\n &.first,\n &.last {\n height: 50%;\n margin: auto 0 0 0;\n }\n\n &.last {\n margin: 0 0 auto 0;\n }\n }\n }\n\n .text {\n margin-top: 0;\n margin-left: $default-space;\n padding: 0;\n }\n }\n\n &:hover {\n background-color: var(--theme-workflow-step--background--hover);\n }\n\n &:active {\n background-color: var(--theme-workflow-step--background--active);\n }\n\n &:focus-visible {\n outline: 1px solid var(--focus--border-color);\n border-radius: 0;\n }\n\n &.selected {\n background-color: var(--theme-workflow-step--background--selected);\n }\n\n &.disabled {\n background-color: var(--theme-workflow-step--background--disabled);\n\n .line {\n background-color: var(--theme-workflow-step-icon-default--color--disabled) !important;\n }\n\n .text {\n color: var(--theme-workflow-step--color--disabled);\n }\n }\n }\n}","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n/*\n * COPYRIGHT (c) Siemens AG 2018-2022 ALL RIGHTS RESERVED.\n */\n\nimport {\n Component,\n Element,\n Fragment,\n h,\n Host,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\n\n@Component({\n tag: 'ix-workflow-step',\n styleUrl: 'workflow-step.scss',\n scoped: true,\n})\nexport class WorkflowStep {\n @Element() hostElement: HTMLIxWorkflowStepElement;\n\n /**\n * Select orientation\n */\n @Prop() vertical: boolean = false;\n\n /**\n * Set disabled\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Set status\n */\n @Prop() status: 'open' | 'success' | 'done' | 'warning' | 'error' = 'open';\n\n /**\n * Activate navigation click\n */\n @Prop() clickable: boolean = false;\n\n /**\n * Set selected\n */\n @Prop({ mutable: true }) selected: boolean = false;\n\n /**\n * Activate navigation click\n */\n @Prop() position: 'first' | 'last' | 'undefined' = 'undefined';\n\n @State() iconName: 'circle' | 'circle-dot' | 'success' | 'warning' | 'error' =\n 'circle';\n @State() iconColor: string = 'workflow-step-icon-default--color';\n\n private customIconSlot: boolean;\n\n private select() {\n if (!this.clickable) return;\n if (this.disabled) return;\n\n this.selected = true;\n this.selectedHandler();\n }\n\n @Watch('selected')\n selectedHandler() {\n const selectedStyle = this.selected ? '--selected' : '';\n\n if (this.status === 'open') {\n this.iconName = this.selected ? 'circle-dot' : 'circle';\n this.iconColor = `workflow-step-icon-default--color${selectedStyle}`;\n }\n\n if (this.status === 'done' && !this.disabled) {\n this.iconColor = `workflow-step-icon-done--color${selectedStyle}`;\n }\n }\n\n @Watch('status')\n watchPropHandler() {\n switch (this.status) {\n case 'open':\n this.iconName = 'circle';\n this.iconColor = 'workflow-step-icon-default--color';\n break;\n case 'success':\n this.iconName = 'success';\n this.iconColor = 'color-success';\n break;\n case 'done':\n this.iconName = 'success';\n this.iconColor = 'workflow-step-icon-done--color';\n break;\n case 'warning':\n this.iconName = 'warning';\n this.iconColor = 'color-warning';\n break;\n case 'error':\n this.iconName = 'error';\n this.iconColor = 'color-alarm';\n break;\n\n default:\n this.iconName = 'circle';\n break;\n }\n\n if (this.disabled) {\n this.iconColor = 'workflow-step-icon-success--color--disabled';\n }\n }\n\n componentDidLoad() {\n this.watchPropHandler();\n this.selectedHandler();\n\n this.customIconSlot = !!this.hostElement.querySelector(\n '[slot=\"custom-icon\"]'\n );\n }\n\n render() {\n const icons = !this.customIconSlot ? (\n <Fragment>\n <ix-icon\n color=\"color-1\"\n name={\n this.iconName === 'warning' ? 'triangle-filled' : 'circle-filled'\n }\n class=\"absolute\"\n size=\"24\"\n ></ix-icon>\n <ix-icon\n color={this.iconColor}\n name={this.iconName}\n class=\"absolute\"\n size=\"24\"\n ></ix-icon>\n </Fragment>\n ) : (\n ''\n );\n\n return (\n <Host>\n <div\n tabIndex={0}\n onClick={() => this.select()}\n class={{\n step: true,\n selected: this.selected,\n vertical: this.vertical,\n disabled: this.disabled,\n }}\n >\n <div class=\"wrapper\">\n <div\n class={{\n line: true,\n selected: this.selected,\n [this.status]: true,\n [this.position]: true,\n }}\n ></div>\n <div class=\"iconWrapper\">\n {icons}\n <slot name=\"custom-icon\"></slot>\n </div>\n </div>\n <div class=\"text\">\n <slot></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n/*\n * COPYRIGHT (c) Siemens AG 2018-2022 ALL RIGHTS RESERVED.\n */\n\n@import 'common-variables';\n\n:host {\n .steps {\n display: flex;\n\n &.vertical {\n display: block;\n }\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n/*\n * COPYRIGHT (c) Siemens AG 2018-2022 ALL RIGHTS RESERVED.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n} from '@stencil/core';\n\n@Component({\n tag: 'ix-workflow-steps',\n styleUrl: 'workflow-steps.scss',\n scoped: true,\n})\nexport class WorkflowSteps {\n @Element() hostElement!: HTMLIxWorkflowStepsElement;\n\n /**\n * Select orientation\n */\n @Prop() vertical: boolean = false;\n\n /**\n * Select linear mode\n */\n @Prop() linear: boolean = false;\n\n /**\n * Activate navigation click\n */\n @Prop() clickable: boolean = false;\n\n /**\n * Activate navigation click\n */\n @Prop() selectedIndex: number = 0;\n\n /**\n * On step selected event\n */\n @Event() stepSelected: EventEmitter<number>;\n\n private getSteps() {\n return Array.from(this.hostElement.querySelectorAll('ix-workflow-step'));\n }\n\n private deselectAll() {\n const steps = this.getSteps();\n steps.forEach((element) => {\n element.setAttribute('selected', 'false');\n });\n }\n\n componentDidRender() {\n const steps = this.getSteps();\n\n steps.forEach((element, index) => {\n element.setAttribute(\n 'vertical',\n this.vertical === true ? 'true' : 'false'\n );\n element.setAttribute(\n 'clickable',\n this.clickable === true ? 'true' : 'false'\n );\n element.setAttribute(\n 'selected',\n this.selectedIndex === index ? 'true' : 'false'\n );\n if (index === 0) element.setAttribute('position', 'first');\n if (index === steps.length - 1) element.setAttribute('position', 'last');\n });\n }\n\n componentWillRender() {\n const steps = this.getSteps();\n steps.forEach((element, index) => {\n element.addEventListener('click', () => {\n if (!this.clickable) return;\n const previousElement = steps[index - 1];\n if (\n this.linear &&\n previousElement &&\n !['done', 'success'].includes(previousElement?.status)\n ) {\n return element.setAttribute('selected', 'false');\n }\n this.deselectAll();\n element.setAttribute('selected', 'true');\n this.stepSelected.emit(index);\n });\n // const isEnabled = element.getAttribute('first');\n // if(isEnabled){\n\n // }\n // console.log(isEnabled)\n // const isDisabled = element.getAttribute('disabled') !== null;\n // if (!isDisabled) element.addEventListener('click', () => '');\n //element.addEventListener('mousedown', event => this.clicked(element, index));\n });\n }\n\n render() {\n return (\n <Host>\n <div class={{ steps: true, vertical: this.vertical }}>\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}