@simplybusiness/mobius 9.3.4 → 10.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (155) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/dist/cjs/components/AddressLookup/AddressLookup.js +9 -4
  3. package/dist/cjs/components/AddressLookup/AddressLookup.js.map +2 -2
  4. package/dist/cjs/components/AddressLookup/index.js +9 -4
  5. package/dist/cjs/components/AddressLookup/index.js.map +2 -2
  6. package/dist/cjs/components/Checkbox/Checkbox.js +9 -4
  7. package/dist/cjs/components/Checkbox/Checkbox.js.map +2 -2
  8. package/dist/cjs/components/Checkbox/CheckboxGroup.js +9 -4
  9. package/dist/cjs/components/Checkbox/CheckboxGroup.js.map +2 -2
  10. package/dist/cjs/components/Checkbox/index.js +9 -4
  11. package/dist/cjs/components/Checkbox/index.js.map +2 -2
  12. package/dist/cjs/components/Combobox/Combobox.js +9 -4
  13. package/dist/cjs/components/Combobox/Combobox.js.map +2 -2
  14. package/dist/cjs/components/Combobox/index.js +9 -4
  15. package/dist/cjs/components/Combobox/index.js.map +2 -2
  16. package/dist/cjs/components/DateField/DateField.js +9 -4
  17. package/dist/cjs/components/DateField/DateField.js.map +2 -2
  18. package/dist/cjs/components/DateField/index.js +9 -4
  19. package/dist/cjs/components/DateField/index.js.map +2 -2
  20. package/dist/cjs/components/ErrorMessage/ErrorMessage.js +9 -4
  21. package/dist/cjs/components/ErrorMessage/ErrorMessage.js.map +2 -2
  22. package/dist/cjs/components/ErrorMessage/index.js +9 -4
  23. package/dist/cjs/components/ErrorMessage/index.js.map +2 -2
  24. package/dist/cjs/components/ExpandableText/ExpandableText.js +9 -4
  25. package/dist/cjs/components/ExpandableText/ExpandableText.js.map +2 -2
  26. package/dist/cjs/components/ExpandableText/index.js +9 -4
  27. package/dist/cjs/components/ExpandableText/index.js.map +2 -2
  28. package/dist/cjs/components/MaskedField/MaskedField.js +9 -4
  29. package/dist/cjs/components/MaskedField/MaskedField.js.map +2 -2
  30. package/dist/cjs/components/MaskedField/index.js +9 -4
  31. package/dist/cjs/components/MaskedField/index.js.map +2 -2
  32. package/dist/cjs/components/NumberField/NumberField.js +9 -4
  33. package/dist/cjs/components/NumberField/NumberField.js.map +2 -2
  34. package/dist/cjs/components/NumberField/index.js +9 -4
  35. package/dist/cjs/components/NumberField/index.js.map +2 -2
  36. package/dist/cjs/components/PasswordField/PasswordField.js +9 -4
  37. package/dist/cjs/components/PasswordField/PasswordField.js.map +2 -2
  38. package/dist/cjs/components/PasswordField/ShowHideButton.js +9 -4
  39. package/dist/cjs/components/PasswordField/ShowHideButton.js.map +2 -2
  40. package/dist/cjs/components/PasswordField/index.js +9 -4
  41. package/dist/cjs/components/PasswordField/index.js.map +2 -2
  42. package/dist/cjs/components/Radio/Radio.js +9 -4
  43. package/dist/cjs/components/Radio/Radio.js.map +2 -2
  44. package/dist/cjs/components/Radio/RadioGroup.js +9 -4
  45. package/dist/cjs/components/Radio/RadioGroup.js.map +2 -2
  46. package/dist/cjs/components/Radio/index.js +9 -4
  47. package/dist/cjs/components/Radio/index.js.map +2 -2
  48. package/dist/cjs/components/Select/Select.js +9 -4
  49. package/dist/cjs/components/Select/Select.js.map +2 -2
  50. package/dist/cjs/components/Select/index.js +9 -4
  51. package/dist/cjs/components/Select/index.js.map +2 -2
  52. package/dist/cjs/components/TextArea/TextArea.js +9 -4
  53. package/dist/cjs/components/TextArea/TextArea.js.map +2 -2
  54. package/dist/cjs/components/TextArea/index.js +9 -4
  55. package/dist/cjs/components/TextArea/index.js.map +2 -2
  56. package/dist/cjs/components/TextField/TextField.js +9 -4
  57. package/dist/cjs/components/TextField/TextField.js.map +2 -2
  58. package/dist/cjs/components/TextField/index.js +9 -4
  59. package/dist/cjs/components/TextField/index.js.map +2 -2
  60. package/dist/cjs/components/TextOrHTML/TextOrHTML.js +8 -3
  61. package/dist/cjs/components/TextOrHTML/TextOrHTML.js.map +2 -2
  62. package/dist/cjs/components/TextOrHTML/index.js +8 -3
  63. package/dist/cjs/components/TextOrHTML/index.js.map +2 -2
  64. package/dist/cjs/components/index.js +9 -4
  65. package/dist/cjs/components/index.js.map +2 -2
  66. package/dist/cjs/index.js +9 -4
  67. package/dist/cjs/index.js.map +2 -2
  68. package/dist/cjs/meta.json +100 -100
  69. package/dist/esm/{chunk-ZU3XMAWQ.js → chunk-C4BILMFX.js} +2 -2
  70. package/dist/esm/{chunk-HHJ4Y5JQ.js → chunk-QRHDVVRK.js} +9 -4
  71. package/dist/esm/chunk-QRHDVVRK.js.map +7 -0
  72. package/dist/esm/components/AddressLookup/AddressLookup.js +2 -2
  73. package/dist/esm/components/AddressLookup/index.js +2 -2
  74. package/dist/esm/components/Checkbox/Checkbox.js +2 -2
  75. package/dist/esm/components/Checkbox/CheckboxGroup.js +2 -2
  76. package/dist/esm/components/Checkbox/index.js +2 -2
  77. package/dist/esm/components/Combobox/Combobox.js +2 -2
  78. package/dist/esm/components/Combobox/index.js +2 -2
  79. package/dist/esm/components/DateField/DateField.js +2 -2
  80. package/dist/esm/components/DateField/index.js +2 -2
  81. package/dist/esm/components/ErrorMessage/ErrorMessage.js +2 -2
  82. package/dist/esm/components/ErrorMessage/index.js +2 -2
  83. package/dist/esm/components/ExpandableText/ExpandableText.js +2 -2
  84. package/dist/esm/components/ExpandableText/index.js +2 -2
  85. package/dist/esm/components/MaskedField/MaskedField.js +2 -2
  86. package/dist/esm/components/MaskedField/index.js +2 -2
  87. package/dist/esm/components/NumberField/NumberField.js +2 -2
  88. package/dist/esm/components/NumberField/index.js +2 -2
  89. package/dist/esm/components/PasswordField/PasswordField.js +2 -2
  90. package/dist/esm/components/PasswordField/ShowHideButton.js +2 -2
  91. package/dist/esm/components/PasswordField/index.js +2 -2
  92. package/dist/esm/components/Radio/Radio.js +2 -2
  93. package/dist/esm/components/Radio/RadioGroup.js +2 -2
  94. package/dist/esm/components/Radio/index.js +2 -2
  95. package/dist/esm/components/Select/Select.js +2 -2
  96. package/dist/esm/components/Select/index.js +2 -2
  97. package/dist/esm/components/TextArea/TextArea.js +2 -2
  98. package/dist/esm/components/TextArea/index.js +2 -2
  99. package/dist/esm/components/TextField/TextField.js +2 -2
  100. package/dist/esm/components/TextField/index.js +2 -2
  101. package/dist/esm/components/TextOrHTML/TextOrHTML.js +1 -1
  102. package/dist/esm/components/TextOrHTML/index.js +1 -1
  103. package/dist/esm/components/index.js +2 -2
  104. package/dist/esm/index.js +2 -2
  105. package/dist/esm/meta.json +73 -73
  106. package/dist/tsconfig.build.tsbuildinfo +1 -1
  107. package/dist/types/components/TextOrHTML/TextOrHTML.d.ts +3 -1
  108. package/package.json +2 -2
  109. package/src/components/Accordion/Accordion.css +79 -71
  110. package/src/components/Accordion/AccordionList.css +25 -23
  111. package/src/components/Alert/Alert.css +46 -44
  112. package/src/components/Box/Box.css +4 -2
  113. package/src/components/Breadcrumbs/Breadcrumbs.css +25 -23
  114. package/src/components/Button/Button.css +227 -219
  115. package/src/components/Button/Button.story.styles.css +9 -7
  116. package/src/components/Checkbox/Checkbox.css +106 -104
  117. package/src/components/Checkbox/CheckboxGroup.css +22 -20
  118. package/src/components/Combobox/Combobox.css +96 -94
  119. package/src/components/Container/Container.css +11 -9
  120. package/src/components/Divider/Divider.css +14 -12
  121. package/src/components/Drawer/Drawer.css +157 -155
  122. package/src/components/DropdownMenu/DropdownMenu.css +54 -52
  123. package/src/components/DropdownMenu/DropdownMenu.story.styles.css +11 -9
  124. package/src/components/ErrorMessage/ErrorMessage.css +30 -28
  125. package/src/components/ExpandableText/ExpandableText.css +11 -9
  126. package/src/components/Fieldset/Fieldset.css +13 -11
  127. package/src/components/Flex/Flex.css +5 -3
  128. package/src/components/Grid/Grid.story.styles.css +18 -16
  129. package/src/components/Icon/Icon.css +37 -35
  130. package/src/components/Label/Label.css +13 -11
  131. package/src/components/Link/Link.css +29 -27
  132. package/src/components/List/List.css +47 -45
  133. package/src/components/LoadingIndicator/LoadingIndicator.css +4 -2
  134. package/src/components/Modal/Modal.css +122 -120
  135. package/src/components/NumberField/NumberField.css +58 -56
  136. package/src/components/PasswordField/PasswordField.css +27 -25
  137. package/src/components/Popover/Popover.css +32 -30
  138. package/src/components/Popover/Popover.story.styles.css +24 -22
  139. package/src/components/Progress/Progress.css +25 -23
  140. package/src/components/Radio/Radio.css +167 -163
  141. package/src/components/Segment/Segment.css +163 -161
  142. package/src/components/Select/Select.css +82 -80
  143. package/src/components/Slider/Slider.css +113 -111
  144. package/src/components/Stack/Stack.css +24 -22
  145. package/src/components/Switch/Switch.css +58 -56
  146. package/src/components/Table/Table.css +52 -50
  147. package/src/components/Text/Text.css +92 -90
  148. package/src/components/TextArea/TextArea.css +41 -39
  149. package/src/components/TextField/TextField.css +132 -130
  150. package/src/components/TextOrHTML/TextOrHTML.test.tsx +95 -0
  151. package/src/components/TextOrHTML/TextOrHTML.tsx +13 -3
  152. package/src/components/Title/Title.css +32 -30
  153. package/src/components/Toast/Toast.css +234 -232
  154. package/dist/esm/chunk-HHJ4Y5JQ.js.map +0 -7
  155. /package/dist/esm/{chunk-ZU3XMAWQ.js.map → chunk-C4BILMFX.js.map} +0 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,35 @@
