primo commit
This commit is contained in:
		
							
								
								
									
										7
									
								
								media/vendor/tinymce/plugins/insertdatetime/index.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								media/vendor/tinymce/plugins/insertdatetime/index.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,7 @@ | ||||
| // Exports the "insertdatetime" plugin for usage with module loaders | ||||
| // Usage: | ||||
| //   CommonJS: | ||||
| //     require('tinymce/plugins/insertdatetime') | ||||
| //   ES2015: | ||||
| //     import 'tinymce/plugins/insertdatetime' | ||||
| require('./plugin.js'); | ||||
							
								
								
									
										187
									
								
								media/vendor/tinymce/plugins/insertdatetime/plugin.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										187
									
								
								media/vendor/tinymce/plugins/insertdatetime/plugin.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,187 @@ | ||||
| /** | ||||
|  * TinyMCE version 6.8.4 (2024-06-19) | ||||
|  */ | ||||
|  | ||||
| (function () { | ||||
|     'use strict'; | ||||
|  | ||||
|     var global$1 = tinymce.util.Tools.resolve('tinymce.PluginManager'); | ||||
|  | ||||
|     const option = name => editor => editor.options.get(name); | ||||
|     const register$2 = editor => { | ||||
|       const registerOption = editor.options.register; | ||||
|       registerOption('insertdatetime_dateformat', { | ||||
|         processor: 'string', | ||||
|         default: editor.translate('%Y-%m-%d') | ||||
|       }); | ||||
|       registerOption('insertdatetime_timeformat', { | ||||
|         processor: 'string', | ||||
|         default: editor.translate('%H:%M:%S') | ||||
|       }); | ||||
|       registerOption('insertdatetime_formats', { | ||||
|         processor: 'string[]', | ||||
|         default: [ | ||||
|           '%H:%M:%S', | ||||
|           '%Y-%m-%d', | ||||
|           '%I:%M:%S %p', | ||||
|           '%D' | ||||
|         ] | ||||
|       }); | ||||
|       registerOption('insertdatetime_element', { | ||||
|         processor: 'boolean', | ||||
|         default: false | ||||
|       }); | ||||
|     }; | ||||
|     const getDateFormat = option('insertdatetime_dateformat'); | ||||
|     const getTimeFormat = option('insertdatetime_timeformat'); | ||||
|     const getFormats = option('insertdatetime_formats'); | ||||
|     const shouldInsertTimeElement = option('insertdatetime_element'); | ||||
|     const getDefaultDateTime = editor => { | ||||
|       const formats = getFormats(editor); | ||||
|       return formats.length > 0 ? formats[0] : getTimeFormat(editor); | ||||
|     }; | ||||
|  | ||||
|     const daysShort = 'Sun Mon Tue Wed Thu Fri Sat Sun'.split(' '); | ||||
|     const daysLong = 'Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sunday'.split(' '); | ||||
|     const monthsShort = 'Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec'.split(' '); | ||||
|     const monthsLong = 'January February March April May June July August September October November December'.split(' '); | ||||
|     const addZeros = (value, len) => { | ||||
|       value = '' + value; | ||||
|       if (value.length < len) { | ||||
|         for (let i = 0; i < len - value.length; i++) { | ||||
|           value = '0' + value; | ||||
|         } | ||||
|       } | ||||
|       return value; | ||||
|     }; | ||||
|     const getDateTime = (editor, fmt, date = new Date()) => { | ||||
|       fmt = fmt.replace('%D', '%m/%d/%Y'); | ||||
|       fmt = fmt.replace('%r', '%I:%M:%S %p'); | ||||
|       fmt = fmt.replace('%Y', '' + date.getFullYear()); | ||||
|       fmt = fmt.replace('%y', '' + date.getYear()); | ||||
|       fmt = fmt.replace('%m', addZeros(date.getMonth() + 1, 2)); | ||||
|       fmt = fmt.replace('%d', addZeros(date.getDate(), 2)); | ||||
|       fmt = fmt.replace('%H', '' + addZeros(date.getHours(), 2)); | ||||
|       fmt = fmt.replace('%M', '' + addZeros(date.getMinutes(), 2)); | ||||
|       fmt = fmt.replace('%S', '' + addZeros(date.getSeconds(), 2)); | ||||
|       fmt = fmt.replace('%I', '' + ((date.getHours() + 11) % 12 + 1)); | ||||
|       fmt = fmt.replace('%p', '' + (date.getHours() < 12 ? 'AM' : 'PM')); | ||||
|       fmt = fmt.replace('%B', '' + editor.translate(monthsLong[date.getMonth()])); | ||||
|       fmt = fmt.replace('%b', '' + editor.translate(monthsShort[date.getMonth()])); | ||||
|       fmt = fmt.replace('%A', '' + editor.translate(daysLong[date.getDay()])); | ||||
|       fmt = fmt.replace('%a', '' + editor.translate(daysShort[date.getDay()])); | ||||
|       fmt = fmt.replace('%%', '%'); | ||||
|       return fmt; | ||||
|     }; | ||||
|     const updateElement = (editor, timeElm, computerTime, userTime) => { | ||||
|       const newTimeElm = editor.dom.create('time', { datetime: computerTime }, userTime); | ||||
|       editor.dom.replace(newTimeElm, timeElm); | ||||
|       editor.selection.select(newTimeElm, true); | ||||
|       editor.selection.collapse(false); | ||||
|     }; | ||||
|     const insertDateTime = (editor, format) => { | ||||
|       if (shouldInsertTimeElement(editor)) { | ||||
|         const userTime = getDateTime(editor, format); | ||||
|         let computerTime; | ||||
|         if (/%[HMSIp]/.test(format)) { | ||||
|           computerTime = getDateTime(editor, '%Y-%m-%dT%H:%M'); | ||||
|         } else { | ||||
|           computerTime = getDateTime(editor, '%Y-%m-%d'); | ||||
|         } | ||||
|         const timeElm = editor.dom.getParent(editor.selection.getStart(), 'time'); | ||||
|         if (timeElm) { | ||||
|           updateElement(editor, timeElm, computerTime, userTime); | ||||
|         } else { | ||||
|           editor.insertContent('<time datetime="' + computerTime + '">' + userTime + '</time>'); | ||||
|         } | ||||
|       } else { | ||||
|         editor.insertContent(getDateTime(editor, format)); | ||||
|       } | ||||
|     }; | ||||
|  | ||||
|     const register$1 = editor => { | ||||
|       editor.addCommand('mceInsertDate', (_ui, value) => { | ||||
|         insertDateTime(editor, value !== null && value !== void 0 ? value : getDateFormat(editor)); | ||||
|       }); | ||||
|       editor.addCommand('mceInsertTime', (_ui, value) => { | ||||
|         insertDateTime(editor, value !== null && value !== void 0 ? value : getTimeFormat(editor)); | ||||
|       }); | ||||
|     }; | ||||
|  | ||||
|     const Cell = initial => { | ||||
|       let value = initial; | ||||
|       const get = () => { | ||||
|         return value; | ||||
|       }; | ||||
|       const set = v => { | ||||
|         value = v; | ||||
|       }; | ||||
|       return { | ||||
|         get, | ||||
|         set | ||||
|       }; | ||||
|     }; | ||||
|  | ||||
|     var global = tinymce.util.Tools.resolve('tinymce.util.Tools'); | ||||
|  | ||||
|     const onSetupEditable = editor => api => { | ||||
|       const nodeChanged = () => { | ||||
|         api.setEnabled(editor.selection.isEditable()); | ||||
|       }; | ||||
|       editor.on('NodeChange', nodeChanged); | ||||
|       nodeChanged(); | ||||
|       return () => { | ||||
|         editor.off('NodeChange', nodeChanged); | ||||
|       }; | ||||
|     }; | ||||
|     const register = editor => { | ||||
|       const formats = getFormats(editor); | ||||
|       const defaultFormat = Cell(getDefaultDateTime(editor)); | ||||
|       const insertDateTime = format => editor.execCommand('mceInsertDate', false, format); | ||||
|       editor.ui.registry.addSplitButton('insertdatetime', { | ||||
|         icon: 'insert-time', | ||||
|         tooltip: 'Insert date/time', | ||||
|         select: value => value === defaultFormat.get(), | ||||
|         fetch: done => { | ||||
|           done(global.map(formats, format => ({ | ||||
|             type: 'choiceitem', | ||||
|             text: getDateTime(editor, format), | ||||
|             value: format | ||||
|           }))); | ||||
|         }, | ||||
|         onAction: _api => { | ||||
|           insertDateTime(defaultFormat.get()); | ||||
|         }, | ||||
|         onItemAction: (_api, value) => { | ||||
|           defaultFormat.set(value); | ||||
|           insertDateTime(value); | ||||
|         }, | ||||
|         onSetup: onSetupEditable(editor) | ||||
|       }); | ||||
|       const makeMenuItemHandler = format => () => { | ||||
|         defaultFormat.set(format); | ||||
|         insertDateTime(format); | ||||
|       }; | ||||
|       editor.ui.registry.addNestedMenuItem('insertdatetime', { | ||||
|         icon: 'insert-time', | ||||
|         text: 'Date/time', | ||||
|         getSubmenuItems: () => global.map(formats, format => ({ | ||||
|           type: 'menuitem', | ||||
|           text: getDateTime(editor, format), | ||||
|           onAction: makeMenuItemHandler(format) | ||||
|         })), | ||||
|         onSetup: onSetupEditable(editor) | ||||
|       }); | ||||
|     }; | ||||
|  | ||||
|     var Plugin = () => { | ||||
|       global$1.add('insertdatetime', editor => { | ||||
|         register$2(editor); | ||||
|         register$1(editor); | ||||
|         register(editor); | ||||
|       }); | ||||
|     }; | ||||
|  | ||||
|     Plugin(); | ||||
|  | ||||
| })(); | ||||
							
								
								
									
										4
									
								
								media/vendor/tinymce/plugins/insertdatetime/plugin.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								media/vendor/tinymce/plugins/insertdatetime/plugin.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,4 @@ | ||||
