@limetech/lime-crm-building-blocks 1.0.1 → 1.2.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 (103) hide show
  1. package/dist/cjs/currencies-98ac425a.js +168 -0
  2. package/dist/cjs/{index-5325ac3d.js → index-9b027564.js} +148 -3
  3. package/dist/cjs/lime-crm-building-blocks.cjs.js +7 -3
  4. package/dist/cjs/limebb-currency-picker.cjs.entry.js +403 -0
  5. package/dist/cjs/limebb-example-currency-picker-european.cjs.entry.js +21 -0
  6. package/dist/cjs/limebb-example-currency-picker-nordic.cjs.entry.js +21 -0
  7. package/dist/cjs/limebb-example-currency-picker.cjs.entry.js +20 -0
  8. package/dist/cjs/limebb-example-navigation-button-back.cjs.entry.js +16 -0
  9. package/dist/cjs/limebb-example-navigation-button-close.cjs.entry.js +16 -0
  10. package/dist/cjs/limebb-example-navigation-button-expand.cjs.entry.js +16 -0
  11. package/dist/cjs/limebb-example-navigation-button-float.cjs.entry.js +16 -0
  12. package/dist/cjs/limebb-example-navigation-button-new-tab.cjs.entry.js +16 -0
  13. package/dist/cjs/limebb-example-navigation-button-shrink.cjs.entry.js +16 -0
  14. package/dist/cjs/limebb-navigation-button.cjs.entry.js +2 -2
  15. package/dist/cjs/loader.cjs.js +4 -3
  16. package/dist/collection/collection-manifest.json +13 -3
  17. package/dist/collection/components/currency-picker/currencies.js +162 -0
  18. package/dist/collection/components/currency-picker/currency-picker.js +252 -0
  19. package/dist/collection/components/currency-picker/examples/currency-picker-european.js +25 -0
  20. package/dist/collection/components/currency-picker/examples/currency-picker-nordic.js +25 -0
  21. package/dist/collection/components/currency-picker/examples/currency-picker.js +24 -0
  22. package/dist/collection/components/navigation-button/examples/navigation-button-back.js +13 -0
  23. package/dist/collection/components/navigation-button/examples/navigation-button-close.js +12 -0
  24. package/dist/collection/components/navigation-button/examples/navigation-button-expand.js +18 -0
  25. package/dist/collection/components/navigation-button/examples/navigation-button-float.js +14 -0
  26. package/dist/collection/components/navigation-button/examples/navigation-button-new-tab.js +17 -0
  27. package/dist/collection/components/navigation-button/examples/navigation-button-shrink.js +15 -0
  28. package/dist/collection/components/navigation-button/navigation-button.css +6 -3
  29. package/dist/collection/components/navigation-button/navigation-button.js +23 -1
  30. package/dist/components/currency-picker.js +585 -0
  31. package/dist/components/index.d.ts +19 -0
  32. package/dist/components/index.js +11 -1
  33. package/dist/components/limebb-currency-picker.d.ts +11 -0
  34. package/dist/components/limebb-currency-picker.js +6 -0
  35. package/dist/components/limebb-example-currency-picker-european.d.ts +11 -0
  36. package/dist/components/limebb-example-currency-picker-european.js +42 -0
  37. package/dist/components/limebb-example-currency-picker-nordic.d.ts +11 -0
  38. package/dist/components/limebb-example-currency-picker-nordic.js +42 -0
  39. package/dist/components/limebb-example-currency-picker.d.ts +11 -0
  40. package/dist/components/limebb-example-currency-picker.js +42 -0
  41. package/dist/components/limebb-example-navigation-button-back.d.ts +11 -0
  42. package/dist/components/limebb-example-navigation-button-back.js +36 -0
  43. package/dist/components/limebb-example-navigation-button-close.d.ts +11 -0
  44. package/dist/components/limebb-example-navigation-button-close.js +36 -0
  45. package/dist/components/limebb-example-navigation-button-expand.d.ts +11 -0
  46. package/dist/components/limebb-example-navigation-button-expand.js +36 -0
  47. package/dist/components/limebb-example-navigation-button-float.d.ts +11 -0
  48. package/dist/components/limebb-example-navigation-button-float.js +36 -0
  49. package/dist/components/limebb-example-navigation-button-new-tab.d.ts +11 -0
  50. package/dist/components/limebb-example-navigation-button-new-tab.js +36 -0
  51. package/dist/components/limebb-example-navigation-button-shrink.d.ts +11 -0
  52. package/dist/components/limebb-example-navigation-button-shrink.js +36 -0
  53. package/dist/components/limebb-navigation-button.js +1 -72
  54. package/dist/components/navigation-button.js +74 -0
  55. package/dist/esm/currencies-0d90053e.js +164 -0
  56. package/dist/esm/{index-41bee89a.js → index-61b37c41.js} +147 -4
  57. package/dist/esm/lime-crm-building-blocks.js +4 -3
  58. package/dist/esm/limebb-currency-picker.entry.js +399 -0
  59. package/dist/esm/limebb-example-currency-picker-european.entry.js +17 -0
  60. package/dist/esm/limebb-example-currency-picker-nordic.entry.js +17 -0
  61. package/dist/esm/limebb-example-currency-picker.entry.js +16 -0
  62. package/dist/esm/limebb-example-navigation-button-back.entry.js +12 -0
  63. package/dist/esm/limebb-example-navigation-button-close.entry.js +12 -0
  64. package/dist/esm/limebb-example-navigation-button-expand.entry.js +12 -0
  65. package/dist/esm/limebb-example-navigation-button-float.entry.js +12 -0
  66. package/dist/esm/limebb-example-navigation-button-new-tab.entry.js +12 -0
  67. package/dist/esm/limebb-example-navigation-button-shrink.entry.js +12 -0
  68. package/dist/esm/limebb-navigation-button.entry.js +2 -2
  69. package/dist/esm/loader.js +4 -3
  70. package/dist/esm/polyfills/css-shim.js +1 -1
  71. package/dist/lime-crm-building-blocks/lime-crm-building-blocks.esm.js +1 -1
  72. package/dist/lime-crm-building-blocks/p-0123dd0a.js +2 -0
  73. package/dist/lime-crm-building-blocks/p-05f1998d.entry.js +1 -0
  74. package/dist/lime-crm-building-blocks/p-1457ed35.entry.js +1 -0
  75. package/dist/lime-crm-building-blocks/p-1a6ab3f4.entry.js +1 -0
  76. package/dist/lime-crm-building-blocks/p-3d712686.entry.js +1 -0
  77. package/dist/lime-crm-building-blocks/p-4fda5e50.entry.js +1 -0
  78. package/dist/lime-crm-building-blocks/p-892006f7.entry.js +1 -0
  79. package/dist/lime-crm-building-blocks/p-a4c1981c.js +1 -0
  80. package/dist/lime-crm-building-blocks/p-ac0ab1b2.entry.js +1 -0
  81. package/dist/lime-crm-building-blocks/p-c23d4390.entry.js +1 -0
  82. package/dist/lime-crm-building-blocks/p-d9b23842.entry.js +1 -0
  83. package/dist/lime-crm-building-blocks/p-e524aa4a.entry.js +1 -0
  84. package/dist/lime-crm-building-blocks/p-f205a442.entry.js +1 -0
  85. package/dist/types/components/currency-picker/currencies.d.ts +4 -0
  86. package/dist/types/components/currency-picker/currency-picker.d.ts +76 -0
  87. package/dist/types/components/currency-picker/examples/currency-picker-european.d.ts +10 -0
  88. package/dist/types/components/currency-picker/examples/currency-picker-nordic.d.ts +10 -0
  89. package/dist/types/components/currency-picker/examples/currency-picker.d.ts +10 -0
  90. package/dist/types/components/navigation-button/examples/navigation-button-back.d.ts +8 -0
  91. package/dist/types/components/navigation-button/examples/navigation-button-close.d.ts +7 -0
  92. package/dist/types/components/navigation-button/examples/navigation-button-expand.d.ts +13 -0
  93. package/dist/types/components/navigation-button/examples/navigation-button-float.d.ts +9 -0
  94. package/dist/types/components/navigation-button/examples/navigation-button-new-tab.d.ts +12 -0
  95. package/dist/types/components/navigation-button/examples/navigation-button-shrink.d.ts +10 -0
  96. package/dist/types/components/navigation-button/navigation-button.d.ts +23 -15
  97. package/dist/types/components/navigation-button/navigation-button.types.d.ts +1 -1
  98. package/dist/types/components.d.ts +598 -2
  99. package/dist/types/stencil-public-runtime.d.ts +59 -3
  100. package/loader/index.d.ts +9 -0
  101. package/package.json +19 -10
  102. package/dist/lime-crm-building-blocks/p-04a5befa.js +0 -2
  103. package/dist/lime-crm-building-blocks/p-86ce009c.entry.js +0 -1
