@rdlabo/ionic-theme-ios27 1.2.0-beta.pr231.sha22a35d481cf3 → 1.2.0-beta.pr237.sha90661d2c01a8

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 (166) hide show
  1. package/README.md +21 -0
  2. package/dist/_virtual/_rolldown/runtime.js +13 -0
  3. package/dist/css/ionic-theme-ios27.css +1 -1
  4. package/dist/css/vertical-bars.css +1 -1
  5. package/dist/focus-controller/index.d.ts +4 -2
  6. package/dist/focus-controller/index.d.ts.map +1 -1
  7. package/dist/focus-controller/index.js +100 -57
  8. package/dist/focus-controller/index.js.map +1 -0
  9. package/dist/index.d.ts +10 -8
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +54 -60
  12. package/dist/index.js.map +1 -0
  13. package/dist/native/components/index.d.ts +13 -10
  14. package/dist/native/components/index.d.ts.map +1 -1
  15. package/dist/native/components/index.js +39 -41
  16. package/dist/native/components/index.js.map +1 -0
  17. package/dist/native/components/ion-back-button.d.ts +6 -1
  18. package/dist/native/components/ion-back-button.d.ts.map +1 -1
  19. package/dist/native/components/ion-back-button.js +19 -13
  20. package/dist/native/components/ion-back-button.js.map +1 -0
  21. package/dist/native/components/ion-button.d.ts +8 -2
  22. package/dist/native/components/ion-button.d.ts.map +1 -1
  23. package/dist/native/components/ion-button.js +22 -17
  24. package/dist/native/components/ion-button.js.map +1 -0
  25. package/dist/native/components/ion-buttons.d.ts +8 -2
  26. package/dist/native/components/ion-buttons.d.ts.map +1 -1
  27. package/dist/native/components/ion-buttons.js +29 -33
  28. package/dist/native/components/ion-buttons.js.map +1 -0
  29. package/dist/native/components/ion-fab.d.ts +6 -1
  30. package/dist/native/components/ion-fab.d.ts.map +1 -1
  31. package/dist/native/components/ion-fab.js +131 -151
  32. package/dist/native/components/ion-fab.js.map +1 -0
  33. package/dist/native/components/ion-menu-button.d.ts +6 -1
  34. package/dist/native/components/ion-menu-button.d.ts.map +1 -1
  35. package/dist/native/components/ion-menu-button.js +29 -19
  36. package/dist/native/components/ion-menu-button.js.map +1 -0
  37. package/dist/native/components/ion-segment.d.ts +6 -1
  38. package/dist/native/components/ion-segment.d.ts.map +1 -1
  39. package/dist/native/components/ion-segment.js +29 -23
  40. package/dist/native/components/ion-segment.js.map +1 -0
  41. package/dist/native/components/ion-tab-bar.d.ts +6 -1
  42. package/dist/native/components/ion-tab-bar.d.ts.map +1 -1
  43. package/dist/native/components/ion-tab-bar.js +49 -40
  44. package/dist/native/components/ion-tab-bar.js.map +1 -0
  45. package/dist/native/components/searchable-tabs.d.ts +17 -15
  46. package/dist/native/components/searchable-tabs.d.ts.map +1 -1
  47. package/dist/native/components/searchable-tabs.js +382 -435
  48. package/dist/native/components/searchable-tabs.js.map +1 -0
  49. package/dist/native/definitions.d.ts +116 -122
  50. package/dist/native/definitions.d.ts.map +1 -1
  51. package/dist/native/definitions.js +0 -6
  52. package/dist/native/index.d.ts +6 -4
  53. package/dist/native/index.d.ts.map +1 -1
  54. package/dist/native/index.js +229 -176
  55. package/dist/native/index.js.map +1 -0
  56. package/dist/native/prehide.d.ts +4 -2
  57. package/dist/native/prehide.d.ts.map +1 -1
  58. package/dist/native/prehide.js +218 -242
  59. package/dist/native/prehide.js.map +1 -0
  60. package/dist/native/runtime.d.ts +3 -1
  61. package/dist/native/runtime.d.ts.map +1 -1
  62. package/dist/native/runtime.js +626 -722
  63. package/dist/native/runtime.js.map +1 -0
  64. package/dist/native/shared/candidate.d.ts +15 -11
  65. package/dist/native/shared/candidate.d.ts.map +1 -1
  66. package/dist/native/shared/candidate.js +88 -95
  67. package/dist/native/shared/candidate.js.map +1 -0
  68. package/dist/native/shared/crossfade.d.ts +6 -4
  69. package/dist/native/shared/crossfade.d.ts.map +1 -1
  70. package/dist/native/shared/crossfade.js +49 -45
  71. package/dist/native/shared/crossfade.js.map +1 -0
  72. package/dist/native/shared/dom.d.ts +6 -4
  73. package/dist/native/shared/dom.d.ts.map +1 -1
  74. package/dist/native/shared/dom.js +163 -211
  75. package/dist/native/shared/dom.js.map +1 -0
  76. package/dist/native/shared/events.d.ts +8 -6
  77. package/dist/native/shared/events.d.ts.map +1 -1
  78. package/dist/native/shared/events.js +12 -7
  79. package/dist/native/shared/events.js.map +1 -0
  80. package/dist/native/shared/icons.d.ts +4 -2
  81. package/dist/native/shared/icons.d.ts.map +1 -1
  82. package/dist/native/shared/icons.js +59 -53
  83. package/dist/native/shared/icons.js.map +1 -0
  84. package/dist/native/shared/modal.d.ts +3 -1
  85. package/dist/native/shared/modal.d.ts.map +1 -1
  86. package/dist/native/shared/modal.js +156 -139
  87. package/dist/native/shared/modal.js.map +1 -0
  88. package/dist/native/vertical-bars-web.d.ts +3 -1
  89. package/dist/native/vertical-bars-web.d.ts.map +1 -1
  90. package/dist/native/vertical-bars-web.js +332 -344
  91. package/dist/native/vertical-bars-web.js.map +1 -0
  92. package/dist/native-integration/index.d.ts +10 -8
  93. package/dist/native-integration/index.d.ts.map +1 -1
  94. package/dist/native-integration/index.js +102 -100
  95. package/dist/native-integration/index.js.map +1 -0
  96. package/dist/native-integration/transition.d.ts +3 -1
  97. package/dist/native-integration/transition.d.ts.map +1 -1
  98. package/dist/native-integration/transition.js +15 -6
  99. package/dist/native-integration/transition.js.map +1 -0
  100. package/dist/searchbar/index.d.ts +4 -2
  101. package/dist/searchbar/index.d.ts.map +1 -1
  102. package/dist/searchbar/index.js +64 -56
  103. package/dist/searchbar/index.js.map +1 -0
  104. package/dist/segment/index.d.ts +3 -1
  105. package/dist/segment/index.d.ts.map +1 -1
  106. package/dist/segment/index.js +465 -324
  107. package/dist/segment/index.js.map +1 -0
  108. package/dist/sheets-of-glass/animations.d.ts +13 -12
  109. package/dist/sheets-of-glass/animations.d.ts.map +1 -1
  110. package/dist/sheets-of-glass/animations.js +496 -306
  111. package/dist/sheets-of-glass/animations.js.map +1 -0
  112. package/dist/sheets-of-glass/index.d.ts +3 -1
  113. package/dist/sheets-of-glass/index.d.ts.map +1 -1
  114. package/dist/sheets-of-glass/index.js +294 -357
  115. package/dist/sheets-of-glass/index.js.map +1 -0
  116. package/dist/sheets-of-glass/interfaces.d.ts +11 -9
  117. package/dist/sheets-of-glass/interfaces.d.ts.map +1 -1
  118. package/dist/sheets-of-glass/interfaces.js +0 -1
  119. package/dist/tab-bar-searchable/animations/enter.d.ts +4 -2
  120. package/dist/tab-bar-searchable/animations/enter.d.ts.map +1 -1
  121. package/dist/tab-bar-searchable/animations/enter.js +50 -69
  122. package/dist/tab-bar-searchable/animations/enter.js.map +1 -0
  123. package/dist/tab-bar-searchable/animations/leave.d.ts +4 -2
  124. package/dist/tab-bar-searchable/animations/leave.d.ts.map +1 -1
  125. package/dist/tab-bar-searchable/animations/leave.js +48 -62
  126. package/dist/tab-bar-searchable/animations/leave.js.map +1 -0
  127. package/dist/tab-bar-searchable/index.d.ts +5 -3
  128. package/dist/tab-bar-searchable/index.d.ts.map +1 -1
  129. package/dist/tab-bar-searchable/index.js +125 -109
  130. package/dist/tab-bar-searchable/index.js.map +1 -0
  131. package/dist/transition/index.d.ts +9 -8
  132. package/dist/transition/index.d.ts.map +1 -1
  133. package/dist/transition/index.js +203 -192
  134. package/dist/transition/index.js.map +1 -0
  135. package/dist/transition/ios.transition.d.ts +7 -5
  136. package/dist/transition/ios.transition.d.ts.map +1 -1
  137. package/dist/transition/ios.transition.js +15 -11
  138. package/dist/transition/ios.transition.js.map +1 -0
  139. package/dist/utils.d.ts +10 -8
  140. package/dist/utils.d.ts.map +1 -1
  141. package/dist/utils.js +58 -66
  142. package/dist/utils.js.map +1 -0
  143. package/dist/vertical-bars.d.ts +4 -5
  144. package/dist/vertical-bars.js +3 -3
  145. package/docs/iphone-duo-with-original-theme.md +24 -8
  146. package/docs/iphone-duo.md +59 -44
  147. package/docs/native-ui-shell.md +5 -3
  148. package/ios/Sources/IonicNativeUIShellPlugin/Components/ShellSearchController.swift +1 -1
  149. package/ios/Sources/IonicNativeUIShellPlugin/Components/ShellVerticalBars.swift +27 -2
  150. package/ios/Sources/IonicNativeUIShellPlugin/Components/ShellVerticalSearch.swift +118 -0
  151. package/ios/Sources/IonicNativeUIShellPlugin/IonicNativeUIShellPlugin.swift +27 -179
  152. package/ios/Tests/IonicNativeUIShellPluginTests/ShellSnapshotTests.swift +37 -0
  153. package/package.json +8 -5
  154. package/src/native/components/index.ts +3 -2
  155. package/src/native/components/ion-button.ts +3 -2
  156. package/src/native/components/ion-buttons.ts +3 -2
  157. package/src/native/components/searchable-tabs.ts +8 -11
  158. package/src/native/definitions.ts +16 -20
  159. package/src/native/index.ts +75 -32
  160. package/src/native/runtime.ts +18 -12
  161. package/src/native/shared/candidate.ts +13 -6
  162. package/src/native/vertical-bars-web.ts +2 -0
  163. package/src/styles/vertical-bars.scss +8 -0
  164. package/src/tab-bar-searchable/index.ts +40 -9
  165. package/src/vertical-bars.ts +7 -2
  166. package/dist/vertical-bars.d.ts.map +0 -1