| /** | ||||
|  * TinyMCE version 6.8.4 (2024-06-19) | ||||
|  */ | ||||
| !function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager");const t=e=>t=>t.options.get(e),a=t("insertdatetime_dateformat"),n=t("insertdatetime_timeformat"),r=t("insertdatetime_formats"),s=t("insertdatetime_element"),i="Sun Mon Tue Wed Thu Fri Sat Sun".split(" "),o="Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sunday".split(" "),l="Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),m="January February March April May June July August September October November December".split(" "),c=(e,t)=>{if((e=""+e).length<t)for(let a=0;a<t-e.length;a++)e="0"+e;return e},d=(e,t,a=new Date)=>(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=t.replace("%D","%m/%d/%Y")).replace("%r","%I:%M:%S %p")).replace("%Y",""+a.getFullYear())).replace("%y",""+a.getYear())).replace("%m",c(a.getMonth()+1,2))).replace("%d",c(a.getDate(),2))).replace("%H",""+c(a.getHours(),2))).replace("%M",""+c(a.getMinutes(),2))).replace("%S",""+c(a.getSeconds(),2))).replace("%I",""+((a.getHours()+11)%12+1))).replace("%p",a.getHours()<12?"AM":"PM")).replace("%B",""+e.translate(m[a.getMonth()]))).replace("%b",""+e.translate(l[a.getMonth()]))).replace("%A",""+e.translate(o[a.getDay()]))).replace("%a",""+e.translate(i[a.getDay()]))).replace("%%","%"),u=(e,t)=>{if(s(e)){const a=d(e,t);let n;n=/%[HMSIp]/.test(t)?d(e,"%Y-%m-%dT%H:%M"):d(e,"%Y-%m-%d");const r=e.dom.getParent(e.selection.getStart(),"time");r?((e,t,a,n)=>{const r=e.dom.create("time",{datetime:a},n);e.dom.replace(r,t),e.selection.select(r,!0),e.selection.collapse(!1)})(e,r,n,a):e.insertContent('<time datetime="'+n+'">'+a+"</time>")}else e.insertContent(d(e,t))};var p=tinymce.util.Tools.resolve("tinymce.util.Tools");const g=e=>t=>{const a=()=>{t.setEnabled(e.selection.isEditable())};return e.on("NodeChange",a),a(),()=>{e.off("NodeChange",a)}};e.add("insertdatetime",(e=>{(e=>{const t=e.options.register;t("insertdatetime_dateformat",{processor:"string",default:e.translate("%Y-%m-%d")}),t("insertdatetime_timeformat",{processor:"string",default:e.translate("%H:%M:%S")}),t("insertdatetime_formats",{processor:"string[]",default:["%H:%M:%S","%Y-%m-%d","%I:%M:%S %p","%D"]}),t("insertdatetime_element",{processor:"boolean",default:!1})})(e),(e=>{e.addCommand("mceInsertDate",((t,n)=>{u(e,null!=n?n:a(e))})),e.addCommand("mceInsertTime",((t,a)=>{u(e,null!=a?a:n(e))}))})(e),(e=>{const t=r(e),a=(e=>{let t=e;return{get:()=>t,set:e=>{t=e}}})((e=>{const t=r(e);return t.length>0?t[0]:n(e)})(e)),s=t=>e.execCommand("mceInsertDate",!1,t);e.ui.registry.addSplitButton("insertdatetime",{icon:"insert-time",tooltip:"Insert date/time",select:e=>e===a.get(),fetch:a=>{a(p.map(t,(t=>({type:"choiceitem",text:d(e,t),value:t}))))},onAction:e=>{s(a.get())},onItemAction:(e,t)=>{a.set(t),s(t)},onSetup:g(e)});const i=e=>()=>{a.set(e),s(e)};e.ui.registry.addNestedMenuItem("insertdatetime",{icon:"insert-time",text:"Date/time",getSubmenuItems:()=>p.map(t,(t=>({type:"menuitem",text:d(e,t),onAction:i(t)}))),onSetup:g(e)})})(e)}))}(); | ||||
							
								
								
									
										
											BIN
										
									
								
								media/vendor/tinymce/plugins/insertdatetime/plugin.min.js.gz
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								media/vendor/tinymce/plugins/insertdatetime/plugin.min.js.gz
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
		Reference in New Issue
	
	Block a user