@@ -0,0 +1,168 @@
1
+ 'use strict';
2
+
3
+ const nordicMarketCurrencies = [
4
+ { secondaryText: 'Euro', text: 'EUR', icon: 'euro' },
5
+ { secondaryText: 'US Dollar', text: 'USD', icon: 'us_dollar' },
6
+ { secondaryText: 'Swedish Krona', text: 'SEK', icon: 'sek' },
7
+ { secondaryText: 'Norwegian Krone', text: 'NOK', icon: 'sek' },
8
+ { secondaryText: 'Danish Krone', text: 'DKK', icon: 'sek' },
9
+ { secondaryText: 'Icelandic Króna', text: 'ISK', icon: 'sek' },
10
+ ];
11
+ const europeanMarketCurrencies = [
12
+ ...nordicMarketCurrencies,
13
+ { secondaryText: 'Albanian Lek', text: 'ALL' },
14
+ { secondaryText: 'Armenian Dram', text: 'AMD' },
15
+ { secondaryText: 'Azerbaijani Manat', text: 'AZN' },
16
+ { secondaryText: 'Belarusian Ruble', text: 'BYR' },
17
+ { secondaryText: 'Bosnia-Herzegovina Convertible Mark', text: 'BAM' },
18
+ { secondaryText: 'British Pound Sterling', text: 'GBP' },
19
+ { secondaryText: 'Bulgarian Lev', text: 'BGN' },
20
+ { secondaryText: 'Croatian Kuna', text: 'HRK' },
21
+ { secondaryText: 'Czech Republic Koruna', text: 'CZK' },
22
+ { secondaryText: 'Georgian Lari', text: 'GEL' },
23
+ { secondaryText: 'Hungarian Forint', text: 'HUF' },
24
+ { secondaryText: 'Moldovan Leu', text: 'MDL' },
25
+ { secondaryText: 'Macedonian Denar', text: 'MKD' },
26
+ { secondaryText: 'Polish Zloty', text: 'PLN' },
27
+ { secondaryText: 'Romanian Leu', text: 'RON' },
28
+ { secondaryText: 'Russian Ruble', text: 'RUB' },
29
+ { secondaryText: 'Serbian Dinar', text: 'RSD' },
30
+ { secondaryText: 'Swiss Franc', text: 'CHF' },
31
+ { secondaryText: 'Turkish Lira', text: 'TRY' },
32
+ { secondaryText: 'Ukrainian Hryvnia', text: 'UAH' },
33
+ ];
34
+ const allCurrencies = [
35
+ ...europeanMarketCurrencies,
36
+ { secondaryText: 'Afghan Afghani', text: 'AFA' },
37
+ { secondaryText: 'Algerian Dinar', text: 'DZD' },
38
+ { secondaryText: 'Angolan Kwanza', text: 'AOA' },
39
+ { secondaryText: 'Argentine Peso', text: 'ARS' },
40
+ { secondaryText: 'Aruban Florin', text: 'AWG' },
41
+ { secondaryText: 'Australian Dollar', text: 'AUD' },
42
+ { secondaryText: 'Bahamian Dollar', text: 'BSD' },
43
+ { secondaryText: 'Bahraini Dinar', text: 'BHD' },
44
+ { secondaryText: 'Bangladeshi Taka', text: 'BDT' },
45
+ { secondaryText: 'Barbadian Dollar', text: 'BBD' },
46
+ { secondaryText: 'Belize Dollar', text: 'BZD' },
47
+ { secondaryText: 'Bermudan Dollar', text: 'BMD' },
48
+ { secondaryText: 'Bhutanese Ngultrum', text: 'BTN' },
49
+ { secondaryText: 'Bolivian Boliviano', text: 'BOB' },
50
+ { secondaryText: 'Botswanan Pula', text: 'BWP' },
51
+ { secondaryText: 'Brazilian Real', text: 'BRL' },
52
+ { secondaryText: 'Brunei Dollar', text: 'BND' },
53
+ { secondaryText: 'Burundian Franc', text: 'BIF' },
54
+ { secondaryText: 'Cambodian Riel', text: 'KHR' },
55
+ { secondaryText: 'Canadian Dollar', text: 'CAD' },
56
+ { secondaryText: 'Cape Verdean Escudo', text: 'CVE' },
57
+ { secondaryText: 'Cayman Islands Dollar', text: 'KYD' },
58
+ { secondaryText: 'CFA Franc BCEAO', text: 'XOF' },
59
+ { secondaryText: 'CFA Franc BEAC', text: 'XAF' },
60
+ { secondaryText: 'CFP Franc', text: 'XPF' },
61
+ { secondaryText: 'Chilean Peso', text: 'CLP' },
62
+ { secondaryText: 'Chinese Yuan', text: 'CNY' },
63
+ { secondaryText: 'Colombian Peso', text: 'COP' },
64
+ { secondaryText: 'Comorian Franc', text: 'KMF' },
65
+ { secondaryText: 'Congolese Franc', text: 'CDF' },
66
+ { secondaryText: 'Costa Rican Colón', text: 'CRC' },
67
+ { secondaryText: 'Cuban Convertible Peso', text: 'CUC' },
68
+ { secondaryText: 'Djiboutian Franc', text: 'DJF' },
69
+ { secondaryText: 'Dominican Peso', text: 'DOP' },
70
+ { secondaryText: 'East Caribbean Dollar', text: 'XCD' },
71
+ { secondaryText: 'Egyptian Pound', text: 'EGP' },
72
+ { secondaryText: 'Eritrean Nakfa', text: 'ERN' },
73
+ { secondaryText: 'Ethiopian Birr', text: 'ETB' },
74
+ { secondaryText: 'Falkland Islands Pound', text: 'FKP' },
75
+ { secondaryText: 'Fijian Dollar', text: 'FJD' },
76
+ { secondaryText: 'Gambian Dalasi', text: 'GMD' },
77
+ { secondaryText: 'Ghanaian Cedi', text: 'GHS' },
78
+ { secondaryText: 'Gibraltar Pound', text: 'GIP' },
79
+ { secondaryText: 'Guatemalan Quetzal', text: 'GTQ' },
80
+ { secondaryText: 'Guinean Franc', text: 'GNF' },
81
+ { secondaryText: 'Guyanaese Dollar', text: 'GYD' },
82
+ { secondaryText: 'Haitian Gourde', text: 'HTG' },
83
+ { secondaryText: 'Honduran Lempira', text: 'HNL' },
84
+ { secondaryText: 'Hong Kong Dollar', text: 'HKD' },
85
+ { secondaryText: 'Indian Rupee', text: 'INR' },
86
+ { secondaryText: 'Indonesian Rupiah', text: 'IDR' },
87
+ { secondaryText: 'Iranian Rial', text: 'IRR' },
88
+ { secondaryText: 'Iraqi Dinar', text: 'IQD' },
89
+ { secondaryText: 'Israeli New Sheqel', text: 'ILS' },
90
+ { secondaryText: 'Jamaican Dollar', text: 'JMD' },
91
+ { secondaryText: 'Japanese Yen', text: 'JPY' },
92
+ { secondaryText: 'Jordanian Dinar', text: 'JOD' },
93
+ { secondaryText: 'Kazakhstani Tenge', text: 'KZT' },
94
+ { secondaryText: 'Kenyan Shilling', text: 'KES' },
95
+ { secondaryText: 'Kuwaiti Dinar', text: 'KWD' },
96
+ { secondaryText: 'Kyrgystani Som', text: 'KGS' },
97
+ { secondaryText: 'Laotian Kip', text: 'LAK' },
98
+ { secondaryText: 'Lebanese Pound', text: 'LBP' },
99
+ { secondaryText: 'Lesotho Loti', text: 'LSL' },
100
+ { secondaryText: 'Liberian Dollar', text: 'LRD' },
101
+ { secondaryText: 'Libyan Dinar', text: 'LYD' },
102
+ { secondaryText: 'Macanese Pataca', text: 'MOP' },
103
+ { secondaryText: 'Malagasy Ariary', text: 'MGA' },
104
+ { secondaryText: 'Malawian Kwacha', text: 'MWK' },
105
+ { secondaryText: 'Malaysian Ringgit', text: 'MYR' },
106
+ { secondaryText: 'Maldivian Rufiyaa', text: 'MVR' },
107
+ { secondaryText: 'Mauritanian Ouguiya', text: 'MRO' },
108
+ { secondaryText: 'Mauritian Rupee', text: 'MUR' },
109
+ { secondaryText: 'Mexican Peso', text: 'MXN' },
110
+ { secondaryText: 'Mongolian Tugrik', text: 'MNT' },
111
+ { secondaryText: 'Moroccan Dirham', text: 'MAD' },
112
+ { secondaryText: 'Mozambican Metical', text: 'MZM' },
113
+ { secondaryText: 'Myanmar Kyat', text: 'MMK' },
114
+ { secondaryText: 'Namibian Dollar', text: 'NAD' },
115
+ { secondaryText: 'Nepalese Rupee', text: 'NPR' },
116
+ { secondaryText: 'New Taiwan Dollar', text: 'TWD' },
117
+ { secondaryText: 'New Zealand Dollar', text: 'NZD' },
118
+ { secondaryText: 'Nicaraguan Córdoba', text: 'NIO' },
119
+ { secondaryText: 'Nigerian Naira', text: 'NGN' },
120
+ { secondaryText: 'North Korean Won', text: 'KPW' },
121
+ { secondaryText: 'Omani Rial', text: 'OMR' },
122
+ { secondaryText: 'Pakistani Rupee', text: 'PKR' },
123
+ { secondaryText: 'Panamanian Balboa', text: 'PAB' },
124
+ { secondaryText: 'Papua New Guinean Kina', text: 'PGK' },
125
+ { secondaryText: 'Paraguayan Guarani', text: 'PYG' },
126
+ { secondaryText: 'Peruvian Nuevo Sol', text: 'PEN' },
127
+ { secondaryText: 'Philippine Peso', text: 'PHP' },
128
+ { secondaryText: 'Qatari Rial', text: 'QAR' },
129
+ { secondaryText: 'Rwandan Franc', text: 'RWF' },
130
+ { secondaryText: 'Salvadoran Colón', text: 'SVC' },
131
+ { secondaryText: 'Samoan Tala', text: 'WST' },
132
+ { secondaryText: 'Saudi Riyal', text: 'SAR' },
133
+ { secondaryText: 'Seychellois Rupee', text: 'SCR' },
134
+ { secondaryText: 'Sierra Leonean Leone', text: 'SLL' },
135
+ { secondaryText: 'Singapore Dollar', text: 'SGD' },
136
+ { secondaryText: 'Solomon Islands Dollar', text: 'SBD' },
137
+ { secondaryText: 'Somali Shilling', text: 'SOS' },
138
+ { secondaryText: 'South African Rand', text: 'ZAR' },
139
+ { secondaryText: 'South Korean Won', text: 'KRW' },
140
+ { secondaryText: 'Special Drawing Rights', text: 'XDR' },
141
+ { secondaryText: 'Sri Lankan Rupee', text: 'LKR' },
142
+ { secondaryText: 'St. Helena Pound', text: 'SHP' },
143
+ { secondaryText: 'Sudanese Pound', text: 'SDG' },
144
+ { secondaryText: 'Suritextse Dollar', text: 'SRD' },
145
+ { secondaryText: 'Swazi Lilangeni', text: 'SZL' },
146
+ { secondaryText: 'Syrian Pound', text: 'SYP' },
147
+ { secondaryText: 'São Tomé and Príncipe Dobra', text: 'STD' },
148
+ { secondaryText: 'Tajikistani Somoni', text: 'TJS' },
149
+ { secondaryText: 'Tanzanian Shilling', text: 'TZS' },
150
+ { secondaryText: 'Thai Baht', text: 'THB' },
151
+ { secondaryText: "Tongan Pa'anga", text: 'TOP' },
152
+ { secondaryText: 'Trinidad & Tobago Dollar', text: 'TTD' },
153
+ { secondaryText: 'Tunisian Dinar', text: 'TND' },
154
+ { secondaryText: 'Turkmenistani Manat', text: 'TMT' },
155
+ { secondaryText: 'Ugandan Shilling', text: 'UGX' },
156
+ { secondaryText: 'United Arab Emirates Dirham', text: 'AED' },
157
+ { secondaryText: 'Uruguayan Peso', text: 'UYU' },
158
+ { secondaryText: 'Uzbekistan Som', text: 'UZS' },
159
+ { secondaryText: 'Vanuatu Vatu', text: 'VUV' },
160
+ { secondaryText: 'Venezuelan BolÃvar', text: 'VEF' },
161
+ { secondaryText: 'Viettextse Dong', text: 'VND' },
162
+ { secondaryText: 'Yemeni Rial', text: 'YER' },
163
+ { secondaryText: 'Zambian Kwacha', text: 'ZMK' },
164
+ ];
165
+
166
+ exports.allCurrencies = allCurrencies;
167
+ exports.europeanMarketCurrencies = europeanMarketCurrencies;
168
+ exports.nordicMarketCurrencies = nordicMarketCurrencies;
@@ -63,6 +63,18 @@ const isComplexType = (o) => {
63
63
  o = typeof o;
64
64
  return o === 'object' || o === 'function';
65
65
  };