1
1
  # Changelog
2
2
 
3
+ ## 10.1.0
4
+
5
+ ### Minor Changes
6
+
7
+ - bce7398: Add autoDetect prop to TextOrHTML for automatic HTML vs plain text handling
8
+
9
+ ## 10.0.0
10
+
11
+ ### Major Changes
12
+
13
+ - fc4ed44: ### BREAKING CHANGE: All component CSS is now wrapped in `@layer` declarations
14
+
15
+ All CSS across mobius, mobius-datepicker, mobius-journey, mobius-interventions, mobius-chat-ui, and mobius-chatbot is now wrapped in `@layer atoms` or `@layer organisms`. The layer order preamble is declared in theme-core.
16
+
17
+ **What this means for consumers:**
18
+ - **Good news:** You no longer need specificity hacks (e.g. `.Foo.Foo`) to override Mobius styles. Your unlayered CSS automatically wins the cascade, regardless of import order.
19
+ - **Action required if you support older browsers:** `@layer` is supported in Chrome 99+, Firefox 97+, and Safari 15.4+ (all shipped early 2022). If you need to support browsers older than this, you must add your own `@layer` polyfill at the build level. Mobius intentionally does not ship a polyfill — doing so would cause polyfilled styles to become unlayered and override your app styles, defeating the purpose.
20
+ - **Custom layer ordering:** If you need to insert your own layers between Mobius layers, declare your own `@layer` order before importing theme-core. Your declaration must include all Mobius layers: `@layer reset, base, atoms, your-layer, organisms, theme;`
21
+
22
+ **What changed:**
23
+ - 204 CSS files wrapped in `@layer` blocks
24
+ - `@layer reset, base, atoms, organisms, theme;` preamble added to theme-core
25
+ - New `@simplybusiness/stylelint-plugin` enforces layer wrapping in CI
26
+ - `lint-css.js` now resolves stylelint config per-package instead of using a hardcoded central config
27
+
28
+ ### Patch Changes
29
+
30
+ - @simplybusiness/icons@5.0.3
31
+ - @simplybusiness/mobius-hooks@0.1.1
32
+
3
33
  ## 9.3.4
