pds-dev-kit-web-test 2.5.593 → 2.5.594

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 (579) hide show
  1. package/dist/index.d.ts +6 -6
  2. package/dist/index.js +12 -3
  3. package/dist/scripts/copy-tinymce.d.ts +1 -0
  4. package/dist/scripts/copy-tinymce.js +32 -0
  5. package/dist/src/common/assets/icons/fill/Translate.d.ts +4 -0
  6. package/dist/src/common/assets/icons/fill/Translate.js +30 -0
  7. package/dist/src/common/assets/icons/fill/index.d.ts +1 -0
  8. package/dist/src/common/assets/icons/fill/index.js +2 -0
  9. package/dist/src/common/assets/icons/line/Translate.d.ts +4 -0
  10. package/dist/src/common/assets/icons/line/Translate.js +30 -0
  11. package/dist/src/common/assets/icons/line/index.d.ts +1 -0
  12. package/dist/src/common/assets/icons/line/index.js +2 -0
  13. package/dist/src/common/hooks/useParentResizeObserver.d.ts +2 -0
  14. package/dist/src/common/hooks/useParentResizeObserver.js +20 -0
  15. package/dist/src/common/hooks/useResizeObserver.d.ts +3 -0
  16. package/dist/src/common/hooks/useResizeObserver.js +27 -0
  17. package/dist/src/common/hooks/useTooltip.js +1 -1
  18. package/dist/src/common/hooks/useWindowSize.d.ts +4 -0
  19. package/dist/src/common/hooks/useWindowSize.js +22 -0
  20. package/dist/src/common/index.d.ts +1 -1
  21. package/dist/src/common/services/i18n/resources/en.json +61 -1
  22. package/dist/src/common/services/i18n/resources/es.json +61 -1
  23. package/dist/src/common/services/i18n/resources/fil.json +61 -1
  24. package/dist/src/common/services/i18n/resources/index.d.ts +421 -0
  25. package/dist/src/common/services/i18n/resources/ja.json +61 -1
  26. package/dist/src/common/services/i18n/resources/ko.json +62 -1
  27. package/dist/src/common/services/i18n/resources/zh-cn.json +61 -1
  28. package/dist/src/common/services/i18n/resources/zh-tw.json +61 -1
  29. package/dist/src/common/styles/colorSet/PaletteColor_Dark.json +4 -1
  30. package/dist/src/common/styles/colorSet/PaletteColor_light.json +4 -1
  31. package/dist/src/common/styles/colorSet/UIColor.json +5 -1
  32. package/dist/src/common/styles/colorSet/index.d.ts +10 -0
  33. package/dist/src/common/styles/colorSet/ui-type.d.ts +4 -0
  34. package/dist/src/common/styles/editorContentStyle.d.ts +1 -0
  35. package/dist/src/common/styles/editorContentStyle.js +76 -0
  36. package/dist/src/common/types/components.d.ts +9 -0
  37. package/dist/src/common/types/components.js +8 -0
  38. package/dist/src/common/types/index.d.ts +1 -1
  39. package/dist/src/common/types/index.js +1 -1
  40. package/dist/src/common/types/multilingual.d.ts +16 -0
  41. package/dist/src/common/types/text.d.ts +2 -0
  42. package/dist/src/common/utils/SystemUIPositionGenerator/hoverTypeSystemUICssGenerator.js +1 -1
  43. package/dist/src/common/utils/dateHelper.d.ts +3 -0
  44. package/dist/src/common/utils/dateHelper.js +37 -0
  45. package/dist/src/core/pricing/formatter.d.ts +4 -0
  46. package/dist/src/core/pricing/formatter.js +18 -0
  47. package/dist/src/core/pricing/index.d.ts +2 -0
  48. package/dist/src/core/pricing/index.js +18 -0
  49. package/dist/src/core/pricing/policy.d.ts +26 -0
  50. package/dist/src/core/pricing/policy.js +98 -0
  51. package/dist/src/core/pricing/service.d.ts +62 -0
  52. package/dist/src/core/pricing/service.js +157 -0
  53. package/dist/src/core/pricing/translator.d.ts +27 -0
  54. package/dist/src/core/pricing/translator.js +54 -0
  55. package/dist/src/core/pricing/types.d.ts +19 -0
  56. package/dist/src/core/pricing/types.js +31 -0
  57. package/dist/src/core/pricing/validator.d.ts +29 -0
  58. package/dist/src/core/pricing/validator.js +105 -0
  59. package/dist/src/desktop/common/components/TextFieldBase/TextFieldBase.d.ts +4 -1
  60. package/dist/src/desktop/common/components/TextFieldBase/TextFieldBase.js +32 -23
  61. package/dist/src/desktop/components/AdminList/AdminList.js +15 -17
  62. package/dist/src/desktop/components/BasicButtonGroup/BasicButtonGroup.js +1 -1
  63. package/dist/src/desktop/components/BasicFormGroup/BasicFormGroup.d.ts +8 -2
  64. package/dist/src/desktop/components/BasicFormGroup/BasicFormGroup.js +67 -6
  65. package/dist/src/desktop/components/BodyTextGroup/BodyTextGroup.d.ts +6 -1
  66. package/dist/src/desktop/components/BodyTextGroup/BodyTextGroup.js +70 -2
  67. package/dist/src/desktop/components/BoxItem/BoxItem.d.ts +67 -0
  68. package/dist/src/desktop/components/BoxItem/BoxItem.js +107 -0
  69. package/dist/src/desktop/components/BoxItem/LeftBox/Checkbox.d.ts +7 -0
  70. package/dist/src/desktop/components/BoxItem/LeftBox/Checkbox.js +9 -0
  71. package/dist/src/desktop/components/BoxItem/LeftBox/Image.d.ts +11 -0
  72. package/dist/src/desktop/components/BoxItem/LeftBox/Image.js +9 -0
  73. package/dist/src/desktop/components/BoxItem/LeftBox/LeftBox.d.ts +11 -0
  74. package/dist/src/desktop/components/BoxItem/LeftBox/LeftBox.js +36 -0
  75. package/dist/src/desktop/components/BoxItem/LeftBox/index.d.ts +2 -0
  76. package/dist/src/{sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner → desktop/components/BoxItem/LeftBox}/index.js +3 -3
  77. package/dist/src/desktop/components/BoxItem/index.d.ts +1 -0
  78. package/dist/src/desktop/components/BoxItem/index.js +8 -0
  79. package/dist/src/desktop/components/Calendar/AllDaySchedulesSection.d.ts +12 -0
  80. package/dist/src/desktop/components/Calendar/AllDaySchedulesSection.js +134 -0
  81. package/dist/src/desktop/components/Calendar/Calendar.d.ts +4 -0
  82. package/dist/src/desktop/components/Calendar/Calendar.js +399 -0
  83. package/dist/src/desktop/components/Calendar/CalendarContext.d.ts +51 -0
  84. package/dist/src/desktop/components/Calendar/CalendarContext.js +76 -0
  85. package/dist/src/desktop/components/Calendar/CurrentTimeIndicator.d.ts +7 -0
  86. package/dist/src/desktop/components/Calendar/CurrentTimeIndicator.js +48 -0
  87. package/dist/src/desktop/components/Calendar/DailyView.d.ts +2 -0
  88. package/dist/src/desktop/components/Calendar/DailyView.js +91 -0
  89. package/dist/src/desktop/components/Calendar/MonthlyView.d.ts +28 -0
  90. package/dist/src/desktop/components/Calendar/MonthlyView.js +419 -0
  91. package/dist/src/desktop/components/Calendar/MultiWeekSchedulesLayer.d.ts +21 -0
  92. package/dist/src/desktop/components/Calendar/MultiWeekSchedulesLayer.js +186 -0
  93. package/dist/src/desktop/components/Calendar/ScheduleItem.d.ts +25 -0
  94. package/dist/src/desktop/components/Calendar/ScheduleItem.js +56 -0
  95. package/dist/src/desktop/components/Calendar/TimeBasedScheduleItem.d.ts +12 -0
  96. package/dist/src/desktop/components/Calendar/TimeBasedScheduleItem.js +184 -0
  97. package/dist/src/desktop/components/Calendar/WeeklyView.d.ts +6 -0
  98. package/dist/src/desktop/components/Calendar/WeeklyView.js +114 -0
  99. package/dist/src/desktop/components/Calendar/YearlyView.d.ts +13 -0
  100. package/dist/src/desktop/components/Calendar/YearlyView.js +76 -0
  101. package/dist/src/desktop/components/Calendar/calendarUtils.d.ts +24 -0
  102. package/dist/src/desktop/components/Calendar/calendarUtils.js +87 -0
  103. package/dist/src/desktop/components/Calendar/constants.d.ts +1 -0
  104. package/dist/src/desktop/components/Calendar/constants.js +31 -0
  105. package/dist/src/desktop/components/Calendar/index.d.ts +14 -0
  106. package/dist/src/desktop/components/Calendar/index.js +42 -0
  107. package/dist/src/desktop/components/Calendar/timeFormatUtils.d.ts +18 -0
  108. package/dist/src/desktop/components/Calendar/timeFormatUtils.js +59 -0
  109. package/dist/src/desktop/components/Calendar/types.d.ts +61 -0
  110. package/dist/src/desktop/components/ChatBubbleListItem/ChatBubbleListItem.d.ts +2 -3
  111. package/dist/src/desktop/components/ChatBubbleListItem/ChatBubbleListItem.js +3 -8
  112. package/dist/src/desktop/components/ChatList/Body.d.ts +1 -1
  113. package/dist/src/desktop/components/PriceTextField/PriceTextField.d.ts +43 -0
  114. package/dist/src/desktop/components/PriceTextField/PriceTextField.js +604 -0
  115. package/dist/src/desktop/components/PriceTextField/index.d.ts +1 -0
  116. package/dist/src/desktop/components/PriceTextField/index.js +8 -0
  117. package/dist/src/desktop/components/PriceTextLabel/PriceTextLabel.d.ts +14 -0
  118. package/dist/src/desktop/components/PriceTextLabel/PriceTextLabel.js +47 -0
  119. package/dist/src/desktop/components/PriceTextLabel/index.d.ts +1 -0
  120. package/dist/src/desktop/components/PriceTextLabel/index.js +8 -0
  121. package/dist/src/desktop/components/RichTextEditor/RichTextEditor.d.ts +34 -0
  122. package/dist/src/desktop/components/RichTextEditor/RichTextEditor.js +247 -0
  123. package/dist/src/desktop/components/RichTextEditor/index.d.ts +2 -0
  124. package/dist/src/desktop/components/RichTextEditor/index.js +8 -0
  125. package/dist/src/desktop/components/Snackbar/Snackbar.d.ts +17 -0
  126. package/dist/src/desktop/components/Snackbar/Snackbar.js +221 -0
  127. package/dist/src/desktop/components/Snackbar/index.d.ts +1 -0
  128. package/dist/src/desktop/components/Snackbar/index.js +8 -0
  129. package/dist/src/desktop/components/Snackbar/provider.d.ts +11 -0
  130. package/dist/src/desktop/components/Snackbar/provider.js +43 -0
  131. package/dist/src/desktop/components/TextButton/TextButton.d.ts +6 -3
  132. package/dist/src/desktop/components/TextButton/TextButton.js +67 -40
  133. package/dist/src/desktop/components/TextField/TextField.d.ts +2 -1
  134. package/dist/src/desktop/components/TextField/TextField.js +7 -7
  135. package/dist/src/desktop/components/TextLabel/TextLabel.d.ts +3 -3
  136. package/dist/src/desktop/components/UploadTextButton/UploadTextButton.d.ts +1 -1
  137. package/dist/src/desktop/components/UploadTextButton/UploadTextButton.js +56 -39
  138. package/dist/src/desktop/components/index.d.ts +7 -1
  139. package/dist/src/desktop/components/index.js +14 -1
  140. package/dist/src/desktop/index.d.ts +1 -1
  141. package/dist/src/desktop/index.js +8 -2
  142. package/dist/src/desktop/layout/LayoutWF/Containers/ContentsContainer/variation/WFA.js +1 -1
  143. package/dist/src/desktop/layout/LayoutWF/Containers/ContentsContainer/variation/WFB.js +1 -1
  144. package/dist/src/desktop/layout/LayoutWF/Containers/ContentsContainer/variation/WFE.js +1 -1
  145. package/dist/src/desktop/layout/LayoutWF/Containers/ContentsContainer/variation/WFL.js +8 -5
  146. package/dist/src/desktop/panels/DesktopHeadlessModal/DesktopHeadlessModal.d.ts +17 -2
  147. package/dist/src/desktop/panels/DesktopHeadlessModal/DesktopHeadlessModal.js +37 -6
  148. package/dist/src/desktop/panels/MultilingualModal/MultilingualModal.d.ts +13 -0
  149. package/dist/src/desktop/panels/MultilingualModal/MultilingualModal.js +213 -0
  150. package/dist/src/desktop/panels/MultilingualModal/index.d.ts +1 -0
  151. package/dist/src/{sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList → desktop/panels/MultilingualModal}/index.js +3 -3
  152. package/dist/src/desktop/panels/index.d.ts +2 -1
  153. package/dist/src/desktop/panels/index.js +6 -1
  154. package/dist/src/hybrid/components/Divider/Divider.d.ts +3 -1
  155. package/dist/src/hybrid/components/Divider/Divider.js +9 -7
  156. package/dist/src/mobile/common/components/TextFieldBase/TextFieldBase.d.ts +3 -1
  157. package/dist/src/mobile/common/components/TextFieldBase/TextFieldBase.js +26 -22
  158. package/dist/src/mobile/components/BoxItem/BoxItem.d.ts +67 -0
  159. package/dist/src/mobile/components/BoxItem/BoxItem.js +106 -0
  160. package/dist/src/mobile/components/BoxItem/LeftBox/Checkbox.d.ts +7 -0
  161. package/dist/src/mobile/components/BoxItem/LeftBox/Checkbox.js +9 -0
  162. package/dist/src/mobile/components/BoxItem/LeftBox/Image.d.ts +11 -0
  163. package/dist/src/mobile/components/BoxItem/LeftBox/Image.js +9 -0
  164. package/dist/src/mobile/components/BoxItem/LeftBox/LeftBox.d.ts +11 -0
  165. package/dist/src/mobile/components/BoxItem/LeftBox/LeftBox.js +36 -0
  166. package/dist/src/mobile/components/BoxItem/LeftBox/index.d.ts +2 -0
  167. package/dist/src/mobile/components/BoxItem/LeftBox/index.js +8 -0
  168. package/dist/src/mobile/components/BoxItem/index.d.ts +1 -0
  169. package/dist/src/mobile/components/BoxItem/index.js +8 -0
  170. package/dist/src/mobile/components/ChatBubbleListItem/ChatBubbleListItem.d.ts +2 -3
  171. package/dist/src/mobile/components/ChatBubbleListItem/ChatBubbleListItem.js +3 -8
  172. package/dist/src/mobile/components/ChatList/Body.d.ts +1 -1
  173. package/dist/src/mobile/components/PriceTextField/PriceTextField.d.ts +42 -0
  174. package/dist/src/mobile/components/PriceTextField/PriceTextField.js +591 -0
  175. package/dist/src/mobile/components/PriceTextField/index.d.ts +1 -0
  176. package/dist/src/mobile/components/PriceTextField/index.js +8 -0
  177. package/dist/src/mobile/components/PriceTextLabel/PriceTextLabel.d.ts +14 -0
  178. package/dist/src/mobile/components/PriceTextLabel/PriceTextLabel.js +47 -0
  179. package/dist/src/mobile/components/PriceTextLabel/index.d.ts +1 -0
  180. package/dist/src/mobile/components/PriceTextLabel/index.js +8 -0
  181. package/dist/src/mobile/components/RichTextEditor/RichTextEditor.d.ts +34 -0
  182. package/dist/src/mobile/components/RichTextEditor/RichTextEditor.js +253 -0
  183. package/dist/src/mobile/components/RichTextEditor/index.d.ts +2 -0
  184. package/dist/src/mobile/components/RichTextEditor/index.js +8 -0
  185. package/dist/src/mobile/components/Snackbar/Snackbar.d.ts +17 -0
  186. package/dist/src/mobile/components/Snackbar/Snackbar.js +221 -0
  187. package/dist/src/mobile/components/Snackbar/index.d.ts +1 -0
  188. package/dist/src/mobile/components/Snackbar/index.js +8 -0
  189. package/dist/src/mobile/components/Snackbar/provider.d.ts +11 -0
  190. package/dist/src/mobile/components/Snackbar/provider.js +43 -0
  191. package/dist/src/mobile/components/TextButton/TextButton.d.ts +6 -3
  192. package/dist/src/mobile/components/TextButton/TextButton.js +55 -31
  193. package/dist/src/mobile/components/TextField/TextField.d.ts +2 -1
  194. package/dist/src/mobile/components/TextField/TextField.js +7 -7
  195. package/dist/src/mobile/components/TextLabel/TextLabel.d.ts +3 -3
  196. package/dist/src/mobile/components/UploadTextButton/UploadTextButton.d.ts +1 -1
  197. package/dist/src/mobile/components/UploadTextButton/UploadTextButton.js +44 -30
  198. package/dist/src/mobile/components/index.d.ts +6 -1
  199. package/dist/src/mobile/components/index.js +11 -1
  200. package/dist/src/mobile/index.d.ts +1 -1
  201. package/dist/src/mobile/index.js +7 -2
  202. package/dist/src/sub/AdminList/AdminList/AdminList.js +18 -17
  203. package/dist/src/sub/DynamicLayout/CompositionRenderer/ComponentBlockMatcher.js +1 -4
  204. package/dist/src/sub/DynamicLayout/CompositionRenderer/Composition.d.ts +3 -5
  205. package/dist/src/sub/DynamicLayout/CompositionRenderer/Composition.js +54 -54
  206. package/dist/src/sub/DynamicLayout/CompositionRenderer/CompositionRenderer.d.ts +6 -0
  207. package/dist/src/sub/DynamicLayout/CompositionRenderer/CompositionRenderer.js +27 -0
  208. package/dist/src/sub/DynamicLayout/DynamicLayout.d.ts +1 -1
  209. package/dist/src/sub/DynamicLayout/DynamicLayout.js +2 -4
  210. package/dist/src/sub/DynamicLayout/components/Section/components/CustomSectionBackgroundMedia.js +2 -24
  211. package/dist/src/sub/DynamicLayout/components/Section/sectionContext.d.ts +2 -2
  212. package/dist/src/sub/DynamicLayout/components/Section/util/parseSectionBackgroundMediaData.js +1 -3
  213. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/index.d.ts +0 -40
  214. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/index.js +177 -36
  215. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/styles/colorSet/PaletteColor_Dark.json +4 -152
  216. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/styles/colorSet/PaletteColor_light.json +2 -150
  217. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/styles/colorSet/SemanticColor.json +1 -45
  218. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/styles/colorSet/UIColor.json +9 -262
  219. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/styles/colorSet/index.d.ts +0 -593
  220. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/styles/colorSet/ui-type.d.ts +0 -253
  221. package/dist/src/sub/DynamicLayout/components/pdsOriginal/desktop/IconButton/IconButton.d.ts +1 -3
  222. package/dist/src/sub/DynamicLayout/components/pdsOriginal/desktop/IconButton/IconButton.js +3 -5
  223. package/dist/src/sub/DynamicLayout/components/pdsOriginal/hybrid/Icon/Icon.d.ts +1 -2
  224. package/dist/src/sub/DynamicLayout/components/pdsOriginal/hybrid/Icon/Icon.js +2 -9
  225. package/dist/src/sub/DynamicLayout/mock_video_cb.d.ts +1 -0
  226. package/dist/src/sub/DynamicLayout/mock_video_cb.js +5 -4
  227. package/dist/src/sub/DynamicLayout/mocks.d.ts +961 -8
  228. package/dist/src/sub/DynamicLayout/mocks.js +4239 -55
  229. package/dist/src/sub/DynamicLayout/sectionActionTypes.d.ts +4 -4
  230. package/dist/src/sub/DynamicLayout/sections/CustomSection/CustomSection.d.ts +1 -1
  231. package/dist/src/sub/DynamicLayout/sections/CustomSection/CustomSection.js +7 -7
  232. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/ComponentBlockMatcher.js +3 -13
  233. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Button/Button.js +2 -18
  234. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/ContentsCarousel.d.ts +4 -10
  235. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/ContentsCarousel.js +3 -134
  236. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Image/Image.js +3 -39
  237. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Text/Text.js +8 -49
  238. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/VideoPlayer/VideoPlayer.js +28 -3
  239. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/VideoPlayer/helper.d.ts +1 -0
  240. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/VideoPlayer/helper.js +15 -5
  241. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/types.d.ts +3 -55
  242. package/dist/src/sub/DynamicLayout/sections/CustomSection/newUtils/group.d.ts +1 -1
  243. package/dist/src/sub/DynamicLayout/sections/CustomSection/newUtils/replaceUndefinedValues.js +1 -1
  244. package/dist/src/sub/DynamicLayout/sections/CustomSection/types.d.ts +10 -27
  245. package/dist/src/sub/DynamicLayout/sections/CustomSection/types.js +1 -3
  246. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/effectPropParsers/parseEffectPropEntAnim.d.ts +4 -4
  247. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/layoutPropParsers/parseLayoutPropPadding.d.ts +2 -2
  248. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/parseJsonProperties.d.ts +2 -2
  249. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/parsePlacement.d.ts +2 -7
  250. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/parsePlacement.js +5 -10
  251. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/parseProperties.d.ts +2 -2
  252. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/stylePropParsers/parseStylePropTextSpec.js +0 -2
  253. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/types.d.ts +3 -53
  254. package/dist/src/sub/DynamicLayout/sections/FlexGridCustomSection.d.ts +1 -1
  255. package/dist/src/sub/DynamicLayout/sections/FlexGridCustomSection.js +0 -1
  256. package/dist/src/sub/DynamicLayout/types.d.ts +17 -64
  257. package/dist/tinymce/CHANGELOG.md +3453 -0
  258. package/dist/tinymce/README.md +73 -0
  259. package/dist/tinymce/bower.json +27 -0
  260. package/dist/tinymce/composer.json +52 -0
  261. package/dist/tinymce/icons/default/icons.js +194 -0
  262. package/dist/tinymce/icons/default/icons.min.js +1 -0
  263. package/dist/tinymce/icons/default/index.js +7 -0
  264. package/dist/tinymce/license.txt +21 -0
  265. package/dist/tinymce/models/dom/index.js +7 -0
  266. package/dist/tinymce/models/dom/model.js +8040 -0
  267. package/dist/tinymce/models/dom/model.min.js +1 -0
  268. package/dist/tinymce/notices.txt +21 -0
  269. package/dist/tinymce/package.json +32 -0
  270. package/dist/tinymce/plugins/accordion/index.js +7 -0
  271. package/dist/tinymce/plugins/accordion/plugin.js +1054 -0
  272. package/dist/tinymce/plugins/accordion/plugin.min.js +5 -0
  273. package/dist/tinymce/plugins/advlist/index.js +7 -0
  274. package/dist/tinymce/plugins/advlist/plugin.js +259 -0
  275. package/dist/tinymce/plugins/advlist/plugin.min.js +5 -0
  276. package/dist/tinymce/plugins/anchor/index.js +7 -0
  277. package/dist/tinymce/plugins/anchor/plugin.js +214 -0
  278. package/dist/tinymce/plugins/anchor/plugin.min.js +5 -0
  279. package/dist/tinymce/plugins/autolink/index.js +7 -0
  280. package/dist/tinymce/plugins/autolink/plugin.js +228 -0
  281. package/dist/tinymce/plugins/autolink/plugin.min.js +5 -0
  282. package/dist/tinymce/plugins/autoresize/index.js +7 -0
  283. package/dist/tinymce/plugins/autoresize/plugin.js +192 -0
  284. package/dist/tinymce/plugins/autoresize/plugin.min.js +5 -0
  285. package/dist/tinymce/plugins/autosave/index.js +7 -0
  286. package/dist/tinymce/plugins/autosave/plugin.js +233 -0
  287. package/dist/tinymce/plugins/autosave/plugin.min.js +5 -0
  288. package/dist/tinymce/plugins/charmap/index.js +7 -0
  289. package/dist/tinymce/plugins/charmap/plugin.js +1658 -0
  290. package/dist/tinymce/plugins/charmap/plugin.min.js +5 -0
  291. package/dist/tinymce/plugins/code/index.js +7 -0
  292. package/dist/tinymce/plugins/code/plugin.js +85 -0
  293. package/dist/tinymce/plugins/code/plugin.min.js +5 -0
  294. package/dist/tinymce/plugins/codesample/index.js +7 -0
  295. package/dist/tinymce/plugins/codesample/plugin.js +2471 -0
  296. package/dist/tinymce/plugins/codesample/plugin.min.js +13 -0
  297. package/dist/tinymce/plugins/directionality/index.js +7 -0
  298. package/dist/tinymce/plugins/directionality/plugin.js +395 -0
  299. package/dist/tinymce/plugins/directionality/plugin.min.js +5 -0
  300. package/dist/tinymce/plugins/emoticons/index.js +7 -0
  301. package/dist/tinymce/plugins/emoticons/js/emojiimages.js +1 -0
  302. package/dist/tinymce/plugins/emoticons/js/emojiimages.min.js +1 -0
  303. package/dist/tinymce/plugins/emoticons/js/emojis.js +1 -0
  304. package/dist/tinymce/plugins/emoticons/js/emojis.min.js +1 -0
  305. package/dist/tinymce/plugins/emoticons/plugin.js +595 -0
  306. package/dist/tinymce/plugins/emoticons/plugin.min.js +5 -0
  307. package/dist/tinymce/plugins/fullscreen/index.js +7 -0
  308. package/dist/tinymce/plugins/fullscreen/plugin.js +1249 -0
  309. package/dist/tinymce/plugins/fullscreen/plugin.min.js +5 -0
  310. package/dist/tinymce/plugins/help/index.js +7 -0
  311. package/dist/tinymce/plugins/help/js/i18n/keynav/ar.js +90 -0
  312. package/dist/tinymce/plugins/help/js/i18n/keynav/bg_BG.js +90 -0
  313. package/dist/tinymce/plugins/help/js/i18n/keynav/ca.js +90 -0
  314. package/dist/tinymce/plugins/help/js/i18n/keynav/cs.js +90 -0
  315. package/dist/tinymce/plugins/help/js/i18n/keynav/da.js +90 -0
  316. package/dist/tinymce/plugins/help/js/i18n/keynav/de.js +90 -0
  317. package/dist/tinymce/plugins/help/js/i18n/keynav/el.js +90 -0
  318. package/dist/tinymce/plugins/help/js/i18n/keynav/en.js +90 -0
  319. package/dist/tinymce/plugins/help/js/i18n/keynav/es.js +90 -0
  320. package/dist/tinymce/plugins/help/js/i18n/keynav/eu.js +90 -0
  321. package/dist/tinymce/plugins/help/js/i18n/keynav/fa.js +90 -0
  322. package/dist/tinymce/plugins/help/js/i18n/keynav/fi.js +90 -0
  323. package/dist/tinymce/plugins/help/js/i18n/keynav/fr_FR.js +90 -0
  324. package/dist/tinymce/plugins/help/js/i18n/keynav/he_IL.js +90 -0
  325. package/dist/tinymce/plugins/help/js/i18n/keynav/hi.js +90 -0
  326. package/dist/tinymce/plugins/help/js/i18n/keynav/hr.js +90 -0
  327. package/dist/tinymce/plugins/help/js/i18n/keynav/hu_HU.js +90 -0
  328. package/dist/tinymce/plugins/help/js/i18n/keynav/id.js +90 -0
  329. package/dist/tinymce/plugins/help/js/i18n/keynav/it.js +90 -0
  330. package/dist/tinymce/plugins/help/js/i18n/keynav/ja.js +90 -0
  331. package/dist/tinymce/plugins/help/js/i18n/keynav/kk.js +90 -0
  332. package/dist/tinymce/plugins/help/js/i18n/keynav/ko_KR.js +90 -0
  333. package/dist/tinymce/plugins/help/js/i18n/keynav/ms.js +90 -0
  334. package/dist/tinymce/plugins/help/js/i18n/keynav/nb_NO.js +90 -0
  335. package/dist/tinymce/plugins/help/js/i18n/keynav/nl.js +90 -0
  336. package/dist/tinymce/plugins/help/js/i18n/keynav/pl.js +90 -0
  337. package/dist/tinymce/plugins/help/js/i18n/keynav/pt_BR.js +90 -0
  338. package/dist/tinymce/plugins/help/js/i18n/keynav/pt_PT.js +90 -0
  339. package/dist/tinymce/plugins/help/js/i18n/keynav/ro.js +90 -0
  340. package/dist/tinymce/plugins/help/js/i18n/keynav/ru.js +90 -0
  341. package/dist/tinymce/plugins/help/js/i18n/keynav/sk.js +90 -0
  342. package/dist/tinymce/plugins/help/js/i18n/keynav/sl_SI.js +90 -0
  343. package/dist/tinymce/plugins/help/js/i18n/keynav/sv_SE.js +90 -0
  344. package/dist/tinymce/plugins/help/js/i18n/keynav/th_TH.js +90 -0
  345. package/dist/tinymce/plugins/help/js/i18n/keynav/tr.js +90 -0
  346. package/dist/tinymce/plugins/help/js/i18n/keynav/uk.js +90 -0
  347. package/dist/tinymce/plugins/help/js/i18n/keynav/vi.js +90 -0
  348. package/dist/tinymce/plugins/help/js/i18n/keynav/zh_CN.js +84 -0
  349. package/dist/tinymce/plugins/help/js/i18n/keynav/zh_TW.js +90 -0
  350. package/dist/tinymce/plugins/help/plugin.js +898 -0
  351. package/dist/tinymce/plugins/help/plugin.min.js +5 -0
  352. package/dist/tinymce/plugins/image/index.js +7 -0
  353. package/dist/tinymce/plugins/image/plugin.js +1505 -0
  354. package/dist/tinymce/plugins/image/plugin.min.js +5 -0
  355. package/dist/tinymce/plugins/importcss/index.js +7 -0
  356. package/dist/tinymce/plugins/importcss/plugin.js +344 -0
  357. package/dist/tinymce/plugins/importcss/plugin.min.js +5 -0
  358. package/dist/tinymce/plugins/insertdatetime/index.js +7 -0
  359. package/dist/tinymce/plugins/insertdatetime/plugin.js +187 -0
  360. package/dist/tinymce/plugins/insertdatetime/plugin.min.js +5 -0
  361. package/dist/tinymce/plugins/link/index.js +7 -0
  362. package/dist/tinymce/plugins/link/plugin.js +1242 -0
  363. package/dist/tinymce/plugins/link/plugin.min.js +5 -0
  364. package/dist/tinymce/plugins/lists/index.js +7 -0
  365. package/dist/tinymce/plugins/lists/plugin.js +2172 -0
  366. package/dist/tinymce/plugins/lists/plugin.min.js +5 -0
  367. package/dist/tinymce/plugins/media/index.js +7 -0
  368. package/dist/tinymce/plugins/media/plugin.js +1217 -0
  369. package/dist/tinymce/plugins/media/plugin.min.js +5 -0
  370. package/dist/tinymce/plugins/nonbreaking/index.js +7 -0
  371. package/dist/tinymce/plugins/nonbreaking/plugin.js +123 -0
  372. package/dist/tinymce/plugins/nonbreaking/plugin.min.js +5 -0
  373. package/dist/tinymce/plugins/pagebreak/index.js +7 -0
  374. package/dist/tinymce/plugins/pagebreak/plugin.js +117 -0
  375. package/dist/tinymce/plugins/pagebreak/plugin.min.js +5 -0
  376. package/dist/tinymce/plugins/preview/index.js +7 -0
  377. package/dist/tinymce/plugins/preview/plugin.js +97 -0
  378. package/dist/tinymce/plugins/preview/plugin.min.js +5 -0
  379. package/dist/tinymce/plugins/quickbars/index.js +7 -0
  380. package/dist/tinymce/plugins/quickbars/plugin.js +447 -0
  381. package/dist/tinymce/plugins/quickbars/plugin.min.js +5 -0
  382. package/dist/tinymce/plugins/save/index.js +7 -0
  383. package/dist/tinymce/plugins/save/plugin.js +118 -0
  384. package/dist/tinymce/plugins/save/plugin.min.js +5 -0
  385. package/dist/tinymce/plugins/searchreplace/index.js +7 -0
  386. package/dist/tinymce/plugins/searchreplace/plugin.js +1093 -0
  387. package/dist/tinymce/plugins/searchreplace/plugin.min.js +5 -0
  388. package/dist/tinymce/plugins/table/index.js +7 -0
  389. package/dist/tinymce/plugins/table/plugin.js +3462 -0
  390. package/dist/tinymce/plugins/table/plugin.min.js +5 -0
  391. package/dist/tinymce/plugins/template/index.js +7 -0
  392. package/dist/tinymce/plugins/template/plugin.js +567 -0
  393. package/dist/tinymce/plugins/template/plugin.min.js +5 -0
  394. package/dist/tinymce/plugins/visualblocks/index.js +7 -0
  395. package/dist/tinymce/plugins/visualblocks/plugin.js +98 -0
  396. package/dist/tinymce/plugins/visualblocks/plugin.min.js +5 -0
  397. package/dist/tinymce/plugins/visualchars/index.js +7 -0
  398. package/dist/tinymce/plugins/visualchars/plugin.js +560 -0
  399. package/dist/tinymce/plugins/visualchars/plugin.min.js +5 -0
  400. package/dist/tinymce/plugins/wordcount/index.js +7 -0
  401. package/dist/tinymce/plugins/wordcount/plugin.js +405 -0
  402. package/dist/tinymce/plugins/wordcount/plugin.min.js +5 -0
  403. package/dist/tinymce/skins/content/dark/content.css +79 -0
  404. package/dist/tinymce/skins/content/dark/content.js +15 -0
  405. package/dist/tinymce/skins/content/dark/content.min.css +14 -0
  406. package/dist/tinymce/skins/content/default/content.css +74 -0
  407. package/dist/tinymce/skins/content/default/content.js +15 -0
  408. package/dist/tinymce/skins/content/default/content.min.css +14 -0
  409. package/dist/tinymce/skins/content/document/content.css +79 -0
  410. package/dist/tinymce/skins/content/document/content.js +15 -0
  411. package/dist/tinymce/skins/content/document/content.min.css +14 -0
  412. package/dist/tinymce/skins/content/tinymce-5/content.css +74 -0
  413. package/dist/tinymce/skins/content/tinymce-5/content.js +15 -0
  414. package/dist/tinymce/skins/content/tinymce-5/content.min.css +14 -0
  415. package/dist/tinymce/skins/content/tinymce-5-dark/content.css +79 -0
  416. package/dist/tinymce/skins/content/tinymce-5-dark/content.js +15 -0
  417. package/dist/tinymce/skins/content/tinymce-5-dark/content.min.css +14 -0
  418. package/dist/tinymce/skins/content/writer/content.css +75 -0
  419. package/dist/tinymce/skins/content/writer/content.js +15 -0
  420. package/dist/tinymce/skins/content/writer/content.min.css +14 -0
  421. package/dist/tinymce/skins/ui/oxide/content.css +798 -0
  422. package/dist/tinymce/skins/ui/oxide/content.inline.css +792 -0
  423. package/dist/tinymce/skins/ui/oxide/content.inline.js +15 -0
  424. package/dist/tinymce/skins/ui/oxide/content.inline.min.css +14 -0
  425. package/dist/tinymce/skins/ui/oxide/content.js +15 -0
  426. package/dist/tinymce/skins/ui/oxide/content.min.css +14 -0
  427. package/dist/tinymce/skins/ui/oxide/skin.css +3763 -0
  428. package/dist/tinymce/skins/ui/oxide/skin.js +2 -0
  429. package/dist/tinymce/skins/ui/oxide/skin.min.css +1 -0
  430. package/dist/tinymce/skins/ui/oxide/skin.shadowdom.css +30 -0
  431. package/dist/tinymce/skins/ui/oxide/skin.shadowdom.js +2 -0
  432. package/dist/tinymce/skins/ui/oxide/skin.shadowdom.min.css +1 -0
  433. package/dist/tinymce/skins/ui/oxide-dark/content.css +779 -0
  434. package/dist/tinymce/skins/ui/oxide-dark/content.inline.css +792 -0
  435. package/dist/tinymce/skins/ui/oxide-dark/content.inline.js +15 -0
  436. package/dist/tinymce/skins/ui/oxide-dark/content.inline.min.css +14 -0
  437. package/dist/tinymce/skins/ui/oxide-dark/content.js +15 -0
  438. package/dist/tinymce/skins/ui/oxide-dark/content.min.css +14 -0
  439. package/dist/tinymce/skins/ui/oxide-dark/skin.css +3766 -0
  440. package/dist/tinymce/skins/ui/oxide-dark/skin.js +2 -0
  441. package/dist/tinymce/skins/ui/oxide-dark/skin.min.css +1 -0
  442. package/dist/tinymce/skins/ui/oxide-dark/skin.shadowdom.css +30 -0
  443. package/dist/tinymce/skins/ui/oxide-dark/skin.shadowdom.js +2 -0
  444. package/dist/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.css +1 -0
  445. package/dist/tinymce/skins/ui/tinymce-5/content.css +798 -0
  446. package/dist/tinymce/skins/ui/tinymce-5/content.inline.css +792 -0
  447. package/dist/tinymce/skins/ui/tinymce-5/content.inline.js +15 -0
  448. package/dist/tinymce/skins/ui/tinymce-5/content.inline.min.css +14 -0
  449. package/dist/tinymce/skins/ui/tinymce-5/content.js +15 -0
  450. package/dist/tinymce/skins/ui/tinymce-5/content.min.css +14 -0
  451. package/dist/tinymce/skins/ui/tinymce-5/skin.css +3857 -0
  452. package/dist/tinymce/skins/ui/tinymce-5/skin.js +2 -0
  453. package/dist/tinymce/skins/ui/tinymce-5/skin.min.css +1 -0
  454. package/dist/tinymce/skins/ui/tinymce-5/skin.shadowdom.css +30 -0
  455. package/dist/tinymce/skins/ui/tinymce-5/skin.shadowdom.js +2 -0
  456. package/dist/tinymce/skins/ui/tinymce-5/skin.shadowdom.min.css +1 -0
  457. package/dist/tinymce/skins/ui/tinymce-5-dark/content.css +779 -0
  458. package/dist/tinymce/skins/ui/tinymce-5-dark/content.inline.css +792 -0
  459. package/dist/tinymce/skins/ui/tinymce-5-dark/content.inline.js +15 -0
  460. package/dist/tinymce/skins/ui/tinymce-5-dark/content.inline.min.css +14 -0
  461. package/dist/tinymce/skins/ui/tinymce-5-dark/content.js +15 -0
  462. package/dist/tinymce/skins/ui/tinymce-5-dark/content.min.css +14 -0
  463. package/dist/tinymce/skins/ui/tinymce-5-dark/skin.css +3857 -0
  464. package/dist/tinymce/skins/ui/tinymce-5-dark/skin.js +2 -0
  465. package/dist/tinymce/skins/ui/tinymce-5-dark/skin.min.css +1 -0
  466. package/dist/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.css +30 -0
  467. package/dist/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.js +2 -0
  468. package/dist/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.min.css +1 -0
  469. package/dist/tinymce/themes/silver/index.js +7 -0
  470. package/dist/tinymce/themes/silver/theme.js +30775 -0
  471. package/dist/tinymce/themes/silver/theme.min.js +1 -0
  472. package/dist/tinymce/tinymce.d.ts +3238 -0
  473. package/dist/tinymce/tinymce.js +31779 -0
  474. package/dist/tinymce/tinymce.min.js +11 -0
  475. package/package.json +8 -4
  476. package/release-note.md +2 -2
  477. package/scripts/copy-tinymce.js +37 -0
  478. package/dist/src/common/types/form.d.ts +0 -9
  479. package/dist/src/common/types/form.js +0 -10
  480. package/dist/src/sub/DynamicLayout/CompositionEditor/CompositionEditor.d.ts +0 -22
  481. package/dist/src/sub/DynamicLayout/CompositionEditor/CompositionEditor.js +0 -1133
  482. package/dist/src/sub/DynamicLayout/CompositionRenderer/CompositionBackground.d.ts +0 -11
  483. package/dist/src/sub/DynamicLayout/CompositionRenderer/CompositionBackground.js +0 -45
  484. package/dist/src/sub/DynamicLayout/CompositionRenderer/createCompositions.d.ts +0 -10
  485. package/dist/src/sub/DynamicLayout/CompositionRenderer/createCompositions.js +0 -79
  486. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/editorNavigationIcons/downIcons.d.ts +0 -12
  487. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/editorNavigationIcons/downIcons.js +0 -76
  488. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/editorNavigationIcons/index.d.ts +0 -4
  489. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/editorNavigationIcons/index.js +0 -47
  490. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/editorNavigationIcons/leftIcons.d.ts +0 -12
  491. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/editorNavigationIcons/leftIcons.js +0 -76
  492. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/editorNavigationIcons/rightIcons.d.ts +0 -12
  493. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/editorNavigationIcons/rightIcons.js +0 -76
  494. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/editorNavigationIcons/upIcons.d.ts +0 -12
  495. package/dist/src/sub/DynamicLayout/components/pdsOriginal/common/assets/icons/line/editorNavigationIcons/upIcons.js +0 -76
  496. package/dist/src/sub/DynamicLayout/compositionActionTypes.d.ts +0 -139
  497. package/dist/src/sub/DynamicLayout/compositionQueryContext.d.ts +0 -8
  498. package/dist/src/sub/DynamicLayout/compositionQueryContext.js +0 -14
  499. package/dist/src/sub/DynamicLayout/mock_componentBlocks.d.ts +0 -911
  500. package/dist/src/sub/DynamicLayout/mock_componentBlocks.js +0 -4238
  501. package/dist/src/sub/DynamicLayout/mock_composition.d.ts +0 -3
  502. package/dist/src/sub/DynamicLayout/mock_composition.js +0 -1607
  503. package/dist/src/sub/DynamicLayout/mock_contentsCarousel.d.ts +0 -1
  504. package/dist/src/sub/DynamicLayout/mock_contentsCarousel.js +0 -1111
  505. package/dist/src/sub/DynamicLayout/mock_contentsList.d.ts +0 -1
  506. package/dist/src/sub/DynamicLayout/mock_contentsList.js +0 -1091
  507. package/dist/src/sub/DynamicLayout/mock_queryData.d.ts +0 -96
  508. package/dist/src/sub/DynamicLayout/mock_queryData.js +0 -2639
  509. package/dist/src/sub/DynamicLayout/mock_slideBanner.d.ts +0 -842
  510. package/dist/src/sub/DynamicLayout/mock_slideBanner.js +0 -854
  511. package/dist/src/sub/DynamicLayout/mock_video.d.ts +0 -368
  512. package/dist/src/sub/DynamicLayout/mock_video.js +0 -371
  513. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/ContentsCarouselCore.d.ts +0 -12
  514. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/ContentsCarouselCore.js +0 -61
  515. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/CustomNavigationNextBtn.d.ts +0 -15
  516. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/CustomNavigationNextBtn.js +0 -69
  517. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/CustomNavigationPrevBtn.d.ts +0 -15
  518. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/CustomNavigationPrevBtn.js +0 -69
  519. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/CustomProgressbar.d.ts +0 -9
  520. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/CustomProgressbar.js +0 -87
  521. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/navigationConfigs.d.ts +0 -4
  522. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/navigationConfigs.js +0 -849
  523. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/progressConfigs.d.ts +0 -43
  524. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/progressConfigs.js +0 -162
  525. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/contentsCarouselUtils.d.ts +0 -39
  526. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/contentsCarouselUtils.js +0 -182
  527. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/hooks/useFlexGridLayout.d.ts +0 -18
  528. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/hooks/useFlexGridLayout.js +0 -229
  529. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/hooks/useSwiper.d.ts +0 -14
  530. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/hooks/useSwiper.js +0 -46
  531. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/index.d.ts +0 -1
  532. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/index.js +0 -8
  533. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/types.d.ts +0 -139
  534. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/ContentsList.d.ts +0 -14
  535. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/ContentsList.js +0 -214
  536. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/ContentsListCore.d.ts +0 -17
  537. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/ContentsListCore.js +0 -39
  538. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/components/CustomPagination.d.ts +0 -10
  539. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/components/CustomPagination.js +0 -85
  540. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/components/paginationConfigs.d.ts +0 -25
  541. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/components/paginationConfigs.js +0 -183
  542. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/contentsListUtils.d.ts +0 -29
  543. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/contentsListUtils.js +0 -130
  544. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/hooks/useFlexGridLayout.d.ts +0 -18
  545. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/hooks/useFlexGridLayout.js +0 -229
  546. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/index.d.ts +0 -1
  547. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/types.d.ts +0 -67
  548. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/types.js +0 -2
  549. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/SlideBanner.d.ts +0 -14
  550. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/SlideBanner.js +0 -151
  551. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/SlideBannerCore.d.ts +0 -12
  552. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/SlideBannerCore.js +0 -39
  553. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/CustomNavigationNextBtn.d.ts +0 -15
  554. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/CustomNavigationNextBtn.js +0 -69
  555. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/CustomNavigationPrevBtn.d.ts +0 -15
  556. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/CustomNavigationPrevBtn.js +0 -69
  557. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/CustomPagination.d.ts +0 -20
  558. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/CustomPagination.js +0 -173
  559. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/CustomProgressbar.d.ts +0 -9
  560. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/CustomProgressbar.js +0 -87
  561. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/navigationConfigs.d.ts +0 -4
  562. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/navigationConfigs.js +0 -849
  563. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/progressConfigs.d.ts +0 -43
  564. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/progressConfigs.js +0 -162
  565. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/hooks/useFlexGridLayout.d.ts +0 -18
  566. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/hooks/useFlexGridLayout.js +0 -229
  567. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/hooks/useSwiper.d.ts +0 -16
  568. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/hooks/useSwiper.js +0 -63
  569. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/index.d.ts +0 -1
  570. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/slideBannerUtils.d.ts +0 -46
  571. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/slideBannerUtils.js +0 -186
  572. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/types.d.ts +0 -163
  573. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/types.js +0 -2
  574. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Text/textSpecFormatOptions.d.ts +0 -7
  575. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Text/textSpecFormatOptions.js +0 -211
  576. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/parseCompositionPlacement.d.ts +0 -14
  577. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/parseCompositionPlacement.js +0 -26
  578. /package/dist/src/{sub/DynamicLayout/compositionActionTypes.js → common/types/multilingual.js} +0 -0
  579. /package/dist/src/{sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel → desktop/components/Calendar}/types.js +0 -0