66
+ /**
67
+ * Helper method for querying a `meta` tag that contains a nonce value
68
+ * out of a DOM's head.
69
+ *
70
+ * @param doc The DOM containing the `head` to query against
71
+ * @returns The content of the meta tag representing the nonce value, or `undefined` if no tag
72
+ * exists or the tag has no content.
73
+ */
74
+ function queryNonceMetaTagContent(doc) {
75
+ var _a, _b, _c;
76
+ return (_c = (_b = (_a = doc.head) === null || _a === void 0 ? void 0 : _a.querySelector('meta[name="csp-nonce"]')) === null || _b === void 0 ? void 0 : _b.getAttribute('content')) !== null && _c !== void 0 ? _c : undefined;
77
+ }
66
78
  /**
67
79
  * Production h() function based on Preact by
68
80
  * Jason Miller (@developit)
@@ -71,7 +83,6 @@ const isComplexType = (o) => {
71
83
  *
72
84
  * Modified for Stencil's compiler and vdom
73
85
  */
74
- // const stack: any[] = [];
75
86
  // export function h(nodeName: string | d.FunctionalComponent, vnodeData: d.PropsType, child?: d.ChildType): d.VNode;
76
87
  // export function h(nodeName: string | d.FunctionalComponent, vnodeData: d.PropsType, ...children: d.ChildType[]): d.VNode;