4
34
 
5
35
  ### Patch Changes
@@ -4132,22 +4132,27 @@ var init_TextArea2 = __esm({
4132
4132
  });
4133
4133
 
4134
4134
  // src/components/TextOrHTML/TextOrHTML.tsx
4135
- var import_react36, import_jsx_runtime63, TextOrHTML;
4135
+ var import_react36, import_jsx_runtime63, isHTML, TextOrHTML;
4136
4136
  var init_TextOrHTML = __esm({
4137
4137
  "src/components/TextOrHTML/TextOrHTML.tsx"() {
4138
4138
  "use strict";
4139
4139
  import_react36 = require("react");
4140
4140
  init_Text();
4141
4141
  import_jsx_runtime63 = require("react/jsx-runtime");
4142
+ isHTML = (text) => /^\s*<[a-z]/i.test(text);
4142
4143
  TextOrHTML = ({
4143
4144
  ref,
4144
4145
  text,
4145
4146
  htmlClassName,
4146
- htmlElementType = "span",
4147
+ htmlElementType,
4147
4148
  textWrapper = false,
4149
+ autoDetect = false,
4148
4150
  ...textProps
4149
4151
  }) => {
4150
- const DangerousComponent = htmlElementType;
4152
+ const textIsHTML = autoDetect && isHTML(text);
4153
+ const shouldWrapInText = autoDetect ? textWrapper || !textIsHTML : textWrapper;
4154
+ const resolvedElementType = htmlElementType ?? (textIsHTML ? "div" : "span");
4155
+ const DangerousComponent = resolvedElementType;
4151
4156
  const dangerousHTML = (0, import_react36.useMemo)(() => ({ __html: text }), [text]);
4152
4157
  const dangerousElement = /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
4153
4158
  DangerousComponent,
@@ -4156,7 +4161,7 @@ var init_TextOrHTML = __esm({
4156
4161
  dangerouslySetInnerHTML: dangerousHTML
4157
4162
  }
4158
4163
  );
4159
- if (textWrapper) {
4164
+ if (shouldWrapInText) {
4160
4165
  return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(Text, { ref, ...textProps, children: dangerousElement });
4161
4166
  }
4162
4167
  return dangerousElement;