@@ -1,42 +1,40 @@
1
- import * as button from './ion-button';
2
- import * as buttons from './ion-buttons';
3
- import * as backButton from './ion-back-button';
4
- import * as menuButton from './ion-menu-button';
5
- import * as tabBar from './ion-tab-bar';
6
- import * as segment from './ion-segment';
7
- import * as fab from './ion-fab';
8
- import { isDisabledButtonGroupChild, isVerticalBarsSource, visible } from '../shared/dom';
9
- export const components = [button, buttons, backButton, menuButton, tabBar, segment, fab];
10
- export const selector = components
11
- .map((component) => ('selector' in component ? component.selector : component.tag))
12
- .filter(Boolean)
13
- .join(', ');
14
- export const shadowSelector = [
15
- 'ion-icon',
16
- ...components.flatMap((component) => ('shadowSelector' in component ? [component.shadowSelector] : [])),
17
- ].join(', ');
18
- export const motionSelector = [
19
- '.ion-page',
20
- 'ion-header',
21
- 'ion-footer',
22
- 'ion-toolbar',
23
- ...components.filter((component) => 'tracksMotion' in component && component.tracksMotion).map((component) => component.tag),
24
- ].join(', ');
25
- export const isVerticalBarsCandidate = isVerticalBarsSource;
26
- export const readCandidate = (element, id) => {
27
- const verticalBars = isVerticalBarsCandidate(element);
28
- if ((!element.classList.contains('ios') && !verticalBars) ||
29
- !visible(element, verticalBars) ||
30
- element.closest('ion-popover') ||
31
- (element.closest('ion-modal') && !verticalBars))
32
- return;
33
- const style = getComputedStyle(element);
34
- if (!isDisabledButtonGroupChild(element) &&
35
- !style.getPropertyValue('--ios-theme-glass-background-rgb').trim() &&
36
- !style.getPropertyValue('--ios26-glass-background-rgb').trim() &&
37
- !verticalBars)
38
- return;
39
- if (element.contains(element.ownerDocument.activeElement))
40
- return;
41
- return components.find((component) => component.tag === element.localName)?.read(element, id);
1
+ import { isDisabledButtonGroupChild, isVerticalBarsSource, visible } from "../shared/dom.js";
2
+ import { ion_button_exports } from "./ion-button.js";
3
+ import { ion_menu_button_exports } from "./ion-menu-button.js";
4
+ import { ion_buttons_exports } from "./ion-buttons.js";
5
+ import { ion_back_button_exports } from "./ion-back-button.js";
6
+ import { ion_tab_bar_exports } from "./ion-tab-bar.js";
7
+ import { ion_segment_exports } from "./ion-segment.js";
8
+ import { ion_fab_exports } from "./ion-fab.js";
9
+ //#region src/native/components/index.ts
10
+ const components = [
11
+ ion_button_exports,
12
+ ion_buttons_exports,
13
+ ion_back_button_exports,
14
+ ion_menu_button_exports,
15
+ ion_tab_bar_exports,
16
+ ion_segment_exports,
17
+ ion_fab_exports
18
+ ];
19
+ const selector = components.map((component) => "selector" in component ? component.selector : component.tag).filter(Boolean).join(", ");
20
+ const shadowSelector = ["ion-icon", ...components.flatMap((component) => "shadowSelector" in component ? [component.shadowSelector] : [])].join(", ");
21
+ const motionSelector = [
22
+ ".ion-page",
23
+ "ion-header",
24
+ "ion-footer",
25
+ "ion-toolbar",
26
+ ...components.filter((component) => "tracksMotion" in component && component.tracksMotion).map((component) => component.tag)
27
+ ].join(", ");
28
+ const isVerticalBarsCandidate = isVerticalBarsSource;
29
+ const readCandidate = (element, id, options = {}) => {
30
+ const verticalBars = isVerticalBarsCandidate(element);
31
+ if (!element.classList.contains("ios") && !verticalBars || !visible(element, verticalBars) || element.closest("ion-popover") || element.closest("ion-modal") && !verticalBars) return;
32
+ const style = getComputedStyle(element);
33
+ if (!isDisabledButtonGroupChild(element) && !style.getPropertyValue("--ios-theme-glass-background-rgb").trim() && !style.getPropertyValue("--ios26-glass-background-rgb").trim() && !verticalBars) return;
34
+ if (element.contains(element.ownerDocument.activeElement)) return;
35
+ return components.find((component) => component.tag === element.localName)?.read(element, id, options);
42
36
  };
37
+ //#endregion
38
+ export { components, isVerticalBarsCandidate, motionSelector, readCandidate, selector, shadowSelector };
39
+
40
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["button","buttons","backButton","menuButton","tabBar","segment","fab"],"sources":["../../../src/native/components/index.ts"],"sourcesContent":["import type { VerticalControlAreaOptions } from '../definitions';\nimport * as button from './ion-button';\nimport * as buttons from './ion-buttons';\nimport * as backButton from './ion-back-button';\nimport * as menuButton from './ion-menu-button';\nimport * as tabBar from './ion-tab-bar';\nimport * as segment from './ion-segment';\nimport * as fab from './ion-fab';\nimport { isDisabledButtonGroupChild, isVerticalBarsSource, visible } from '../shared/dom';\nimport type { Candidate, Identify } from '../shared/candidate';\n\n// Static composition only. Each component declares its own tag, discovery and reader.\nexport const components = [button, buttons, backButton, menuButton, tabBar, segment, fab] as const;\nexport type NativeUIShellComponent = (typeof components)[number]['tag'];\nexport const selector = components\n .map((component) => ('selector' in component ? component.selector : component.tag))\n .filter(Boolean)\n .join(', ');\nexport const shadowSelector = [\n 'ion-icon',\n ...components.flatMap((component) => ('shadowSelector' in component ? [component.shadowSelector] : [])),\n].join(', ');\nexport const motionSelector = [\n '.ion-page',\n 'ion-header',\n 'ion-footer',\n 'ion-toolbar',\n ...components.filter((component) => 'tracksMotion' in component && component.tracksMotion).map((component) => component.tag),\n].join(', ');\n\nexport const isVerticalBarsCandidate = isVerticalBarsSource;\n\nexport const readCandidate = (element: HTMLElement, id: Identify, options: VerticalControlAreaOptions = {}): Candidate | undefined => {\n const verticalBars = isVerticalBarsCandidate(element);\n if (\n (!element.classList.contains('ios') && !verticalBars) ||\n !visible(element, verticalBars) ||\n element.closest('ion-popover') ||\n (element.closest('ion-modal') && !verticalBars)\n )\n return;\n const style = getComputedStyle(element);\n if (\n !isDisabledButtonGroupChild(element) &&\n !style.getPropertyValue('--ios-theme-glass-background-rgb').trim() &&\n !style.getPropertyValue('--ios26-glass-background-rgb').trim() &&\n !verticalBars\n )\n return;\n if (element.contains(element.ownerDocument.activeElement)) return;\n return components.find((component) => component.tag === element.localName)?.read(element, id, options);\n};\n"],"mappings":";;;;;;;;;AAYA,MAAa,aAAa;CAACA;CAAQC;CAASC;CAAYC;CAAYC;CAAQC;CAASC;AAAG;AAExF,MAAa,WAAW,WACrB,KAAK,cAAe,cAAc,YAAY,UAAU,WAAW,UAAU,GAAI,CAAC,CAClF,OAAO,OAAO,CAAC,CACf,KAAK,IAAI;AACZ,MAAa,iBAAiB,CAC5B,YACA,GAAG,WAAW,SAAS,cAAe,oBAAoB,YAAY,CAAC,UAAU,cAAc,IAAI,CAAC,CAAE,CACxG,CAAC,CAAC,KAAK,IAAI;AACX,MAAa,iBAAiB;CAC5B;CACA;CACA;CACA;CACA,GAAG,WAAW,QAAQ,cAAc,kBAAkB,aAAa,UAAU,YAAY,CAAC,CAAC,KAAK,cAAc,UAAU,GAAG;AAC7H,CAAC,CAAC,KAAK,IAAI;AAEX,MAAa,0BAA0B;AAEvC,MAAa,iBAAiB,SAAsB,IAAc,UAAsC,CAAC,MAA6B;CACpI,MAAM,eAAe,wBAAwB,OAAO;CACpD,IACG,CAAC,QAAQ,UAAU,SAAS,KAAK,KAAK,CAAC,gBACxC,CAAC,QAAQ,SAAS,YAAY,KAC9B,QAAQ,QAAQ,aAAa,KAC5B,QAAQ,QAAQ,WAAW,KAAK,CAAC,cAElC;CACF,MAAM,QAAQ,iBAAiB,OAAO;CACtC,IACE,CAAC,2BAA2B,OAAO,KACnC,CAAC,MAAM,iBAAiB,kCAAkC,CAAC,CAAC,KAAK,KACjE,CAAC,MAAM,iBAAiB,8BAA8B,CAAC,CAAC,KAAK,KAC7D,CAAC,cAED;CACF,IAAI,QAAQ,SAAS,QAAQ,cAAc,aAAa,GAAG;CAC3D,OAAO,WAAW,MAAM,cAAc,UAAU,QAAQ,QAAQ,SAAS,CAAC,EAAE,KAAK,SAAS,IAAI,OAAO;AACvG"}
@@ -1,4 +1,9 @@
1
- import type { Candidate, Identify } from '../shared/candidate';
1
+ import { Candidate, Identify } from "../shared/candidate.js";
2
+ declare namespace ion_back_button_d_exports {
3
+ export { read, tag };
4
+ }
2
5
  export declare const tag = "ion-back-button";