77
88
  const h = (nodeName, vnodeData, ...children) => {
@@ -122,6 +133,14 @@ const h = (nodeName, vnodeData, ...children) => {
122
133
  }
123
134
  return vnode;
124
135
  };
136
+ /**
137
+ * A utility function for creating a virtual DOM node from a tag and some
138
+ * possible text content.
139
+ *
140
+ * @param tag the tag for this element
141
+ * @param text possible text content for the node
142
+ * @returns a newly-minted virtual DOM node
143
+ */
125
144
  const newVNode = (tag, text) => {
126
145
  const vnode = {
127
146
  $flags$: 0,
@@ -136,6 +155,12 @@ const newVNode = (tag, text) => {
136
155
  return vnode;
137
156
  };
138
157
  const Host = {};
158
+ /**
159
+ * Check whether a given node is a Host node or not
160
+ *
161
+ * @param node the virtual DOM node to check
162
+ * @returns whether it's a Host node or not
163
+ */
139
164
  const isHost = (node) => node && node.$tag$ === Host;
140
165
  /**
141
166
  * Parse a new property value for a given property type.
@@ -163,6 +188,11 @@ const isHost = (node) => node && node.$tag$ === Host;
163
188
  const parsePropertyValue = (propValue, propType) => {
164
189
  // ensure this value is of the correct prop type
165
190
  if (propValue != null && !isComplexType(propValue)) {
191
+ if (propType & 4 /* MEMBER_FLAGS.Boolean */) {
192
+ // per the HTML spec, any string value means it is a boolean true value
193
+ // but we'll cheat here and say that the string "false" is the boolean false
194
+ return propValue === 'false' ? false : propValue === '' || !!propValue;
195
+ }
166
196
  if (propType & 1 /* MEMBER_FLAGS.String */) {
167
197
  // could have been passed as a number or boolean
168
198
  // but we still want it as a string
@@ -175,6 +205,20 @@ const parsePropertyValue = (propValue, propType) => {
175
205
  // so no need to change to a different type
176
206
  return propValue;
177
207
  };
208
+ const getElement = (ref) => (getHostRef(ref).$hostElement$ );
209
+ const createEvent = (ref, name, flags) => {
210
+ const elm = getElement(ref);
211
+ return {
212
+ emit: (detail) => {
213
+ return emitEvent(elm, name, {
214
+ bubbles: !!(flags & 4 /* EVENT_FLAGS.Bubbles */),
215
+ composed: !!(flags & 2 /* EVENT_FLAGS.Composed */),
216
+ cancelable: !!(flags & 1 /* EVENT_FLAGS.Cancellable */),
217
+ detail,
218
+ });
219
+ },
220
+ };
221
+ };
178
222
  /**
179
223
  * Helper function to create & dispatch a custom Event on a provided target
180
224
  * @param elm the target of the Event
@@ -205,6 +249,7 @@ const registerStyle = (scopeId, cssText, allowCS) => {
205
249
  styles.set(scopeId, style);
206
250
  };
207
251
  const addStyle = (styleContainerNode, cmpMeta, mode, hostElm) => {
252
+ var _a;
208
253
  let scopeId = getScopeId(cmpMeta);
209
254
  const style = styles.get(scopeId);
210
255
  // if an element is NOT connected then getRootNode() will return the wrong root node
@@ -224,6 +269,11 @@ const addStyle = (styleContainerNode, cmpMeta, mode, hostElm) => {
224
269
  styleElm = doc.createElement('style');
225
270
  styleElm.innerHTML = style;
226
271
  }
272
+ // Apply CSP nonce to the style tag if it exists
273
+ const nonce = (_a = plt.$nonce$) !== null && _a !== void 0 ? _a : queryNonceMetaTagContent(doc);
274
+ if (nonce != null) {
275
+ styleElm.setAttribute('nonce', nonce);
276
+ }
227
277
  styleContainerNode.insertBefore(styleElm, styleContainerNode.querySelector('link'));
228
278
  }
229
279
  if (appliedStyles) {
@@ -268,7 +318,7 @@ const getScopeId = (cmp, mode) => 'sc-' + (cmp.$tagName$);
268
318
  const setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
269
319
  if (oldValue !== newValue) {
270
320
  let isProp = isMemberInElement(elm, memberName);
271
- memberName.toLowerCase();
321
+ let ln = memberName.toLowerCase();
272
322
  if (memberName === 'class') {
273
323
  const classList = elm.classList;
274
324
  const oldClasses = parseClassList(oldValue);
@@ -276,6 +326,45 @@ const setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
276
326
  classList.remove(...oldClasses.filter((c) => c && !newClasses.includes(c)));
277
327
  classList.add(...newClasses.filter((c) => c && !oldClasses.includes(c)));
278
328
  }
329
+ else if ((!isProp ) &&
330
+ memberName[0] === 'o' &&
331
+ memberName[1] === 'n') {
332
+ // Event Handlers
333
+ // so if the member name starts with "on" and the 3rd characters is
334
+ // a capital letter, and it's not already a member on the element,
335
+ // then we're assuming it's an event listener
336
+ if (memberName[2] === '-') {
337
+ // on- prefixed events
338
+ // allows to be explicit about the dom event to listen without any magic
339
+ // under the hood:
340
+ // <my-cmp on-click> // listens for "click"
341
+ // <my-cmp on-Click> // listens for "Click"
342
+ // <my-cmp on-ionChange> // listens for "ionChange"
343
+ // <my-cmp on-EVENTS> // listens for "EVENTS"
344
+ memberName = memberName.slice(3);
345
+ }
346
+ else if (isMemberInElement(win, ln)) {
347
+ // standard event
348
+ // the JSX attribute could have been "onMouseOver" and the
349
+ // member name "onmouseover" is on the window's prototype
350
+ // so let's add the listener "mouseover", which is all lowercased
351
+ memberName = ln.slice(2);
352
+ }
353
+ else {
354
+ // custom event
355
+ // the JSX attribute could have been "onMyCustomEvent"
356
+ // so let's trim off the "on" prefix and lowercase the first character
357
+ // and add the listener "myCustomEvent"
358
+ // except for the first character, we keep the event name case
359
+ memberName = ln[2] + memberName.slice(3);
360
+ }
361
+ if (oldValue) {
362
+ plt.rel(elm, memberName, oldValue, false);
363
+ }
364
+ if (newValue) {
365
+ plt.ael(elm, memberName, newValue, false);
366
+ }
367
+ }
279
368
  else {
280
369
  // Set property if it exists and it's not a SVG
281
370
  const isComplex = isComplexType(newValue);
@@ -383,6 +472,21 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
383
472
  }
384
473
  return elm;
385
474
  };
475
+ /**
476
+ * Create DOM nodes corresponding to a list of {@link d.Vnode} objects and
477
+ * add them to the DOM in the appropriate place.
478
+ *
479
+ * @param parentElm the DOM node which should be used as a parent for the new
480
+ * DOM nodes
481
+ * @param before a child of the `parentElm` which the new children should be
482
+ * inserted before (optional)
483
+ * @param parentVNode the parent virtual DOM node
484
+ * @param vnodes the new child virtual DOM nodes to produce DOM nodes for
485
+ * @param startIdx the index in the child virtual DOM nodes at which to start
486
+ * creating DOM nodes (inclusive)
487
+ * @param endIdx the index in the child virtual DOM nodes at which to stop
488
+ * creating DOM nodes (inclusive)
489
+ */
386
490
  const addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {
387
491
  let containerElm = (parentElm);
388
492
  let childNode;
@@ -399,6 +503,19 @@ const addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) =>
399
503
  }
400
504
  }