@@ -0,0 +1,2471 @@
1
+ /**
2
+ * TinyMCE version 6.8.6 (TBD)
3
+ */
4
+
5
+ /**
6
+ * Prism: Lightweight, robust, elegant syntax highlighting
7
+ *
8
+ * @license MIT <https://opensource.org/licenses/MIT>
9
+ * @author Lea Verou <https://lea.verou.me>
10
+ * @namespace
11
+ * @public
12
+ */
13
+ (function () {
14
+ 'use strict';
15
+
16
+ var global$2 = tinymce.util.Tools.resolve('tinymce.PluginManager');
17
+
18
+ const isNullable = a => a === null || a === undefined;
19
+ const isNonNullable = a => !isNullable(a);
20
+
21
+ const noop = () => {
22
+ };
23
+ const constant = value => {
24
+ return () => {
25
+ return value;
26
+ };
27
+ };
28
+
29
+ class Optional {
30
+ constructor(tag, value) {
31
+ this.tag = tag;
32
+ this.value = value;
33
+ }
34
+ static some(value) {
35
+ return new Optional(true, value);
36
+ }
37
+ static none() {
38
+ return Optional.singletonNone;
39
+ }
40
+ fold(onNone, onSome) {
41
+ if (this.tag) {
42
+ return onSome(this.value);
43
+ } else {
44
+ return onNone();
45
+ }
46
+ }
47
+ isSome() {
48
+ return this.tag;
49
+ }
50
+ isNone() {
51
+ return !this.tag;
52
+ }
53
+ map(mapper) {
54
+ if (this.tag) {
55
+ return Optional.some(mapper(this.value));
56
+ } else {
57
+ return Optional.none();
58
+ }
59
+ }
60
+ bind(binder) {
61
+ if (this.tag) {
62
+ return binder(this.value);
63
+ } else {
64
+ return Optional.none();
65
+ }
66
+ }
67
+ exists(predicate) {
68
+ return this.tag && predicate(this.value);
69
+ }
70
+ forall(predicate) {
71
+ return !this.tag || predicate(this.value);
72
+ }
73
+ filter(predicate) {
74
+ if (!this.tag || predicate(this.value)) {
75
+ return this;
76
+ } else {
77
+ return Optional.none();
78
+ }
79
+ }
80
+ getOr(replacement) {
81
+ return this.tag ? this.value : replacement;
82
+ }
83
+ or(replacement) {
84
+ return this.tag ? this : replacement;
85
+ }
86
+ getOrThunk(thunk) {
87
+ return this.tag ? this.value : thunk();
88
+ }
89
+ orThunk(thunk) {
90
+ return this.tag ? this : thunk();
91
+ }
92
+ getOrDie(message) {
93
+ if (!this.tag) {
94
+ throw new Error(message !== null && message !== void 0 ? message : 'Called getOrDie on None');
95
+ } else {
96
+ return this.value;
97
+ }
98
+ }
99
+ static from(value) {
100
+ return isNonNullable(value) ? Optional.some(value) : Optional.none();
101
+ }
102
+ getOrNull() {
103
+ return this.tag ? this.value : null;
104
+ }
105
+ getOrUndefined() {
106
+ return this.value;
107
+ }
108
+ each(worker) {
109
+ if (this.tag) {
110
+ worker(this.value);
111
+ }
112
+ }
113
+ toArray() {
114
+ return this.tag ? [this.value] : [];
115
+ }
116
+ toString() {
117
+ return this.tag ? `some(${ this.value })` : 'none()';
118
+ }
119
+ }
120
+ Optional.singletonNone = new Optional(false);
121
+
122
+ const get$1 = (xs, i) => i >= 0 && i < xs.length ? Optional.some(xs[i]) : Optional.none();
123
+ const head = xs => get$1(xs, 0);
124
+
125
+ var global$1 = tinymce.util.Tools.resolve('tinymce.dom.DOMUtils');
126
+
127
+ const Global = typeof window !== 'undefined' ? window : Function('return this;')();
128
+
129
+ const prismjs = function (global, module, exports) {
130
+ const oldprism = window.Prism;
131
+ window.Prism = { manual: true };
132
+ var _self = typeof window !== 'undefined' ? window : typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope ? self : {};
133
+ var Prism = function (_self) {
134
+ var lang = /(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i;
135
+ var uniqueId = 0;
136
+ var plainTextGrammar = {};
137
+ var _ = {
138
+ manual: _self.Prism && _self.Prism.manual,
139
+ disableWorkerMessageHandler: _self.Prism && _self.Prism.disableWorkerMessageHandler,
140
+ util: {
141
+ encode: function encode(tokens) {
142
+ if (tokens instanceof Token) {
143
+ return new Token(tokens.type, encode(tokens.content), tokens.alias);
144
+ } else if (Array.isArray(tokens)) {
145
+ return tokens.map(encode);
146
+ } else {
147
+ return tokens.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/\u00a0/g, ' ');
148
+ }
149
+ },
150
+ type: function (o) {
151
+ return Object.prototype.toString.call(o).slice(8, -1);
152
+ },
153
+ objId: function (obj) {
154
+ if (!obj['__id']) {
155
+ Object.defineProperty(obj, '__id', { value: ++uniqueId });
156
+ }
157
+ return obj['__id'];
158
+ },
159
+ clone: function deepClone(o, visited) {
160
+ visited = visited || {};
161
+ var clone;
162
+ var id;
163
+ switch (_.util.type(o)) {
164
+ case 'Object':
165
+ id = _.util.objId(o);
166
+ if (visited[id]) {
167
+ return visited[id];
168
+ }
169
+ clone = {};
170
+ visited[id] = clone;
171
+ for (var key in o) {
172
+ if (o.hasOwnProperty(key)) {
173
+ clone[key] = deepClone(o[key], visited);
174
+ }
175
+ }
176
+ return clone;
177
+ case 'Array':
178
+ id = _.util.objId(o);
179
+ if (visited[id]) {
180
+ return visited[id];
181
+ }
182
+ clone = [];
183
+ visited[id] = clone;
184
+ o.forEach(function (v, i) {
185
+ clone[i] = deepClone(v, visited);
186
+ });
187
+ return clone;
188
+ default:
189
+ return o;
190
+ }
191
+ },
192
+ getLanguage: function (element) {
193
+ while (element) {
194
+ var m = lang.exec(element.className);
195
+ if (m) {
196
+ return m[1].toLowerCase();
197
+ }
198
+ element = element.parentElement;
199
+ }
200
+ return 'none';
201
+ },
202
+ setLanguage: function (element, language) {
203
+ element.className = element.className.replace(RegExp(lang, 'gi'), '');
204
+ element.classList.add('language-' + language);
205
+ },
206
+ currentScript: function () {
207
+ if (typeof document === 'undefined') {
208
+ return null;
209
+ }
210
+ if ('currentScript' in document && 1 < 2) {
211
+ return document.currentScript;
212
+ }
213
+ try {
214
+ throw new Error();
215
+ } catch (err) {
216
+ var src = (/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(err.stack) || [])[1];
217
+ if (src) {
218
+ var scripts = document.getElementsByTagName('script');
219
+ for (var i in scripts) {
220
+ if (scripts[i].src == src) {
221
+ return scripts[i];
222
+ }
223
+ }
224
+ }
225
+ return null;
226
+ }
227
+ },
228
+ isActive: function (element, className, defaultActivation) {
229
+ var no = 'no-' + className;
230
+ while (element) {
231
+ var classList = element.classList;
232
+ if (classList.contains(className)) {
233
+ return true;
234
+ }
235
+ if (classList.contains(no)) {
236
+ return false;
237
+ }
238
+ element = element.parentElement;
239
+ }
240
+ return !!defaultActivation;
241
+ }
242
+ },
243
+ languages: {
244
+ plain: plainTextGrammar,
245
+ plaintext: plainTextGrammar,
246
+ text: plainTextGrammar,
247
+ txt: plainTextGrammar,
248
+ extend: function (id, redef) {
249
+ var lang = _.util.clone(_.languages[id]);
250
+ for (var key in redef) {
251
+ lang[key] = redef[key];
252
+ }
253
+ return lang;
254
+ },
255
+ insertBefore: function (inside, before, insert, root) {
256
+ root = root || _.languages;
257
+ var grammar = root[inside];
258
+ var ret = {};
259
+ for (var token in grammar) {
260
+ if (grammar.hasOwnProperty(token)) {
261
+ if (token == before) {
262
+ for (var newToken in insert) {
263
+ if (insert.hasOwnProperty(newToken)) {
264
+ ret[newToken] = insert[newToken];
265
+ }
266
+ }
267
+ }
268
+ if (!insert.hasOwnProperty(token)) {
269
+ ret[token] = grammar[token];
270
+ }
271
+ }
272
+ }
273
+ var old = root[inside];
274
+ root[inside] = ret;
275
+ _.languages.DFS(_.languages, function (key, value) {
276
+ if (value === old && key != inside) {
277
+ this[key] = ret;
278
+ }
279
+ });
280
+ return ret;
281
+ },
282
+ DFS: function DFS(o, callback, type, visited) {
283
+ visited = visited || {};
284
+ var objId = _.util.objId;
285
+ for (var i in o) {
286
+ if (o.hasOwnProperty(i)) {
287
+ callback.call(o, i, o[i], type || i);
288
+ var property = o[i];
289
+ var propertyType = _.util.type(property);
290
+ if (propertyType === 'Object' && !visited[objId(property)]) {
291
+ visited[objId(property)] = true;
292
+ DFS(property, callback, null, visited);
293
+ } else if (propertyType === 'Array' && !visited[objId(property)]) {
294
+ visited[objId(property)] = true;
295
+ DFS(property, callback, i, visited);
296
+ }
297
+ }
298
+ }
299
+ }
300
+ },
301
+ plugins: {},
302
+ highlightAll: function (async, callback) {
303
+ _.highlightAllUnder(document, async, callback);
304
+ },
305
+ highlightAllUnder: function (container, async, callback) {
306
+ var env = {
307
+ callback: callback,
308
+ container: container,
309
+ selector: 'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'
310
+ };
311
+ _.hooks.run('before-highlightall', env);
312
+ env.elements = Array.prototype.slice.apply(env.container.querySelectorAll(env.selector));
313
+ _.hooks.run('before-all-elements-highlight', env);
314
+ for (var i = 0, element; element = env.elements[i++];) {
315
+ _.highlightElement(element, async === true, env.callback);
316
+ }
317
+ },
318
+ highlightElement: function (element, async, callback) {
319
+ var language = _.util.getLanguage(element);
320
+ var grammar = _.languages[language];
321
+ _.util.setLanguage(element, language);
322
+ var parent = element.parentElement;
323
+ if (parent && parent.nodeName.toLowerCase() === 'pre') {
324
+ _.util.setLanguage(parent, language);
325
+ }
326
+ var code = element.textContent;
327
+ var env = {
328
+ element: element,
329
+ language: language,
330
+ grammar: grammar,
331
+ code: code
332
+ };
333
+ function insertHighlightedCode(highlightedCode) {
334
+ env.highlightedCode = highlightedCode;
335
+ _.hooks.run('before-insert', env);
336
+ env.element.innerHTML = env.highlightedCode;
337
+ _.hooks.run('after-highlight', env);
338
+ _.hooks.run('complete', env);
339
+ callback && callback.call(env.element);
340
+ }
341
+ _.hooks.run('before-sanity-check', env);
342
+ parent = env.element.parentElement;
343
+ if (parent && parent.nodeName.toLowerCase() === 'pre' && !parent.hasAttribute('tabindex')) {
344
+ parent.setAttribute('tabindex', '0');
345
+ }
346
+ if (!env.code) {
347
+ _.hooks.run('complete', env);
348
+ callback && callback.call(env.element);
349
+ return;
350
+ }
351
+ _.hooks.run('before-highlight', env);
352
+ if (!env.grammar) {
353
+ insertHighlightedCode(_.util.encode(env.code));
354
+ return;
355
+ }
356
+ if (async && _self.Worker) {
357
+ var worker = new Worker(_.filename);
358
+ worker.onmessage = function (evt) {
359
+ insertHighlightedCode(evt.data);
360
+ };
361
+ worker.postMessage(JSON.stringify({
362
+ language: env.language,
363
+ code: env.code,
364
+ immediateClose: true
365
+ }));
366
+ } else {
367
+ insertHighlightedCode(_.highlight(env.code, env.grammar, env.language));
368
+ }
369
+ },
370
+ highlight: function (text, grammar, language) {
371
+ var env = {
372
+ code: text,
373
+ grammar: grammar,
374
+ language: language
375
+ };
376
+ _.hooks.run('before-tokenize', env);
377
+ if (!env.grammar) {
378
+ throw new Error('The language "' + env.language + '" has no grammar.');
379
+ }
380
+ env.tokens = _.tokenize(env.code, env.grammar);
381
+ _.hooks.run('after-tokenize', env);
382
+ return Token.stringify(_.util.encode(env.tokens), env.language);
383
+ },
384
+ tokenize: function (text, grammar) {
385
+ var rest = grammar.rest;
386
+ if (rest) {
387
+ for (var token in rest) {
388
+ grammar[token] = rest[token];
389
+ }
390
+ delete grammar.rest;
391
+ }
392
+ var tokenList = new LinkedList();
393
+ addAfter(tokenList, tokenList.head, text);
394
+ matchGrammar(text, tokenList, grammar, tokenList.head, 0);
395
+ return toArray(tokenList);
396
+ },
397
+ hooks: {
398
+ all: {},
399
+ add: function (name, callback) {
400
+ var hooks = _.hooks.all;
401
+ hooks[name] = hooks[name] || [];
402
+ hooks[name].push(callback);
403
+ },
404
+ run: function (name, env) {
405
+ var callbacks = _.hooks.all[name];
406
+ if (!callbacks || !callbacks.length) {
407
+ return;
408
+ }
409
+ for (var i = 0, callback; callback = callbacks[i++];) {
410
+ callback(env);
411
+ }
412
+ }
413
+ },
414
+ Token: Token
415
+ };
416
+ _self.Prism = _;
417
+ function Token(type, content, alias, matchedStr) {
418
+ this.type = type;
419
+ this.content = content;
420
+ this.alias = alias;
421
+ this.length = (matchedStr || '').length | 0;
422
+ }
423
+ Token.stringify = function stringify(o, language) {
424
+ if (typeof o == 'string') {
425
+ return o;
426
+ }
427
+ if (Array.isArray(o)) {
428
+ var s = '';
429
+ o.forEach(function (e) {
430
+ s += stringify(e, language);
431
+ });
432
+ return s;
433
+ }
434
+ var env = {
435
+ type: o.type,
436
+ content: stringify(o.content, language),
437
+ tag: 'span',
438
+ classes: [
439
+ 'token',
440
+ o.type
441
+ ],
442
+ attributes: {},
443
+ language: language
444
+ };
445
+ var aliases = o.alias;
446
+ if (aliases) {
447
+ if (Array.isArray(aliases)) {
448
+ Array.prototype.push.apply(env.classes, aliases);
449
+ } else {
450
+ env.classes.push(aliases);
451
+ }
452
+ }
453
+ _.hooks.run('wrap', env);
454
+ var attributes = '';
455
+ for (var name in env.attributes) {
456
+ attributes += ' ' + name + '="' + (env.attributes[name] || '').replace(/"/g, '&quot;') + '"';
457
+ }
458
+ return '<' + env.tag + ' class="' + env.classes.join(' ') + '"' + attributes + '>' + env.content + '</' + env.tag + '>';
459
+ };
460
+ function matchPattern(pattern, pos, text, lookbehind) {
461
+ pattern.lastIndex = pos;
462
+ var match = pattern.exec(text);
463
+ if (match && lookbehind && match[1]) {
464
+ var lookbehindLength = match[1].length;
465
+ match.index += lookbehindLength;
466
+ match[0] = match[0].slice(lookbehindLength);
467
+ }
468
+ return match;
469
+ }
470
+ function matchGrammar(text, tokenList, grammar, startNode, startPos, rematch) {
471
+ for (var token in grammar) {
472
+ if (!grammar.hasOwnProperty(token) || !grammar[token]) {
473
+ continue;
474
+ }
475
+ var patterns = grammar[token];
476
+ patterns = Array.isArray(patterns) ? patterns : [patterns];
477
+ for (var j = 0; j < patterns.length; ++j) {
478
+ if (rematch && rematch.cause == token + ',' + j) {
479
+ return;
480
+ }
481
+ var patternObj = patterns[j];
482
+ var inside = patternObj.inside;
483
+ var lookbehind = !!patternObj.lookbehind;
484
+ var greedy = !!patternObj.greedy;
485
+ var alias = patternObj.alias;
486
+ if (greedy && !patternObj.pattern.global) {
487
+ var flags = patternObj.pattern.toString().match(/[imsuy]*$/)[0];
488
+ patternObj.pattern = RegExp(patternObj.pattern.source, flags + 'g');
489
+ }
490
+ var pattern = patternObj.pattern || patternObj;
491
+ for (var currentNode = startNode.next, pos = startPos; currentNode !== tokenList.tail; pos += currentNode.value.length, currentNode = currentNode.next) {
492
+ if (rematch && pos >= rematch.reach) {
493
+ break;
494
+ }
495
+ var str = currentNode.value;
496
+ if (tokenList.length > text.length) {
497
+ return;
498
+ }
499
+ if (str instanceof Token) {
500
+ continue;
501
+ }
502
+ var removeCount = 1;
503
+ var match;
504
+ if (greedy) {
505
+ match = matchPattern(pattern, pos, text, lookbehind);
506
+ if (!match || match.index >= text.length) {
507
+ break;
508
+ }
509
+ var from = match.index;
510
+ var to = match.index + match[0].length;
511
+ var p = pos;
512
+ p += currentNode.value.length;
513
+ while (from >= p) {
514
+ currentNode = currentNode.next;
515
+ p += currentNode.value.length;
516
+ }
517
+ p -= currentNode.value.length;
518
+ pos = p;
519
+ if (currentNode.value instanceof Token) {
520
+ continue;
521
+ }
522
+ for (var k = currentNode; k !== tokenList.tail && (p < to || typeof k.value === 'string'); k = k.next) {
523
+ removeCount++;
524
+ p += k.value.length;
525
+ }
526
+ removeCount--;
527
+ str = text.slice(pos, p);
528
+ match.index -= pos;
529
+ } else {
530
+ match = matchPattern(pattern, 0, str, lookbehind);
531
+ if (!match) {
532
+ continue;
533
+ }
534
+ }
535
+ var from = match.index;
536
+ var matchStr = match[0];
537
+ var before = str.slice(0, from);
538
+ var after = str.slice(from + matchStr.length);
539
+ var reach = pos + str.length;
540
+ if (rematch && reach > rematch.reach) {
541
+ rematch.reach = reach;
542
+ }
543
+ var removeFrom = currentNode.prev;
544
+ if (before) {
545
+ removeFrom = addAfter(tokenList, removeFrom, before);
546
+ pos += before.length;
547
+ }
548
+ removeRange(tokenList, removeFrom, removeCount);
549
+ var wrapped = new Token(token, inside ? _.tokenize(matchStr, inside) : matchStr, alias, matchStr);
550
+ currentNode = addAfter(tokenList, removeFrom, wrapped);
551
+ if (after) {
552
+ addAfter(tokenList, currentNode, after);
553
+ }
554
+ if (removeCount > 1) {
555
+ var nestedRematch = {
556
+ cause: token + ',' + j,
557
+ reach: reach
558
+ };
559
+ matchGrammar(text, tokenList, grammar, currentNode.prev, pos, nestedRematch);
560
+ if (rematch && nestedRematch.reach > rematch.reach) {
561
+ rematch.reach = nestedRematch.reach;
562
+ }
563
+ }
564
+ }
565
+ }
566
+ }
567
+ }
568
+ function LinkedList() {
569
+ var head = {
570
+ value: null,
571
+ prev: null,
572
+ next: null
573
+ };
574
+ var tail = {
575
+ value: null,
576
+ prev: head,
577
+ next: null
578
+ };
579
+ head.next = tail;
580
+ this.head = head;
581
+ this.tail = tail;
582
+ this.length = 0;
583
+ }
584
+ function addAfter(list, node, value) {
585
+ var next = node.next;
586
+ var newNode = {
587
+ value: value,
588
+ prev: node,
589
+ next: next
590
+ };
591
+ node.next = newNode;
592
+ next.prev = newNode;
593
+ list.length++;
594
+ return newNode;
595
+ }
596
+ function removeRange(list, node, count) {
597
+ var next = node.next;
598
+ for (var i = 0; i < count && next !== list.tail; i++) {
599
+ next = next.next;
600
+ }
601
+ node.next = next;
602
+ next.prev = node;
603
+ list.length -= i;
604
+ }
605
+ function toArray(list) {
606
+ var array = [];
607
+ var node = list.head.next;
608
+ while (node !== list.tail) {
609
+ array.push(node.value);
610
+ node = node.next;
611
+ }
612
+ return array;
613
+ }
614
+ if (!_self.document) {
615
+ if (!_self.addEventListener) {
616
+ return _;
617
+ }
618
+ if (!_.disableWorkerMessageHandler) {
619
+ _self.addEventListener('message', function (evt) {
620
+ var message = JSON.parse(evt.data);
621
+ var lang = message.language;
622
+ var code = message.code;
623
+ var immediateClose = message.immediateClose;
624
+ _self.postMessage(_.highlight(code, _.languages[lang], lang));
625
+ if (immediateClose) {
626
+ _self.close();
627
+ }
628
+ }, false);
629
+ }
630
+ return _;
631
+ }
632
+ var script = _.util.currentScript();
633
+ if (script) {
634
+ _.filename = script.src;
635
+ if (script.hasAttribute('data-manual')) {
636
+ _.manual = true;
637
+ }
638
+ }
639
+ function highlightAutomaticallyCallback() {
640
+ if (!_.manual) {
641
+ _.highlightAll();
642
+ }
643
+ }
644
+ if (!_.manual) {
645
+ var readyState = document.readyState;
646
+ if (readyState === 'loading' || readyState === 'interactive' && script && script.defer) {
647
+ document.addEventListener('DOMContentLoaded', highlightAutomaticallyCallback);
648
+ } else {
649
+ if (window.requestAnimationFrame) {
650
+ window.requestAnimationFrame(highlightAutomaticallyCallback);
651
+ } else {
652
+ window.setTimeout(highlightAutomaticallyCallback, 16);
653
+ }
654
+ }
655
+ }
656
+ return _;
657
+ }(_self);
658
+ if (typeof module !== 'undefined' && module.exports) {
659
+ module.exports = Prism;
660
+ }
661
+ if (typeof global !== 'undefined') {
662
+ global.Prism = Prism;
663
+ }
664
+ Prism.languages.clike = {
665
+ 'comment': [
666
+ {
667
+ pattern: /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,
668
+ lookbehind: true,
669
+ greedy: true
670
+ },
671
+ {
672
+ pattern: /(^|[^\\:])\/\/.*/,
673
+ lookbehind: true,
674
+ greedy: true
675
+ }
676
+ ],
677
+ 'string': {
678
+ pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,
679
+ greedy: true
680
+ },
681
+ 'class-name': {
682
+ pattern: /(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,
683
+ lookbehind: true,
684
+ inside: { 'punctuation': /[.\\]/ }
685
+ },
686
+ 'keyword': /\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,
687
+ 'boolean': /\b(?:false|true)\b/,
688
+ 'function': /\b\w+(?=\()/,
689
+ 'number': /\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,
690
+ 'operator': /[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,
691
+ 'punctuation': /[{}[\];(),.:]/
692
+ };
693
+ (function (Prism) {
694
+ function getPlaceholder(language, index) {
695
+ return '___' + language.toUpperCase() + index + '___';
696
+ }
697
+ Object.defineProperties(Prism.languages['markup-templating'] = {}, {
698
+ buildPlaceholders: {
699
+ value: function (env, language, placeholderPattern, replaceFilter) {
700
+ if (env.language !== language) {
701
+ return;
702
+ }
703
+ var tokenStack = env.tokenStack = [];
704
+ env.code = env.code.replace(placeholderPattern, function (match) {
705
+ if (typeof replaceFilter === 'function' && !replaceFilter(match)) {
706
+ return match;
707
+ }
708
+ var i = tokenStack.length;
709
+ var placeholder;
710
+ while (env.code.indexOf(placeholder = getPlaceholder(language, i)) !== -1) {
711
+ ++i;
712
+ }
713
+ tokenStack[i] = match;
714
+ return placeholder;
715
+ });
716
+ env.grammar = Prism.languages.markup;
717
+ }
718
+ },
719
+ tokenizePlaceholders: {
720
+ value: function (env, language) {
721
+ if (env.language !== language || !env.tokenStack) {
722
+ return;
723
+ }
724
+ env.grammar = Prism.languages[language];
725
+ var j = 0;
726
+ var keys = Object.keys(env.tokenStack);
727
+ function walkTokens(tokens) {
728
+ for (var i = 0; i < tokens.length; i++) {
729
+ if (j >= keys.length) {
730
+ break;
731
+ }
732
+ var token = tokens[i];
733
+ if (typeof token === 'string' || token.content && typeof token.content === 'string') {
734
+ var k = keys[j];
735
+ var t = env.tokenStack[k];
736
+ var s = typeof token === 'string' ? token : token.content;
737
+ var placeholder = getPlaceholder(language, k);
738
+ var index = s.indexOf(placeholder);
739
+ if (index > -1) {
740
+ ++j;
741
+ var before = s.substring(0, index);
742
+ var middle = new Prism.Token(language, Prism.tokenize(t, env.grammar), 'language-' + language, t);
743
+ var after = s.substring(index + placeholder.length);
744
+ var replacement = [];
745
+ if (before) {
746
+ replacement.push.apply(replacement, walkTokens([before]));
747
+ }
748
+ replacement.push(middle);
749
+ if (after) {
750
+ replacement.push.apply(replacement, walkTokens([after]));
751
+ }
752
+ if (typeof token === 'string') {
753
+ tokens.splice.apply(tokens, [
754
+ i,
755
+ 1
756
+ ].concat(replacement));
757
+ } else {
758
+ token.content = replacement;
759
+ }
760
+ }
761
+ } else if (token.content) {
762
+ walkTokens(token.content);
763
+ }
764
+ }
765
+ return tokens;
766
+ }
767
+ walkTokens(env.tokens);
768
+ }
769
+ }
770
+ });
771
+ }(Prism));
772
+ Prism.languages.c = Prism.languages.extend('clike', {
773
+ 'comment': {
774
+ pattern: /\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/,
775
+ greedy: true
776
+ },
777
+ 'string': {
778
+ pattern: /"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,
779
+ greedy: true
780
+ },
781
+ 'class-name': {
782
+ pattern: /(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+|\b[a-z]\w*_t\b/,
783
+ lookbehind: true
784
+ },
785
+ 'keyword': /\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|__attribute__|asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|inline|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|typeof|union|unsigned|void|volatile|while)\b/,
786
+ 'function': /\b[a-z_]\w*(?=\s*\()/i,
787
+ 'number': /(?:\b0x(?:[\da-f]+(?:\.[\da-f]*)?|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[ful]{0,4}/i,
788
+ 'operator': />>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/
789
+ });
790
+ Prism.languages.insertBefore('c', 'string', {
791
+ 'char': {
792
+ pattern: /'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n]){0,32}'/,
793
+ greedy: true
794
+ }
795
+ });
796
+ Prism.languages.insertBefore('c', 'string', {
797
+ 'macro': {
798
+ pattern: /(^[\t ]*)#\s*[a-z](?:[^\r\n\\/]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:\r\n|[\s\S]))*/im,
799
+ lookbehind: true,
800
+ greedy: true,
801
+ alias: 'property',
802
+ inside: {
803
+ 'string': [
804
+ {
805
+ pattern: /^(#\s*include\s*)<[^>]+>/,
806
+ lookbehind: true
807
+ },
808
+ Prism.languages.c['string']
809
+ ],
810
+ 'char': Prism.languages.c['char'],
811
+ 'comment': Prism.languages.c['comment'],
812
+ 'macro-name': [
813
+ {
814
+ pattern: /(^#\s*define\s+)\w+\b(?!\()/i,
815
+ lookbehind: true
816
+ },
817
+ {
818
+ pattern: /(^#\s*define\s+)\w+\b(?=\()/i,
819
+ lookbehind: true,
820
+ alias: 'function'
821
+ }
822
+ ],
823
+ 'directive': {
824
+ pattern: /^(#\s*)[a-z]+/,
825
+ lookbehind: true,
826
+ alias: 'keyword'
827
+ },
828
+ 'directive-hash': /^#/,
829
+ 'punctuation': /##|\\(?=[\r\n])/,
830
+ 'expression': {
831
+ pattern: /\S[\s\S]*/,
832
+ inside: Prism.languages.c
833
+ }
834
+ }
835
+ }
836
+ });
837
+ Prism.languages.insertBefore('c', 'function', { 'constant': /\b(?:EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|__DATE__|__FILE__|__LINE__|__TIMESTAMP__|__TIME__|__func__|stderr|stdin|stdout)\b/ });
838
+ delete Prism.languages.c['boolean'];
839
+ (function (Prism) {
840
+ var keyword = /\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|char8_t|class|co_await|co_return|co_yield|compl|concept|const|const_cast|consteval|constexpr|constinit|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|final|float|for|friend|goto|if|import|inline|int|int16_t|int32_t|int64_t|int8_t|long|module|mutable|namespace|new|noexcept|nullptr|operator|override|private|protected|public|register|reinterpret_cast|requires|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|uint16_t|uint32_t|uint64_t|uint8_t|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/;
841
+ var modName = /\b(?!<keyword>)\w+(?:\s*\.\s*\w+)*\b/.source.replace(/<keyword>/g, function () {
842
+ return keyword.source;
843
+ });
844
+ Prism.languages.cpp = Prism.languages.extend('c', {
845
+ 'class-name': [
846
+ {
847
+ pattern: RegExp(/(\b(?:class|concept|enum|struct|typename)\s+)(?!<keyword>)\w+/.source.replace(/<keyword>/g, function () {
848
+ return keyword.source;
849
+ })),
850
+ lookbehind: true
851
+ },
852
+ /\b[A-Z]\w*(?=\s*::\s*\w+\s*\()/,
853
+ /\b[A-Z_]\w*(?=\s*::\s*~\w+\s*\()/i,
854
+ /\b\w+(?=\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>\s*::\s*\w+\s*\()/
855
+ ],
856
+ 'keyword': keyword,
857
+ 'number': {
858
+ pattern: /(?:\b0b[01']+|\b0x(?:[\da-f']+(?:\.[\da-f']*)?|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+(?:\.[\d']*)?|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]{0,4}/i,
859
+ greedy: true
860
+ },
861
+ 'operator': />>=?|<<=?|->|--|\+\+|&&|\|\||[?:~]|<=>|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,
862
+ 'boolean': /\b(?:false|true)\b/
863
+ });
864
+ Prism.languages.insertBefore('cpp', 'string', {
865
+ 'module': {
866
+ pattern: RegExp(/(\b(?:import|module)\s+)/.source + '(?:' + /"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|<[^<>\r\n]*>/.source + '|' + /<mod-name>(?:\s*:\s*<mod-name>)?|:\s*<mod-name>/.source.replace(/<mod-name>/g, function () {
867
+ return modName;
868
+ }) + ')'),
869
+ lookbehind: true,
870
+ greedy: true,
871
+ inside: {
872
+ 'string': /^[<"][\s\S]+/,
873
+ 'operator': /:/,
874
+ 'punctuation': /\./
875
+ }
876
+ },
877
+ 'raw-string': {
878
+ pattern: /R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,
879
+ alias: 'string',
880
+ greedy: true
881
+ }
882
+ });
883
+ Prism.languages.insertBefore('cpp', 'keyword', {
884
+ 'generic-function': {
885
+ pattern: /\b(?!operator\b)[a-z_]\w*\s*<(?:[^<>]|<[^<>]*>)*>(?=\s*\()/i,
886
+ inside: {
887
+ 'function': /^\w+/,
888
+ 'generic': {
889
+ pattern: /<[\s\S]+/,
890
+ alias: 'class-name',
891
+ inside: Prism.languages.cpp
892
+ }
893
+ }
894
+ }
895
+ });
896
+ Prism.languages.insertBefore('cpp', 'operator', {
897
+ 'double-colon': {
898
+ pattern: /::/,
899
+ alias: 'punctuation'
900
+ }
901
+ });
902
+ Prism.languages.insertBefore('cpp', 'class-name', {
903
+ 'base-clause': {
904
+ pattern: /(\b(?:class|struct)\s+\w+\s*:\s*)[^;{}"'\s]+(?:\s+[^;{}"'\s]+)*(?=\s*[;{])/,
905
+ lookbehind: true,
906
+ greedy: true,
907
+ inside: Prism.languages.extend('cpp', {})
908
+ }
909
+ });
910
+ Prism.languages.insertBefore('inside', 'double-colon', { 'class-name': /\b[a-z_]\w*\b(?!\s*::)/i }, Prism.languages.cpp['base-clause']);
911
+ }(Prism));
912
+ (function (Prism) {
913
+ function replace(pattern, replacements) {
914
+ return pattern.replace(/<<(\d+)>>/g, function (m, index) {
915
+ return '(?:' + replacements[+index] + ')';
916
+ });
917
+ }
918
+ function re(pattern, replacements, flags) {
919
+ return RegExp(replace(pattern, replacements), flags || '');
920
+ }
921
+ function nested(pattern, depthLog2) {
922
+ for (var i = 0; i < depthLog2; i++) {
923
+ pattern = pattern.replace(/<<self>>/g, function () {
924
+ return '(?:' + pattern + ')';
925
+ });
926
+ }
927
+ return pattern.replace(/<<self>>/g, '[^\\s\\S]');
928
+ }
929
+ var keywordKinds = {
930
+ type: 'bool byte char decimal double dynamic float int long object sbyte short string uint ulong ushort var void',
931
+ typeDeclaration: 'class enum interface record struct',
932
+ contextual: 'add alias and ascending async await by descending from(?=\\s*(?:\\w|$)) get global group into init(?=\\s*;) join let nameof not notnull on or orderby partial remove select set unmanaged value when where with(?=\\s*{)',
933
+ other: 'abstract as base break case catch checked const continue default delegate do else event explicit extern finally fixed for foreach goto if implicit in internal is lock namespace new null operator out override params private protected public readonly ref return sealed sizeof stackalloc static switch this throw try typeof unchecked unsafe using virtual volatile while yield'
934
+ };
935
+ function keywordsToPattern(words) {
936
+ return '\\b(?:' + words.trim().replace(/ /g, '|') + ')\\b';
937
+ }
938
+ var typeDeclarationKeywords = keywordsToPattern(keywordKinds.typeDeclaration);
939
+ var keywords = RegExp(keywordsToPattern(keywordKinds.type + ' ' + keywordKinds.typeDeclaration + ' ' + keywordKinds.contextual + ' ' + keywordKinds.other));
940
+ var nonTypeKeywords = keywordsToPattern(keywordKinds.typeDeclaration + ' ' + keywordKinds.contextual + ' ' + keywordKinds.other);
941
+ var nonContextualKeywords = keywordsToPattern(keywordKinds.type + ' ' + keywordKinds.typeDeclaration + ' ' + keywordKinds.other);
942
+ var generic = nested(/<(?:[^<>;=+\-*/%&|^]|<<self>>)*>/.source, 2);
943
+ var nestedRound = nested(/\((?:[^()]|<<self>>)*\)/.source, 2);
944
+ var name = /@?\b[A-Za-z_]\w*\b/.source;
945
+ var genericName = replace(/<<0>>(?:\s*<<1>>)?/.source, [
946
+ name,
947
+ generic
948
+ ]);
949
+ var identifier = replace(/(?!<<0>>)<<1>>(?:\s*\.\s*<<1>>)*/.source, [
950
+ nonTypeKeywords,
951
+ genericName
952
+ ]);
953
+ var array = /\[\s*(?:,\s*)*\]/.source;
954
+ var typeExpressionWithoutTuple = replace(/<<0>>(?:\s*(?:\?\s*)?<<1>>)*(?:\s*\?)?/.source, [
955
+ identifier,
956
+ array
957
+ ]);
958
+ var tupleElement = replace(/[^,()<>[\];=+\-*/%&|^]|<<0>>|<<1>>|<<2>>/.source, [
959
+ generic,
960
+ nestedRound,
961
+ array
962
+ ]);
963
+ var tuple = replace(/\(<<0>>+(?:,<<0>>+)+\)/.source, [tupleElement]);
964
+ var typeExpression = replace(/(?:<<0>>|<<1>>)(?:\s*(?:\?\s*)?<<2>>)*(?:\s*\?)?/.source, [
965
+ tuple,
966
+ identifier,
967
+ array
968
+ ]);
969
+ var typeInside = {
970
+ 'keyword': keywords,
971
+ 'punctuation': /[<>()?,.:[\]]/
972
+ };
973
+ var character = /'(?:[^\r\n'\\]|\\.|\\[Uux][\da-fA-F]{1,8})'/.source;
974
+ var regularString = /"(?:\\.|[^\\"\r\n])*"/.source;
975
+ var verbatimString = /@"(?:""|\\[\s\S]|[^\\"])*"(?!")/.source;
976
+ Prism.languages.csharp = Prism.languages.extend('clike', {
977
+ 'string': [
978
+ {
979
+ pattern: re(/(^|[^$\\])<<0>>/.source, [verbatimString]),
980
+ lookbehind: true,
981
+ greedy: true
982
+ },
983
+ {
984
+ pattern: re(/(^|[^@$\\])<<0>>/.source, [regularString]),
985
+ lookbehind: true,
986
+ greedy: true
987
+ }
988
+ ],
989
+ 'class-name': [
990
+ {
991
+ pattern: re(/(\busing\s+static\s+)<<0>>(?=\s*;)/.source, [identifier]),
992
+ lookbehind: true,
993
+ inside: typeInside
994
+ },
995
+ {
996
+ pattern: re(/(\busing\s+<<0>>\s*=\s*)<<1>>(?=\s*;)/.source, [
997
+ name,
998
+ typeExpression
999
+ ]),
1000
+ lookbehind: true,
1001
+ inside: typeInside
1002
+ },
1003
+ {
1004
+ pattern: re(/(\busing\s+)<<0>>(?=\s*=)/.source, [name]),
1005
+ lookbehind: true
1006
+ },
1007
+ {
1008
+ pattern: re(/(\b<<0>>\s+)<<1>>/.source, [
1009
+ typeDeclarationKeywords,
1010
+ genericName
1011
+ ]),
1012
+ lookbehind: true,
1013
+ inside: typeInside
1014
+ },
1015
+ {
1016
+ pattern: re(/(\bcatch\s*\(\s*)<<0>>/.source, [identifier]),
1017
+ lookbehind: true,
1018
+ inside: typeInside
1019
+ },
1020
+ {
1021
+ pattern: re(/(\bwhere\s+)<<0>>/.source, [name]),
1022
+ lookbehind: true
1023
+ },
1024
+ {
1025
+ pattern: re(/(\b(?:is(?:\s+not)?|as)\s+)<<0>>/.source, [typeExpressionWithoutTuple]),
1026
+ lookbehind: true,
1027
+ inside: typeInside
1028
+ },
1029
+ {
1030
+ pattern: re(/\b<<0>>(?=\s+(?!<<1>>|with\s*\{)<<2>>(?:\s*[=,;:{)\]]|\s+(?:in|when)\b))/.source, [
1031
+ typeExpression,
1032
+ nonContextualKeywords,
1033
+ name
1034
+ ]),
1035
+ inside: typeInside
1036
+ }
1037
+ ],
1038
+ 'keyword': keywords,
1039
+ 'number': /(?:\b0(?:x[\da-f_]*[\da-f]|b[01_]*[01])|(?:\B\.\d+(?:_+\d+)*|\b\d+(?:_+\d+)*(?:\.\d+(?:_+\d+)*)?)(?:e[-+]?\d+(?:_+\d+)*)?)(?:[dflmu]|lu|ul)?\b/i,
1040
+ 'operator': />>=?|<<=?|[-=]>|([-+&|])\1|~|\?\?=?|[-+*/%&|^!=<>]=?/,
1041
+ 'punctuation': /\?\.?|::|[{}[\];(),.:]/
1042
+ });
1043
+ Prism.languages.insertBefore('csharp', 'number', {
1044
+ 'range': {
1045
+ pattern: /\.\./,
1046
+ alias: 'operator'
1047
+ }
1048
+ });
1049
+ Prism.languages.insertBefore('csharp', 'punctuation', {
1050
+ 'named-parameter': {
1051
+ pattern: re(/([(,]\s*)<<0>>(?=\s*:)/.source, [name]),
1052
+ lookbehind: true,
1053
+ alias: 'punctuation'
1054
+ }
1055
+ });
1056
+ Prism.languages.insertBefore('csharp', 'class-name', {
1057
+ 'namespace': {
1058
+ pattern: re(/(\b(?:namespace|using)\s+)<<0>>(?:\s*\.\s*<<0>>)*(?=\s*[;{])/.source, [name]),
1059
+ lookbehind: true,
1060
+ inside: { 'punctuation': /\./ }
1061
+ },
1062
+ 'type-expression': {
1063
+ pattern: re(/(\b(?:default|sizeof|typeof)\s*\(\s*(?!\s))(?:[^()\s]|\s(?!\s)|<<0>>)*(?=\s*\))/.source, [nestedRound]),
1064
+ lookbehind: true,
1065
+ alias: 'class-name',
1066
+ inside: typeInside
1067
+ },
1068
+ 'return-type': {
1069
+ pattern: re(/<<0>>(?=\s+(?:<<1>>\s*(?:=>|[({]|\.\s*this\s*\[)|this\s*\[))/.source, [
1070
+ typeExpression,
1071
+ identifier
1072
+ ]),
1073
+ inside: typeInside,
1074
+ alias: 'class-name'
1075
+ },
1076
+ 'constructor-invocation': {
1077
+ pattern: re(/(\bnew\s+)<<0>>(?=\s*[[({])/.source, [typeExpression]),
1078
+ lookbehind: true,
1079
+ inside: typeInside,
1080
+ alias: 'class-name'
1081
+ },
1082
+ 'generic-method': {
1083
+ pattern: re(/<<0>>\s*<<1>>(?=\s*\()/.source, [
1084
+ name,
1085
+ generic
1086
+ ]),
1087
+ inside: {
1088
+ 'function': re(/^<<0>>/.source, [name]),
1089
+ 'generic': {
1090
+ pattern: RegExp(generic),
1091
+ alias: 'class-name',
1092
+ inside: typeInside
1093
+ }
1094
+ }
1095
+ },
1096
+ 'type-list': {
1097
+ pattern: re(/\b((?:<<0>>\s+<<1>>|record\s+<<1>>\s*<<5>>|where\s+<<2>>)\s*:\s*)(?:<<3>>|<<4>>|<<1>>\s*<<5>>|<<6>>)(?:\s*,\s*(?:<<3>>|<<4>>|<<6>>))*(?=\s*(?:where|[{;]|=>|$))/.source, [
1098
+ typeDeclarationKeywords,
1099
+ genericName,
1100
+ name,
1101
+ typeExpression,
1102
+ keywords.source,
1103
+ nestedRound,
1104
+ /\bnew\s*\(\s*\)/.source
1105
+ ]),
1106
+ lookbehind: true,
1107
+ inside: {
1108
+ 'record-arguments': {
1109
+ pattern: re(/(^(?!new\s*\()<<0>>\s*)<<1>>/.source, [
1110
+ genericName,
1111
+ nestedRound
1112
+ ]),
1113
+ lookbehind: true,
1114
+ greedy: true,
1115
+ inside: Prism.languages.csharp
1116
+ },
1117
+ 'keyword': keywords,
1118
+ 'class-name': {
1119
+ pattern: RegExp(typeExpression),
1120
+ greedy: true,
1121
+ inside: typeInside
1122
+ },
1123
+ 'punctuation': /[,()]/
1124
+ }
1125
+ },
1126
+ 'preprocessor': {
1127
+ pattern: /(^[\t ]*)#.*/m,
1128
+ lookbehind: true,
1129
+ alias: 'property',
1130
+ inside: {
1131
+ 'directive': {
1132
+ pattern: /(#)\b(?:define|elif|else|endif|endregion|error|if|line|nullable|pragma|region|undef|warning)\b/,
1133
+ lookbehind: true,
1134
+ alias: 'keyword'
1135
+ }
1136
+ }
1137
+ }
1138
+ });
1139
+ var regularStringOrCharacter = regularString + '|' + character;
1140
+ var regularStringCharacterOrComment = replace(/\/(?![*/])|\/\/[^\r\n]*[\r\n]|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>/.source, [regularStringOrCharacter]);
1141
+ var roundExpression = nested(replace(/[^"'/()]|<<0>>|\(<<self>>*\)/.source, [regularStringCharacterOrComment]), 2);
1142
+ var attrTarget = /\b(?:assembly|event|field|method|module|param|property|return|type)\b/.source;
1143
+ var attr = replace(/<<0>>(?:\s*\(<<1>>*\))?/.source, [
1144
+ identifier,
1145
+ roundExpression
1146
+ ]);
1147
+ Prism.languages.insertBefore('csharp', 'class-name', {
1148
+ 'attribute': {
1149
+ pattern: re(/((?:^|[^\s\w>)?])\s*\[\s*)(?:<<0>>\s*:\s*)?<<1>>(?:\s*,\s*<<1>>)*(?=\s*\])/.source, [
1150
+ attrTarget,
1151
+ attr
1152
+ ]),
1153
+ lookbehind: true,
1154
+ greedy: true,
1155
+ inside: {
1156
+ 'target': {
1157
+ pattern: re(/^<<0>>(?=\s*:)/.source, [attrTarget]),
1158
+ alias: 'keyword'
1159
+ },
1160
+ 'attribute-arguments': {
1161
+ pattern: re(/\(<<0>>*\)/.source, [roundExpression]),
1162
+ inside: Prism.languages.csharp
1163
+ },
1164
+ 'class-name': {
1165
+ pattern: RegExp(identifier),
1166
+ inside: { 'punctuation': /\./ }
1167
+ },
1168
+ 'punctuation': /[:,]/
1169
+ }
1170
+ }
1171
+ });
1172
+ var formatString = /:[^}\r\n]+/.source;
1173
+ var mInterpolationRound = nested(replace(/[^"'/()]|<<0>>|\(<<self>>*\)/.source, [regularStringCharacterOrComment]), 2);
1174
+ var mInterpolation = replace(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source, [
1175
+ mInterpolationRound,
1176
+ formatString
1177
+ ]);
1178
+ var sInterpolationRound = nested(replace(/[^"'/()]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>|\(<<self>>*\)/.source, [regularStringOrCharacter]), 2);
1179
+ var sInterpolation = replace(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source, [
1180
+ sInterpolationRound,
1181
+ formatString
1182
+ ]);
1183
+ function createInterpolationInside(interpolation, interpolationRound) {
1184
+ return {
1185
+ 'interpolation': {
1186
+ pattern: re(/((?:^|[^{])(?:\{\{)*)<<0>>/.source, [interpolation]),
1187
+ lookbehind: true,
1188
+ inside: {
1189
+ 'format-string': {
1190
+ pattern: re(/(^\{(?:(?![}:])<<0>>)*)<<1>>(?=\}$)/.source, [
1191
+ interpolationRound,
1192
+ formatString
1193
+ ]),
1194
+ lookbehind: true,
1195
+ inside: { 'punctuation': /^:/ }
1196
+ },
1197
+ 'punctuation': /^\{|\}$/,
1198
+ 'expression': {
1199
+ pattern: /[\s\S]+/,
1200
+ alias: 'language-csharp',
1201
+ inside: Prism.languages.csharp
1202
+ }
1203
+ }
1204
+ },
1205
+ 'string': /[\s\S]+/
1206
+ };
1207
+ }
1208
+ Prism.languages.insertBefore('csharp', 'string', {
1209
+ 'interpolation-string': [
1210
+ {
1211
+ pattern: re(/(^|[^\\])(?:\$@|@\$)"(?:""|\\[\s\S]|\{\{|<<0>>|[^\\{"])*"/.source, [mInterpolation]),
1212
+ lookbehind: true,
1213
+ greedy: true,
1214
+ inside: createInterpolationInside(mInterpolation, mInterpolationRound)
1215
+ },
1216
+ {
1217
+ pattern: re(/(^|[^@\\])\$"(?:\\.|\{\{|<<0>>|[^\\"{])*"/.source, [sInterpolation]),
1218
+ lookbehind: true,
1219
+ greedy: true,
1220
+ inside: createInterpolationInside(sInterpolation, sInterpolationRound)
1221
+ }
1222
+ ],
1223
+ 'char': {
1224
+ pattern: RegExp(character),
1225
+ greedy: true
1226
+ }
1227
+ });
1228
+ Prism.languages.dotnet = Prism.languages.cs = Prism.languages.csharp;
1229
+ }(Prism));
1230
+ (function (Prism) {
1231
+ var string = /(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;
1232
+ Prism.languages.css = {
1233
+ 'comment': /\/\*[\s\S]*?\*\//,
1234
+ 'atrule': {
1235
+ pattern: RegExp('@[\\w-](?:' + /[^;{\s"']|\s+(?!\s)/.source + '|' + string.source + ')*?' + /(?:;|(?=\s*\{))/.source),
1236
+ inside: {
1237
+ 'rule': /^@[\w-]+/,
1238
+ 'selector-function-argument': {
1239
+ pattern: /(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,
1240
+ lookbehind: true,
1241
+ alias: 'selector'
1242
+ },
1243
+ 'keyword': {
1244
+ pattern: /(^|[^\w-])(?:and|not|only|or)(?![\w-])/,
1245
+ lookbehind: true
1246
+ }
1247
+ }
1248
+ },
1249
+ 'url': {
1250
+ pattern: RegExp('\\burl\\((?:' + string.source + '|' + /(?:[^\\\r\n()"']|\\[\s\S])*/.source + ')\\)', 'i'),
1251
+ greedy: true,
1252
+ inside: {
1253
+ 'function': /^url/i,
1254
+ 'punctuation': /^\(|\)$/,
1255
+ 'string': {
1256
+ pattern: RegExp('^' + string.source + '$'),
1257
+ alias: 'url'
1258
+ }
1259
+ }
1260
+ },
1261
+ 'selector': {
1262
+ pattern: RegExp('(^|[{}\\s])[^{}\\s](?:[^{};"\'\\s]|\\s+(?![\\s{])|' + string.source + ')*(?=\\s*\\{)'),
1263
+ lookbehind: true
1264
+ },
1265
+ 'string': {
1266
+ pattern: string,
1267
+ greedy: true
1268
+ },
1269
+ 'property': {
1270
+ pattern: /(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,
1271
+ lookbehind: true
1272
+ },
1273
+ 'important': /!important\b/i,
1274
+ 'function': {
1275
+ pattern: /(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,
1276
+ lookbehind: true
1277
+ },
1278
+ 'punctuation': /[(){};:,]/
1279
+ };
1280
+ Prism.languages.css['atrule'].inside.rest = Prism.languages.css;
1281
+ var markup = Prism.languages.markup;
1282
+ if (markup) {
1283
+ markup.tag.addInlined('style', 'css');
1284
+ markup.tag.addAttribute('style', 'css');
1285
+ }
1286
+ }(Prism));
1287
+ (function (Prism) {
1288
+ var keywords = /\b(?:abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|exports|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|module|native|new|non-sealed|null|open|opens|package|permits|private|protected|provides|public|record(?!\s*[(){}[\]<>=%~.:,;?+\-*/&|^])|requires|return|sealed|short|static|strictfp|super|switch|synchronized|this|throw|throws|to|transient|transitive|try|uses|var|void|volatile|while|with|yield)\b/;
1289
+ var classNamePrefix = /(?:[a-z]\w*\s*\.\s*)*(?:[A-Z]\w*\s*\.\s*)*/.source;
1290
+ var className = {
1291
+ pattern: RegExp(/(^|[^\w.])/.source + classNamePrefix + /[A-Z](?:[\d_A-Z]*[a-z]\w*)?\b/.source),
1292
+ lookbehind: true,
1293
+ inside: {
1294
+ 'namespace': {
1295
+ pattern: /^[a-z]\w*(?:\s*\.\s*[a-z]\w*)*(?:\s*\.)?/,
1296
+ inside: { 'punctuation': /\./ }
1297
+ },
1298
+ 'punctuation': /\./
1299
+ }
1300
+ };
1301
+ Prism.languages.java = Prism.languages.extend('clike', {
1302
+ 'string': {
1303
+ pattern: /(^|[^\\])"(?:\\.|[^"\\\r\n])*"/,
1304
+ lookbehind: true,
1305
+ greedy: true
1306
+ },
1307
+ 'class-name': [
1308
+ className,
1309
+ {
1310
+ pattern: RegExp(/(^|[^\w.])/.source + classNamePrefix + /[A-Z]\w*(?=\s+\w+\s*[;,=()]|\s*(?:\[[\s,]*\]\s*)?::\s*new\b)/.source),
1311
+ lookbehind: true,
1312
+ inside: className.inside
1313
+ },
1314
+ {
1315
+ pattern: RegExp(/(\b(?:class|enum|extends|implements|instanceof|interface|new|record|throws)\s+)/.source + classNamePrefix + /[A-Z]\w*\b/.source),
1316
+ lookbehind: true,
1317
+ inside: className.inside
1318
+ }
1319
+ ],
1320
+ 'keyword': keywords,
1321
+ 'function': [
1322
+ Prism.languages.clike.function,
1323
+ {
1324
+ pattern: /(::\s*)[a-z_]\w*/,
1325
+ lookbehind: true
1326
+ }
1327
+ ],
1328
+ 'number': /\b0b[01][01_]*L?\b|\b0x(?:\.[\da-f_p+-]+|[\da-f_]+(?:\.[\da-f_p+-]+)?)\b|(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i,
1329
+ 'operator': {
1330
+ pattern: /(^|[^.])(?:<<=?|>>>?=?|->|--|\+\+|&&|\|\||::|[?:~]|[-+*/%&|^!=<>]=?)/m,
1331
+ lookbehind: true
1332
+ },
1333
+ 'constant': /\b[A-Z][A-Z_\d]+\b/
1334
+ });
1335
+ Prism.languages.insertBefore('java', 'string', {
1336
+ 'triple-quoted-string': {
1337
+ pattern: /"""[ \t]*[\r\n](?:(?:"|"")?(?:\\.|[^"\\]))*"""/,
1338
+ greedy: true,
1339
+ alias: 'string'
1340
+ },
1341
+ 'char': {
1342
+ pattern: /'(?:\\.|[^'\\\r\n]){1,6}'/,
1343
+ greedy: true
1344
+ }
1345
+ });
1346
+ Prism.languages.insertBefore('java', 'class-name', {
1347
+ 'annotation': {
1348
+ pattern: /(^|[^.])@\w+(?:\s*\.\s*\w+)*/,
1349
+ lookbehind: true,
1350
+ alias: 'punctuation'
1351
+ },
1352
+ 'generics': {
1353
+ pattern: /<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&))*>)*>)*>)*>/,
1354
+ inside: {
1355
+ 'class-name': className,
1356
+ 'keyword': keywords,
1357
+ 'punctuation': /[<>(),.:]/,
1358
+ 'operator': /[?&|]/
1359
+ }
1360
+ },
1361
+ 'import': [
1362
+ {
1363
+ pattern: RegExp(/(\bimport\s+)/.source + classNamePrefix + /(?:[A-Z]\w*|\*)(?=\s*;)/.source),
1364
+ lookbehind: true,
1365
+ inside: {
1366
+ 'namespace': className.inside.namespace,
1367
+ 'punctuation': /\./,
1368
+ 'operator': /\*/,
1369
+ 'class-name': /\w+/
1370
+ }
1371
+ },
1372
+ {
1373
+ pattern: RegExp(/(\bimport\s+static\s+)/.source + classNamePrefix + /(?:\w+|\*)(?=\s*;)/.source),
1374
+ lookbehind: true,
1375
+ alias: 'static',
1376
+ inside: {
1377
+ 'namespace': className.inside.namespace,
1378
+ 'static': /\b\w+$/,
1379
+ 'punctuation': /\./,
1380
+ 'operator': /\*/,
1381
+ 'class-name': /\w+/
1382
+ }
1383
+ }
1384
+ ],
1385
+ 'namespace': {
1386
+ pattern: RegExp(/(\b(?:exports|import(?:\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\s+)(?!<keyword>)[a-z]\w*(?:\.[a-z]\w*)*\.?/.source.replace(/<keyword>/g, function () {
1387
+ return keywords.source;
1388
+ })),
1389
+ lookbehind: true,
1390
+ inside: { 'punctuation': /\./ }
1391
+ }
1392
+ });
1393
+ }(Prism));
1394
+ Prism.languages.javascript = Prism.languages.extend('clike', {
1395
+ 'class-name': [
1396
+ Prism.languages.clike['class-name'],
1397
+ {
1398
+ pattern: /(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,
1399
+ lookbehind: true
1400
+ }
1401
+ ],
1402
+ 'keyword': [
1403
+ {
1404
+ pattern: /((?:^|\})\s*)catch\b/,
1405
+ lookbehind: true
1406
+ },
1407
+ {
1408
+ pattern: /(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,
1409
+ lookbehind: true
1410
+ }
1411
+ ],
1412
+ 'function': /#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,
1413
+ 'number': {
1414
+ pattern: RegExp(/(^|[^\w$])/.source + '(?:' + (/NaN|Infinity/.source + '|' + /0[bB][01]+(?:_[01]+)*n?/.source + '|' + /0[oO][0-7]+(?:_[0-7]+)*n?/.source + '|' + /0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source + '|' + /\d+(?:_\d+)*n/.source + '|' + /(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source) + ')' + /(?![\w$])/.source),
1415
+ lookbehind: true
1416
+ },
1417
+ 'operator': /--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/
1418
+ });
1419
+ Prism.languages.javascript['class-name'][0].pattern = /(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/;
1420
+ Prism.languages.insertBefore('javascript', 'keyword', {
1421
+ 'regex': {
1422
+ pattern: RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source + /\//.source + '(?:' + /(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source + '|' + /(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source + ')' + /(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),
1423
+ lookbehind: true,
1424
+ greedy: true,
1425
+ inside: {
1426
+ 'regex-source': {
1427
+ pattern: /^(\/)[\s\S]+(?=\/[a-z]*$)/,
1428
+ lookbehind: true,
1429
+ alias: 'language-regex',
1430
+ inside: Prism.languages.regex
1431
+ },
1432
+ 'regex-delimiter': /^\/|\/$/,
1433
+ 'regex-flags': /^[a-z]+$/
1434
+ }
1435
+ },
1436
+ 'function-variable': {
1437
+ pattern: /#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,
1438
+ alias: 'function'
1439
+ },
1440
+ 'parameter': [
1441
+ {
1442
+ pattern: /(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,
1443
+ lookbehind: true,
1444
+ inside: Prism.languages.javascript
1445
+ },
1446
+ {
1447
+ pattern: /(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,
1448
+ lookbehind: true,
1449
+ inside: Prism.languages.javascript
1450
+ },
1451
+ {
1452
+ pattern: /(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,
1453
+ lookbehind: true,
1454
+ inside: Prism.languages.javascript
1455
+ },
1456
+ {
1457
+ pattern: /((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,
1458
+ lookbehind: true,
1459
+ inside: Prism.languages.javascript
1460
+ }
1461
+ ],
1462
+ 'constant': /\b[A-Z](?:[A-Z_]|\dx?)*\b/
1463
+ });
1464
+ Prism.languages.insertBefore('javascript', 'string', {
1465
+ 'hashbang': {
1466
+ pattern: /^#!.*/,
1467
+ greedy: true,
1468
+ alias: 'comment'
1469
+ },
1470
+ 'template-string': {
1471
+ pattern: /`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,
1472
+ greedy: true,
1473
+ inside: {
1474
+ 'template-punctuation': {
1475
+ pattern: /^`|`$/,
1476
+ alias: 'string'
1477
+ },
1478
+ 'interpolation': {
1479
+ pattern: /((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,
1480
+ lookbehind: true,
1481
+ inside: {
1482
+ 'interpolation-punctuation': {
1483
+ pattern: /^\$\{|\}$/,
1484
+ alias: 'punctuation'
1485
+ },
1486
+ rest: Prism.languages.javascript
1487
+ }
1488
+ },
1489
+ 'string': /[\s\S]+/
1490
+ }
1491
+ },
1492
+ 'string-property': {
1493
+ pattern: /((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,
1494
+ lookbehind: true,
1495
+ greedy: true,
1496
+ alias: 'property'
1497
+ }
1498
+ });
1499
+ Prism.languages.insertBefore('javascript', 'operator', {
1500
+ 'literal-property': {
1501
+ pattern: /((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,
1502
+ lookbehind: true,
1503
+ alias: 'property'
1504
+ }
1505
+ });
1506
+ if (Prism.languages.markup) {
1507
+ Prism.languages.markup.tag.addInlined('script', 'javascript');
1508
+ Prism.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source, 'javascript');
1509
+ }
1510
+ Prism.languages.js = Prism.languages.javascript;
1511
+ Prism.languages.markup = {
1512
+ 'comment': {
1513
+ pattern: /<!--(?:(?!<!--)[\s\S])*?-->/,
1514
+ greedy: true
1515
+ },
1516
+ 'prolog': {
1517
+ pattern: /<\?[\s\S]+?\?>/,
1518
+ greedy: true
1519
+ },
1520
+ 'doctype': {
1521
+ pattern: /<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,
1522
+ greedy: true,
1523
+ inside: {
1524
+ 'internal-subset': {
1525
+ pattern: /(^[^\[]*\[)[\s\S]+(?=\]>$)/,
1526
+ lookbehind: true,
1527
+ greedy: true,
1528
+ inside: null
1529
+ },
1530
+ 'string': {
1531
+ pattern: /"[^"]*"|'[^']*'/,
1532
+ greedy: true
1533
+ },
1534
+ 'punctuation': /^<!|>$|[[\]]/,
1535
+ 'doctype-tag': /^DOCTYPE/i,
1536
+ 'name': /[^\s<>'"]+/
1537
+ }
1538
+ },
1539
+ 'cdata': {
1540
+ pattern: /<!\[CDATA\[[\s\S]*?\]\]>/i,
1541
+ greedy: true
1542
+ },
1543
+ 'tag': {
1544
+ pattern: /<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,
1545
+ greedy: true,
1546
+ inside: {
1547
+ 'tag': {
1548
+ pattern: /^<\/?[^\s>\/]+/,
1549
+ inside: {
1550
+ 'punctuation': /^<\/?/,
1551
+ 'namespace': /^[^\s>\/:]+:/
1552
+ }
1553
+ },
1554
+ 'special-attr': [],
1555
+ 'attr-value': {
1556
+ pattern: /=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,
1557
+ inside: {
1558
+ 'punctuation': [
1559
+ {
1560
+ pattern: /^=/,
1561
+ alias: 'attr-equals'
1562
+ },
1563
+ {
1564
+ pattern: /^(\s*)["']|["']$/,
1565
+ lookbehind: true
1566
+ }
1567
+ ]
1568
+ }
1569
+ },
1570
+ 'punctuation': /\/?>/,
1571
+ 'attr-name': {
1572
+ pattern: /[^\s>\/]+/,
1573
+ inside: { 'namespace': /^[^\s>\/:]+:/ }
1574
+ }
1575
+ }
1576
+ },
1577
+ 'entity': [
1578
+ {
1579
+ pattern: /&[\da-z]{1,8};/i,
1580
+ alias: 'named-entity'
1581
+ },
1582
+ /&#x?[\da-f]{1,8};/i
1583
+ ]
1584
+ };
1585
+ Prism.languages.markup['tag'].inside['attr-value'].inside['entity'] = Prism.languages.markup['entity'];
1586
+ Prism.languages.markup['doctype'].inside['internal-subset'].inside = Prism.languages.markup;
1587
+ Prism.hooks.add('wrap', function (env) {
1588
+ if (env.type === 'entity') {
1589
+ env.attributes['title'] = env.content.replace(/&amp;/, '&');
1590
+ }
1591
+ });
1592
+ Object.defineProperty(Prism.languages.markup.tag, 'addInlined', {
1593
+ value: function addInlined(tagName, lang) {
1594
+ var includedCdataInside = {};
1595
+ includedCdataInside['language-' + lang] = {
1596
+ pattern: /(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,
1597
+ lookbehind: true,
1598
+ inside: Prism.languages[lang]
1599
+ };
1600
+ includedCdataInside['cdata'] = /^<!\[CDATA\[|\]\]>$/i;
1601
+ var inside = {
1602
+ 'included-cdata': {
1603
+ pattern: /<!\[CDATA\[[\s\S]*?\]\]>/i,
1604
+ inside: includedCdataInside
1605
+ }
1606
+ };
1607
+ inside['language-' + lang] = {
1608
+ pattern: /[\s\S]+/,
1609
+ inside: Prism.languages[lang]
1610
+ };
1611
+ var def = {};
1612
+ def[tagName] = {
1613
+ pattern: RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g, function () {
1614
+ return tagName;
1615
+ }), 'i'),
1616
+ lookbehind: true,
1617
+ greedy: true,
1618
+ inside: inside
1619
+ };
1620
+ Prism.languages.insertBefore('markup', 'cdata', def);
1621
+ }
1622
+ });
1623
+ Object.defineProperty(Prism.languages.markup.tag, 'addAttribute', {
1624
+ value: function (attrName, lang) {
1625
+ Prism.languages.markup.tag.inside['special-attr'].push({
1626
+ pattern: RegExp(/(^|["'\s])/.source + '(?:' + attrName + ')' + /\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source, 'i'),
1627
+ lookbehind: true,
1628
+ inside: {
1629
+ 'attr-name': /^[^\s=]+/,
1630
+ 'attr-value': {
1631
+ pattern: /=[\s\S]+/,
1632
+ inside: {
1633
+ 'value': {
1634
+ pattern: /(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,
1635
+ lookbehind: true,
1636
+ alias: [
1637
+ lang,
1638
+ 'language-' + lang
1639
+ ],
1640
+ inside: Prism.languages[lang]
1641
+ },
1642
+ 'punctuation': [
1643
+ {
1644
+ pattern: /^=/,
1645
+ alias: 'attr-equals'
1646
+ },
1647
+ /"|'/
1648
+ ]
1649
+ }
1650
+ }
1651
+ }
1652
+ });
1653
+ }
1654
+ });
1655
+ Prism.languages.html = Prism.languages.markup;
1656
+ Prism.languages.mathml = Prism.languages.markup;
1657
+ Prism.languages.svg = Prism.languages.markup;
1658
+ Prism.languages.xml = Prism.languages.extend('markup', {});
1659
+ Prism.languages.ssml = Prism.languages.xml;
1660
+ Prism.languages.atom = Prism.languages.xml;
1661
+ Prism.languages.rss = Prism.languages.xml;
1662
+ (function (Prism) {
1663
+ var comment = /\/\*[\s\S]*?\*\/|\/\/.*|#(?!\[).*/;
1664
+ var constant = [
1665
+ {
1666
+ pattern: /\b(?:false|true)\b/i,
1667
+ alias: 'boolean'
1668
+ },
1669
+ {
1670
+ pattern: /(::\s*)\b[a-z_]\w*\b(?!\s*\()/i,
1671
+ greedy: true,
1672
+ lookbehind: true
1673
+ },
1674
+ {
1675
+ pattern: /(\b(?:case|const)\s+)\b[a-z_]\w*(?=\s*[;=])/i,
1676
+ greedy: true,
1677
+ lookbehind: true
1678
+ },
1679
+ /\b(?:null)\b/i,
1680
+ /\b[A-Z_][A-Z0-9_]*\b(?!\s*\()/
1681
+ ];
1682
+ var number = /\b0b[01]+(?:_[01]+)*\b|\b0o[0-7]+(?:_[0-7]+)*\b|\b0x[\da-f]+(?:_[\da-f]+)*\b|(?:\b\d+(?:_\d+)*\.?(?:\d+(?:_\d+)*)?|\B\.\d+)(?:e[+-]?\d+)?/i;
1683
+ var operator = /<?=>|\?\?=?|\.{3}|\??->|[!=]=?=?|::|\*\*=?|--|\+\+|&&|\|\||<<|>>|[?~]|[/^|%*&<>.+-]=?/;
1684
+ var punctuation = /[{}\[\](),:;]/;
1685
+ Prism.languages.php = {
1686
+ 'delimiter': {
1687
+ pattern: /\?>$|^<\?(?:php(?=\s)|=)?/i,
1688
+ alias: 'important'
1689
+ },
1690
+ 'comment': comment,
1691
+ 'variable': /\$+(?:\w+\b|(?=\{))/,
1692
+ 'package': {
1693
+ pattern: /(namespace\s+|use\s+(?:function\s+)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,
1694
+ lookbehind: true,
1695
+ inside: { 'punctuation': /\\/ }
1696
+ },
1697
+ 'class-name-definition': {
1698
+ pattern: /(\b(?:class|enum|interface|trait)\s+)\b[a-z_]\w*(?!\\)\b/i,
1699
+ lookbehind: true,
1700
+ alias: 'class-name'
1701
+ },
1702
+ 'function-definition': {
1703
+ pattern: /(\bfunction\s+)[a-z_]\w*(?=\s*\()/i,
1704
+ lookbehind: true,
1705
+ alias: 'function'
1706
+ },
1707
+ 'keyword': [
1708
+ {
1709
+ pattern: /(\(\s*)\b(?:array|bool|boolean|float|int|integer|object|string)\b(?=\s*\))/i,
1710
+ alias: 'type-casting',
1711
+ greedy: true,
1712
+ lookbehind: true
1713
+ },
1714
+ {
1715
+ pattern: /([(,?]\s*)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|object|self|static|string)\b(?=\s*\$)/i,
1716
+ alias: 'type-hint',
1717
+ greedy: true,
1718
+ lookbehind: true
1719
+ },
1720
+ {
1721
+ pattern: /(\)\s*:\s*(?:\?\s*)?)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|never|object|self|static|string|void)\b/i,
1722
+ alias: 'return-type',
1723
+ greedy: true,
1724
+ lookbehind: true
1725
+ },
1726
+ {
1727
+ pattern: /\b(?:array(?!\s*\()|bool|float|int|iterable|mixed|object|string|void)\b/i,
1728
+ alias: 'type-declaration',
1729
+ greedy: true
1730
+ },
1731
+ {
1732
+ pattern: /(\|\s*)(?:false|null)\b|\b(?:false|null)(?=\s*\|)/i,
1733
+ alias: 'type-declaration',
1734
+ greedy: true,
1735
+ lookbehind: true
1736
+ },
1737
+ {
1738
+ pattern: /\b(?:parent|self|static)(?=\s*::)/i,
1739
+ alias: 'static-context',
1740
+ greedy: true
1741
+ },
1742
+ {
1743
+ pattern: /(\byield\s+)from\b/i,
1744
+ lookbehind: true
1745
+ },
1746
+ /\bclass\b/i,
1747
+ {
1748
+ pattern: /((?:^|[^\s>:]|(?:^|[^-])>|(?:^|[^:]):)\s*)\b(?:abstract|and|array|as|break|callable|case|catch|clone|const|continue|declare|default|die|do|echo|else|elseif|empty|enddeclare|endfor|endforeach|endif|endswitch|endwhile|enum|eval|exit|extends|final|finally|fn|for|foreach|function|global|goto|if|implements|include|include_once|instanceof|insteadof|interface|isset|list|match|namespace|never|new|or|parent|print|private|protected|public|readonly|require|require_once|return|self|static|switch|throw|trait|try|unset|use|var|while|xor|yield|__halt_compiler)\b/i,
1749
+ lookbehind: true
1750
+ }
1751
+ ],
1752
+ 'argument-name': {
1753
+ pattern: /([(,]\s*)\b[a-z_]\w*(?=\s*:(?!:))/i,
1754
+ lookbehind: true
1755
+ },
1756
+ 'class-name': [
1757
+ {
1758
+ pattern: /(\b(?:extends|implements|instanceof|new(?!\s+self|\s+static))\s+|\bcatch\s*\()\b[a-z_]\w*(?!\\)\b/i,
1759
+ greedy: true,
1760
+ lookbehind: true
1761
+ },
1762
+ {
1763
+ pattern: /(\|\s*)\b[a-z_]\w*(?!\\)\b/i,
1764
+ greedy: true,
1765
+ lookbehind: true
1766
+ },
1767
+ {
1768
+ pattern: /\b[a-z_]\w*(?!\\)\b(?=\s*\|)/i,
1769
+ greedy: true
1770
+ },
1771
+ {
1772
+ pattern: /(\|\s*)(?:\\?\b[a-z_]\w*)+\b/i,
1773
+ alias: 'class-name-fully-qualified',
1774
+ greedy: true,
1775
+ lookbehind: true,
1776
+ inside: { 'punctuation': /\\/ }
1777
+ },
1778
+ {
1779
+ pattern: /(?:\\?\b[a-z_]\w*)+\b(?=\s*\|)/i,
1780
+ alias: 'class-name-fully-qualified',
1781
+ greedy: true,
1782
+ inside: { 'punctuation': /\\/ }
1783
+ },
1784
+ {
1785
+ pattern: /(\b(?:extends|implements|instanceof|new(?!\s+self\b|\s+static\b))\s+|\bcatch\s*\()(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,
1786
+ alias: 'class-name-fully-qualified',
1787
+ greedy: true,
1788
+ lookbehind: true,
1789
+ inside: { 'punctuation': /\\/ }
1790
+ },
1791
+ {
1792
+ pattern: /\b[a-z_]\w*(?=\s*\$)/i,
1793
+ alias: 'type-declaration',
1794
+ greedy: true
1795
+ },
1796
+ {
1797
+ pattern: /(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,
1798
+ alias: [
1799
+ 'class-name-fully-qualified',
1800
+ 'type-declaration'
1801
+ ],
1802
+ greedy: true,
1803
+ inside: { 'punctuation': /\\/ }
1804
+ },
1805
+ {
1806
+ pattern: /\b[a-z_]\w*(?=\s*::)/i,
1807
+ alias: 'static-context',
1808
+ greedy: true
1809
+ },
1810
+ {
1811
+ pattern: /(?:\\?\b[a-z_]\w*)+(?=\s*::)/i,
1812
+ alias: [
1813
+ 'class-name-fully-qualified',
1814
+ 'static-context'
1815
+ ],
1816
+ greedy: true,
1817
+ inside: { 'punctuation': /\\/ }
1818
+ },
1819
+ {
1820
+ pattern: /([(,?]\s*)[a-z_]\w*(?=\s*\$)/i,
1821
+ alias: 'type-hint',
1822
+ greedy: true,
1823
+ lookbehind: true
1824
+ },
1825
+ {
1826
+ pattern: /([(,?]\s*)(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,
1827
+ alias: [
1828
+ 'class-name-fully-qualified',
1829
+ 'type-hint'
1830
+ ],
1831
+ greedy: true,
1832
+ lookbehind: true,
1833
+ inside: { 'punctuation': /\\/ }
1834
+ },
1835
+ {
1836
+ pattern: /(\)\s*:\s*(?:\?\s*)?)\b[a-z_]\w*(?!\\)\b/i,
1837
+ alias: 'return-type',
1838
+ greedy: true,
1839
+ lookbehind: true
1840
+ },
1841
+ {
1842
+ pattern: /(\)\s*:\s*(?:\?\s*)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,
1843
+ alias: [
1844
+ 'class-name-fully-qualified',
1845
+ 'return-type'
1846
+ ],
1847
+ greedy: true,
1848
+ lookbehind: true,
1849
+ inside: { 'punctuation': /\\/ }
1850
+ }
1851
+ ],
1852
+ 'constant': constant,
1853
+ 'function': {
1854
+ pattern: /(^|[^\\\w])\\?[a-z_](?:[\w\\]*\w)?(?=\s*\()/i,
1855
+ lookbehind: true,
1856
+ inside: { 'punctuation': /\\/ }
1857
+ },
1858
+ 'property': {
1859
+ pattern: /(->\s*)\w+/,
1860
+ lookbehind: true
1861
+ },
1862
+ 'number': number,
1863
+ 'operator': operator,
1864
+ 'punctuation': punctuation
1865
+ };
1866
+ var string_interpolation = {
1867
+ pattern: /\{\$(?:\{(?:\{[^{}]+\}|[^{}]+)\}|[^{}])+\}|(^|[^\\{])\$+(?:\w+(?:\[[^\r\n\[\]]+\]|->\w+)?)/,
1868
+ lookbehind: true,
1869
+ inside: Prism.languages.php
1870
+ };
1871
+ var string = [
1872
+ {
1873
+ pattern: /<<<'([^']+)'[\r\n](?:.*[\r\n])*?\1;/,
1874
+ alias: 'nowdoc-string',
1875
+ greedy: true,
1876
+ inside: {
1877
+ 'delimiter': {
1878
+ pattern: /^<<<'[^']+'|[a-z_]\w*;$/i,
1879
+ alias: 'symbol',
1880
+ inside: { 'punctuation': /^<<<'?|[';]$/ }
1881
+ }
1882
+ }
1883
+ },
1884
+ {
1885
+ pattern: /<<<(?:"([^"]+)"[\r\n](?:.*[\r\n])*?\1;|([a-z_]\w*)[\r\n](?:.*[\r\n])*?\2;)/i,
1886
+ alias: 'heredoc-string',
1887
+ greedy: true,
1888
+ inside: {
1889
+ 'delimiter': {
1890
+ pattern: /^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i,
1891
+ alias: 'symbol',
1892
+ inside: { 'punctuation': /^<<<"?|[";]$/ }
1893
+ },
1894
+ 'interpolation': string_interpolation
1895
+ }
1896
+ },
1897
+ {
1898
+ pattern: /`(?:\\[\s\S]|[^\\`])*`/,
1899
+ alias: 'backtick-quoted-string',
1900
+ greedy: true
1901
+ },
1902
+ {
1903
+ pattern: /'(?:\\[\s\S]|[^\\'])*'/,
1904
+ alias: 'single-quoted-string',
1905
+ greedy: true
1906
+ },
1907
+ {
1908
+ pattern: /"(?:\\[\s\S]|[^\\"])*"/,
1909
+ alias: 'double-quoted-string',
1910
+ greedy: true,
1911
+ inside: { 'interpolation': string_interpolation }
1912
+ }
1913
+ ];
1914
+ Prism.languages.insertBefore('php', 'variable', {
1915
+ 'string': string,
1916
+ 'attribute': {
1917
+ pattern: /#\[(?:[^"'\/#]|\/(?![*/])|\/\/.*$|#(?!\[).*$|\/\*(?:[^*]|\*(?!\/))*\*\/|"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*')+\](?=\s*[a-z$#])/im,
1918
+ greedy: true,
1919
+ inside: {
1920
+ 'attribute-content': {
1921
+ pattern: /^(#\[)[\s\S]+(?=\]$)/,
1922
+ lookbehind: true,
1923
+ inside: {
1924
+ 'comment': comment,
1925
+ 'string': string,
1926
+ 'attribute-class-name': [
1927
+ {
1928
+ pattern: /([^:]|^)\b[a-z_]\w*(?!\\)\b/i,
1929
+ alias: 'class-name',
1930
+ greedy: true,
1931
+ lookbehind: true
1932
+ },
1933
+ {
1934
+ pattern: /([^:]|^)(?:\\?\b[a-z_]\w*)+/i,
1935
+ alias: [
1936
+ 'class-name',
1937
+ 'class-name-fully-qualified'
1938
+ ],
1939
+ greedy: true,
1940
+ lookbehind: true,
1941
+ inside: { 'punctuation': /\\/ }
1942
+ }
1943
+ ],
1944
+ 'constant': constant,
1945
+ 'number': number,
1946
+ 'operator': operator,
1947
+ 'punctuation': punctuation
1948
+ }
1949
+ },
1950
+ 'delimiter': {
1951
+ pattern: /^#\[|\]$/,
1952
+ alias: 'punctuation'
1953
+ }
1954
+ }
1955
+ }
1956
+ });
1957
+ Prism.hooks.add('before-tokenize', function (env) {
1958
+ if (!/<\?/.test(env.code)) {
1959
+ return;
1960
+ }
1961
+ var phpPattern = /<\?(?:[^"'/#]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|(?:\/\/|#(?!\[))(?:[^?\n\r]|\?(?!>))*(?=$|\?>|[\r\n])|#\[|\/\*(?:[^*]|\*(?!\/))*(?:\*\/|$))*?(?:\?>|$)/g;
1962
+ Prism.languages['markup-templating'].buildPlaceholders(env, 'php', phpPattern);
1963
+ });
1964
+ Prism.hooks.add('after-tokenize', function (env) {
1965
+ Prism.languages['markup-templating'].tokenizePlaceholders(env, 'php');
1966
+ });
1967
+ }(Prism));
1968
+ Prism.languages.python = {
1969
+ 'comment': {
1970
+ pattern: /(^|[^\\])#.*/,
1971
+ lookbehind: true,
1972
+ greedy: true
1973
+ },
1974
+ 'string-interpolation': {
1975
+ pattern: /(?:f|fr|rf)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,
1976
+ greedy: true,
1977
+ inside: {
1978
+ 'interpolation': {
1979
+ pattern: /((?:^|[^{])(?:\{\{)*)\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}])+\})+\})+\}/,
1980
+ lookbehind: true,
1981
+ inside: {
1982
+ 'format-spec': {
1983
+ pattern: /(:)[^:(){}]+(?=\}$)/,
1984
+ lookbehind: true
1985
+ },
1986
+ 'conversion-option': {
1987
+ pattern: /![sra](?=[:}]$)/,
1988
+ alias: 'punctuation'
1989
+ },
1990
+ rest: null
1991
+ }
1992
+ },
1993
+ 'string': /[\s\S]+/
1994
+ }
1995
+ },
1996
+ 'triple-quoted-string': {
1997
+ pattern: /(?:[rub]|br|rb)?("""|''')[\s\S]*?\1/i,
1998
+ greedy: true,
1999
+ alias: 'string'
2000
+ },
2001
+ 'string': {
2002
+ pattern: /(?:[rub]|br|rb)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,
2003
+ greedy: true
2004
+ },
2005
+ 'function': {
2006
+ pattern: /((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,
2007
+ lookbehind: true
2008
+ },
2009
+ 'class-name': {
2010
+ pattern: /(\bclass\s+)\w+/i,
2011
+ lookbehind: true
2012
+ },
2013
+ 'decorator': {
2014
+ pattern: /(^[\t ]*)@\w+(?:\.\w+)*/m,
2015
+ lookbehind: true,
2016
+ alias: [
2017
+ 'annotation',
2018
+ 'punctuation'
2019
+ ],
2020
+ inside: { 'punctuation': /\./ }
2021
+ },
2022
+ 'keyword': /\b(?:_(?=\s*:)|and|as|assert|async|await|break|case|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|match|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,
2023
+ 'builtin': /\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,
2024
+ 'boolean': /\b(?:False|None|True)\b/,
2025
+ 'number': /\b0(?:b(?:_?[01])+|o(?:_?[0-7])+|x(?:_?[a-f0-9])+)\b|(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:e[+-]?\d+(?:_\d+)*)?j?(?!\w)/i,
2026
+ 'operator': /[-+%=]=?|!=|:=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,
2027
+ 'punctuation': /[{}[\];(),.:]/
2028
+ };
2029
+ Prism.languages.python['string-interpolation'].inside['interpolation'].inside.rest = Prism.languages.python;
2030
+ Prism.languages.py = Prism.languages.python;
2031
+ (function (Prism) {
2032
+ Prism.languages.ruby = Prism.languages.extend('clike', {
2033
+ 'comment': {
2034
+ pattern: /#.*|^=begin\s[\s\S]*?^=end/m,
2035
+ greedy: true
2036
+ },
2037
+ 'class-name': {
2038
+ pattern: /(\b(?:class|module)\s+|\bcatch\s+\()[\w.\\]+|\b[A-Z_]\w*(?=\s*\.\s*new\b)/,
2039
+ lookbehind: true,
2040
+ inside: { 'punctuation': /[.\\]/ }
2041
+ },
2042
+ 'keyword': /\b(?:BEGIN|END|alias|and|begin|break|case|class|def|define_method|defined|do|each|else|elsif|end|ensure|extend|for|if|in|include|module|new|next|nil|not|or|prepend|private|protected|public|raise|redo|require|rescue|retry|return|self|super|then|throw|undef|unless|until|when|while|yield)\b/,
2043
+ 'operator': /\.{2,3}|&\.|===|<?=>|[!=]?~|(?:&&|\|\||<<|>>|\*\*|[+\-*/%<>!^&|=])=?|[?:]/,
2044
+ 'punctuation': /[(){}[\].,;]/
2045
+ });
2046
+ Prism.languages.insertBefore('ruby', 'operator', {
2047
+ 'double-colon': {
2048
+ pattern: /::/,
2049
+ alias: 'punctuation'
2050
+ }
2051
+ });
2052
+ var interpolation = {
2053
+ pattern: /((?:^|[^\\])(?:\\{2})*)#\{(?:[^{}]|\{[^{}]*\})*\}/,
2054
+ lookbehind: true,
2055
+ inside: {
2056
+ 'content': {
2057
+ pattern: /^(#\{)[\s\S]+(?=\}$)/,
2058
+ lookbehind: true,
2059
+ inside: Prism.languages.ruby
2060
+ },
2061
+ 'delimiter': {
2062
+ pattern: /^#\{|\}$/,
2063
+ alias: 'punctuation'
2064
+ }
2065
+ }
2066
+ };
2067
+ delete Prism.languages.ruby.function;
2068
+ var percentExpression = '(?:' + [
2069
+ /([^a-zA-Z0-9\s{(\[<=])(?:(?!\1)[^\\]|\\[\s\S])*\1/.source,
2070
+ /\((?:[^()\\]|\\[\s\S]|\((?:[^()\\]|\\[\s\S])*\))*\)/.source,
2071
+ /\{(?:[^{}\\]|\\[\s\S]|\{(?:[^{}\\]|\\[\s\S])*\})*\}/.source,
2072
+ /\[(?:[^\[\]\\]|\\[\s\S]|\[(?:[^\[\]\\]|\\[\s\S])*\])*\]/.source,
2073
+ /<(?:[^<>\\]|\\[\s\S]|<(?:[^<>\\]|\\[\s\S])*>)*>/.source
2074
+ ].join('|') + ')';
2075
+ var symbolName = /(?:"(?:\\.|[^"\\\r\n])*"|(?:\b[a-zA-Z_]\w*|[^\s\0-\x7F]+)[?!]?|\$.)/.source;
2076
+ Prism.languages.insertBefore('ruby', 'keyword', {
2077
+ 'regex-literal': [
2078
+ {
2079
+ pattern: RegExp(/%r/.source + percentExpression + /[egimnosux]{0,6}/.source),
2080
+ greedy: true,
2081
+ inside: {
2082
+ 'interpolation': interpolation,
2083
+ 'regex': /[\s\S]+/
2084
+ }
2085
+ },
2086
+ {
2087
+ pattern: /(^|[^/])\/(?!\/)(?:\[[^\r\n\]]+\]|\\.|[^[/\\\r\n])+\/[egimnosux]{0,6}(?=\s*(?:$|[\r\n,.;})#]))/,
2088
+ lookbehind: true,
2089
+ greedy: true,
2090
+ inside: {
2091
+ 'interpolation': interpolation,
2092
+ 'regex': /[\s\S]+/
2093
+ }
2094
+ }
2095
+ ],
2096
+ 'variable': /[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/,
2097
+ 'symbol': [
2098
+ {
2099
+ pattern: RegExp(/(^|[^:]):/.source + symbolName),
2100
+ lookbehind: true,
2101
+ greedy: true
2102
+ },
2103
+ {
2104
+ pattern: RegExp(/([\r\n{(,][ \t]*)/.source + symbolName + /(?=:(?!:))/.source),
2105
+ lookbehind: true,
2106
+ greedy: true
2107
+ }
2108
+ ],
2109
+ 'method-definition': {
2110
+ pattern: /(\bdef\s+)\w+(?:\s*\.\s*\w+)?/,
2111
+ lookbehind: true,
2112
+ inside: {
2113
+ 'function': /\b\w+$/,
2114
+ 'keyword': /^self\b/,
2115
+ 'class-name': /^\w+/,
2116
+ 'punctuation': /\./
2117
+ }
2118
+ }
2119
+ });
2120
+ Prism.languages.insertBefore('ruby', 'string', {
2121
+ 'string-literal': [
2122
+ {
2123
+ pattern: RegExp(/%[qQiIwWs]?/.source + percentExpression),
2124
+ greedy: true,
2125
+ inside: {
2126
+ 'interpolation': interpolation,
2127
+ 'string': /[\s\S]+/
2128
+ }
2129
+ },
2130
+ {
2131
+ pattern: /("|')(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|(?!\1)[^\\#\r\n])*\1/,
2132
+ greedy: true,
2133
+ inside: {
2134
+ 'interpolation': interpolation,
2135
+ 'string': /[\s\S]+/
2136
+ }
2137
+ },
2138
+ {
2139
+ pattern: /<<[-~]?([a-z_]\w*)[\r\n](?:.*[\r\n])*?[\t ]*\1/i,
2140
+ alias: 'heredoc-string',
2141
+ greedy: true,
2142
+ inside: {
2143
+ 'delimiter': {
2144
+ pattern: /^<<[-~]?[a-z_]\w*|\b[a-z_]\w*$/i,
2145
+ inside: {
2146
+ 'symbol': /\b\w+/,
2147
+ 'punctuation': /^<<[-~]?/
2148
+ }
2149
+ },
2150
+ 'interpolation': interpolation,
2151
+ 'string': /[\s\S]+/
2152
+ }
2153
+ },
2154
+ {
2155
+ pattern: /<<[-~]?'([a-z_]\w*)'[\r\n](?:.*[\r\n])*?[\t ]*\1/i,
2156
+ alias: 'heredoc-string',
2157
+ greedy: true,
2158
+ inside: {
2159
+ 'delimiter': {
2160
+ pattern: /^<<[-~]?'[a-z_]\w*'|\b[a-z_]\w*$/i,
2161
+ inside: {
2162
+ 'symbol': /\b\w+/,
2163
+ 'punctuation': /^<<[-~]?'|'$/
2164
+ }
2165
+ },
2166
+ 'string': /[\s\S]+/
2167
+ }
2168
+ }
2169
+ ],
2170
+ 'command-literal': [
2171
+ {
2172
+ pattern: RegExp(/%x/.source + percentExpression),
2173
+ greedy: true,
2174
+ inside: {
2175
+ 'interpolation': interpolation,
2176
+ 'command': {
2177
+ pattern: /[\s\S]+/,
2178
+ alias: 'string'
2179
+ }
2180
+ }
2181
+ },
2182
+ {
2183
+ pattern: /`(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|[^\\`#\r\n])*`/,
2184
+ greedy: true,
2185
+ inside: {
2186
+ 'interpolation': interpolation,
2187
+ 'command': {
2188
+ pattern: /[\s\S]+/,
2189
+ alias: 'string'
2190
+ }
2191
+ }
2192
+ }
2193
+ ]
2194
+ });
2195
+ delete Prism.languages.ruby.string;
2196
+ Prism.languages.insertBefore('ruby', 'number', {
2197
+ 'builtin': /\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Fixnum|Float|Hash|IO|Integer|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|Stat|String|Struct|Symbol|TMS|Thread|ThreadGroup|Time|TrueClass)\b/,
2198
+ 'constant': /\b[A-Z][A-Z0-9_]*(?:[?!]|\b)/
2199
+ });
2200
+ Prism.languages.rb = Prism.languages.ruby;
2201
+ }(Prism));
2202
+ window.Prism = oldprism;
2203
+ return Prism;
2204
+ }(undefined, undefined);
2205
+
2206
+ const option = name => editor => editor.options.get(name);
2207
+ const register$2 = editor => {
2208
+ const registerOption = editor.options.register;
2209
+ registerOption('codesample_languages', { processor: 'object[]' });
2210
+ registerOption('codesample_global_prismjs', {
2211
+ processor: 'boolean',
2212
+ default: false
2213
+ });
2214
+ };
2215
+ const getLanguages$1 = option('codesample_languages');
2216
+ const useGlobalPrismJS = option('codesample_global_prismjs');
2217
+
2218
+ const get = editor => Global.Prism && useGlobalPrismJS(editor) ? Global.Prism : prismjs;
2219
+
2220
+ const isCodeSample = elm => {
2221
+ return isNonNullable(elm) && elm.nodeName === 'PRE' && elm.className.indexOf('language-') !== -1;
2222
+ };
2223
+
2224
+ const getSelectedCodeSample = editor => {
2225
+ const node = editor.selection ? editor.selection.getNode() : null;
2226
+ return isCodeSample(node) ? Optional.some(node) : Optional.none();
2227
+ };
2228
+ const insertCodeSample = (editor, language, code) => {
2229
+ const dom = editor.dom;
2230
+ editor.undoManager.transact(() => {
2231
+ const node = getSelectedCodeSample(editor);
2232
+ code = global$1.DOM.encode(code);
2233
+ return node.fold(() => {
2234
+ editor.insertContent('<pre id="__new" class="language-' + language + '">' + code + '</pre>');
2235
+ const newPre = dom.select('#__new')[0];
2236
+ dom.setAttrib(newPre, 'id', null);
2237
+ editor.selection.select(newPre);
2238
+ }, n => {
2239
+ dom.setAttrib(n, 'class', 'language-' + language);
2240
+ n.innerHTML = code;
2241
+ get(editor).highlightElement(n);
2242
+ editor.selection.select(n);
2243
+ });
2244
+ });
2245
+ };
2246
+ const getCurrentCode = editor => {
2247
+ const node = getSelectedCodeSample(editor);
2248
+ return node.bind(n => Optional.from(n.textContent)).getOr('');
2249
+ };
2250
+
2251
+ const getLanguages = editor => {
2252
+ const defaultLanguages = [
2253
+ {
2254
+ text: 'HTML/XML',
2255
+ value: 'markup'
2256
+ },
2257
+ {
2258
+ text: 'JavaScript',
2259
+ value: 'javascript'
2260
+ },
2261
+ {
2262
+ text: 'CSS',
2263
+ value: 'css'
2264
+ },
2265
+ {
2266
+ text: 'PHP',
2267
+ value: 'php'
2268
+ },
2269
+ {
2270
+ text: 'Ruby',
2271
+ value: 'ruby'
2272
+ },
2273
+ {
2274
+ text: 'Python',
2275
+ value: 'python'
2276
+ },
2277
+ {
2278
+ text: 'Java',
2279
+ value: 'java'
2280
+ },
2281
+ {
2282
+ text: 'C',
2283
+ value: 'c'
2284
+ },
2285
+ {
2286
+ text: 'C#',
2287
+ value: 'csharp'
2288
+ },
2289
+ {
2290
+ text: 'C++',
2291
+ value: 'cpp'
2292
+ }
2293
+ ];
2294
+ const customLanguages = getLanguages$1(editor);
2295
+ return customLanguages ? customLanguages : defaultLanguages;
2296
+ };
2297
+ const getCurrentLanguage = (editor, fallback) => {
2298
+ const node = getSelectedCodeSample(editor);
2299
+ return node.fold(() => fallback, n => {
2300
+ const matches = n.className.match(/language-(\w+)/);
2301
+ return matches ? matches[1] : fallback;
2302
+ });
2303
+ };
2304
+
2305
+ const open = editor => {
2306
+ const languages = getLanguages(editor);
2307
+ const defaultLanguage = head(languages).fold(constant(''), l => l.value);
2308
+ const currentLanguage = getCurrentLanguage(editor, defaultLanguage);
2309
+ const currentCode = getCurrentCode(editor);
2310
+ editor.windowManager.open({
2311
+ title: 'Insert/Edit Code Sample',
2312
+ size: 'large',
2313
+ body: {
2314
+ type: 'panel',
2315
+ items: [
2316
+ {
2317
+ type: 'listbox',
2318
+ name: 'language',
2319
+ label: 'Language',
2320
+ items: languages
2321
+ },
2322
+ {
2323
+ type: 'textarea',
2324
+ name: 'code',
2325
+ label: 'Code view'
2326
+ }
2327
+ ]
2328
+ },
2329
+ buttons: [
2330
+ {
2331
+ type: 'cancel',
2332
+ name: 'cancel',
2333
+ text: 'Cancel'
2334
+ },
2335
+ {
2336
+ type: 'submit',
2337
+ name: 'save',
2338
+ text: 'Save',
2339
+ primary: true
2340
+ }
2341
+ ],
2342
+ initialData: {
2343
+ language: currentLanguage,
2344
+ code: currentCode
2345
+ },
2346
+ onSubmit: api => {
2347
+ const data = api.getData();
2348
+ insertCodeSample(editor, data.language, data.code);
2349
+ api.close();
2350
+ }
2351
+ });
2352
+ };
2353
+
2354
+ const register$1 = editor => {
2355
+ editor.addCommand('codesample', () => {
2356
+ const node = editor.selection.getNode();
2357
+ if (editor.selection.isCollapsed() || isCodeSample(node)) {
2358
+ open(editor);
2359
+ } else {
2360
+ editor.formatter.toggle('code');
2361
+ }
2362
+ });
2363
+ };
2364
+
2365
+ const blank = r => s => s.replace(r, '');
2366
+ const trim = blank(/^\s+|\s+$/g);
2367
+
2368
+ var global = tinymce.util.Tools.resolve('tinymce.util.Tools');
2369
+
2370
+ const setup = editor => {
2371
+ editor.on('PreProcess', e => {
2372
+ const dom = editor.dom;
2373
+ const pres = dom.select('pre[contenteditable=false]', e.node);
2374
+ global.each(global.grep(pres, isCodeSample), elm => {
2375
+ const code = elm.textContent;
2376
+ dom.setAttrib(elm, 'class', trim(dom.getAttrib(elm, 'class')));
2377
+ dom.setAttrib(elm, 'contentEditable', null);
2378
+ dom.setAttrib(elm, 'data-mce-highlighted', null);
2379
+ let child;
2380
+ while (child = elm.firstChild) {
2381
+ elm.removeChild(child);
2382
+ }
2383
+ const codeElm = dom.add(elm, 'code');
2384
+ codeElm.textContent = code;
2385
+ });
2386
+ });
2387
+ editor.on('SetContent', () => {
2388
+ const dom = editor.dom;
2389
+ const unprocessedCodeSamples = global.grep(dom.select('pre'), elm => {
2390
+ return isCodeSample(elm) && dom.getAttrib(elm, 'data-mce-highlighted') !== 'true';
2391
+ });
2392
+ if (unprocessedCodeSamples.length) {
2393
+ editor.undoManager.transact(() => {
2394
+ global.each(unprocessedCodeSamples, elm => {
2395
+ var _a;
2396
+ global.each(dom.select('br', elm), elm => {
2397
+ dom.replace(editor.getDoc().createTextNode('\n'), elm);
2398
+ });
2399
+ elm.innerHTML = dom.encode((_a = elm.textContent) !== null && _a !== void 0 ? _a : '');
2400
+ get(editor).highlightElement(elm);
2401
+ dom.setAttrib(elm, 'data-mce-highlighted', true);
2402
+ elm.className = trim(elm.className);
2403
+ });
2404
+ });
2405
+ }
2406
+ });
2407
+ editor.on('PreInit', () => {
2408
+ editor.parser.addNodeFilter('pre', nodes => {
2409
+ var _a;
2410
+ for (let i = 0, l = nodes.length; i < l; i++) {
2411
+ const node = nodes[i];
2412
+ const isCodeSample = ((_a = node.attr('class')) !== null && _a !== void 0 ? _a : '').indexOf('language-') !== -1;
2413
+ if (isCodeSample) {
2414
+ node.attr('contenteditable', 'false');
2415
+ node.attr('data-mce-highlighted', 'false');
2416
+ }
2417
+ }
2418
+ });
2419
+ });
2420
+ };
2421
+
2422
+ const onSetupEditable = (editor, onChanged = noop) => api => {
2423
+ const nodeChanged = () => {
2424
+ api.setEnabled(editor.selection.isEditable());
2425
+ onChanged(api);
2426
+ };
2427
+ editor.on('NodeChange', nodeChanged);
2428
+ nodeChanged();
2429
+ return () => {
2430
+ editor.off('NodeChange', nodeChanged);
2431
+ };
2432
+ };
2433
+ const isCodeSampleSelection = editor => {
2434
+ const node = editor.selection.getStart();
2435
+ return editor.dom.is(node, 'pre[class*="language-"]');
2436
+ };
2437
+ const register = editor => {
2438
+ const onAction = () => editor.execCommand('codesample');
2439
+ editor.ui.registry.addToggleButton('codesample', {
2440
+ icon: 'code-sample',
2441
+ tooltip: 'Insert/edit code sample',
2442
+ onAction,
2443
+ onSetup: onSetupEditable(editor, api => {
2444
+ api.setActive(isCodeSampleSelection(editor));
2445
+ })
2446
+ });
2447
+ editor.ui.registry.addMenuItem('codesample', {
2448
+ text: 'Code sample...',
2449
+ icon: 'code-sample',
2450
+ onAction,
2451
+ onSetup: onSetupEditable(editor)
2452
+ });
2453
+ };
2454
+
2455
+ var Plugin = () => {
2456
+ global$2.add('codesample', editor => {
2457
+ register$2(editor);
2458
+ setup(editor);
2459
+ register(editor);
2460
+ register$1(editor);
2461
+ editor.on('dblclick', ev => {
2462
+ if (isCodeSample(ev.target)) {
2463
+ open(editor);
2464
+ }
2465
+ });
2466
+ });
2467
+ };
2468
+
2469
+ Plugin();
2470
+
2471
+ })();