@sparkle-learning/core 0.0.36 → 0.0.37
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.
- package/dist/cjs/PrivateRoute-4abc9d29.js +35 -0
- package/dist/cjs/{PrivateRoute-074c584e.js → auth.service-4b584cd7.js} +0 -30
- package/dist/cjs/dom-utils-b8befdd5.js +63 -0
- package/dist/cjs/header-mobile-collapse.cjs.entry.js +90 -0
- package/dist/cjs/index-70e63f5b.js +3071 -0
- package/dist/cjs/index.cjs.js +6 -5
- package/dist/cjs/injectHistory-7206bbb9.js +9 -0
- package/dist/cjs/ion-avatar.cjs.entry.js +25 -0
- package/dist/cjs/ion-button.cjs.entry.js +129 -0
- package/dist/cjs/ion-card_2.cjs.entry.js +91 -0
- package/dist/cjs/ion-checkbox_4.cjs.entry.js +360 -0
- package/dist/cjs/ion-col_3.cjs.entry.js +159 -0
- package/dist/cjs/ion-icon_13.cjs.entry.js +1505 -0
- package/dist/cjs/ion-input_2.cjs.entry.js +313 -0
- package/dist/cjs/ion-label_2.cjs.entry.js +126 -0
- package/dist/cjs/ion-spinner.cjs.entry.js +64 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/match-path-84c9f7ca.js +511 -0
- package/dist/cjs/sparkle-card_3.cjs.entry.js +91 -0
- package/dist/cjs/sparkle-core.cjs.js +1 -1
- package/dist/cjs/sparkle-course-root.cjs.entry.js +146 -0
- package/dist/cjs/sparkle-dropdown.cjs.entry.js +61 -0
- package/dist/cjs/{header-mobile-collapse_61.cjs.entry.js → sparkle-export-lessons_6.cjs.entry.js} +8864 -17750
- package/dist/cjs/sparkle-facilitator-header_19.cjs.entry.js +2130 -0
- package/dist/cjs/sparkle-feedback.cjs.entry.js +2 -1
- package/dist/cjs/sparkle-goal-progress.cjs.entry.js +19 -0
- package/dist/cjs/sparkle-gww-item.cjs.entry.js +74 -0
- package/dist/cjs/sparkle-menu-toggle_3.cjs.entry.js +236 -0
- package/dist/cjs/sparkle-validation-error.cjs.entry.js +21 -0
- package/dist/cjs/stencil-router-redirect.cjs.entry.js +32 -0
- package/dist/cjs/student.service-d48f1c99.js +61 -0
- package/dist/cjs/user.store-8a049c4e.js +21 -0
- package/dist/collection/components/sparkle-quiz/sparkle-quiz/sparkle-quiz.js +2 -1
- package/dist/esm/PrivateRoute-7b526801.js +33 -0
- package/dist/esm/{animation-12377cb3.js → animation-e0716b39.js} +1 -1
- package/dist/esm/{PrivateRoute-c5441f35.js → auth.service-9fb86455.js} +4 -33
- package/dist/esm/{auth.store-dba2c2da.js → auth.store-633e8414.js} +1 -1
- package/dist/esm/dom-utils-109a7d75.js +55 -0
- package/dist/esm/{facilitator.service-b0292f7f.js → facilitator.service-8fd435bf.js} +2 -2
- package/dist/esm/{feed.service-8fbe4ce3.js → feed.service-ace049e5.js} +3 -3
- package/dist/esm/{framework-delegate-3e634a5c.js → framework-delegate-e4f8013b.js} +1 -1
- package/dist/esm/header-mobile-collapse.entry.js +86 -0
- package/dist/esm/{helpers-bf0e23d6.js → helpers-03073fe4.js} +1 -1
- package/dist/esm/{httpService-7b75b095.js → httpService-61864992.js} +2 -2
- package/dist/esm/{icons-9b62a1ec.js → icons-90b957ab.js} +1 -1
- package/dist/esm/{index-5e8971ae.js → index-37004831.js} +1 -1
- package/dist/esm/{index-45fec1e7.js → index-a2d2941d.js} +1 -1
- package/dist/esm/{index-2b84cad2.js → index-b4b4e503.js} +3 -3
- package/dist/esm/{index-cded2d87.js → index-dedabca0.js} +2 -2
- package/dist/esm/index-f9b9ba5d.js +3067 -0
- package/dist/esm/{index.es-e0c0f891.js → index.es-283fbd2e.js} +1 -1
- package/dist/esm/index.js +6 -5
- package/dist/esm/injectHistory-968f626d.js +7 -0
- package/dist/esm/{input-shims-671d8d9f.js → input-shims-cc3720a0.js} +2 -2
- package/dist/esm/ion-accordion.entry.js +1 -1
- package/dist/esm/ion-action-sheet_4.entry.js +5 -5
- package/dist/esm/ion-app.entry.js +3 -3
- package/dist/esm/ion-avatar.entry.js +21 -0
- package/dist/esm/ion-back-button.entry.js +1 -1
- package/dist/esm/ion-breadcrumb.entry.js +1 -1
- package/dist/esm/ion-button.entry.js +125 -0
- package/dist/esm/ion-card_2.entry.js +86 -0
- package/dist/esm/ion-checkbox_4.entry.js +353 -0
- package/dist/esm/ion-col_3.entry.js +153 -0
- package/dist/esm/ion-content_2.entry.js +2 -2
- package/dist/esm/ion-datetime-button.entry.js +1 -1
- package/dist/esm/ion-datetime.entry.js +1 -1
- package/dist/esm/ion-fab-button.entry.js +1 -1
- package/dist/esm/ion-footer.entry.js +2 -2
- package/dist/esm/ion-icon_13.entry.js +1489 -0
- package/dist/esm/ion-img.entry.js +1 -1
- package/dist/esm/ion-infinite-scroll.entry.js +2 -2
- package/dist/esm/ion-input_2.entry.js +308 -0
- package/dist/esm/ion-item-options.entry.js +1 -1
- package/dist/esm/ion-item-sliding.entry.js +2 -2
- package/dist/esm/ion-label_2.entry.js +121 -0
- package/dist/esm/ion-loading.entry.js +3 -3
- package/dist/esm/ion-menu-button.entry.js +4 -4
- package/dist/esm/ion-menu-toggle.entry.js +4 -4
- package/dist/esm/ion-menu.entry.js +4 -4
- package/dist/esm/ion-modal.entry.js +6 -6
- package/dist/esm/ion-nav.entry.js +4 -4
- package/dist/esm/ion-picker-column-internal_2.entry.js +1 -1
- package/dist/esm/ion-picker-column.entry.js +1 -1
- package/dist/esm/ion-picker.entry.js +3 -3
- package/dist/esm/ion-progress-bar.entry.js +1 -1
- package/dist/esm/ion-refresher.entry.js +3 -3
- package/dist/esm/ion-reorder-group.entry.js +2 -2
- package/dist/esm/ion-router-outlet.entry.js +4 -4
- package/dist/esm/ion-router.entry.js +1 -1
- package/dist/esm/ion-searchbar.entry.js +1 -1
- package/dist/esm/ion-segment-button.entry.js +1 -1
- package/dist/esm/ion-segment.entry.js +1 -1
- package/dist/esm/ion-select_2.entry.js +2 -2
- package/dist/esm/ion-slides.entry.js +1 -1
- package/dist/esm/ion-spinner.entry.js +60 -0
- package/dist/esm/ion-tab.entry.js +2 -2
- package/dist/esm/ion-textarea.entry.js +1 -1
- package/dist/esm/ion-toast.entry.js +3 -3
- package/dist/esm/ion-toggle.entry.js +1 -1
- package/dist/esm/ion-virtual-scroll.entry.js +1 -1
- package/dist/esm/{ios.transition-131d64fe.js → ios.transition-3a6179bb.js} +3 -3
- package/dist/esm/loader.js +1 -1
- package/dist/esm/match-path-36fdf5c7.js +499 -0
- package/dist/esm/{md.transition-f6126011.js → md.transition-cff16bf3.js} +3 -3
- package/dist/esm/{menu-toggle-util-bace8ae6.js → menu-toggle-util-59241733.js} +1 -1
- package/dist/esm/{overlays-3b4dca92.js → overlays-bdd9344a.js} +2 -2
- package/dist/esm/{purify-85bfcc69.js → purify-7085b248.js} +1 -1
- package/dist/esm/sparkle-animation-player.entry.js +1 -1
- package/dist/esm/sparkle-card_3.entry.js +85 -0
- package/dist/esm/sparkle-code.entry.js +1 -1
- package/dist/esm/sparkle-core.js +1 -1
- package/dist/esm/sparkle-course-root.entry.js +142 -0
- package/dist/esm/sparkle-dropdown.entry.js +57 -0
- package/dist/esm/{header-mobile-collapse_61.entry.js → sparkle-export-lessons_6.entry.js} +8859 -17690
- package/dist/esm/sparkle-facilitator-header_19.entry.js +2108 -0
- package/dist/esm/sparkle-facilitator-notes-form.entry.js +5 -5
- package/dist/esm/sparkle-feed-post.entry.js +1 -1
- package/dist/esm/sparkle-feedback.entry.js +6 -5
- package/dist/esm/sparkle-goal-form.entry.js +6 -6
- package/dist/esm/sparkle-goal-progress.entry.js +15 -0
- package/dist/esm/sparkle-gww-item.entry.js +70 -0
- package/dist/esm/sparkle-menu-collapsible.entry.js +1 -1
- package/dist/esm/sparkle-menu-toggle_3.entry.js +230 -0
- package/dist/esm/sparkle-validation-error.entry.js +17 -0
- package/dist/esm/{status-tap-dde52787.js → status-tap-463d0f87.js} +2 -2
- package/dist/esm/stencil-router-redirect.entry.js +28 -0
- package/dist/esm/{student.service-0746418b.js → student.service-e6eb1f99.js} +3 -19
- package/dist/esm/{swipe-back-7847a0c1.js → swipe-back-f8765ac9.js} +1 -1
- package/dist/esm/user.store-b8645067.js +19 -0
- package/dist/esm/{util-6ef753e9.js → util-a831d09d.js} +1 -1
- package/dist/sparkle-core/index.esm.js +1 -1
- package/dist/sparkle-core/{p-2c1ca854.entry.js → p-014b5707.entry.js} +1 -1
- package/dist/sparkle-core/p-03585916.js +1 -0
- package/dist/sparkle-core/{p-cabfbf22.entry.js → p-0bb0cf41.entry.js} +1 -1
- package/dist/sparkle-core/{p-30b810d1.entry.js → p-0c0f8acd.entry.js} +1 -1
- package/dist/sparkle-core/{p-de4deb61.entry.js → p-0ea2518d.entry.js} +1 -1
- package/dist/sparkle-core/p-1019ebc3.js +1 -0
- package/dist/sparkle-core/p-1728ead7.js +1 -0
- package/dist/sparkle-core/{p-d68092b7.js → p-17eb4633.js} +1 -1
- package/dist/sparkle-core/{p-e686d8b5.entry.js → p-1f0b3ff9.entry.js} +1 -1
- package/dist/sparkle-core/{p-a102341e.entry.js → p-25e556cc.entry.js} +1 -1
- package/dist/sparkle-core/{p-0c3f3ea6.entry.js → p-285ab4ed.entry.js} +1 -1
- package/dist/sparkle-core/{p-c60b29bd.entry.js → p-2d4a5ddf.entry.js} +2 -2
- package/dist/sparkle-core/{p-641bfc92.entry.js → p-2e035338.entry.js} +1 -1
- package/dist/sparkle-core/{p-2ff67662.js → p-2e2b813c.js} +2 -2
- package/dist/sparkle-core/{p-6ffd2420.entry.js → p-2f10208d.entry.js} +1 -1
- package/dist/sparkle-core/{p-b5f3e1bf.entry.js → p-2fba9a3a.entry.js} +1 -1
- package/dist/sparkle-core/{p-b3f375fb.entry.js → p-317037de.entry.js} +1 -1
- package/dist/sparkle-core/p-32762a44.entry.js +1 -0
- package/dist/sparkle-core/{p-2f569553.js → p-340754ed.js} +1 -1
- package/dist/sparkle-core/p-3bc68dd0.js +1 -0
- package/dist/sparkle-core/p-3c133235.entry.js +1 -0
- package/dist/sparkle-core/{p-48f72e63.js → p-3f85e1ca.js} +2 -2
- package/dist/sparkle-core/{p-2033cd86.js → p-405f7c58.js} +2 -2
- package/dist/sparkle-core/{p-9ebf0537.entry.js → p-4320dac0.entry.js} +1 -1
- package/dist/sparkle-core/{p-e863bf1d.entry.js → p-44f813b7.entry.js} +1 -1
- package/dist/sparkle-core/p-46869031.entry.js +1 -0
- package/dist/sparkle-core/p-4a5f2b2b.js +1 -0
- package/dist/sparkle-core/{p-894ff7e6.entry.js → p-4ae75caa.entry.js} +1 -1
- package/dist/sparkle-core/{p-935e7cfc.js → p-4bd4dab2.js} +1 -1
- package/dist/sparkle-core/{p-00d10dc9.js → p-539bf742.js} +2 -2
- package/dist/sparkle-core/p-53bcbd1d.js +1 -0
- package/dist/sparkle-core/p-54ada5e3.entry.js +1 -0
- package/dist/sparkle-core/{p-9289cdbc.entry.js → p-5519d283.entry.js} +1 -1
- package/dist/sparkle-core/p-554da5b8.entry.js +1 -0
- package/dist/sparkle-core/{p-e8073714.js → p-56a2e8a2.js} +1 -1
- package/dist/sparkle-core/p-5da2d95a.entry.js +1 -0
- package/dist/sparkle-core/{p-b0603d19.js → p-5fc26938.js} +1 -1
- package/dist/sparkle-core/{p-ebd4354b.entry.js → p-63f69cdc.entry.js} +1 -1
- package/dist/sparkle-core/{p-11356b03.entry.js → p-64e814b9.entry.js} +1 -1
- package/dist/sparkle-core/{p-ce4b22f7.entry.js → p-66a85393.entry.js} +1 -1
- package/dist/sparkle-core/p-6b05a1d3.entry.js +1 -0
- package/dist/sparkle-core/p-6c894fa2.entry.js +1 -0
- package/dist/sparkle-core/p-6ea246fe.js +4 -0
- package/dist/sparkle-core/p-6ed0236e.entry.js +1 -0
- package/dist/sparkle-core/{p-54dd894f.entry.js → p-6f0545b3.entry.js} +1 -1
- package/dist/sparkle-core/{p-0f1c5899.entry.js → p-727e1c28.entry.js} +1 -1
- package/dist/sparkle-core/{p-b96f3c84.entry.js → p-82ad4e7c.entry.js} +2 -2
- package/dist/sparkle-core/p-91accfc1.js +1 -0
- package/dist/sparkle-core/{p-af3cc111.entry.js → p-93e74f1b.entry.js} +1 -1
- package/dist/sparkle-core/{p-86ed13f0.js → p-a019ad0c.js} +1 -1
- package/dist/sparkle-core/p-a5c5da9a.entry.js +1 -0
- package/dist/sparkle-core/{p-1d4c7c11.js → p-a85598ad.js} +1 -1
- package/dist/sparkle-core/p-a8a77bec.entry.js +1 -0
- package/dist/sparkle-core/{p-bd80ff43.js → p-ad102371.js} +1 -1
- package/dist/sparkle-core/{p-377b04c2.entry.js → p-b236d258.entry.js} +1 -1
- package/dist/sparkle-core/{p-9abbd715.entry.js → p-b4b01fa2.entry.js} +1 -1
- package/dist/sparkle-core/{p-6faa194c.entry.js → p-b4bc8b02.entry.js} +1 -1
- package/dist/sparkle-core/{p-0fa3fd63.entry.js → p-b5ec8fb0.entry.js} +1 -1
- package/dist/sparkle-core/{p-fb757951.entry.js → p-b83444c7.entry.js} +1 -1
- package/dist/sparkle-core/{p-05c032dd.js → p-b9933822.js} +1 -1
- package/dist/sparkle-core/{p-0afa3a4d.entry.js → p-b9b1d4da.entry.js} +1 -1
- package/dist/sparkle-core/{p-3de0e00c.js → p-be28346b.js} +1 -1
- package/dist/sparkle-core/{p-0ad5c123.entry.js → p-c278db5f.entry.js} +1 -1
- package/dist/sparkle-core/{p-fb0ca75e.entry.js → p-c2bbaf55.entry.js} +1 -1
- package/dist/sparkle-core/p-c4af184b.entry.js +1 -0
- package/dist/sparkle-core/p-c71cbbf7.entry.js +1 -0
- package/dist/sparkle-core/p-c8c73fa7.js +4 -0
- package/dist/sparkle-core/{p-1e125ca5.entry.js → p-c8fe45df.entry.js} +1 -1
- package/dist/sparkle-core/{p-600cf6a3.js → p-c9cd4ff1.js} +1 -1
- package/dist/sparkle-core/{p-5cad23f1.js → p-ca4c8a10.js} +1 -1
- package/dist/sparkle-core/{p-1e4f65ee.entry.js → p-cab3da3c.entry.js} +1 -1
- package/dist/sparkle-core/p-cd832fbf.entry.js +1 -0
- package/dist/sparkle-core/{p-564e64fc.entry.js → p-ce94efdb.entry.js} +1 -1
- package/dist/sparkle-core/p-d0ac5f17.js +1 -0
- package/dist/sparkle-core/p-d1fcbfc2.js +4 -0
- package/dist/sparkle-core/p-d432d3ac.entry.js +1 -0
- package/dist/sparkle-core/{p-fbccd30c.js → p-d81a0680.js} +1 -1
- package/dist/sparkle-core/p-d969f7d0.entry.js +348 -0
- package/dist/sparkle-core/{p-0664370b.entry.js → p-dabc80c4.entry.js} +1 -1
- package/dist/sparkle-core/{p-58e4bbe5.entry.js → p-db8387eb.entry.js} +1 -1
- package/dist/sparkle-core/p-dca90a55.entry.js +4 -0
- package/dist/sparkle-core/p-dd2e7f84.js +4 -0
- package/dist/sparkle-core/p-e0429a19.entry.js +1 -0
- package/dist/sparkle-core/{p-24cb9a33.entry.js → p-e65c72cc.entry.js} +1 -1
- package/dist/sparkle-core/p-e7066c64.entry.js +1 -0
- package/dist/sparkle-core/{p-9d894ed4.js → p-e7568d4b.js} +1 -1
- package/dist/sparkle-core/p-eb40a191.entry.js +1 -0
- package/dist/sparkle-core/p-ecdea569.entry.js +1 -0
- package/dist/sparkle-core/{p-74864276.entry.js → p-ed9f48c4.entry.js} +1 -1
- package/dist/sparkle-core/p-ef6c2352.entry.js +1 -0
- package/dist/sparkle-core/{p-be64105c.entry.js → p-f0cf4a8f.entry.js} +1 -1
- package/dist/sparkle-core/{p-c0533c23.entry.js → p-f4b0b6a4.entry.js} +1 -1
- package/dist/sparkle-core/{p-ef4edc48.entry.js → p-fc965b88.entry.js} +1 -1
- package/dist/sparkle-core/{p-590266d6.entry.js → p-fd430a82.entry.js} +1 -1
- package/dist/sparkle-core/{p-39712c56.entry.js → p-fde382f0.entry.js} +1 -1
- package/dist/sparkle-core/sparkle-core.esm.js +1 -1
- package/package.json +1 -1
- package/dist/cjs/sparkle-quiz-feedback_5.cjs.entry.js +0 -117
- package/dist/cjs/sparkle-quiz.cjs.entry.js +0 -119
- package/dist/cjs/student.service-2e58f237.js +0 -78
- package/dist/esm/sparkle-quiz-feedback_5.entry.js +0 -109
- package/dist/esm/sparkle-quiz.entry.js +0 -115
- package/dist/sparkle-core/p-077c732b.js +0 -4
- package/dist/sparkle-core/p-12dd96d7.js +0 -4
- package/dist/sparkle-core/p-23aca7ca.js +0 -4
- package/dist/sparkle-core/p-3a965828.entry.js +0 -1
- package/dist/sparkle-core/p-462bffba.js +0 -1
- package/dist/sparkle-core/p-5efc6566.js +0 -1
- package/dist/sparkle-core/p-73721c84.js +0 -4
- package/dist/sparkle-core/p-80d6b0e6.entry.js +0 -1
- package/dist/sparkle-core/p-8492a765.entry.js +0 -1
- package/dist/sparkle-core/p-c3cadfc6.entry.js +0 -1
- package/dist/sparkle-core/p-eaf76d1d.entry.js +0 -352
package/dist/cjs/index.cjs.js
CHANGED
@@ -2,10 +2,11 @@
|
|
2
2
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
|
-
const
|
5
|
+
const auth_service = require('./auth.service-4b584cd7.js');
|
6
6
|
const environmentConfig_service = require('./environment-config.service-0e02b049.js');
|
7
7
|
const assets_service = require('./assets.service-0c759d51.js');
|
8
8
|
const auth_store = require('./auth.store-1e630a7d.js');
|
9
|
+
const PrivateRoute = require('./PrivateRoute-4abc9d29.js');
|
9
10
|
require('./index-51e8292e.js');
|
10
11
|
require('./localstorage.service-6346a41d.js');
|
11
12
|
require('./httpService-7211d93b.js');
|
@@ -16,10 +17,10 @@ require('./helpers-c2496722.js');
|
|
16
17
|
|
17
18
|
|
18
19
|
|
19
|
-
exports.AuthService =
|
20
|
-
exports.
|
21
|
-
exports.
|
22
|
-
exports.setupEnvironmentConfig = PrivateRoute.setupConfig;
|
20
|
+
exports.AuthService = auth_service.AuthService;
|
21
|
+
exports.initSetupEnvironmentConfig = auth_service.initSetupConfig;
|
22
|
+
exports.setupEnvironmentConfig = auth_service.setupConfig;
|
23
23
|
exports.EnvironmentConfigService = environmentConfig_service.EnvironmentConfigService;
|
24
24
|
exports.AssetsService = assets_service.AssetsService;
|
25
25
|
exports.AuthStore = auth_store.AuthStore;
|
26
|
+
exports.PrivateRoute = PrivateRoute.PrivateRoute;
|
@@ -0,0 +1,25 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
4
|
+
|
5
|
+
const index = require('./index-51e8292e.js');
|
6
|
+
const ionicGlobal = require('./ionic-global-2cde9d3a.js');
|
7
|
+
|
8
|
+
const avatarIosCss = ":host{border-radius:var(--border-radius);display:block}::slotted(ion-img),::slotted(img){border-radius:var(--border-radius);width:100%;height:100%;object-fit:cover;overflow:hidden}:host{--border-radius:50%;width:48px;height:48px}";
|
9
|
+
|
10
|
+
const avatarMdCss = ":host{border-radius:var(--border-radius);display:block}::slotted(ion-img),::slotted(img){border-radius:var(--border-radius);width:100%;height:100%;object-fit:cover;overflow:hidden}:host{--border-radius:50%;width:64px;height:64px}";
|
11
|
+
|
12
|
+
const Avatar = class {
|
13
|
+
constructor(hostRef) {
|
14
|
+
index.registerInstance(this, hostRef);
|
15
|
+
}
|
16
|
+
render() {
|
17
|
+
return (index.h(index.Host, { class: ionicGlobal.getIonMode(this) }, index.h("slot", null)));
|
18
|
+
}
|
19
|
+
};
|
20
|
+
Avatar.style = {
|
21
|
+
ios: avatarIosCss,
|
22
|
+
md: avatarMdCss
|
23
|
+
};
|
24
|
+
|
25
|
+
exports.ion_avatar = Avatar;
|
@@ -0,0 +1,129 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
4
|
+
|
5
|
+
const index = require('./index-51e8292e.js');
|
6
|
+
const ionicGlobal = require('./ionic-global-2cde9d3a.js');
|
7
|
+
const helpers = require('./helpers-c2496722.js');
|
8
|
+
const theme = require('./theme-b0b295c1.js');
|
9
|
+
|
10
|
+
const buttonIosCss = ":host{--overflow:hidden;--ripple-color:currentColor;--border-width:initial;--border-color:initial;--border-style:initial;--color-activated:var(--color);--color-focused:var(--color);--color-hover:var(--color);--box-shadow:none;display:inline-block;width:auto;color:var(--color);font-family:var(--ion-font-family, inherit);text-align:center;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;user-select:none;vertical-align:top;vertical-align:-webkit-baseline-middle;font-kerning:none}:host(.button-disabled){cursor:default;opacity:0.5;pointer-events:none}:host(.button-solid){--background:var(--ion-color-primary, #3880ff);--color:var(--ion-color-primary-contrast, #fff)}:host(.button-outline){--border-color:var(--ion-color-primary, #3880ff);--background:transparent;--color:var(--ion-color-primary, #3880ff)}:host(.button-clear){--border-width:0;--background:transparent;--color:var(--ion-color-primary, #3880ff)}:host(.button-block){display:block}:host(.button-block) .button-native{margin-left:0;margin-right:0;display:block;width:100%;clear:both;contain:content}:host(.button-block) .button-native::after{clear:both}:host(.button-full){display:block}:host(.button-full) .button-native{margin-left:0;margin-right:0;display:block;width:100%;contain:content}:host(.button-full:not(.button-round)) .button-native{border-radius:0;border-right-width:0;border-left-width:0}.button-native{border-radius:var(--border-radius);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;display:block;position:relative;width:100%;height:100%;transition:var(--transition);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);outline:none;background:var(--background);line-height:1;box-shadow:var(--box-shadow);contain:layout style;cursor:pointer;opacity:var(--opacity);overflow:var(--overflow);z-index:0;box-sizing:border-box;appearance:none}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.button-native{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end)}}.button-native::-moz-focus-inner{border:0}.button-inner{display:flex;position:relative;flex-flow:row nowrap;flex-shrink:0;align-items:center;justify-content:center;width:100%;height:100%;z-index:1}::slotted(ion-icon){font-size:1.4em;pointer-events:none}::slotted(ion-icon[slot=start]){margin-left:-0.3em;margin-right:0.3em;margin-top:0;margin-bottom:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){::slotted(ion-icon[slot=start]){margin-left:unset;margin-right:unset;-webkit-margin-start:-0.3em;margin-inline-start:-0.3em;-webkit-margin-end:0.3em;margin-inline-end:0.3em}}::slotted(ion-icon[slot=end]){margin-left:0.3em;margin-right:-0.2em;margin-top:0;margin-bottom:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){::slotted(ion-icon[slot=end]){margin-left:unset;margin-right:unset;-webkit-margin-start:0.3em;margin-inline-start:0.3em;-webkit-margin-end:-0.2em;margin-inline-end:-0.2em}}::slotted(ion-icon[slot=icon-only]){font-size:1.8em}ion-ripple-effect{color:var(--ripple-color)}.button-native::after{left:0;right:0;top:0;bottom:0;position:absolute;content:\"\";opacity:0}:host(.ion-activated){color:var(--color-activated)}:host(.ion-activated) .button-native::after{background:var(--background-activated);opacity:var(--background-activated-opacity)}:host(.ion-focused){color:var(--color-focused)}:host(.ion-focused) .button-native::after{background:var(--background-focused);opacity:var(--background-focused-opacity)}@media (any-hover: hover){:host(:hover){color:var(--color-hover)}:host(:hover) .button-native::after{background:var(--background-hover);opacity:var(--background-hover-opacity)}}:host(.button-solid.ion-color) .button-native{background:var(--ion-color-base);color:var(--ion-color-contrast)}:host(.button-outline.ion-color) .button-native{border-color:var(--ion-color-base);background:transparent;color:var(--ion-color-base)}:host(.button-clear.ion-color) .button-native{background:transparent;color:var(--ion-color-base)}:host(.in-toolbar:not(.ion-color):not(.in-toolbar-color)) .button-native{color:var(--ion-toolbar-color, var(--color))}:host(.button-outline.in-toolbar:not(.ion-color):not(.in-toolbar-color)) .button-native{border-color:var(--ion-toolbar-color, var(--color, var(--border-color)))}:host(.button-solid.in-toolbar:not(.ion-color):not(.in-toolbar-color)) .button-native{background:var(--ion-toolbar-color, var(--background));color:var(--ion-toolbar-background, var(--color))}:host{--border-radius:10px;--padding-top:0;--padding-bottom:0;--padding-start:1em;--padding-end:1em;--transition:background-color, opacity 100ms linear;margin-left:2px;margin-right:2px;margin-top:4px;margin-bottom:4px;height:2.8em;font-size:16px;font-weight:500;letter-spacing:-0.03em}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host{margin-left:unset;margin-right:unset;-webkit-margin-start:2px;margin-inline-start:2px;-webkit-margin-end:2px;margin-inline-end:2px}}:host(.button-solid){--background-activated:var(--ion-color-primary-shade, #3171e0);--background-focused:var(--ion-color-primary-shade, #3171e0);--background-hover:var(--ion-color-primary-tint, #4c8dff);--background-activated-opacity:1;--background-focused-opacity:1;--background-hover-opacity:1}:host(.button-outline){--border-radius:10px;--border-width:1px;--border-style:solid;--background-activated:var(--ion-color-primary, #3880ff);--background-focused:var(--ion-color-primary, #3880ff);--background-hover:transparent;--background-focused-opacity:.1;--color-activated:var(--ion-color-primary-contrast, #fff)}:host(.button-clear){--background-activated:transparent;--background-focused:var(--ion-color-primary, #3880ff);--background-hover:transparent;--background-focused-opacity:.1;font-size:17px;font-weight:normal;letter-spacing:0}:host(.button-large){--border-radius:12px;--padding-top:0;--padding-start:1em;--padding-end:1em;--padding-bottom:0;height:2.8em;font-size:20px}:host(.button-small){--border-radius:6px;--padding-top:0;--padding-start:0.9em;--padding-end:0.9em;--padding-bottom:0;height:2.1em;font-size:13px}:host(.button-round){--border-radius:64px;--padding-top:0;--padding-start:26px;--padding-end:26px;--padding-bottom:0}:host(.button-strong){font-weight:600}:host(.button-clear.ion-activated){opacity:0.4}:host(.button-outline.ion-activated.ion-color) .button-native{color:var(--ion-color-contrast)}:host(.button-outline.ion-activated.ion-color) .button-native::after{background:var(--ion-color-base)}:host(.button-solid.ion-color.ion-activated) .button-native::after{background:var(--ion-color-shade)}:host(.button-outline.ion-focused.ion-color) .button-native,:host(.button-clear.ion-focused.ion-color) .button-native{color:var(--ion-color-base)}:host(.button-outline.ion-focused.ion-color) .button-native::after,:host(.button-clear.ion-focused.ion-color) .button-native::after{background:var(--ion-color-base)}:host(.button-solid.ion-color.ion-focused) .button-native::after{background:var(--ion-color-shade)}@media (any-hover: hover){:host(.button-clear:hover),:host(.button-outline:hover){opacity:0.6}:host(.button-clear.ion-color:hover) .button-native,:host(.button-outline.ion-color:hover) .button-native{color:var(--ion-color-base)}:host(.button-clear.ion-color:hover) .button-native::after,:host(.button-outline.ion-color:hover) .button-native::after{background:transparent}:host(.button-solid.ion-color:hover) .button-native::after{background:var(--ion-color-tint)}:host(:hover.button-solid.in-toolbar:not(.ion-color):not(.in-toolbar-color)) .button-native::after{background:#fff;opacity:0.1}}";
|
11
|
+
|
12
|
+
const buttonMdCss = ":host{--overflow:hidden;--ripple-color:currentColor;--border-width:initial;--border-color:initial;--border-style:initial;--color-activated:var(--color);--color-focused:var(--color);--color-hover:var(--color);--box-shadow:none;display:inline-block;width:auto;color:var(--color);font-family:var(--ion-font-family, inherit);text-align:center;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;user-select:none;vertical-align:top;vertical-align:-webkit-baseline-middle;font-kerning:none}:host(.button-disabled){cursor:default;opacity:0.5;pointer-events:none}:host(.button-solid){--background:var(--ion-color-primary, #3880ff);--color:var(--ion-color-primary-contrast, #fff)}:host(.button-outline){--border-color:var(--ion-color-primary, #3880ff);--background:transparent;--color:var(--ion-color-primary, #3880ff)}:host(.button-clear){--border-width:0;--background:transparent;--color:var(--ion-color-primary, #3880ff)}:host(.button-block){display:block}:host(.button-block) .button-native{margin-left:0;margin-right:0;display:block;width:100%;clear:both;contain:content}:host(.button-block) .button-native::after{clear:both}:host(.button-full){display:block}:host(.button-full) .button-native{margin-left:0;margin-right:0;display:block;width:100%;contain:content}:host(.button-full:not(.button-round)) .button-native{border-radius:0;border-right-width:0;border-left-width:0}.button-native{border-radius:var(--border-radius);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;display:block;position:relative;width:100%;height:100%;transition:var(--transition);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);outline:none;background:var(--background);line-height:1;box-shadow:var(--box-shadow);contain:layout style;cursor:pointer;opacity:var(--opacity);overflow:var(--overflow);z-index:0;box-sizing:border-box;appearance:none}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.button-native{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end)}}.button-native::-moz-focus-inner{border:0}.button-inner{display:flex;position:relative;flex-flow:row nowrap;flex-shrink:0;align-items:center;justify-content:center;width:100%;height:100%;z-index:1}::slotted(ion-icon){font-size:1.4em;pointer-events:none}::slotted(ion-icon[slot=start]){margin-left:-0.3em;margin-right:0.3em;margin-top:0;margin-bottom:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){::slotted(ion-icon[slot=start]){margin-left:unset;margin-right:unset;-webkit-margin-start:-0.3em;margin-inline-start:-0.3em;-webkit-margin-end:0.3em;margin-inline-end:0.3em}}::slotted(ion-icon[slot=end]){margin-left:0.3em;margin-right:-0.2em;margin-top:0;margin-bottom:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){::slotted(ion-icon[slot=end]){margin-left:unset;margin-right:unset;-webkit-margin-start:0.3em;margin-inline-start:0.3em;-webkit-margin-end:-0.2em;margin-inline-end:-0.2em}}::slotted(ion-icon[slot=icon-only]){font-size:1.8em}ion-ripple-effect{color:var(--ripple-color)}.button-native::after{left:0;right:0;top:0;bottom:0;position:absolute;content:\"\";opacity:0}:host(.ion-activated){color:var(--color-activated)}:host(.ion-activated) .button-native::after{background:var(--background-activated);opacity:var(--background-activated-opacity)}:host(.ion-focused){color:var(--color-focused)}:host(.ion-focused) .button-native::after{background:var(--background-focused);opacity:var(--background-focused-opacity)}@media (any-hover: hover){:host(:hover){color:var(--color-hover)}:host(:hover) .button-native::after{background:var(--background-hover);opacity:var(--background-hover-opacity)}}:host(.button-solid.ion-color) .button-native{background:var(--ion-color-base);color:var(--ion-color-contrast)}:host(.button-outline.ion-color) .button-native{border-color:var(--ion-color-base);background:transparent;color:var(--ion-color-base)}:host(.button-clear.ion-color) .button-native{background:transparent;color:var(--ion-color-base)}:host(.in-toolbar:not(.ion-color):not(.in-toolbar-color)) .button-native{color:var(--ion-toolbar-color, var(--color))}:host(.button-outline.in-toolbar:not(.ion-color):not(.in-toolbar-color)) .button-native{border-color:var(--ion-toolbar-color, var(--color, var(--border-color)))}:host(.button-solid.in-toolbar:not(.ion-color):not(.in-toolbar-color)) .button-native{background:var(--ion-toolbar-color, var(--background));color:var(--ion-toolbar-background, var(--color))}:host{--border-radius:4px;--padding-top:0;--padding-bottom:0;--padding-start:1.1em;--padding-end:1.1em;--transition:box-shadow 280ms cubic-bezier(.4, 0, .2, 1),\n background-color 15ms linear,\n color 15ms linear;margin-left:2px;margin-right:2px;margin-top:4px;margin-bottom:4px;height:36px;font-size:14px;font-weight:500;letter-spacing:0.06em;text-transform:uppercase}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host{margin-left:unset;margin-right:unset;-webkit-margin-start:2px;margin-inline-start:2px;-webkit-margin-end:2px;margin-inline-end:2px}}:host(.button-solid){--background-activated:transparent;--background-hover:var(--ion-color-primary-contrast, #fff);--background-focused:var(--ion-color-primary-contrast, #fff);--background-activated-opacity:0;--background-focused-opacity:.24;--background-hover-opacity:.08;--box-shadow:0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12)}:host(.button-solid.ion-activated){--box-shadow:0 5px 5px -3px rgba(0, 0, 0, 0.2), 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12)}:host(.button-outline){--border-width:2px;--border-style:solid;--box-shadow:none;--background-activated:transparent;--background-focused:var(--ion-color-primary, #3880ff);--background-hover:var(--ion-color-primary, #3880ff);--background-activated-opacity:0;--background-focused-opacity:.12;--background-hover-opacity:.04}:host(.button-outline.ion-activated.ion-color) .button-native{background:transparent}:host(.button-clear){--background-activated:transparent;--background-focused:var(--ion-color-primary, #3880ff);--background-hover:var(--ion-color-primary, #3880ff);--background-activated-opacity:0;--background-focused-opacity:.12;--background-hover-opacity:.04}:host(.button-round){--border-radius:64px;--padding-top:0;--padding-start:26px;--padding-end:26px;--padding-bottom:0}:host(.button-large){--padding-top:0;--padding-start:1em;--padding-end:1em;--padding-bottom:0;height:2.8em;font-size:20px}:host(.button-small){--padding-top:0;--padding-start:0.9em;--padding-end:0.9em;--padding-bottom:0;height:2.1em;font-size:13px}:host(.button-strong){font-weight:bold}::slotted(ion-icon[slot=icon-only]){padding-left:0;padding-right:0;padding-top:0;padding-bottom:0}:host(.button-solid.ion-color.ion-focused) .button-native::after{background:var(--ion-color-contrast)}:host(.button-clear.ion-color.ion-focused) .button-native::after,:host(.button-outline.ion-color.ion-focused) .button-native::after{background:var(--ion-color-base)}@media (any-hover: hover){:host(.button-solid.ion-color:hover) .button-native::after{background:var(--ion-color-contrast)}:host(.button-clear.ion-color:hover) .button-native::after,:host(.button-outline.ion-color:hover) .button-native::after{background:var(--ion-color-base)}}";
|
13
|
+
|
14
|
+
const Button = class {
|
15
|
+
constructor(hostRef) {
|
16
|
+
index.registerInstance(this, hostRef);
|
17
|
+
this.ionFocus = index.createEvent(this, "ionFocus", 7);
|
18
|
+
this.ionBlur = index.createEvent(this, "ionBlur", 7);
|
19
|
+
this.inItem = false;
|
20
|
+
this.inListHeader = false;
|
21
|
+
this.inToolbar = false;
|
22
|
+
this.inheritedAttributes = {};
|
23
|
+
/**
|
24
|
+
* The type of button.
|
25
|
+
*/
|
26
|
+
this.buttonType = 'button';
|
27
|
+
/**
|
28
|
+
* If `true`, the user cannot interact with the button.
|
29
|
+
*/
|
30
|
+
this.disabled = false;
|
31
|
+
/**
|
32
|
+
* When using a router, it specifies the transition direction when navigating to
|
33
|
+
* another page using `href`.
|
34
|
+
*/
|
35
|
+
this.routerDirection = 'forward';
|
36
|
+
/**
|
37
|
+
* If `true`, activates a button with a heavier font weight.
|
38
|
+
*/
|
39
|
+
this.strong = false;
|
40
|
+
/**
|
41
|
+
* The type of the button.
|
42
|
+
*/
|
43
|
+
this.type = 'button';
|
44
|
+
this.handleClick = (ev) => {
|
45
|
+
if (this.type === 'button') {
|
46
|
+
theme.openURL(this.href, ev, this.routerDirection, this.routerAnimation);
|
47
|
+
}
|
48
|
+
else if (helpers.hasShadowDom(this.el)) {
|
49
|
+
// this button wants to specifically submit a form
|
50
|
+
// climb up the dom to see if we're in a <form>
|
51
|
+
// and if so, then use JS to submit it
|
52
|
+
const form = this.el.closest('form');
|
53
|
+
if (form) {
|
54
|
+
ev.preventDefault();
|
55
|
+
const fakeButton = document.createElement('button');
|
56
|
+
fakeButton.type = this.type;
|
57
|
+
fakeButton.style.display = 'none';
|
58
|
+
form.appendChild(fakeButton);
|
59
|
+
fakeButton.click();
|
60
|
+
fakeButton.remove();
|
61
|
+
}
|
62
|
+
}
|
63
|
+
};
|
64
|
+
this.onFocus = () => {
|
65
|
+
this.ionFocus.emit();
|
66
|
+
};
|
67
|
+
this.onBlur = () => {
|
68
|
+
this.ionBlur.emit();
|
69
|
+
};
|
70
|
+
}
|
71
|
+
componentWillLoad() {
|
72
|
+
this.inToolbar = !!this.el.closest('ion-buttons');
|
73
|
+
this.inListHeader = !!this.el.closest('ion-list-header');
|
74
|
+
this.inItem = !!this.el.closest('ion-item') || !!this.el.closest('ion-item-divider');
|
75
|
+
this.inheritedAttributes = helpers.inheritAriaAttributes(this.el);
|
76
|
+
}
|
77
|
+
get hasIconOnly() {
|
78
|
+
return !!this.el.querySelector('[slot="icon-only"]');
|
79
|
+
}
|
80
|
+
get rippleType() {
|
81
|
+
const hasClearFill = this.fill === undefined || this.fill === 'clear';
|
82
|
+
// If the button is in a toolbar, has a clear fill (which is the default)
|
83
|
+
// and only has an icon we use the unbounded "circular" ripple effect
|
84
|
+
if (hasClearFill && this.hasIconOnly && this.inToolbar) {
|
85
|
+
return 'unbounded';
|
86
|
+
}
|
87
|
+
return 'bounded';
|
88
|
+
}
|
89
|
+
render() {
|
90
|
+
const mode = ionicGlobal.getIonMode(this);
|
91
|
+
const { buttonType, type, disabled, rel, target, size, href, color, expand, hasIconOnly, shape, strong, inheritedAttributes, } = this;
|
92
|
+
const finalSize = size === undefined && this.inItem ? 'small' : size;
|
93
|
+
const TagType = href === undefined ? 'button' : 'a';
|
94
|
+
const attrs = TagType === 'button'
|
95
|
+
? { type }
|
96
|
+
: {
|
97
|
+
download: this.download,
|
98
|
+
href,
|
99
|
+
rel,
|
100
|
+
target,
|
101
|
+
};
|
102
|
+
let fill = this.fill;
|
103
|
+
if (fill === undefined) {
|
104
|
+
fill = this.inToolbar || this.inListHeader ? 'clear' : 'solid';
|
105
|
+
}
|
106
|
+
return (index.h(index.Host, { onClick: this.handleClick, "aria-disabled": disabled ? 'true' : null, class: theme.createColorClasses(color, {
|
107
|
+
[mode]: true,
|
108
|
+
[buttonType]: true,
|
109
|
+
[`${buttonType}-${expand}`]: expand !== undefined,
|
110
|
+
[`${buttonType}-${finalSize}`]: finalSize !== undefined,
|
111
|
+
[`${buttonType}-${shape}`]: shape !== undefined,
|
112
|
+
[`${buttonType}-${fill}`]: true,
|
113
|
+
[`${buttonType}-strong`]: strong,
|
114
|
+
'in-toolbar': theme.hostContext('ion-toolbar', this.el),
|
115
|
+
'in-toolbar-color': theme.hostContext('ion-toolbar[color]', this.el),
|
116
|
+
'button-has-icon-only': hasIconOnly,
|
117
|
+
'button-disabled': disabled,
|
118
|
+
'ion-activatable': true,
|
119
|
+
'ion-focusable': true,
|
120
|
+
}) }, index.h(TagType, Object.assign({}, attrs, { class: "button-native", part: "native", disabled: disabled, onFocus: this.onFocus, onBlur: this.onBlur }, inheritedAttributes), index.h("span", { class: "button-inner" }, index.h("slot", { name: "icon-only" }), index.h("slot", { name: "start" }), index.h("slot", null), index.h("slot", { name: "end" })), mode === 'md' && index.h("ion-ripple-effect", { type: this.rippleType }))));
|
121
|
+
}
|
122
|
+
get el() { return index.getElement(this); }
|
123
|
+
};
|
124
|
+
Button.style = {
|
125
|
+
ios: buttonIosCss,
|
126
|
+
md: buttonMdCss
|
127
|
+
};
|
128
|
+
|
129
|
+
exports.ion_button = Button;
|
@@ -0,0 +1,91 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
4
|
+
|
5
|
+
const index = require('./index-51e8292e.js');
|
6
|
+
const ionicGlobal = require('./ionic-global-2cde9d3a.js');
|
7
|
+
const theme = require('./theme-b0b295c1.js');
|
8
|
+
|
9
|
+
const cardIosCss = ":host{--ion-safe-area-left:0px;--ion-safe-area-right:0px;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:block;position:relative;background:var(--background);color:var(--color);font-family:var(--ion-font-family, inherit);overflow:hidden}:host(.ion-color){background:var(--ion-color-base);color:var(--ion-color-contrast)}:host(.card-disabled){cursor:default;opacity:0.3;pointer-events:none}.card-native{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;display:block;width:100%;min-height:var(--min-height);transition:var(--transition);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);outline:none;background:inherit}.card-native::-moz-focus-inner{border:0}button,a{cursor:pointer;user-select:none;-webkit-user-drag:none}ion-ripple-effect{color:var(--ripple-color)}:host{--background:var(--ion-card-background, var(--ion-item-background, var(--ion-background-color, #fff)));--color:var(--ion-card-color, var(--ion-item-color, var(--ion-color-step-600, #666666)));margin-left:16px;margin-right:16px;margin-top:24px;margin-bottom:24px;border-radius:8px;transform:translateZ(0);transition:transform 500ms cubic-bezier(0.12, 0.72, 0.29, 1);font-size:14px;box-shadow:0 4px 16px rgba(0, 0, 0, 0.12)}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host{margin-left:unset;margin-right:unset;-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:16px;margin-inline-end:16px}}:host(.ion-activated){transform:scale3d(0.97, 0.97, 1)}";
|
10
|
+
|
11
|
+
const cardMdCss = ":host{--ion-safe-area-left:0px;--ion-safe-area-right:0px;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:block;position:relative;background:var(--background);color:var(--color);font-family:var(--ion-font-family, inherit);overflow:hidden}:host(.ion-color){background:var(--ion-color-base);color:var(--ion-color-contrast)}:host(.card-disabled){cursor:default;opacity:0.3;pointer-events:none}.card-native{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;display:block;width:100%;min-height:var(--min-height);transition:var(--transition);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);outline:none;background:inherit}.card-native::-moz-focus-inner{border:0}button,a{cursor:pointer;user-select:none;-webkit-user-drag:none}ion-ripple-effect{color:var(--ripple-color)}:host{--background:var(--ion-card-background, var(--ion-item-background, var(--ion-background-color, #fff)));--color:var(--ion-card-color, var(--ion-item-color, var(--ion-color-step-550, #737373)));margin-left:10px;margin-right:10px;margin-top:10px;margin-bottom:10px;border-radius:4px;font-size:14px;box-shadow:0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12)}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host{margin-left:unset;margin-right:unset;-webkit-margin-start:10px;margin-inline-start:10px;-webkit-margin-end:10px;margin-inline-end:10px}}";
|
12
|
+
|
13
|
+
const Card = class {
|
14
|
+
constructor(hostRef) {
|
15
|
+
index.registerInstance(this, hostRef);
|
16
|
+
/**
|
17
|
+
* If `true`, a button tag will be rendered and the card will be tappable.
|
18
|
+
*/
|
19
|
+
this.button = false;
|
20
|
+
/**
|
21
|
+
* The type of the button. Only used when an `onclick` or `button` property is present.
|
22
|
+
*/
|
23
|
+
this.type = 'button';
|
24
|
+
/**
|
25
|
+
* If `true`, the user cannot interact with the card.
|
26
|
+
*/
|
27
|
+
this.disabled = false;
|
28
|
+
/**
|
29
|
+
* When using a router, it specifies the transition direction when navigating to
|
30
|
+
* another page using `href`.
|
31
|
+
*/
|
32
|
+
this.routerDirection = 'forward';
|
33
|
+
}
|
34
|
+
isClickable() {
|
35
|
+
return this.href !== undefined || this.button;
|
36
|
+
}
|
37
|
+
renderCard(mode) {
|
38
|
+
const clickable = this.isClickable();
|
39
|
+
if (!clickable) {
|
40
|
+
return [index.h("slot", null)];
|
41
|
+
}
|
42
|
+
const { href, routerAnimation, routerDirection } = this;
|
43
|
+
const TagType = clickable ? (href === undefined ? 'button' : 'a') : 'div';
|
44
|
+
const attrs = TagType === 'button'
|
45
|
+
? { type: this.type }
|
46
|
+
: {
|
47
|
+
download: this.download,
|
48
|
+
href: this.href,
|
49
|
+
rel: this.rel,
|
50
|
+
target: this.target,
|
51
|
+
};
|
52
|
+
return (index.h(TagType, Object.assign({}, attrs, { class: "card-native", part: "native", disabled: this.disabled, onClick: (ev) => theme.openURL(href, ev, routerDirection, routerAnimation) }), index.h("slot", null), clickable && mode === 'md' && index.h("ion-ripple-effect", null)));
|
53
|
+
}
|
54
|
+
render() {
|
55
|
+
const mode = ionicGlobal.getIonMode(this);
|
56
|
+
return (index.h(index.Host, { class: theme.createColorClasses(this.color, {
|
57
|
+
[mode]: true,
|
58
|
+
'card-disabled': this.disabled,
|
59
|
+
'ion-activatable': this.isClickable(),
|
60
|
+
}) }, this.renderCard(mode)));
|
61
|
+
}
|
62
|
+
};
|
63
|
+
Card.style = {
|
64
|
+
ios: cardIosCss,
|
65
|
+
md: cardMdCss
|
66
|
+
};
|
67
|
+
|
68
|
+
const cardContentIosCss = "ion-card-content{display:block;position:relative}.card-content-ios{padding-left:20px;padding-right:20px;padding-top:20px;padding-bottom:20px;font-size:16px;line-height:1.4}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.card-content-ios{padding-left:unset;padding-right:unset;-webkit-padding-start:20px;padding-inline-start:20px;-webkit-padding-end:20px;padding-inline-end:20px}}.card-content-ios h1{margin-left:0;margin-right:0;margin-top:0;margin-bottom:2px;font-size:24px;font-weight:normal}.card-content-ios h2{margin-left:0;margin-right:0;margin-top:2px;margin-bottom:2px;font-size:16px;font-weight:normal}.card-content-ios h3,.card-content-ios h4,.card-content-ios h5,.card-content-ios h6{margin-left:0;margin-right:0;margin-top:2px;margin-bottom:2px;font-size:14px;font-weight:normal}.card-content-ios p{margin-left:0;margin-right:0;margin-top:0;margin-bottom:2px;font-size:14px}ion-card-header+.card-content-ios{padding-top:0}";
|
69
|
+
|
70
|
+
const cardContentMdCss = "ion-card-content{display:block;position:relative}.card-content-md{padding-left:16px;padding-right:16px;padding-top:13px;padding-bottom:13px;font-size:14px;line-height:1.5}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.card-content-md{padding-left:unset;padding-right:unset;-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px}}.card-content-md h1{margin-left:0;margin-right:0;margin-top:0;margin-bottom:2px;font-size:24px;font-weight:normal}.card-content-md h2{margin-left:0;margin-right:0;margin-top:2px;margin-bottom:2px;font-size:16px;font-weight:normal}.card-content-md h3,.card-content-md h4,.card-content-md h5,.card-content-md h6{margin-left:0;margin-right:0;margin-top:2px;margin-bottom:2px;font-size:14px;font-weight:normal}.card-content-md p{margin-left:0;margin-right:0;margin-top:0;margin-bottom:2px;font-size:14px;font-weight:normal;line-height:1.5}ion-card-header+.card-content-md{padding-top:0}";
|
71
|
+
|
72
|
+
const CardContent = class {
|
73
|
+
constructor(hostRef) {
|
74
|
+
index.registerInstance(this, hostRef);
|
75
|
+
}
|
76
|
+
render() {
|
77
|
+
const mode = ionicGlobal.getIonMode(this);
|
78
|
+
return (index.h(index.Host, { class: {
|
79
|
+
[mode]: true,
|
80
|
+
// Used internally for styling
|
81
|
+
[`card-content-${mode}`]: true,
|
82
|
+
} }));
|
83
|
+
}
|
84
|
+
};
|
85
|
+
CardContent.style = {
|
86
|
+
ios: cardContentIosCss,
|
87
|
+
md: cardContentMdCss
|
88
|
+
};
|
89
|
+
|
90
|
+
exports.ion_card = Card;
|
91
|
+
exports.ion_card_content = CardContent;
|