@limetech/lime-elements 36.0.0-next.3 → 36.0.0-next.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/dist/cjs/{dateFormatter-05d80b12.js → dateFormatter-d7a8d40d.js} +1 -1
  2. package/dist/cjs/lime-elements.cjs.js +1 -1
  3. package/dist/cjs/limel-button.cjs.entry.js +32 -16
  4. package/dist/cjs/limel-chip-set.cjs.entry.js +19 -11
  5. package/dist/cjs/limel-code-editor.cjs.entry.js +1596 -2
  6. package/dist/cjs/limel-collapsible-section.cjs.entry.js +1 -1
  7. package/dist/cjs/{limel-color-picker-palette_2.cjs.entry.js → limel-color-picker-palette.cjs.entry.js} +0 -112
  8. package/dist/cjs/limel-date-picker.cjs.entry.js +3 -3
  9. package/dist/cjs/limel-dock-button.cjs.entry.js +105 -0
  10. package/dist/cjs/limel-dock.cjs.entry.js +104 -0
  11. package/dist/cjs/limel-flatpickr-adapter.cjs.entry.js +2 -2
  12. package/dist/cjs/limel-form.cjs.entry.js +1 -1
  13. package/dist/cjs/limel-input-field.cjs.entry.js +13 -6
  14. package/dist/cjs/{limel-list_3.cjs.entry.js → limel-list_2.cjs.entry.js} +0 -2018
  15. package/dist/cjs/limel-popover_4.cjs.entry.js +239 -0
  16. package/dist/cjs/limel-portal.cjs.entry.js +2024 -0
  17. package/dist/cjs/limel-progress-flow-item.cjs.entry.js +1 -1
  18. package/dist/cjs/limel-select.cjs.entry.js +4 -5
  19. package/dist/cjs/limel-table.cjs.entry.js +16 -4
  20. package/dist/cjs/loader.cjs.js +1 -1
  21. package/dist/cjs/{moment-5cfac5cd.js → moment-d1e35cdc.js} +2 -2
  22. package/dist/collection/collection-manifest.json +2 -0
  23. package/dist/collection/components/button/button.css +44 -4
  24. package/dist/collection/components/button/button.js +56 -20
  25. package/dist/collection/components/chip-set/chip-set.css +6 -2
  26. package/dist/collection/components/chip-set/chip-set.js +21 -13
  27. package/dist/collection/components/code-editor/code-editor.css +153 -1
  28. package/dist/collection/components/code-editor/code-editor.js +90 -2
  29. package/dist/collection/components/collapsible-section/collapsible-section.css +8 -7
  30. package/dist/collection/components/date-picker/date-picker.js +18 -1
  31. package/dist/collection/components/dock/dock-button/dock-button.css +77 -0
  32. package/dist/collection/components/dock/dock-button/dock-button.js +224 -0
  33. package/dist/collection/components/dock/dock.css +111 -0
  34. package/dist/collection/components/dock/dock.js +300 -0
  35. package/dist/collection/components/dock/dock.types.js +1 -0
  36. package/dist/collection/components/input-field/input-field.js +32 -7
  37. package/dist/collection/components/popover-surface/popover-surface.css +5 -4
  38. package/dist/collection/components/progress-flow/progress-flow-item/progress-flow-item.css +14 -5
  39. package/dist/collection/components/select/select.css +10 -11
  40. package/dist/collection/components/select/select.template.js +3 -4
  41. package/dist/collection/components/table/columns.js +1 -0
  42. package/dist/collection/components/table/layout.js +8 -0
  43. package/dist/collection/components/table/table.css +89 -61
  44. package/dist/collection/components/table/table.js +45 -14
  45. package/dist/collection/style/internal/codemirror-tooltip.scss +19 -0
  46. package/dist/collection/style/mixins.scss +11 -0
  47. package/dist/esm/{dateFormatter-2cad0292.js → dateFormatter-784c3334.js} +1 -1
  48. package/dist/esm/lime-elements.js +1 -1
  49. package/dist/esm/limel-button.entry.js +33 -17
  50. package/dist/esm/limel-chip-set.entry.js +19 -11
  51. package/dist/esm/limel-code-editor.entry.js +1596 -2
  52. package/dist/esm/limel-collapsible-section.entry.js +1 -1
  53. package/dist/esm/{limel-color-picker-palette_2.entry.js → limel-color-picker-palette.entry.js} +2 -113
  54. package/dist/esm/limel-date-picker.entry.js +3 -3
  55. package/dist/esm/limel-dock-button.entry.js +101 -0
  56. package/dist/esm/limel-dock.entry.js +100 -0
  57. package/dist/esm/limel-flatpickr-adapter.entry.js +2 -2
  58. package/dist/esm/limel-form.entry.js +1 -1
  59. package/dist/esm/limel-input-field.entry.js +13 -6
  60. package/dist/esm/{limel-list_3.entry.js → limel-list_2.entry.js} +1 -2018
  61. package/dist/esm/limel-popover_4.entry.js +232 -0
  62. package/dist/esm/limel-portal.entry.js +2020 -0
  63. package/dist/esm/limel-progress-flow-item.entry.js +1 -1
  64. package/dist/esm/limel-select.entry.js +4 -5
  65. package/dist/esm/limel-table.entry.js +17 -5
  66. package/dist/esm/loader.js +1 -1
  67. package/dist/esm/{moment-367e51c5.js → moment-faa8a4a8.js} +2 -2
  68. package/dist/lime-elements/lime-elements.css +1 -1
  69. package/dist/lime-elements/lime-elements.esm.js +1 -1
  70. package/dist/lime-elements/p-009de50e.entry.js +1 -0
  71. package/dist/lime-elements/{p-7e571ec6.entry.js → p-0ba0c38a.entry.js} +1 -1
  72. package/dist/lime-elements/p-0e87d44d.entry.js +1 -0
  73. package/dist/lime-elements/p-1390fdcb.entry.js +126 -0
  74. package/dist/lime-elements/{p-08251941.entry.js → p-19f72dab.entry.js} +1 -1
  75. package/dist/lime-elements/p-3cf4aae0.entry.js +1 -0
  76. package/dist/lime-elements/p-5ef52589.entry.js +1 -0
  77. package/dist/lime-elements/p-63a57d32.entry.js +1 -0
  78. package/dist/lime-elements/p-653faf47.entry.js +1 -0
  79. package/dist/lime-elements/{p-d76f896d.js → p-73df4d83.js} +1 -1
  80. package/dist/lime-elements/p-93cd2268.entry.js +1 -0
  81. package/dist/lime-elements/p-93f42a32.entry.js +1 -0
  82. package/dist/lime-elements/p-945afca2.js +3 -0
  83. package/dist/lime-elements/p-b0e54dc2.entry.js +1 -0
  84. package/dist/lime-elements/{p-af0ec482.entry.js → p-c544c05b.entry.js} +1 -1
  85. package/dist/lime-elements/p-c89f2b52.entry.js +1 -0
  86. package/dist/lime-elements/p-cb8db8c2.entry.js +37 -0
  87. package/dist/lime-elements/p-f41567a1.entry.js +1 -0
  88. package/dist/lime-elements/p-f5df4d4f.entry.js +1 -0
  89. package/dist/lime-elements/style/internal/codemirror-tooltip.scss +19 -0
  90. package/dist/lime-elements/style/mixins.scss +11 -0
  91. package/dist/types/components/button/button.d.ts +10 -3
  92. package/dist/types/components/chip-set/chip-set.d.ts +3 -2
  93. package/dist/types/components/code-editor/code-editor.d.ts +14 -0
  94. package/dist/types/components/date-picker/date-picker.d.ts +4 -0
  95. package/dist/types/components/dock/dock-button/dock-button.d.ts +52 -0
  96. package/dist/types/components/dock/dock.d.ts +83 -0
  97. package/dist/types/components/dock/dock.types.d.ts +53 -0
  98. package/dist/types/components/input-field/input-field.d.ts +6 -0
  99. package/dist/types/components/table/layout.d.ts +2 -0
  100. package/dist/types/components/table/table.d.ts +16 -1
  101. package/dist/types/components/table/table.types.d.ts +4 -0
  102. package/dist/types/components.d.ts +176 -0
  103. package/dist/types/interface.d.ts +1 -0
  104. package/package.json +5 -4
  105. package/dist/cjs/limel-popover-surface.cjs.entry.js +0 -32
  106. package/dist/cjs/limel-tooltip_2.cjs.entry.js +0 -102
  107. package/dist/esm/limel-popover-surface.entry.js +0 -28
  108. package/dist/esm/limel-tooltip_2.entry.js +0 -97
  109. package/dist/lime-elements/p-1e59114e.entry.js +0 -1
  110. package/dist/lime-elements/p-22569fb6.entry.js +0 -1
  111. package/dist/lime-elements/p-3af5f9ad.js +0 -3
  112. package/dist/lime-elements/p-404e1465.entry.js +0 -1
  113. package/dist/lime-elements/p-5ad60e14.entry.js +0 -126
  114. package/dist/lime-elements/p-6966b5df.entry.js +0 -1
  115. package/dist/lime-elements/p-705334c1.entry.js +0 -1
  116. package/dist/lime-elements/p-75152d89.entry.js +0 -1
  117. package/dist/lime-elements/p-7ee4b825.entry.js +0 -1
  118. package/dist/lime-elements/p-87453b45.entry.js +0 -1
  119. package/dist/lime-elements/p-97d6c4a6.entry.js +0 -1
  120. package/dist/lime-elements/p-b95e80c9.entry.js +0 -1
  121. package/dist/lime-elements/p-d1ee4501.entry.js +0 -37