3
6
  export declare const read: (element: HTMLElement, id: Identify) => Candidate | undefined;
7
+ //#endregion
8
+ export { ion_back_button_d_exports };
4
9
  //# sourceMappingURL=ion-back-button.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ion-back-button.d.ts","sourceRoot":"","sources":["../../../src/native/components/ion-back-button.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAG/D,eAAO,MAAM,GAAG,oBAAoB,CAAC;AAErC,eAAO,MAAM,IAAI,GAAI,SAAS,WAAW,EAAE,IAAI,QAAQ,KAAG,SAAS,GAAG,SAYrE,CAAC"}
1
+ {"version":3,"file":"ion-back-button.d.ts","names":[],"sources":["../../../src/native/components/ion-back-button.ts"],"mappings":";;;;qBAIa;qBAEA,OAAQ,SAAS,aAAa,IAAI,aAAW"}
@@ -1,14 +1,20 @@
1
- import { createCandidate, appendItem } from '../shared/candidate';
2
- import { inFixedToolbar, isVerticalBarsSource } from '../shared/dom';
3
- export const tag = 'ion-back-button';
4
- export const read = (element, id) => {
5
- const button = element;
6
- if (!button.shadowRoot ||
7
- button.icon !== undefined ||
8
- button.color !== undefined ||
9
- (!isVerticalBarsSource(element) && !inFixedToolbar(element)))
10
- return;
11
- const candidate = createCandidate(element, tag, id);
12
- const label = button.shadowRoot.querySelector('[part="text"]')?.textContent?.trim() ?? '';
13
- return appendItem(candidate, element, id, button.shadowRoot, label) ? candidate : undefined;
1
+ import { __exportAll } from "../../_virtual/_rolldown/runtime.js";
2
+ import { inFixedToolbar, isVerticalBarsSource } from "../shared/dom.js";
3
+ import { appendItem, createCandidate } from "../shared/candidate.js";
4
+ //#region src/native/components/ion-back-button.ts
5
+ var ion_back_button_exports = /* @__PURE__ */ __exportAll({
6
+ read: () => read,
7
+ tag: () => tag
8
+ });
9
+ const tag = "ion-back-button";
10
+ const read = (element, id) => {
11
+ const button = element;
12
+ if (!button.shadowRoot || button.icon !== void 0 || button.color !== void 0 || !isVerticalBarsSource(element) && !inFixedToolbar(element)) return;
13
+ const candidate = createCandidate(element, tag, id);
14
+ const label = button.shadowRoot.querySelector("[part=\"text\"]")?.textContent?.trim() ?? "";
15
+ return appendItem(candidate, element, id, button.shadowRoot, label) ? candidate : void 0;
14
16
  };
17
+ //#endregion
18
+ export { ion_back_button_exports, read, tag };
19
+
20
+ //# sourceMappingURL=ion-back-button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ion-back-button.js","names":[],"sources":["../../../src/native/components/ion-back-button.ts"],"sourcesContent":["import { createCandidate, appendItem } from '../shared/candidate';\nimport type { Candidate, Identify } from '../shared/candidate';\nimport { inFixedToolbar, isVerticalBarsSource } from '../shared/dom';\n\nexport const tag = 'ion-back-button';\n\nexport const read = (element: HTMLElement, id: Identify): Candidate | undefined => {\n const button = element as HTMLIonBackButtonElement;\n if (\n !button.shadowRoot ||\n button.icon !== undefined ||\n button.color !== undefined ||\n (!isVerticalBarsSource(element) && !inFixedToolbar(element))\n )\n return;\n const candidate = createCandidate(element, tag, id);\n const label = button.shadowRoot.querySelector('[part=\"text\"]')?.textContent?.trim() ?? '';\n return appendItem(candidate, element, id, button.shadowRoot, label) ? candidate : undefined;\n};\n"],"mappings":";;;;;;;;AAIA,MAAa,MAAM;AAEnB,MAAa,QAAQ,SAAsB,OAAwC;CACjF,MAAM,SAAS;CACf,IACE,CAAC,OAAO,cACR,OAAO,SAAS,KAAA,KAChB,OAAO,UAAU,KAAA,KAChB,CAAC,qBAAqB,OAAO,KAAK,CAAC,eAAe,OAAO,GAE1D;CACF,MAAM,YAAY,gBAAgB,SAAS,KAAK,EAAE;CAClD,MAAM,QAAQ,OAAO,WAAW,cAAc,iBAAe,CAAC,EAAE,aAAa,KAAK,KAAK;CACvF,OAAO,WAAW,WAAW,SAAS,IAAI,OAAO,YAAY,KAAK,IAAI,YAAY,KAAA;AACpF"}
@@ -1,4 +1,10 @@
1
- import type { Candidate, Identify } from '../shared/candidate';
1
+ import { VerticalControlAreaOptions } from "../definitions.js";
2
+ import { Candidate, Identify } from "../shared/candidate.js";
3
+ declare namespace ion_button_d_exports {
4
+ export { read, tag };
5
+ }
2
6
  export declare const tag = "ion-button";
3
- export declare const read: (element: HTMLElement, id: Identify) => Candidate | undefined;
7
+ export declare const read: (element: HTMLElement, id: Identify, options?: VerticalControlAreaOptions) => Candidate | undefined;
8
+ //#endregion
9
+ export { ion_button_d_exports };
4
10
  //# sourceMappingURL=ion-button.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ion-button.d.ts","sourceRoot":"","sources":["../../../src/native/components/ion-button.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAG/D,eAAO,MAAM,GAAG,eAAe,CAAC;AAEhC,eAAO,MAAM,IAAI,GAAI,SAAS,WAAW,EAAE,IAAI,QAAQ,KAAG,SAAS,GAAG,SAerE,CAAC"}
1
+ {"version":3,"file":"ion-button.d.ts","names":[],"sources":["../../../src/native/components/ion-button.ts"],"mappings":";;;;;qBAMa;qBAEA,OAAQ,SAAS,aAAa,IAAI,UAAU,UAAS,+BAAkC"}
@@ -1,18 +1,23 @@
1
- import { modalUsesVerticalBars } from '../shared/modal';
2
- import { createCandidate, appendItem } from '../shared/candidate';
3
- import { inFixedToolbar, isVerticalBarsToolbarAction, isVerticalBarsToolbarGroup } from '../shared/dom';
4
- export const tag = 'ion-button';
5
- export const read = (element, id) => {
6
- const button = element;
7
- const verticalBars = !element.closest('ion-menu, ion-popover') && modalUsesVerticalBars(element) && !!element.closest('ion-app.ios-theme-vertical-bars');
8
- if (verticalBars && element.parentElement && isVerticalBarsToolbarGroup(element.parentElement))
9
- return;
10
- const fill = button.fill ?? 'default';
11
- if (!inFixedToolbar(element) ||
12
- (verticalBars && !isVerticalBarsToolbarAction(element)) ||
13
- (!verticalBars && fill !== 'default') ||
14
- (!verticalBars && button.classList.contains('ion-color')))
15
- return;
16
- const candidate = createCandidate(element, tag, id);
17
- return appendItem(candidate, element, id) ? candidate : undefined;
1
+ import { __exportAll } from "../../_virtual/_rolldown/runtime.js";
2
+ import { modalUsesVerticalBars } from "../shared/modal.js";
3
+ import { inFixedToolbar, isVerticalBarsToolbarAction, isVerticalBarsToolbarGroup } from "../shared/dom.js";
4
+ import { appendItem, createCandidate } from "../shared/candidate.js";
5
+ //#region src/native/components/ion-button.ts
6
+ var ion_button_exports = /* @__PURE__ */ __exportAll({
7
+ read: () => read,
8
+ tag: () => tag
9
+ });
10
+ const tag = "ion-button";
11
+ const read = (element, id, options = {}) => {
12
+ const button = element;
13
+ const verticalBars = !element.closest("ion-menu, ion-popover") && modalUsesVerticalBars(element) && !!element.closest("ion-app.ios-theme-vertical-bars");
14
+ if (verticalBars && element.parentElement && isVerticalBarsToolbarGroup(element.parentElement)) return;
15
+ const fill = button.fill ?? "default";
16
+ if (!inFixedToolbar(element) || verticalBars && !isVerticalBarsToolbarAction(element) || !verticalBars && fill !== "default" || !verticalBars && button.classList.contains("ion-color")) return;
17
+ const candidate = createCandidate(element, tag, id, options);
18
+ return appendItem(candidate, element, id) ? candidate : void 0;
18
19
  };
20
+ //#endregion
21
+ export { ion_button_exports, read, tag };
22
+
23
+ //# sourceMappingURL=ion-button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ion-button.js","names":[],"sources":["../../../src/native/components/ion-button.ts"],"sourcesContent":["import type { VerticalControlAreaOptions } from '../definitions';\nimport { modalUsesVerticalBars } from '../shared/modal';\nimport { createCandidate, appendItem } from '../shared/candidate';\nimport type { Candidate, Identify } from '../shared/candidate';\nimport { inFixedToolbar, isVerticalBarsToolbarAction, isVerticalBarsToolbarGroup } from '../shared/dom';\n\nexport const tag = 'ion-button';\n\nexport const read = (element: HTMLElement, id: Identify, options: VerticalControlAreaOptions = {}): Candidate | undefined => {\n const button = element as HTMLIonButtonElement;\n const verticalBars =\n !element.closest('ion-menu, ion-popover') && modalUsesVerticalBars(element) && !!element.closest('ion-app.ios-theme-vertical-bars');\n if (verticalBars && element.parentElement && isVerticalBarsToolbarGroup(element.parentElement)) return;\n const fill = button.fill ?? 'default';\n if (\n !inFixedToolbar(element) ||\n (verticalBars && !isVerticalBarsToolbarAction(element)) ||\n (!verticalBars && fill !== 'default') ||\n (!verticalBars && button.classList.contains('ion-color'))\n )\n return;\n const candidate = createCandidate(element, tag, id, options);\n return appendItem(candidate, element, id) ? candidate : undefined;\n};\n"],"mappings":";;;;;;;;;AAMA,MAAa,MAAM;AAEnB,MAAa,QAAQ,SAAsB,IAAc,UAAsC,CAAC,MAA6B;CAC3H,MAAM,SAAS;CACf,MAAM,eACJ,CAAC,QAAQ,QAAQ,uBAAuB,KAAK,sBAAsB,OAAO,KAAK,CAAC,CAAC,QAAQ,QAAQ,iCAAiC;CACpI,IAAI,gBAAgB,QAAQ,iBAAiB,2BAA2B,QAAQ,aAAa,GAAG;CAChG,MAAM,OAAO,OAAO,QAAQ;CAC5B,IACE,CAAC,eAAe,OAAO,KACtB,gBAAgB,CAAC,4BAA4B,OAAO,KACpD,CAAC,gBAAgB,SAAS,aAC1B,CAAC,gBAAgB,OAAO,UAAU,SAAS,WAAW,GAEvD;CACF,MAAM,YAAY,gBAAgB,SAAS,KAAK,IAAI,OAAO;CAC3D,OAAO,WAAW,WAAW,SAAS,EAAE,IAAI,YAAY,KAAA;AAC1D"}
@@ -1,5 +1,11 @@
1
- import type { Candidate, Identify } from '../shared/candidate';
1
+ import { VerticalControlAreaOptions } from "../definitions.js";
2
+ import { Candidate, Identify } from "../shared/candidate.js";
3
+ declare namespace ion_buttons_d_exports {
4
+ export { read, tag, tracksMotion };
5
+ }
2
6
  export declare const tag = "ion-buttons";
3
7
  export declare const tracksMotion = true;
4
- export declare const read: (element: HTMLElement, id: Identify) => Candidate | undefined;
8
+ export declare const read: (element: HTMLElement, id: Identify, options?: VerticalControlAreaOptions) => Candidate | undefined;
9
+ //#endregion
10
+ export { ion_buttons_d_exports };
5
11
  //# sourceMappingURL=ion-buttons.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ion-buttons.d.ts","sourceRoot":"","sources":["../../../src/native/components/ion-buttons.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAI/D,eAAO,MAAM,GAAG,gBAAgB,CAAC;AACjC,eAAO,MAAM,YAAY,OAAO,CAAC;AAEjC,eAAO,MAAM,IAAI,GAAI,SAAS,WAAW,EAAE,IAAI,QAAQ,KAAG,SAAS,GAAG,SA2BrE,CAAC"}
1
+ {"version":3,"file":"ion-buttons.d.ts","names":[],"sources":["../../../src/native/components/ion-buttons.ts"],"mappings":";;;;;qBAOa;qBACA;qBAEA,OAAQ,SAAS,aAAa,IAAI,UAAU,UAAS,+BAAkC"}
@@ -1,34 +1,30 @@
1
- import { modalUsesVerticalBars } from '../shared/modal';
2
- import { createCandidate, appendItem } from '../shared/candidate';
3
- import { childElements, verticalBarsToolbarActions, inFixedToolbar, isVerticalBarsToolbarGroup } from '../shared/dom';
4
- import * as menuButton from './ion-menu-button';
5
- export const tag = 'ion-buttons';
6
- export const tracksMotion = true;
7
- export const read = (element, id) => {
8
- if (!inFixedToolbar(element))
9
- return;
10
- let children = childElements(element);
11
- if (children.length === 1)
12
- return menuButton.read(element, id);
13
- const verticalBars = !element.closest('ion-menu, ion-popover') && modalUsesVerticalBars(element) && !!element.closest('ion-app.ios-theme-vertical-bars');
14
- if (verticalBars && !isVerticalBarsToolbarGroup(element))
15
- return;
16
- if (verticalBars)
17
- children = verticalBarsToolbarActions(element);
18
- if (!children.length ||
19
- children.some((child) => !child.matches(`${menuButton.tag}${verticalBars ? '' : '.ios'}`) &&
20
- (!child.matches(`ion-button${verticalBars ? '' : '.ios.button-clear'}`) ||
21
- (!verticalBars && child.fill !== 'clear'))))
22
- return;
23
- const candidate = createCandidate(element, tag, id);
24
- if (verticalBars && children.length !== childElements(element).length)
25
- candidate.sources = children;
26
- for (const child of children) {
27
- const supported = child.matches(menuButton.tag)
28
- ? menuButton.append(candidate, child, id)
29
- : appendItem(candidate, child, id);
30
- if (!supported)
31
- return;
32
- }
33
- return candidate;
1
+ import { __exportAll } from "../../_virtual/_rolldown/runtime.js";
2
+ import { modalUsesVerticalBars } from "../shared/modal.js";
3
+ import { childElements, inFixedToolbar, isVerticalBarsToolbarGroup, verticalBarsToolbarActions } from "../shared/dom.js";
4
+ import { appendItem, createCandidate } from "../shared/candidate.js";
5
+ import { append, read as read$1 } from "./ion-menu-button.js";
6
+ //#region src/native/components/ion-buttons.ts
7
+ var ion_buttons_exports = /* @__PURE__ */ __exportAll({
8
+ read: () => read,
9
+ tag: () => tag,
10
+ tracksMotion: () => true
11
+ });
12
+ const tag = "ion-buttons";
13
+ const tracksMotion = true;
14
+ const read = (element, id, options = {}) => {
15
+ if (!inFixedToolbar(element)) return;
16
+ let children = childElements(element);
17
+ if (children.length === 1) return read$1(element, id);
18
+ const verticalBars = !element.closest("ion-menu, ion-popover") && modalUsesVerticalBars(element) && !!element.closest("ion-app.ios-theme-vertical-bars");
19
+ if (verticalBars && !isVerticalBarsToolbarGroup(element)) return;
20
+ if (verticalBars) children = verticalBarsToolbarActions(element);
21
+ if (!children.length || children.some((child) => !child.matches(`ion-menu-button${verticalBars ? "" : ".ios"}`) && (!child.matches(`ion-button${verticalBars ? "" : ".ios.button-clear"}`) || !verticalBars && child.fill !== "clear"))) return;
22
+ const candidate = createCandidate(element, tag, id, options);
23
+ if (verticalBars && children.length !== childElements(element).length) candidate.sources = children;
24
+ for (const child of children) if (!(child.matches("ion-menu-button") ? append(candidate, child, id) : appendItem(candidate, child, id))) return;
25
+ return candidate;
34
26
  };
27
+ //#endregion
28
+ export { ion_buttons_exports, read, tag, tracksMotion };
29
+
30
+ //# sourceMappingURL=ion-buttons.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ion-buttons.js","names":["menuButton.read","menuButton.append"],"sources":["../../../src/native/components/ion-buttons.ts"],"sourcesContent":["import type { VerticalControlAreaOptions } from '../definitions';\nimport { modalUsesVerticalBars } from '../shared/modal';\nimport { createCandidate, appendItem } from '../shared/candidate';\nimport type { Candidate, Identify } from '../shared/candidate';\nimport { childElements, verticalBarsToolbarActions, inFixedToolbar, isVerticalBarsToolbarGroup } from '../shared/dom';\nimport * as menuButton from './ion-menu-button';\n\nexport const tag = 'ion-buttons';\nexport const tracksMotion = true;\n\nexport const read = (element: HTMLElement, id: Identify, options: VerticalControlAreaOptions = {}): Candidate | undefined => {\n if (!inFixedToolbar(element)) return;\n let children = childElements(element);\n if (children.length === 1) return menuButton.read(element, id);\n const verticalBars =\n !element.closest('ion-menu, ion-popover') && modalUsesVerticalBars(element) && !!element.closest('ion-app.ios-theme-vertical-bars');\n if (verticalBars && !isVerticalBarsToolbarGroup(element)) return;\n if (verticalBars) children = verticalBarsToolbarActions(element);\n if (\n !children.length ||\n children.some(\n (child) =>\n !child.matches(`${menuButton.tag}${verticalBars ? '' : '.ios'}`) &&\n (!child.matches(`ion-button${verticalBars ? '' : '.ios.button-clear'}`) ||\n (!verticalBars && (child as HTMLIonButtonElement).fill !== 'clear')),\n )\n )\n return;\n const candidate = createCandidate(element, tag, id, options);\n if (verticalBars && children.length !== childElements(element).length) candidate.sources = children;\n for (const child of children) {\n const supported = child.matches(menuButton.tag)\n ? menuButton.append(candidate, child as HTMLIonMenuButtonElement, id)\n : appendItem(candidate, child, id);\n if (!supported) return;\n }\n return candidate;\n};\n"],"mappings":";;;;;;;;;;;AAOA,MAAa,MAAM;AACnB,MAAa,eAAe;AAE5B,MAAa,QAAQ,SAAsB,IAAc,UAAsC,CAAC,MAA6B;CAC3H,IAAI,CAAC,eAAe,OAAO,GAAG;CAC9B,IAAI,WAAW,cAAc,OAAO;CACpC,IAAI,SAAS,WAAW,GAAG,OAAOA,OAAgB,SAAS,EAAE;CAC7D,MAAM,eACJ,CAAC,QAAQ,QAAQ,uBAAuB,KAAK,sBAAsB,OAAO,KAAK,CAAC,CAAC,QAAQ,QAAQ,iCAAiC;CACpI,IAAI,gBAAgB,CAAC,2BAA2B,OAAO,GAAG;CAC1D,IAAI,cAAc,WAAW,2BAA2B,OAAO;CAC/D,IACE,CAAC,SAAS,UACV,SAAS,MACN,UACC,CAAC,MAAM,QAAQ,kBAAoB,eAAe,KAAK,QAAQ,MAC9D,CAAC,MAAM,QAAQ,aAAa,eAAe,KAAK,qBAAqB,KACnE,CAAC,gBAAiB,MAA+B,SAAS,QACjE,GAEA;CACF,MAAM,YAAY,gBAAgB,SAAS,KAAK,IAAI,OAAO;CAC3D,IAAI,gBAAgB,SAAS,WAAW,cAAc,OAAO,CAAC,CAAC,QAAQ,UAAU,UAAU;CAC3F,KAAK,MAAM,SAAS,UAIlB,IAAI,EAHc,MAAM,QAAQ,iBAAc,IAC1CC,OAAkB,WAAW,OAAmC,EAAE,IAClE,WAAW,WAAW,OAAO,EAAE,IACnB;CAElB,OAAO;AACT"}
@@ -1,5 +1,10 @@
1
- import type { Candidate } from '../shared/candidate';
1
+ import { Candidate } from "../shared/candidate.js";
2
+ declare namespace ion_fab_d_exports {
3
+ export { read, shadowSelector, tag };
4
+ }
2
5
  export declare const tag = "ion-fab";
3
6
  export declare const shadowSelector = "ion-fab-button, ion-fab-list";
4
7
  export declare const read: (fab: HTMLElement, id: (element: HTMLElement) => string) => Candidate | undefined;
8
+ //#endregion
9
+ export { ion_fab_d_exports };
5
10
  //# sourceMappingURL=ion-fab.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ion-fab.d.ts","sourceRoot":"","sources":["../../../src/native/components/ion-fab.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAKrD,eAAO,MAAM,GAAG,YAAY,CAAC;AAC7B,eAAO,MAAM,cAAc,iCAAiC,CAAC;AAO7D,eAAO,MAAM,IAAI,GAAI,KAAK,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,WAAW,KAAK,MAAM,KAAG,SAAS,GAAG,SAyIzF,CAAC"}
1
+ {"version":3,"file":"ion-fab.d.ts","names":[],"sources":["../../../src/native/components/ion-fab.ts"],"mappings":";;;;qBAKa;qBACA;qBAOA,OAAQ,KAAK,aAAa,KAAK,SAAS,2BAAyB"}