401
505
  };
506
+ /**
507
+ * Remove the DOM elements corresponding to a list of {@link d.VNode} objects.
508
+ * This can be used to, for instance, clean up after a list of children which
509
+ * should no longer be shown.
510
+ *
511
+ * This function also handles some of Stencil's slot relocation logic.
512
+ *
513
+ * @param vnodes a list of virtual DOM nodes to remove
514
+ * @param startIdx the index at which to start removing nodes (inclusive)
515
+ * @param endIdx the index at which to stop removing nodes (inclusive)
516
+ * @param vnode a VNode
517
+ * @param elm an element
518
+ */
402
519
  const removeVnodes = (vnodes, startIdx, endIdx, vnode, elm) => {
403
520
  for (; startIdx <= endIdx; ++startIdx) {
404
521
  if ((vnode = vnodes[startIdx])) {
@@ -590,7 +707,8 @@ const updateChildren = (parentElm, oldCh, newVNode, newCh) => {
590
707
  *
591
708
  * So, in other words, if `key` attrs are not set on VNodes which may be
592
709
  * changing order within a `children` array or something along those lines then
593
- * we could obtain a false positive and then have to do needless re-rendering.
710
+ * we could obtain a false negative and then have to do needless re-rendering
711
+ * (i.e. we'd say two VNodes aren't equal when in fact they should be).
594
712
  *
595
713
  * @param leftVNode the first VNode to check
596
714
  * @param rightVNode the second VNode to check
@@ -651,6 +769,18 @@ const patch = (oldVNode, newVNode) => {
651
769
  elm.data = text;
652
770
  }
653
771
  };
772
+ /**
773
+ * The main entry point for Stencil's virtual DOM-based rendering engine
774
+ *
775
+ * Given a {@link d.HostRef} container and some virtual DOM nodes, this
776
+ * function will handle creating a virtual DOM tree with a single root, patching
777
+ * the current virtual DOM tree onto an old one (if any), dealing with slot
778
+ * relocation, and reflecting attributes.
779
+ *
780
+ * @param hostRef data needed to root and render the virtual DOM tree, such as
781
+ * the DOM node into which it should be rendered.
782
+ * @param renderFnResults the virtual DOM nodes to be rendered
783
+ */
654
784
  const renderVdom = (hostRef, renderFnResults) => {
655
785
  const hostElm = hostRef.$hostElement$;
656
786
  const cmpMeta = hostRef.$cmpMeta$;
@@ -1053,6 +1183,7 @@ const disconnectedCallback = (elm) => {
1053
1183
  }
1054
1184
  };
1055
1185
  const bootstrapLazy = (lazyBundles, options = {}) => {
1186
+ var _a;
1056
1187
  const endBootstrap = createTime();
1057
1188
  const cmpTags = [];
1058
1189
  const exclude = options.exclude || [];
@@ -1129,6 +1260,11 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
1129
1260
  {
1130
1261
  visibilityStyle.innerHTML = cmpTags + HYDRATED_CSS;
1131
1262
  visibilityStyle.setAttribute('data-styles', '');
1263
+ // Apply CSP nonce to the style tag if it exists
1264
+ const nonce = (_a = plt.$nonce$) !== null && _a !== void 0 ? _a : queryNonceMetaTagContent(doc);
1265
+ if (nonce != null) {
1266
+ visibilityStyle.setAttribute('nonce', nonce);
1267
+ }
1132
1268
  head.insertBefore(visibilityStyle, metaCharset ? metaCharset.nextSibling : head.firstChild);
1133
1269
  }
1134
1270
  // Process deferred connectedCallbacks now all components have been registered
@@ -1144,6 +1280,13 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
1144
1280
  // Fallback appLoad event
1145
1281
  endBootstrap();
1146
1282
  };
1283
+ /**
1284
+ * Assigns the given value to the nonce property on the runtime platform object.
1285
+ * During runtime, this value is used to set the nonce attribute on all dynamically created script and style tags.
1286
+ * @param nonce The value to be assigned to the platform nonce property.
1287
+ * @returns void
1288
+ */
1289
+ const setNonce = (nonce) => (plt.$nonce$ = nonce);
1147
1290
  const hostRefs = /*@__PURE__*/ new WeakMap();
1148
1291
  const getHostRef = (ref) => hostRefs.get(ref);
1149
1292
  const registerInstance = (lazyInstance, hostRef) => hostRefs.set((hostRef.$lazyInstance$ = lazyInstance), hostRef);
@@ -1251,6 +1394,8 @@ const nextTick = /*@__PURE__*/ (cb) => promiseResolve().then(cb);
1251
1394
  const writeTask = /*@__PURE__*/ queueTask(queueDomWrites, true);
1252
1395
 
1253
1396
  exports.bootstrapLazy = bootstrapLazy;
1397
+ exports.createEvent = createEvent;
1254
1398
  exports.h = h;
1255
1399
  exports.promiseResolve = promiseResolve;
1256
1400
  exports.registerInstance = registerInstance;
1401
+ exports.setNonce = setNonce;
@@ -1,9 +1,11 @@
1
1
  'use strict';
2
2
 
3
- const index = require('./index-5325ac3d.js');
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-9b027564.js');
4
6
 
5
7
  /*
6
- Stencil Client Patch Browser v2.20.0 | MIT Licensed | https://stenciljs.com
8
+ Stencil Client Patch Browser v2.22.2 | MIT Licensed | https://stenciljs.com
7
9
  */
8
10
  const patchBrowser = () => {
9
11
  const importMeta = (typeof document === 'undefined' ? new (require('u' + 'rl').URL)('file:' + __filename).href : (document.currentScript && document.currentScript.src || new URL('lime-crm-building-blocks.cjs.js', document.baseURI).href));
@@ -15,5 +17,7 @@ const patchBrowser = () => {
15
17
  };
16
18
 
17
19
  patchBrowser().then(options => {
18
- return index.bootstrapLazy([["limebb-navigation-button.cjs",[[1,"limebb-navigation-button",{"href":[513],"tooltipLabel":[513,"tooltip-label"],"tooltipHelperLabel":[513,"tooltip-helper-label"],"type":[513]}]]]], options);
20
+ return index.bootstrapLazy([["limebb-example-currency-picker.cjs",[[1,"limebb-example-currency-picker",{"selectedCurrency":[32]}]]],["limebb-example-currency-picker-european.cjs",[[1,"limebb-example-currency-picker-european",{"selectedCurrency":[32]}]]],["limebb-example-currency-picker-nordic.cjs",[[1,"limebb-example-currency-picker-nordic",{"selectedCurrency":[32]}]]],["limebb-example-navigation-button-back.cjs",[[1,"limebb-example-navigation-button-back"]]],["limebb-example-navigation-button-close.cjs",[[1,"limebb-example-navigation-button-close"]]],["limebb-example-navigation-button-expand.cjs",[[1,"limebb-example-navigation-button-expand"]]],["limebb-example-navigation-button-float.cjs",[[1,"limebb-example-navigation-button-float"]]],["limebb-example-navigation-button-new-tab.cjs",[[1,"limebb-example-navigation-button-new-tab"]]],["limebb-example-navigation-button-shrink.cjs",[[1,"limebb-example-navigation-button-shrink"]]],["limebb-currency-picker.cjs",[[1,"limebb-currency-picker",{"label":[513],"platform":[16],"currencies":[16],"helperText":[513,"helper-text"],"required":[516],"readonly":[516],"disabled":[516],"value":[16]}]]],["limebb-navigation-button.cjs",[[1,"limebb-navigation-button",{"href":[513],"tooltipLabel":[513,"tooltip-label"],"tooltipHelperLabel":[513,"tooltip-helper-label"],"type":[513]}]]]], options);
19
21
  });
22
+
23
+ exports.setNonce = index.setNonce;