@@ -10,6 +10,7 @@ import { Action as Action1, Chip, ClosingActions, DateType, DialogHeading, FileI
10
10
  import { CircularProgressSize } from "./components/circular-progress/circular-progress.types";
11
11
  import { ColorScheme, Language } from "./components/code-editor/code-editor.types";
12
12
  import { Action } from "./components/collapsible-section/action";
13
+ import { DockItem } from "./components/dock/dock.types";
13
14
  import { FormError, ValidationError, ValidationStatus } from "./components/form/form.types";
14
15
  import { IconSize } from "./components/icon/icon.types";
15
16
  import { InputType } from "./components/input-field/input-field.types";
@@ -18,6 +19,7 @@ import { OpenDirection as OpenDirection1 } from "./components/menu/menu.types";
18
19
  import { FlowItem } from "./components/progress-flow/progress-flow.types";
19
20
  import { Tab } from "./components/tab-bar/tab.types";
20
21
  import { Column, ColumnAggregate, ColumnSorter, TableParams } from "./components/table/table.types";
22
+ import { Layout } from "./components/table/layout";
21
23
  export namespace Components {
22
24
  interface LimelBadge {
23
25
  /**
@@ -60,6 +62,10 @@ export namespace Components {
60
62
  * Set to `true` to put the button in the `loading` state. Please note that this does _not_ disable the button. If the button should be disabled while loading, the `disabled` property should be set to `true` as well.
61
63
  */
62
64
  "loading": boolean;
65
+ /**
66
+ * Set to `true` to indicate failure instead of success when the button is no longer in the `loading` state.
67
+ */
68
+ "loadingFailed": boolean;
63
69
  /**
64
70
  * Set to `true` to make the button outlined.
65
71
  */
@@ -214,6 +220,10 @@ export namespace Components {
214
220
  * Select color scheme for the editor
215
221
  */
216
222
  "colorScheme": ColorScheme;
223
+ /**
224
+ * Allows the user to fold code
225
+ */
226
+ "fold": boolean;
217
227
  /**
218
228
  * The language of the code
219
229
  */
@@ -222,6 +232,10 @@ export namespace Components {
222
232
  * Displays line numbers in the editor
223
233
  */
224
234
  "lineNumbers": boolean;
235
+ /**
236
+ * Enables linting of JSON content
237
+ */
238
+ "lint": boolean;
225
239
  /**
226
240
  * Disables editing of the editor content
227
241
  */
@@ -320,6 +334,10 @@ export namespace Components {
320
334
  * Defines the localisation for translations and date formatting. Property `format` customizes the localized date format.
321
335
  */
322
336
  "language": Languages;
337
+ /**
338
+ * The placeholder text shown inside the input field, when the field is focused and empty
339
+ */
340
+ "placeholder": string;
323
341
  /**
324
342
  * Set to `true` to make the field read-only. Use `readonly` when the field is only there to present the data it holds, and will not become possible for the current user to edit.
325
343
  */
@@ -355,6 +373,46 @@ export namespace Components {
355
373
  */
356
374
  "open": boolean;
357
375
  }
376
+ interface LimelDock {
377
+ /**
378
+ * A label used to describe the purpose of the navigation element to users of assistive technologies, like screen readers. Especially useful when there are multiple navigation elements in the user interface. Example value: "Primary navigation"
379
+ */
380
+ "accessibleLabel"?: string;
381
+ /**
382
+ * Set to `false` if you do not want to allow end-users to exapnd or shrink the Dock. This will hide the expand/shrink button, and the only things that defines the layout will be the `expanded` property, and the `mobileBreakPoint`.
383
+ */
384
+ "allowResize"?: boolean;
385
+ /**
386
+ * Items that are placed at the bottom of the dock. (Or at the end in mobile layout.)
387
+ */
388
+ "dockFooterItems"?: DockItem[];
389
+ /**
390
+ * Items that are placed in the dock.
391
+ */
392
+ "dockItems": DockItem[];
393
+ /**
394
+ * Defines the width of the component, when it loads. - `true`: shows both icons and labels of the Dock items. - `false`: only shows icons of the doc items, and displays their labels as tooltip. Note: when `useMobileLayout` is `true`, labels will always be shown as tooltips. Read more below…
395
+ */
396
+ "expanded"?: boolean;
397
+ /**
398
+ * Defines the breakpoint in pixles, at which the component will be rendered in a hoizontal layout. Default breakpoint is `700` pixels, which means when the screen size is smaller than `700px`, the component will automatically switch to a horizontal layout.
399
+ */
400
+ "mobileBreakPoint"?: number;
401
+ }
402
+ interface LimelDockButton {
403
+ /**
404
+ * When the dock is expanded or collapsed, dock items show labels and tooltips as suitable for the layout.
405
+ */
406
+ "expanded"?: boolean;
407
+ /**
408
+ * Item that is placed in the dock.
409
+ */
410
+ "item": DockItem;
411
+ /**
412
+ * When dock is using mobile layout, dock items show labels and tooltips as suitable for the layout.
413
+ */
414
+ "useMobileLayout"?: boolean;
415
+ }
358
416
  interface LimelFile {
359
417
  /**
360
418
  * The [accepted file types](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#unique_file_type_specifiers)
@@ -559,6 +617,10 @@ export namespace Components {
559
617
  * Regular expression that the current value of the input field must match. No forward slashes should be specified around the pattern. Only used if type is `text`, `tel`, `email`, `url`, `urlAsText`, `password`, or `search`.
560
618
  */
561
619
  "pattern": string;
620
+ /**
621
+ * The placeholder text shown inside the input field, when the field is focused and empty.
622
+ */
623
+ "placeholder": string;
562
624
  /**
563
625
  * A short piece of text to display before the value inside the input field. Displayed for all types except `textarea`.
564
626
  */
@@ -997,6 +1059,10 @@ export namespace Components {
997
1059
  * A message to display when the table has no data
998
1060
  */
999
1061
  "emptyMessage": string;
1062
+ /**
1063
+ * Defines the layout of the table, based on how width of the columns are calculated. - `default`: makes columns as wide as their contents. - `stretchLastColumn`: makes columns as wide as their contents, stretch the last column to fill up the remaining table width. - `stretchColumns`: stretches all columns to fill the available width when possible. - `lowDensity`: makes columns as wide as their contents, and creates a low density and airy layout.
1064
+ */
1065
+ "layout": Layout;
1000
1066
  /**
1001
1067
  * Set to `true` to trigger loading animation
1002
1068
  */
@@ -1152,6 +1218,18 @@ declare global {
1152
1218
  prototype: HTMLLimelDialogElement;
1153
1219
  new (): HTMLLimelDialogElement;
1154
1220
  };
1221
+ interface HTMLLimelDockElement extends Components.LimelDock, HTMLStencilElement {
1222
+ }
1223
+ var HTMLLimelDockElement: {
1224
+ prototype: HTMLLimelDockElement;
1225
+ new (): HTMLLimelDockElement;
1226
+ };
1227
+ interface HTMLLimelDockButtonElement extends Components.LimelDockButton, HTMLStencilElement {
1228
+ }
1229
+ var HTMLLimelDockButtonElement: {
1230
+ prototype: HTMLLimelDockButtonElement;
1231
+ new (): HTMLLimelDockButtonElement;
1232
+ };
1155
1233
  interface HTMLLimelFileElement extends Components.LimelFile, HTMLStencilElement {
1156
1234
  }
1157
1235
  var HTMLLimelFileElement: {
@@ -1347,6 +1425,8 @@ declare global {
1347
1425
  "limel-config": HTMLLimelConfigElement;
1348
1426
  "limel-date-picker": HTMLLimelDatePickerElement;
1349
1427
  "limel-dialog": HTMLLimelDialogElement;
1428
+ "limel-dock": HTMLLimelDockElement;
1429
+ "limel-dock-button": HTMLLimelDockButtonElement;
1350
1430
  "limel-file": HTMLLimelFileElement;
1351
1431
  "limel-flatpickr-adapter": HTMLLimelFlatpickrAdapterElement;
1352
1432
  "limel-flex-container": HTMLLimelFlexContainerElement;
@@ -1413,6 +1493,10 @@ declare namespace LocalJSX {
1413
1493
  * Set to `true` to put the button in the `loading` state. Please note that this does _not_ disable the button. If the button should be disabled while loading, the `disabled` property should be set to `true` as well.
1414
1494
  */
1415
1495
  "loading"?: boolean;
1496
+ /**
1497
+ * Set to `true` to indicate failure instead of success when the button is no longer in the `loading` state.
1498
+ */
1499
+ "loadingFailed"?: boolean;
1416
1500
  /**
1417
1501
  * Set to `true` to make the button outlined.
1418
1502
  */
@@ -1579,6 +1663,10 @@ declare namespace LocalJSX {
1579
1663
  * Select color scheme for the editor
1580
1664
  */
1581
1665
  "colorScheme"?: ColorScheme;
1666
+ /**
1667
+ * Allows the user to fold code
1668
+ */
1669
+ "fold"?: boolean;
1582
1670
  /**
1583
1671
  * The language of the code
1584
1672
  */
@@ -1587,6 +1675,10 @@ declare namespace LocalJSX {
1587
1675
  * Displays line numbers in the editor
1588
1676
  */
1589
1677
  "lineNumbers"?: boolean;
1678
+ /**
1679
+ * Enables linting of JSON content
1680
+ */
1681
+ "lint"?: boolean;
1590
1682
  /**
1591
1683
  * Emitted when the code has changed. Will only be emitted when the code area has lost focus
1592
1684
  */
@@ -1713,6 +1805,10 @@ declare namespace LocalJSX {
1713
1805
  * Emitted when the date picker value is changed.
1714
1806
  */
1715
1807
  "onChange"?: (event: CustomEvent<Date>) => void;
1808
+ /**
1809
+ * The placeholder text shown inside the input field, when the field is focused and empty
1810
+ */
1811
+ "placeholder"?: string;
1716
1812
  /**
1717
1813
  * Set to `true` to make the field read-only. Use `readonly` when the field is only there to present the data it holds, and will not become possible for the current user to edit.
1718
1814
  */
@@ -1756,6 +1852,74 @@ declare namespace LocalJSX {
1756
1852
  */
1757
1853
  "open"?: boolean;
1758
1854
  }
1855
+ interface LimelDock {
1856
+ /**
1857
+ * A label used to describe the purpose of the navigation element to users of assistive technologies, like screen readers. Especially useful when there are multiple navigation elements in the user interface. Example value: "Primary navigation"
1858
+ */
1859
+ "accessibleLabel"?: string;
1860
+ /**
1861
+ * Set to `false` if you do not want to allow end-users to exapnd or shrink the Dock. This will hide the expand/shrink button, and the only things that defines the layout will be the `expanded` property, and the `mobileBreakPoint`.
1862
+ */
1863
+ "allowResize"?: boolean;
1864
+ /**
1865
+ * Items that are placed at the bottom of the dock. (Or at the end in mobile layout.)
1866
+ */
1867
+ "dockFooterItems"?: DockItem[];
1868
+ /**
1869
+ * Items that are placed in the dock.
1870
+ */
1871
+ "dockItems"?: DockItem[];
1872
+ /**
1873
+ * Defines the width of the component, when it loads. - `true`: shows both icons and labels of the Dock items. - `false`: only shows icons of the doc items, and displays their labels as tooltip. Note: when `useMobileLayout` is `true`, labels will always be shown as tooltips. Read more below…
1874
+ */
1875
+ "expanded"?: boolean;
1876
+ /**
1877
+ * Defines the breakpoint in pixles, at which the component will be rendered in a hoizontal layout. Default breakpoint is `700` pixels, which means when the screen size is smaller than `700px`, the component will automatically switch to a horizontal layout.
1878
+ */
1879
+ "mobileBreakPoint"?: number;
1880
+ /**
1881
+ * Fired when the popover is closed.
1882
+ */
1883
+ "onClose"?: (event: CustomEvent<void>) => void;
1884
+ /**
1885
+ * Fired when a Dock is expanded or collapsed.
1886
+ */
1887
+ "onDockExpanded"?: (event: CustomEvent<boolean>) => void;
1888
+ /**
1889
+ * Fired when a dock item has been selected from the dock.
1890
+ */
1891
+ "onItemSelected"?: (event: CustomEvent<DockItem>) => void;
1892
+ /**
1893
+ * Fired when a dock menu is opened.
1894
+ */
1895
+ "onMenuOpen"?: (event: CustomEvent<DockItem>) => void;
1896
+ }
1897
+ interface LimelDockButton {
1898
+ /**
1899
+ * When the dock is expanded or collapsed, dock items show labels and tooltips as suitable for the layout.
1900
+ */
1901
+ "expanded"?: boolean;
1902
+ /**
1903
+ * Item that is placed in the dock.
1904
+ */
1905
+ "item": DockItem;
1906
+ /**
1907
+ * Fired when the popover is closed.
1908
+ */
1909
+ "onClose"?: (event: CustomEvent<void>) => void;
1910
+ /**
1911
+ * Fired when a dock item has been selected from the dock.
1912
+ */
1913
+ "onItemSelected"?: (event: CustomEvent<DockItem>) => void;
1914
+ /**
1915
+ * Fired when a dock menu is opened.
1916
+ */
1917
+ "onMenuOpen"?: (event: CustomEvent<DockItem>) => void;
1918
+ /**
1919
+ * When dock is using mobile layout, dock items show labels and tooltips as suitable for the layout.
1920
+ */
1921
+ "useMobileLayout"?: boolean;
1922
+ }
1759
1923
  interface LimelFile {
1760
1924
  /**
1761
1925
  * The [accepted file types](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#unique_file_type_specifiers)
@@ -1988,6 +2152,10 @@ declare namespace LocalJSX {
1988
2152
  * Regular expression that the current value of the input field must match. No forward slashes should be specified around the pattern. Only used if type is `text`, `tel`, `email`, `url`, `urlAsText`, `password`, or `search`.
1989
2153
  */
1990
2154
  "pattern"?: string;
2155
+ /**
2156
+ * The placeholder text shown inside the input field, when the field is focused and empty.
2157
+ */
2158
+ "placeholder"?: string;
1991
2159
  /**
1992
2160
  * A short piece of text to display before the value inside the input field. Displayed for all types except `textarea`.
1993
2161
  */
@@ -2502,6 +2670,10 @@ declare namespace LocalJSX {
2502
2670
  * A message to display when the table has no data
2503
2671
  */
2504
2672
  "emptyMessage"?: string;
2673
+ /**
2674
+ * Defines the layout of the table, based on how width of the columns are calculated. - `default`: makes columns as wide as their contents. - `stretchLastColumn`: makes columns as wide as their contents, stretch the last column to fill up the remaining table width. - `stretchColumns`: stretches all columns to fill the available width when possible. - `lowDensity`: makes columns as wide as their contents, and creates a low density and airy layout.
2675
+ */
2676
+ "layout"?: Layout;
2505
2677
  /**
2506
2678
  * Set to `true` to trigger loading animation
2507
2679
  */
@@ -2614,6 +2786,8 @@ declare namespace LocalJSX {
2614
2786
  "limel-config": LimelConfig;
2615
2787
  "limel-date-picker": LimelDatePicker;
2616
2788
  "limel-dialog": LimelDialog;
2789
+ "limel-dock": LimelDock;
2790
+ "limel-dock-button": LimelDockButton;
2617
2791
  "limel-file": LimelFile;
2618
2792
  "limel-flatpickr-adapter": LimelFlatpickrAdapter;
2619
2793
  "limel-flex-container": LimelFlexContainer;
@@ -2664,6 +2838,8 @@ declare module "@stencil/core" {
2664
2838
  "limel-config": LocalJSX.LimelConfig & JSXBase.HTMLAttributes<HTMLLimelConfigElement>;
2665
2839
  "limel-date-picker": LocalJSX.LimelDatePicker & JSXBase.HTMLAttributes<HTMLLimelDatePickerElement>;
2666
2840
  "limel-dialog": LocalJSX.LimelDialog & JSXBase.HTMLAttributes<HTMLLimelDialogElement>;
2841
+ "limel-dock": LocalJSX.LimelDock & JSXBase.HTMLAttributes<HTMLLimelDockElement>;
2842
+ "limel-dock-button": LocalJSX.LimelDockButton & JSXBase.HTMLAttributes<HTMLLimelDockButtonElement>;
2667
2843
  "limel-file": LocalJSX.LimelFile & JSXBase.HTMLAttributes<HTMLLimelFileElement>;
2668
2844
  "limel-flatpickr-adapter": LocalJSX.LimelFlatpickrAdapter & JSXBase.HTMLAttributes<HTMLLimelFlatpickrAdapterElement>;
2669
2845
  "limel-flex-container": LocalJSX.LimelFlexContainer & JSXBase.HTMLAttributes<HTMLLimelFlexContainerElement>;
@@ -20,3 +20,4 @@ export * from './components/spinner/spinner.types';
20
20
  export * from './components/tab-bar/tab.types';
21
21
  export * from './components/tab-panel/tab-panel.types';
22
22
  export * from './components/table/table.types';
23
+ export * from './components/dock/dock.types';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@limetech/lime-elements",
3
- "version": "36.0.0-next.3",
3
+ "version": "36.0.0-next.30",
4
4
  "description": "Lime Elements",
5
5
  "author": "Lime Technologies",
6
6
  "license": "Apache-2.0",
@@ -41,7 +41,7 @@
41
41
  },
42
42
  "devDependencies": {
43
43
  "@commitlint/config-conventional": "^16.0.0",
44
- "@lundalogik/lime-icons8": "^2.9.0",
44
+ "@lundalogik/lime-icons8": "^2.11.0",
45
45
  "@popperjs/core": "^2.11.5",
46
46
  "@rjsf/core": "^2.4.2",
47
47
  "@stencil/core": "^2.15.1",
@@ -72,11 +72,12 @@
72
72
  "html-escaper": "^3.0.3",
73
73
  "jest": "^26.6.3",
74
74
  "jest-cli": "^28.0.2",
75
+ "jsonlint-mod": "^1.7.6",
75
76
  "jsx-dom": "^7.0.4",
76
- "kompendium": "^0.11.1",
77
+ "kompendium": "^0.11.3",
77
78
  "lodash-es": "^4.17.21",
78
79
  "material-components-web": "^13.0.0",
79
- "moment": "^2.29.3",
80
+ "moment": "^2.29.4",
80
81
  "number-abbreviate": "^2.0.0",
81
82
  "prettier": "^2.6.2",
82
83
  "puppeteer": "^13.7.0",
@@ -1,32 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- const index = require('./index-2a28697b.js');
6
-
7
- const popoverSurfaceCss = ".limel-popover-surface{position:relative;display:flex;flex-direction:column;width:var(--popover-surface-width, auto);max-height:calc(100vh - 2rem);max-width:calc(100vw - 2rem);margin:0 0.25rem;border-radius:var(--popover-border-radius, 0.75rem);box-shadow:var(--shadow-depth-16);backdrop-filter:blur(0.3125rem);-webkit-backdrop-filter:blur(0.3125rem)}.limel-popover-surface:after{transition:opacity 0.4s ease;pointer-events:none;content:\"\";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;opacity:0.75;border-radius:var(--popover-border-radius, 0.75rem);background-color:var(--popover-body-background-color, rgb(var(--contrast-100)))}.limel-popover-surface:focus,.limel-popover-surface:focus-within{outline:none}.limel-popover-surface:focus:after,.limel-popover-surface:focus-within:after{opacity:1}.limel-popover-surface:focus-visible{box-shadow:var(--shadow-depth-16-focused)}";
8
-
9
- const PopoverSurface = class {
10
- constructor(hostRef) {
11
- index.registerInstance(this, hostRef);
12
- }
13
- componentDidLoad() {
14
- this.appendElement();
15
- }
16
- render() {
17
- return index.h("div", { class: "limel-popover-surface", tabindex: "0" });
18
- }
19
- appendElement() {
20
- const portalContainer = this.host.shadowRoot.querySelector('.limel-popover-surface');
21
- Array.from(this.contentCollection).forEach((child) => {
22
- if (child.slot === 'trigger') {
23
- return;
24
- }
25
- portalContainer.appendChild(child);
26
- });
27
- }
28
- get host() { return index.getElement(this); }
29
- };
30
- PopoverSurface.style = popoverSurfaceCss;
31
-
32
- exports.limel_popover_surface = PopoverSurface;
@@ -1,102 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- const index = require('./index-2a28697b.js');
6
- const randomString = require('./random-string-4c3b7f1c.js');
7
-
8
- const tooltipCss = ".trigger-anchor{position:relative}";
9
-
10
- const DEFAULT_MAX_LENGTH = 50;
11
- const Tooltip = class {
12
- constructor(hostRef) {
13
- index.registerInstance(this, hostRef);
14
- /**
15
- * The maximum amount of characters before rendering 'label' and
16
- * 'helperLabel' in two rows.
17
- */
18
- this.maxlength = DEFAULT_MAX_LENGTH;
19
- this.showTooltip = () => {
20
- const tooltipDelay = 500;
21
- this.showTooltipTimeoutHandle = window.setTimeout(() => {
22
- this.open = true;
23
- }, tooltipDelay);
24
- };
25
- this.hideTooltip = () => {
26
- clearTimeout(this.showTooltipTimeoutHandle);
27
- this.open = false;
28
- };
29
- this.portalId = randomString.createRandomString();
30
- this.tooltipId = randomString.createRandomString();
31
- }
32
- connectedCallback() {
33
- this.setOwnerAriaLabel();
34
- this.addListeners();
35
- }
36
- disconnectedCallback() {
37
- this.removeListeners();
38
- }
39
- render() {
40
- const tooltipZIndex = getComputedStyle(this.host).getPropertyValue('--tooltip-z-index');
41
- return (index.h("div", { class: "trigger-anchor" }, index.h("limel-portal", { openDirection: "bottom-start", visible: this.open, containerId: this.portalId, containerStyle: {
42
- 'z-index': tooltipZIndex,
43
- 'pointer-events': 'none',
44
- } }, index.h("limel-tooltip-content", { label: this.label, helperLabel: this.helperLabel, maxlength: this.maxlength, role: "tooltip", "aria-hidden": !this.open, id: this.tooltipId }))));
45
- }
46
- setOwnerAriaLabel() {
47
- const owner = this.getOwnerElement();
48
- owner === null || owner === void 0 ? void 0 : owner.setAttribute('aria-describedby', this.tooltipId);
49
- }
50
- addListeners() {
51
- const owner = this.getOwnerElement();
52
- owner === null || owner === void 0 ? void 0 : owner.addEventListener('mouseover', this.showTooltip);
53
- owner === null || owner === void 0 ? void 0 : owner.addEventListener('mouseout', this.hideTooltip);
54
- owner === null || owner === void 0 ? void 0 : owner.addEventListener('click', this.hideTooltip);
55
- }
56
- removeListeners() {
57
- const owner = this.getOwnerElement();
58
- owner === null || owner === void 0 ? void 0 : owner.removeEventListener('mouseover', this.showTooltip);
59
- owner === null || owner === void 0 ? void 0 : owner.removeEventListener('mouseout', this.hideTooltip);
60
- owner === null || owner === void 0 ? void 0 : owner.removeEventListener('click', this.hideTooltip);
61
- }
62
- getOwnerElement() {
63
- var _a;
64
- let element = this.host;
65
- do {
66
- element = element.parentNode;
67
- } while (element &&
68
- element.nodeType !== Node.DOCUMENT_FRAGMENT_NODE &&
69
- element.nodeType !== Node.DOCUMENT_NODE);
70
- return (_a = element) === null || _a === void 0 ? void 0 : _a.getElementById(this.elementId);
71
- }
72
- get host() { return index.getElement(this); }
73
- };
74
- Tooltip.style = tooltipCss;
75
-
76
- const tooltipContentCss = ":host{animation:display-tooltip 0.2s ease;display:flex;border-radius:0.25rem;padding:0.25rem 0.5rem;background-color:rgb(var(--contrast-1300));box-shadow:var(--shadow-depth-16)}text{font-size:0.875rem;line-height:1.25;display:flex;column-gap:1rem}text.has-column-layout{display:table-cell;width:fit-content;max-width:min(var(--tooltip-max-width-of-text), 80vw)}text.has-column-layout .label{padding-bottom:0.5rem}text.has-column-layout .helper-label{padding-bottom:0.25rem}.label{color:rgb(var(--contrast-200))}.helper-label{color:rgb(var(--contrast-800))}.helper-label:empty{display:none}@keyframes display-tooltip{0%{opacity:0;transform:translate3d(0, 0, 0) scale(0.94)}100%{opacity:1;transform:translate3d(0, 0, 0) scale(1)}}";
77
-
78
- const TooltipContent = class {
79
- constructor(hostRef) {
80
- index.registerInstance(this, hostRef);
81
- }
82
- render() {
83
- let isLabelsTextLong = false;
84
- if (this.helperLabel && this.maxlength) {
85
- isLabelsTextLong =
86
- this.label.length + this.helperLabel.length > this.maxlength;
87
- }
88
- const props = {};
89
- if (this.maxlength) {
90
- props.style = {
91
- '--tooltip-max-width-of-text': `${this.maxlength}` + 'ch',
92
- };
93
- }
94
- return [
95
- index.h("text", Object.assign({ class: { 'has-column-layout': isLabelsTextLong } }, props), index.h("div", { class: "label" }, this.label), index.h("div", { class: "helper-label" }, this.helperLabel)),
96
- ];
97
- }
98
- };
99
- TooltipContent.style = tooltipContentCss;
100
-
101
- exports.limel_tooltip = Tooltip;
102
- exports.limel_tooltip_content = TooltipContent;
@@ -1,28 +0,0 @@
1
- import { r as registerInstance, h, g as getElement } from './index-11cd0b60.js';
2
-
3
- const popoverSurfaceCss = ".limel-popover-surface{position:relative;display:flex;flex-direction:column;width:var(--popover-surface-width, auto);max-height:calc(100vh - 2rem);max-width:calc(100vw - 2rem);margin:0 0.25rem;border-radius:var(--popover-border-radius, 0.75rem);box-shadow:var(--shadow-depth-16);backdrop-filter:blur(0.3125rem);-webkit-backdrop-filter:blur(0.3125rem)}.limel-popover-surface:after{transition:opacity 0.4s ease;pointer-events:none;content:\"\";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;opacity:0.75;border-radius:var(--popover-border-radius, 0.75rem);background-color:var(--popover-body-background-color, rgb(var(--contrast-100)))}.limel-popover-surface:focus,.limel-popover-surface:focus-within{outline:none}.limel-popover-surface:focus:after,.limel-popover-surface:focus-within:after{opacity:1}.limel-popover-surface:focus-visible{box-shadow:var(--shadow-depth-16-focused)}";
4
-
5
- const PopoverSurface = class {
6
- constructor(hostRef) {
7
- registerInstance(this, hostRef);
8
- }
9
- componentDidLoad() {
10
- this.appendElement();
11
- }
12
- render() {
13
- return h("div", { class: "limel-popover-surface", tabindex: "0" });
14
- }
15
- appendElement() {
16
- const portalContainer = this.host.shadowRoot.querySelector('.limel-popover-surface');
17
- Array.from(this.contentCollection).forEach((child) => {
18
- if (child.slot === 'trigger') {
19
- return;
20
- }
21
- portalContainer.appendChild(child);
22
- });
23
- }
24
- get host() { return getElement(this); }
25
- };
26
- PopoverSurface.style = popoverSurfaceCss;
27
-
28
- export { PopoverSurface as limel_popover_surface };
@@ -1,97 +0,0 @@
1
- import { r as registerInstance, h, g as getElement } from './index-11cd0b60.js';
2
- import { c as createRandomString } from './random-string-2246b81e.js';
3
-
4
- const tooltipCss = ".trigger-anchor{position:relative}";
5
-
6
- const DEFAULT_MAX_LENGTH = 50;
7
- const Tooltip = class {
8
- constructor(hostRef) {
9
- registerInstance(this, hostRef);
10
- /**
11
- * The maximum amount of characters before rendering 'label' and
12
- * 'helperLabel' in two rows.
13
- */
14
- this.maxlength = DEFAULT_MAX_LENGTH;
15
- this.showTooltip = () => {
16
- const tooltipDelay = 500;
17
- this.showTooltipTimeoutHandle = window.setTimeout(() => {
18
- this.open = true;
19
- }, tooltipDelay);
20
- };
21
- this.hideTooltip = () => {
22
- clearTimeout(this.showTooltipTimeoutHandle);
23
- this.open = false;
24
- };
25
- this.portalId = createRandomString();
26
- this.tooltipId = createRandomString();
27
- }
28
- connectedCallback() {
29
- this.setOwnerAriaLabel();
30
- this.addListeners();
31
- }
32
- disconnectedCallback() {
33
- this.removeListeners();
34
- }
35
- render() {
36
- const tooltipZIndex = getComputedStyle(this.host).getPropertyValue('--tooltip-z-index');
37
- return (h("div", { class: "trigger-anchor" }, h("limel-portal", { openDirection: "bottom-start", visible: this.open, containerId: this.portalId, containerStyle: {
38
- 'z-index': tooltipZIndex,
39
- 'pointer-events': 'none',
40
- } }, h("limel-tooltip-content", { label: this.label, helperLabel: this.helperLabel, maxlength: this.maxlength, role: "tooltip", "aria-hidden": !this.open, id: this.tooltipId }))));
41
- }
42
- setOwnerAriaLabel() {
43
- const owner = this.getOwnerElement();
44
- owner === null || owner === void 0 ? void 0 : owner.setAttribute('aria-describedby', this.tooltipId);
45
- }
46
- addListeners() {
47
- const owner = this.getOwnerElement();
48
- owner === null || owner === void 0 ? void 0 : owner.addEventListener('mouseover', this.showTooltip);
49
- owner === null || owner === void 0 ? void 0 : owner.addEventListener('mouseout', this.hideTooltip);
50
- owner === null || owner === void 0 ? void 0 : owner.addEventListener('click', this.hideTooltip);
51
- }
52
- removeListeners() {
53
- const owner = this.getOwnerElement();
54
- owner === null || owner === void 0 ? void 0 : owner.removeEventListener('mouseover', this.showTooltip);
55
- owner === null || owner === void 0 ? void 0 : owner.removeEventListener('mouseout', this.hideTooltip);
56
- owner === null || owner === void 0 ? void 0 : owner.removeEventListener('click', this.hideTooltip);
57
- }
58
- getOwnerElement() {
59
- var _a;
60
- let element = this.host;
61
- do {
62
- element = element.parentNode;
63
- } while (element &&
64
- element.nodeType !== Node.DOCUMENT_FRAGMENT_NODE &&
65
- element.nodeType !== Node.DOCUMENT_NODE);
66
- return (_a = element) === null || _a === void 0 ? void 0 : _a.getElementById(this.elementId);
67
- }
68
- get host() { return getElement(this); }
69
- };
70
- Tooltip.style = tooltipCss;
71
-
72
- const tooltipContentCss = ":host{animation:display-tooltip 0.2s ease;display:flex;border-radius:0.25rem;padding:0.25rem 0.5rem;background-color:rgb(var(--contrast-1300));box-shadow:var(--shadow-depth-16)}text{font-size:0.875rem;line-height:1.25;display:flex;column-gap:1rem}text.has-column-layout{display:table-cell;width:fit-content;max-width:min(var(--tooltip-max-width-of-text), 80vw)}text.has-column-layout .label{padding-bottom:0.5rem}text.has-column-layout .helper-label{padding-bottom:0.25rem}.label{color:rgb(var(--contrast-200))}.helper-label{color:rgb(var(--contrast-800))}.helper-label:empty{display:none}@keyframes display-tooltip{0%{opacity:0;transform:translate3d(0, 0, 0) scale(0.94)}100%{opacity:1;transform:translate3d(0, 0, 0) scale(1)}}";
73
-
74
- const TooltipContent = class {
75
- constructor(hostRef) {
76
- registerInstance(this, hostRef);
77
- }
78
- render() {
79
- let isLabelsTextLong = false;
80
- if (this.helperLabel && this.maxlength) {
81
- isLabelsTextLong =
82
- this.label.length + this.helperLabel.length > this.maxlength;
83
- }
84
- const props = {};
85
- if (this.maxlength) {
86
- props.style = {
87
- '--tooltip-max-width-of-text': `${this.maxlength}` + 'ch',
88
- };
89
- }
90
- return [
91
- h("text", Object.assign({ class: { 'has-column-layout': isLabelsTextLong } }, props), h("div", { class: "label" }, this.label), h("div", { class: "helper-label" }, this.helperLabel)),
92
- ];
93
- }
94
- };
95
- TooltipContent.style = tooltipContentCss;
96
-
97
- export { Tooltip as limel_tooltip, TooltipContent as limel_tooltip_content };
@@ -1 +0,0 @@
1
- import{r as e,c as t,h as r,g as s}from"./p-e9a95b8f.js";const o=class{constructor(r){e(this,r),this.interact=t(this,"interact",7),this.item=null,this.disabled=!1,this.readonly=!1,this.handleClick=()=>{this.interact.emit()}}render(){var e;if(this.item)return[r("button",{tabindex:"0",title:this.getToolTipText(),type:"button",class:{step:!0,selected:null===(e=this.item)||void 0===e?void 0:e.selected,disabled:this.isDisabled(),readonly:this.readonly},onClick:this.handleClick,disabled:this.isDisabled()},this.renderIcon(),r("span",{class:"text"},this.item.text),this.renderDivider()),this.renderSecondaryText()]}isDisabled(){var e;return(null===(e=this.item)||void 0===e?void 0:e.disabled)||this.readonly||this.disabled}getToolTipText(){return this.item.secondaryText?[this.item.text,this.item.secondaryText].join(" · "):this.item.text}renderSecondaryText(){var e;if(null===(e=this.item)||void 0===e?void 0:e.secondaryText)return r("div",{class:"secondary-text"},this.item.secondaryText)}renderIcon(){if(this.item.icon)return r("limel-icon",{name:this.item.icon,size:"small",class:"icon"})}renderDivider(){if(!this.item.isOffProgress)return r("div",{class:"divider"})}get element(){return s(this)}};o.style='.flow-item{--step-background:var(\n --progress-flow-step-background-color,\n rgb(var(--contrast-600))\n );--step-background--selected:var(\n --progress-flow-step-background-color--selected,\n var(--mdc-theme-primary)\n );--step-background--passed:var(\n --progress-flow-step-background-color--passed,\n var(--step-background--selected)\n );--step-text:var(\n --progress-flow-step-text-color,\n rgb(var(--contrast-1200))\n );--step-text--selected:var(\n --progress-flow-step-text-color--selected,\n var(--mdc-theme-on-primary)\n );--step-text--passed:var(\n --progress-flow-step-text-color--passed,\n var(--step-text--selected)\n );--step-divider-color:var(\n --progress-flow-step-divider-color,\n rgb(var(--contrast-100))\n );position:relative;width:100%;display:flex;flex-direction:column;align-items:stretch}.flow-item:not(.off-progress-item,.last) .divider:after{content:""}.flow-item.off-progress-item{padding-left:0.5rem}.flow-item.first-off-progress-item{padding-left:1rem}.step{transition:background-color 0.2s ease, box-shadow 0.2s ease;display:flex;justify-content:center;align-items:center;position:relative;width:100%;height:var(--step-height);border:none;font-size:0.875rem}.step.disabled{opacity:0.75;cursor:not-allowed}.step.disabled.readonly{opacity:1;cursor:default}.step:focus{outline:none}.step:focus-visible{box-shadow:var(--shadow-depth-8-focused)}.flow-item:not(.off-progress-item,.first) .step{padding-left:calc(var(--step-height) / 2)}.flow-item:not(.selected) .step:not(.disabled){cursor:pointer}.flow-item:not(.selected) .step:not(.disabled):hover{box-shadow:var(--button-shadow-normal)}.flow-item:not(.selected) .step:not(.disabled):active{box-shadow:var(--button-shadow-pressed)}.off-progress-item .step{border-radius:0.25rem;padding:0 0.75rem}.off-progress-item .step .icon{margin-left:0}.flow-item.first .step{border-top-left-radius:var(--step-height);border-bottom-left-radius:var(--step-height);padding-left:1.25rem}.flow-item.last .step{border-top-right-radius:var(--step-height);border-bottom-right-radius:var(--step-height);padding-right:1.25rem}.divider{display:flex;align-items:center;justify-content:center;width:var(--step-height);height:var(--step-height);position:absolute;z-index:1;right:calc(var(--step-height) / 2 * -1);overflow:hidden}.divider:after{position:absolute;display:block;box-sizing:border-box;transition:background-color 0.2s ease;width:100%;height:100%;right:calc(var(--step-height) / 5);transform:rotate(45deg);border-style:solid;border-width:0.125rem 0.125rem 0 0;border-radius:0 0.5rem 0 0;border-color:var(--step-divider-color)}.flow-item.last .divider{width:0}.text,.secondary-text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:var(--max-text-width);z-index:2}.secondary-text{font-size:0.75rem;margin:auto;padding-left:calc(var(--step-height) / 2)}.icon{margin:0 0.5rem 0 0.25rem;z-index:2}.step:after{pointer-events:none;box-sizing:border-box;z-index:2;position:absolute;right:var(--selected-indicator-right);background-color:var(--step-divider-color);width:0.375rem;height:0.375rem;border-radius:50%;opacity:0.7}.last .step:after{right:0.5rem}.flow-item:not(.off-progress-item) .step.selected:after{content:""}.step{color:var(--step-text);background-color:var(--step-background)}.step .icon{color:var(--progress-flow-icon-color--inactive, var(--step-text))}.flow-item.selected .step{color:var(--step-text--selected);background-color:var(--step-background--selected)}.flow-item.selected .step .divider:after{background-color:var(--step-background--selected)}.flow-item.selected .step .icon{color:var(--step-text--selected)}.flow-item.passed .step{color:var(--step-text--passed);background-color:var(--step-background--passed)}.flow-item.passed .step .divider:after{background-color:var(--step-background--passed)}.flow-item.passed .step .icon{color:var(--step-text--passed)}.divider:after{border-color:var(--step-divider-color);background-color:var(--step-background)}';export{o as limel_progress_flow_item}